目录
两款IP Camera+YOLOV3进行目标检测(手机摄像头作为电脑摄像头使用)
提示:之前关于使用make对DarkNet进行编译的过程,在对单张图片进行目标检测的时候,没有什么问题。但是其实存在一个没有解决问题,就是如果是检测视频或者开启摄像头进行检测话,会产生很大的问题,下面采用CMake对darknet进行编译,既可以对单张图像进行目标检测,也可以开启摄像头进行检测。
注意:在这个官方的GitHub代码中已经给出了相关的教程,但是并没有给出细节以及在后面使用的过程会出现的问题,这篇文章主要是解决一些细节和可能会出现的问题。

1.编译和安装教程
(1)安装visual studio 2022
https://visualstudio.microsoft.com/thank-you-downloading-visual-studio/?sku=Community

(2)CMake下载及安装
(https://mydreamambitious.blog.youkuaiyun.com/article/details/130367003)

提示:读者下载之后进行解压,可以在/bin目录下看到一个cmake-gui.exe可执行文件,后面就是要使用这个。
(3)下载darknet.zip文件
https://github.com/AlexeyAB/darknet/archive/master.zip
提示:这里面就是官方给出的代码以及一些其他很多文件。
(4)安装OpenCV
提示1:安装完成OpenCV之后,将如下路径添加到Path环境变量中:
E:\opencv\build\x64\cv15\lib
提示2:为了防止后面在CMake进行配置的时候提示,找不到OpenCV,进行如下操作:
添加OpenCV目录下的build路径:
(5)修改Makefile文件

(6)修改CMakeLists.txt文件

提示:这是在使用CMake进行配置和生成过程中报的错,由于我们使用的CPU,所以这里需要进行如下修改。

提示:这里为什么也要修改,是因为在使用CMake工具的进行配置和生成的时候提示我们没有使用GPU,那么这里的GPU和CUDNN之类的也需要修改为OFF,将其关闭。
或者如果不直接修改CMakeLists.txt文件的内容,也可以将其下面红色部分关于CUDA的地方的“√”去掉即可。

(7)使用CMake工具
提示:
- 第一个路径是下载的darknet.zip解压之后的darknet-master路径;
- 第二个路径是将build之后的文件存放的地方,自己选择一个路径(注意这个路径中最好不要有中文)。

提示: 选择刚才安装的visual studio 2022的版本(版本一定要对应),选择x64版本。选择完成之后点击“finish”。
提示:开始进行配置,如果配置过程中出错了,需要重新进行配置,点击CMake上面的:

提示:配置完成之后即可点击“Generate”.

提示:生成完毕之后,点击“Open Project”.






提示:根据之前在选择build的路径,找到Release目录,即可在其下面看到darknet.exe。可以将其复制到darknet-master目录下(自己决定,只不过后面在使用的比较方便)。

2.yolov3进行测试
YOLOV3主页:https://pjreddie.com/darknet/yolo/
(1)单张图像进行检测
提示:首先使用如下命令对单张图像进行检测(已经将darknet.exe复制到darknet-master目录下,并且当前处于darknet-master目录下),打开cmd命令窗口(windows):
darknet detect cfg/yolov3.cfg weights/yolov3.weights data/dog.jpg
- 必须指定darknet的路径(由于darknet处于当前目录,所以只需写darknet);
- 必须指定detect关键词;
- 指定yolov3.cfg配置文件位置;
- 指定yolov3.weights权重文件位置;
- 指定测试图片dog.jpg的路径;
提示:在使用上面的命令的时候也许会报错误,比如:
- 由于找不到opencv world455.dll,无法继续执行代码。重新安装程序可能会解决此问题。
- 由于找不到pthreadVC2.dlI,无法继续执行代码。重新安装程序可能会解决此问题。
提示:解决方法如下,就是找到opencv的安装位置目录opencv\build\x64\vc15\bin下的相应报错文件复制到当前的darknet-master目录下:
可以到darknet-master\build\darknet\x64找到pthreadVC2.dll也复制到当前的darknet-master目录下。


(2)开启摄像头进行检测
darknet detector demo cfg/coco.data cfg/yolov3-tiny.cfg weights/yolov3-tiny.weights
相关解释如上:

提示:按下ESC键,退出检测。
(3) 视频检测
darknet detector demo cfg/coco.data cfg/yolov3-tiny.cfg weights/yolov3-tiny.weights video/demo.mp4
注意:也许执行上面的命令的时候会报错:
解决方案: 解决方法如下,就是找到opencv的安装位置目录opencv\build\x64\vc15\bin下的相应报错文件复制到当前的darknet-master目录下:
将文件opencv_videoio_ffmpeg455_64.dll复制到当前的darknet-master目录下:
(4)使用手机摄像头作为电脑的摄像头进行检测
两款IP Camera+YOLOV3进行目标检测(手机摄像头作为电脑摄像头使用)

darknet detector demo cfg/coco.data cfg/yolov3-tiny.cfg weights/yolov3-tiny.weights http://admin:admin@192.168.236.172:8080/video(注意:手机和电脑处于同一个网段(同一个热点或者WIFI))



该文详细介绍了如何在无GPU环境下编译DarkNet,包括安装VisualStudio2022、CMake,下载darknet.zip,安装OpenCV,修改Makefile和CMakeLists.txt文件。之后,文章讲解了YOLOv3的测试过程,包括单张图像检测、开启摄像头检测、视频检测,并解决了在检测过程中可能出现的依赖库问题。








3757

被折叠的 条评论
为什么被折叠?



