zoukankan      html  css  js  c++  java
  • 配置YOLO2(ubuntu16.04+cuda8.0+opencv3.1.0)

    要求已经安装好了CUDA 8.0 以及OpenCV3.1.0

    YOLO官方网站

    配置darknet

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

    如果没有报错输入

    ./darknet  

    得到输出

    ./darknet <function>  

    说明darknet配置成功

    打开Makefile文件,将开头几行改为

    GPU=1
    CUDNN=1
    OPENCV=1

    接着查询自己GPU的计算能力,查看Makefile是否包含,如下我的GPU计算能力为6.1,调整后为:

    ARCH= -gencode arch=compute_30,code=sm_30 
          -gencode arch=compute_35,code=sm_35 
          -gencode arch=compute_50,code=[sm_50,compute_50] 
          -gencode arch=compute_61,code=[sm_61,compute_61] 
          -gencode arch=compute_52,code=[sm_52,compute_52]

    之后重新编译,就可以实现基于cuda和opencv的编译

    下载预训练文件

    wget https://pjreddie.com/media/files/yolo.weights  

    测试

    ./darknet detect cfg/yolo.cfg yolo.weights data/dog.jpg  

    我得到的结果是:

    layer     filters    size              input                output
        0 conv     32  3 x 3 / 1   608 x 608 x   3   ->   608 x 608 x  32
        1 max          2 x 2 / 2   608 x 608 x  32   ->   304 x 304 x  32
        2 conv     64  3 x 3 / 1   304 x 304 x  32   ->   304 x 304 x  64
        3 max          2 x 2 / 2   304 x 304 x  64   ->   152 x 152 x  64
        4 conv    128  3 x 3 / 1   152 x 152 x  64   ->   152 x 152 x 128
        5 conv     64  1 x 1 / 1   152 x 152 x 128   ->   152 x 152 x  64
        6 conv    128  3 x 3 / 1   152 x 152 x  64   ->   152 x 152 x 128
        7 max          2 x 2 / 2   152 x 152 x 128   ->    76 x  76 x 128
        8 conv    256  3 x 3 / 1    76 x  76 x 128   ->    76 x  76 x 256
        9 conv    128  1 x 1 / 1    76 x  76 x 256   ->    76 x  76 x 128
       10 conv    256  3 x 3 / 1    76 x  76 x 128   ->    76 x  76 x 256
       11 max          2 x 2 / 2    76 x  76 x 256   ->    38 x  38 x 256
       12 conv    512  3 x 3 / 1    38 x  38 x 256   ->    38 x  38 x 512
       13 conv    256  1 x 1 / 1    38 x  38 x 512   ->    38 x  38 x 256
       14 conv    512  3 x 3 / 1    38 x  38 x 256   ->    38 x  38 x 512
       15 conv    256  1 x 1 / 1    38 x  38 x 512   ->    38 x  38 x 256
       16 conv    512  3 x 3 / 1    38 x  38 x 256   ->    38 x  38 x 512
       17 max          2 x 2 / 2    38 x  38 x 512   ->    19 x  19 x 512
       18 conv   1024  3 x 3 / 1    19 x  19 x 512   ->    19 x  19 x1024
       19 conv    512  1 x 1 / 1    19 x  19 x1024   ->    19 x  19 x 512
       20 conv   1024  3 x 3 / 1    19 x  19 x 512   ->    19 x  19 x1024
       21 conv    512  1 x 1 / 1    19 x  19 x1024   ->    19 x  19 x 512
       22 conv   1024  3 x 3 / 1    19 x  19 x 512   ->    19 x  19 x1024
       23 conv   1024  3 x 3 / 1    19 x  19 x1024   ->    19 x  19 x1024
       24 conv   1024  3 x 3 / 1    19 x  19 x1024   ->    19 x  19 x1024
       25 route  16
       26 conv     64  1 x 1 / 1    38 x  38 x 512   ->    38 x  38 x  64
       27 reorg              / 2    38 x  38 x  64   ->    19 x  19 x 256
       28 route  27 24
       29 conv   1024  3 x 3 / 1    19 x  19 x1280   ->    19 x  19 x1024
       30 conv    425  1 x 1 / 1    19 x  19 x1024   ->    19 x  19 x 425
       31 detection
    mask_scale: Using default '1.000000'
    Loading weights from yolo.weights...Done!
    data/dog.jpg: Predicted in 0.070790 seconds.
    dog: 82%
    car: 26%
    truck: 65%
    bicycle: 85%
    init done 
    opengl support available 

     

    作者:Young
    联系:chayliu@126.com
    签名:天道酬勤 厚积薄发

    ---------------------------------------------------------

  • 相关阅读:
    Redis的四种模式,单机、主从、哨兵、集群
    .NET 跨域问题
    C# 利用正则表达式获取富文本框中所有图片路劲
    ActiveMQ入门实例(.NET)
    ActiveMQ的使用以及应用场景
    关于消息队列的使用方法(RocketMQ)
    Redis系列 需要注意事项
    .NET:在线悲观锁、在线乐观锁、离线悲观锁、离线乐观锁代码示例
    C# 简单介绍Redis使用
    API Get跟Post 的区别?
  • 原文地址:https://www.cnblogs.com/chay/p/8052354.html
Copyright © 2011-2022 走看看