• 安装darknet


    1.克隆darknet

      官网: https://pjreddie.com/darknet/yolo/

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

    2.编译项目

    cd darknet
    make

    3.下载权重

    下载预训练权重文件(download the pre-trained weight fifile)
    wget https://pjreddie.com/media/files/yolov3.weights

    4.测试

    ./darknet detect cfg/yolov3.cfg yolov3.weights data/dog.jpg
    目录darknet下的predictions.jpg是产生的预测结果图像文件,如下:
     
    因只使用CPU,预测时间较长,超过23秒

    5.使用cuda和opencv编译

    cuda安装参考:https://www.cnblogs.com/liuwenhua/p/11520563.html

    本人安装的是opencv 3.4.4。首先到opencv官网下载opencv-3.4.4.tar.gz。执行以下命令
    tar xvf opencv-3.4.4.tar.gz
     cd opencv-3.4.4/
    cmake .
     make
    sudo make install
    在执行上述的cmake时可根据自己的电脑配置和安装的opencv版本情况设置命令参数
    cmake -D CMAKE_BUILD_TYPE=RELEASE 
       -D CMAKE_INSTALL_PREFIX=/usr/local 
       -D INSTALL_PYTHON_EXAMPLES=ON 
       -D INSTALL_C_EXAMPLES=OFF 
       -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib-3.4.4/modules 
       -D PYTHON_EXCUTABLE=/usr/bin/python 
       -D WITH_CUDA=ON    # 使用CUDA
       -D WITH_CUBLAS=ON 
       -D DCUDA_NVCC_FLAGS="-D_FORCE_INLINES" 
       -D CUDA_ARCH_BIN="9.0"    # 这个需要去官网确认使用的GPU所对应的版本
       -D CUDA_ARCH_PTX="" 
       -D CUDA_FAST_MATH=ON    # 计算速度更快但是相对不精确
       -D WITH_TBB=ON 
       -D WITH_V4L=ON 
       -D WITH_QT=ON    # 如果qt未安装可以删去此行;若因为未正确安装qt导致的Qt5Gui报错,
       -D WITH_GTK=ON 
       -D WITH_OPENGL=ON 
       -D BUILD_EXAMPLES=ON ..
    本人使用的cmake命令如下:
    cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D 
    INSTALL_PYTHON_EXAMPLES=ON   -D INSTALL_C_EXAMPLES=OFF   -D 
    OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib-3.4.4/modules -D 
    CUDA_GENERATION=Auto -D PYTHON_EXCUTABLE=/usr/bin/python   -D WITH_TBB=ON -D 
    WITH_V4L=ON   -D WITH_GTK=ON -D WITH_OPENGL=ON   -D BUILD_EXAMPLES=ON ..
    sudo make install 执行完毕后OpenCV编译过程就结束了,接下来就需要配置一些OpenCV的编译环境,首先将OpenCV的库添加到路径,从而可以让系统找到。
    sudo gedit /etc/ld.so.conf.d/opencv.conf
    执行此命令后打开的可能是一个空白的文件,不用管,只需要在文件末尾添加 /usr/local/lib   执行如下命令使得刚才的配置路径生效
    sudo ldconfig
    配置bash
    sudo gedit /etc/bash.bashrc
    在最末尾添加 PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfifig
    export PKG_CONFIG_PATH
    保存,执行如下命令使得配置生效
    source /etc/bash.bashrc
    更新
    sudo updatedb
    修改darknet的Makefifile
    GPU=1
    CUDNN=1
    OPENCV=1
    然后执行
    make clean
    make

    6.测试GPU版本的yolo

    ./darknet detect cfg/yolov3.cfg yolov3.weights data/dog.jpg
    预测时间减少到约0.025秒
     
    darknet安装完成

     

  • 相关阅读:
    设计模式(十八)备忘录模式
    六种常见的系统架构
    设计模式(十七)中介者模式
    设计模式(十六)观察者模式
    设计模式(十五)迭代器模式
    js实现对象深拷贝
    js中for in与for of使用
    在使用一些UI框架的某些组件的时候,,取消事件冒泡
    js开根号,使用二分法迭代
    js逆向递归 一个多维数组根据子节点ID查找所有父节点ID
  • 原文地址:https://www.cnblogs.com/liuwenhua/p/14718748.html
Copyright © 2020-2023  润新知