zoukankan      html  css  js  c++  java
  • 第十八节,linux环境下配置yolo网络

    ubuntu18.04+CUDA8.0+GTX1080Ti+yolov3+Opencv3.1.0详细配置

    系统配置:

    内存:16GiB

    处理器:Intel Core i7-9700K CPU 3.60GHz*8

    图形:GeForce GTX1080 Ti/PCle/SSE2

    GNOME:3.28.2

    操作系统:64

    磁盘:500GB

    1. 查看gpu驱动版本:

      sudo nvidia-smi  

      Driver Version390.116

    2. 安装CUDA

      我这里选择cuda-9.0进行下载。这个是下载cuda的链接地址:https://developer.nvidia.com/cuda-90-download-archive

    3. 安装CUDNN7.5版本:网上都有教程。

    4. 安装anaconda3

      https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/

    5. 安装OpenCV3.4.1版本

      https://opencv.org/releases/page/2/

      配置时容易出现问题。 安装了好多次总是出错误。各种各样奇葩的错误。安装过程异常漫长。

      https://www.cnblogs.com/aacirq/p/9694951.html按照这个教程试一下,一次不成功多尝试几次。

    6. 查看显卡信息时突然显示NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver. Make sure that the latest NVIDIA driver is installed and running.

      借鉴https://blog.csdn.net/sinat_23619409/article/details/85220561

    7. 平台linux+官网教程https://pjreddie.com/darknet/yolo  按照官网教程。

      环境:ubuntu18.04

      显卡:GTX1080Ti

    8. 1) Region 82 Avg IOU: 0.874546, Class: 0.983519, Obj: 0.984566, No Obj: 0.008776, .5R: 1.000000, .75R: 0.750000,  count: 4

      Region 94 Avg IOU: 0.686372, Class: 0.878314, Obj: 0.475262, No Obj: 0.000712, .5R: 1.000000, .75R: 0.200000,  count: 5

      Region 106 Avg IOU: 0.893751, Class: 0.762553, Obj: 0.388385, No Obj: 0.000089, .5R: 1.000000, .75R: 1.000000,  count: 1

      三个尺度上预测不同大小的框,82卷积层为最大预测尺度,使用较大的mask,可以预测出较小的物体,94卷积层 为中间预测尺度,使用中等的mask, 106卷积层为最小预测尺度,使用较小的mask,可以预测出较大的物体。

      详解:

      Region Avg IOU: 表示在当前subdivision内的图片的平均IOU,代表预测的矩形框和真实目标的交集与并集之比。

      Class: 标注物体分类的正确率,期望该值趋近于1。

      Obj: 越接近1越好。

      No Obj: 期望该值越来越小,但不为零。

      count: count后的值是所有的当前subdivision图片中包含正样本的图片的数量。

      1: 806.396851, 806.396851 avg, 0.000000 rate, 1.457291 seconds, 64 images

      1: 指示当前训练的迭代次数

      806.396851:是总体的Loss(损失)

      806.396851 avg:是平均Loss,这个数值应该越低越好,一般到0.几的时候就可直接退出训练。

      0.000000 rate:代表当前的学习率,是在.cfg文件中定义的。

      1.843955 seconds:表示当前批次训练花费的总时间。

      64 images:这一行最后的这个数值是1*64的大小,表示到目前为止,参与训练的图片的总量。

    9. 安装darknet

    git clone https://github.com/pjreddie/darknet.git
    cd darknet
    make

    nvidia-smi指令    watch -n 10 nvidia-smi:每个10s刷新显卡占用情况
    指令中间连着的不加空格。

    第一栏的Fan:风扇转速,从0到100%之间变动,这个速度是计算机期望的风扇转速不是实际转速。有的设备不会返回转速,因为它不依赖风扇冷却。

    第二栏的Temp:是温度。
    第三栏的Perf:是性能状态,从P0到P12,P0表示最大性能,P12表示状态最小性能。
    第四栏下方的Pwr:是能耗,上方的Persistence-M:是持续模式的状态,持续模式虽然耗能大,但是在新的GPU应用启动时,花费的时间更少,这里显示的是off的状态。
    第五栏的Bus-Id是涉及GPU总线的东西,domain:bus:device.function
    第六栏的Disp.A是Display Active,表示GPU的显示是否初始化。
    第五第六栏下方的Memory Usage是显存使用率。
    第七栏是浮动的GPU利用率。
    第八栏上方是关于ECC的东西。
    第八栏下方Compute M是计算模式。

    下载权重:

    wget https://pjreddie.com/media/files/yolov3.weight

    测试程序:

    ./darknet detect cfg/yolov3.cfg yolov3.weights data/dog.jpg
    或者
    ./darknet detector test cfg/coco.data cfg/yolov3.cfg yolov3.weights data/dog.jpg
    
    layer     filters    size              input                output
        0 conv     32  3 x 3 / 1   416 x 416 x   3   ->   416 x 416 x  32  0.299 BFLOPs
        1 conv     64  3 x 3 / 2   416 x 416 x  32   ->   208 x 208 x  64  1.595 BFLOPs
        .......
      105 conv    255  1 x 1 / 1    52 x  52 x 256   ->    52 x  52 x 255  0.353 BFLOPs
      106 detection
    truth_thresh: Using default '1.000000'
    Loading weights from yolov3.weights...Done!
    data/dog.jpg: Predicted in 0.029329 seconds.
    dog: 99%
    truck: 93%
    bicycle: 99%
    

      

  • 相关阅读:
    监控 Linux 性能的 18 个命令行工具
    VS2015中无法查找或打开 PDB 文件
    C1853 编译器错误:fatal error C1853: 'pjtname.pch' precompiled header file is from a previous
    malloc用法
    C语言中i++和++i的区别
    vs未定义的标识符“round”ceil()和floor()
    error C2065: “uint8_t”: 未声明的标识符
    strtol 函数用法
    C++ “string”: 未声明的标识符
    C++ 中c_str()函数
  • 原文地址:https://www.cnblogs.com/wyx501/p/10891113.html
Copyright © 2011-2022 走看看