linux系统中YOLOv3环境搭建与测试(GPU)

  • Post author:
  • Post category:linux



cpu版本yolov3环境搭建



一、darknet下载

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



二、修改Makefile



2.1 设置使用GPU

GPU=1 #修改
CUDNN=1 #修改
OPENCV=0
OPENMP=0
DEBUG=1 #修改



2.2 修改路径(设置为自己的路径)

现假定cuda版本为cuda-10.0,其他版本路径和这个相似。

修改NVCC路径

NVCC=/usr/local/cuda/cuda-10.0/bin/nvcc

修改COMMON路径

COMMON+= -DGPU -I/usr/local/cuda-10.0/include

修改LDFLAGS路径

LDFLAGS+= -L/usr/local/cuda/lib64-lcuda -lcudart -lcublas -lcarand



三、编译

make



四、下载预训练权重

https://pjreddie.com/media/files/yolov3.weights



五、测试

./darknet detect cfg/yolov3.cfg yolov3.weights data/person.jpg
open predictions.jpg



六、解决报错



6.1 找不到cudnn.h



6.1.1 下载cudnn

根据cuda版本和系统版本

下载cudnn

(Linux源码,是tgz格式,不是deb格式)



6.1.2 解压并复制到cuda路径

解压文件后会看到一个cuda文件夹,里面包含了include以及lib64两个子目录。 将这两个文件夹里的文件复制到cuda对应的安装目录。

sudo cp cuda/include/cudnn.h /usr/local/cuda-10.0/include
sudo cp cuda/lib64/* /usr/local/cuda-10.0/lib64


6.1.3 链接

在/usr/local/cuda-10.0/lib64/目录下

sudo rm -rf libcudnn.so libcudnn.so.7 #删除两个符号链接;
sudo ln -s libcudnn.so.7.0.64 libcudnn.so.7 # libcudnn.so.7.0.64为路径下的文件,根据自己的修改
sudo ln -s libcudnn.so.7 libcudnn.so


6.1.4 添加环境变量
sudo ldconfig /usr/local/cuda-10.0/lib64



6.2 其他报错暂时没发现,欢迎大家评论,一起讨论解决。



版权声明:本文为duzhongqiang原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。