安装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安装完成

 

 

 

posted @ 2021-04-29 17:04  刘文华  阅读(640)  评论(0编辑  收藏  举报