在下载配置Yolov5前,先要安装好Anaconda环境,若有需要可参考:https://blog.csdn.net/qq_54496810/article/details/121869094
一、下载Yolov5
1、下载Yolov5源码
这里有两种方式进行下载:
①Yolov5 Github地址:https://github.com/ultralytics/yolov5
点击链接后,进入以下界面,可以点击Code->Download ZIP
下载yolov5
![在这里插入图片描述](https://img-blog.csdnimg.cn/34305fe76a0248fc9ad280f7218973a3.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bCP5bCP5pif5Lqu5pm25pm2,size_19,color_FFFFFF,t_70,g_se,x_16)
②也可以Win+R
打开命令行窗口,直接git clone
到本地工作目录,等待下载完成:
git clone https://github.com/ultralytics/yolov5
![在这里插入图片描述](https://img-blog.csdnimg.cn/c569dc46c6484d16b7664a25642a4de8.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bCP5bCP5pif5Lqu5pm25pm2,size_19,color_FFFFFF,t_70,g_se,x_16)
由于未安装git,未成功下载,因此应先到git官网下载windows版本的git:http://git-scm.com/downloads
下载完成,点击安装,选择自己的安装位置,一路next
即可(注意安装路径,后面要用到)
![在这里插入图片描述](https://img-blog.csdnimg.cn/37dd5f3d0d904e728a03b7b2d13ca56f.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bCP5bCP5pif5Lqu5pm25pm2,size_11,color_FFFFFF,t_70,g_se,x_16)
这时不要着急,还要进行环境变量配置:
找到git安装路径中bin的位置,我这里是(自定义安装的路径中查找)D:\Program Files\Git\bin;另外找git安装路径中git-core的位置,如:D:\Program Files\Git\mingw64\libexec\git-core
![在这里插入图片描述](https://img-blog.csdnimg.cn/bec4d249fb14404d99e55c792a8a8f39.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/1e2668ec67e14fb2a8887b9a081a5c0e.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bCP5bCP5pif5Lqu5pm25pm2,size_19,color_FFFFFF,t_70,g_se,x_16)
接着右键 “计算机”->“属性”->“高级系统设置”->“环境变量”->在下方的“系统变量”中找到“path”->选中“path”并选择“编辑”->将找到的bin和git-core路径复制到其中->保存并退出``
![在这里插入图片描述](https://img-blog.csdnimg.cn/0ead32b01a1e4c77a0c62a3489dbe60b.png)
现在就可以尽情使用git命令了
再次下载:
git clone https://github.com/ultralytics/yolov5
![在这里插入图片描述](https://img-blog.csdnimg.cn/85851bb77330413290a0e35ed53dff0d.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bCP5bCP5pif5Lqu5pm25pm2,size_19,color_FFFFFF,t_70,g_se,x_16)
下载完成后,进入下载路径,可以看见Yolov5代码目录架构:
![在这里插入图片描述](https://img-blog.csdnimg.cn/3fec1d7a4b934d9f87a984b928a62ef2.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bCP5bCP5pif5Lqu5pm25pm2,size_19,color_FFFFFF,t_70,g_se,x_16)
2、 下载Yolov5预训练模型
下载地址:https://github.com/ultralytics/yolov5/releases
![在这里插入图片描述](https://img-blog.csdnimg.cn/100e61b51b104d5b9027d7b887aa6ac5.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bCP5bCP5pif5Lqu5pm25pm2,size_19,color_FFFFFF,t_70,g_se,x_16)
进入以下界面后,往下浏览,找到最新的release,点开下面的Assets下载模型(.pt文件就是pytorch的模型文件)
yolov5共有四种模型:yolov5s
、yolov5m
、yolov5l
、yolov5x
,我们下载的也是这四个(下载过程比较慢,请耐心等待)
![在这里插入图片描述](https://img-blog.csdnimg.cn/4f93cf0ca75f4df993fada150a60deff.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bCP5bCP5pif5Lqu5pm25pm2,size_19,color_FFFFFF,t_70,g_se,x_16)
不同的预训练模型 ,效果和精度不一样,如下图:
![在这里插入图片描述](https://img-blog.csdnimg.cn/eab3746e0a2343bbb7d2f8a513f7c977.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bCP5bCP5pif5Lqu5pm25pm2,size_19,color_FFFFFF,t_70,g_se,x_16)
其中yolov5s
目标检测速度最快,因为其网络参数最少,但相应的,检测效果相比是最差的;而yolov5x
是检测效果最好的,参数最多,而时间上最慢
![在这里插入图片描述](https://img-blog.csdnimg.cn/64304e65106444f690e29417ba7827c7.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bCP5bCP5pif5Lqu5pm25pm2,size_19,color_FFFFFF,t_70,g_se,x_16)
具体使用可以根据实际需要,例如如果目标检测应用场景比较看重速度,就用yolov5s.pt
下载后将四个.pt文件放到Yolov5源码根目录下
![在这里插入图片描述](https://img-blog.csdnimg.cn/e1e9b78924ac4803bf34718dc92b0880.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bCP5bCP5pif5Lqu5pm25pm2,size_19,color_FFFFFF,t_70,g_se,x_16)
二、安装Yolov5
源码下完后,下面开始安装Yolov5所需模块:
Win+R
打开命令行窗口,输入以下命令,等待安装完成即可
python -m pip install -r requirements.txt
![在这里插入图片描述](https://img-blog.csdnimg.cn/f11f7aa56a424845acdbf61d1c3b709c.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bCP5bCP5pif5Lqu5pm25pm2,size_19,color_FFFFFF,t_70,g_se,x_16)
安装的也比较慢,请耐心等待
![在这里插入图片描述](https://img-blog.csdnimg.cn/df7e0e246bd94ecca6cfe3fbdc27fb0f.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bCP5bCP5pif5Lqu5pm25pm2,size_19,color_FFFFFF,t_70,g_se,x_16)
出现以上界面,安装成功。
三、测试Yolov5
就使用源码中的Detect.py
即可进行测试
1、Img图片测试
输入以下命令通过detect.py
对图像进行目标检测:
python detect.py --source ./data/images/bus.jpg
python detect.py --source ./data/images/zidane.jpg
(其中bus.jpg和zidane.jpg为源码自有的测试图片)
![在这里插入图片描述](https://img-blog.csdnimg.cn/0c0f57a8d2d341f2839d9b4bbcd4c3b8.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bCP5bCP5pif5Lqu5pm25pm2,size_19,color_FFFFFF,t_70,g_se,x_16)
detect.py默认使用同目录下的 yolov5s.pt 模型,如果想用其他的,可以用–weights
进行指定
例如:
python detect.py --source ./data/images/bus.jpg --weights yolov5x.pt
然后就可以在yolov5/runs/detect目录下找到模型输出结果的文件夹
![在这里插入图片描述](https://img-blog.csdnimg.cn/54aeed5d350d4fd5ad7d43e2a3947774.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bCP5bCP5pif5Lqu5pm25pm2,size_18,color_FFFFFF,t_70,g_se,x_16)
这是源码自带的bus.jpg识别效果:
![在这里插入图片描述](https://img-blog.csdnimg.cn/3c386394bfd94941adb09cea1f1fe63c.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bCP5bCP5pif5Lqu5pm25pm2,size_19,color_FFFFFF,t_70,g_se,x_16)
zidane.jpg识别效果如下:
![在这里插入图片描述](https://img-blog.csdnimg.cn/488cd5436f814b849d8cef8cfb4ef12e.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bCP5bCP5pif5Lqu5pm25pm2,size_19,color_FFFFFF,t_70,g_se,x_16)
随手拍了一张图片,测试了一下效果也不错,同时Yolov5处理该图片时间只用了0.187s
python detect.py --source people.jpg
![在这里插入图片描述](https://img-blog.csdnimg.cn/e46634bf49d6425d97709ebd8dfee882.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bCP5bCP5pif5Lqu5pm25pm2,size_19,color_FFFFFF,t_70,g_se,x_16)
同样可以在yolov5/runs/detect目录下找到模型输出结果的文件夹exp5,里面保存有测试后的图片
![在这里插入图片描述](https://img-blog.csdnimg.cn/975c9f0bf0b94c08a88e34846a82b3be.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bCP5bCP5pif5Lqu5pm25pm2,size_18,color_FFFFFF,t_70,g_se,x_16)
识别的效果如下:
![在这里插入图片描述](https://img-blog.csdnimg.cn/d80faa3d77c040a5a3e201429aab4e09.png)
2、Video视频测试
在路径中放一段视频:
![在这里插入图片描述](https://img-blog.csdnimg.cn/8689bd80dacd42e58c9cc85295f32f70.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bCP5bCP5pif5Lqu5pm25pm2,size_15,color_FFFFFF,t_70,g_se,x_16)
然后通过detect.py对视频进行目标检测:
python detect.py --source data/images/people.mp4
![在这里插入图片描述](https://img-blog.csdnimg.cn/2b463ef6b4454451b1646e2e0d340d9a.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bCP5bCP5pif5Lqu5pm25pm2,size_19,color_FFFFFF,t_70,g_se,x_16)
![在这里插入图片描述](https://img-blog.csdnimg.cn/66e29ac9a95248c28fe84c2dbf334530.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bCP5bCP5pif5Lqu5pm25pm2,size_19,color_FFFFFF,t_70,g_se,x_16)
视频Detect就有些慢了,因为也是把视频转换为图片放到模型里再进行处理的
我们也可以在路径下找到目标检测后生成的视频:
![在这里插入图片描述](https://img-blog.csdnimg.cn/02fc54be4ce0465aa9988985e8736cdc.png)
视频效果如下:
![在这里插入图片描述](https://img-blog.csdnimg.cn/5c130d2f2edf4691b8e2d3194fe6abee.gif)
3、摄像头测试
使用本机摄像头测试Yolov5实时检测:
python detect.py --source 0
![在这里插入图片描述](https://img-blog.csdnimg.cn/2ed2d6ec593a4280b7c2990467224b05.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bCP5bCP5pif5Lqu5pm25pm2,size_19,color_FFFFFF,t_70,g_se,x_16)
就会弹出摄像头页面,识别到的物体会用不同颜色的方框进行标识,同时上面会显示名称和概率(置信度)
通过摄像头检测出识别的物体会打印出来:比如下面的person等
![在这里插入图片描述](https://img-blog.csdnimg.cn/3cb8ca67e70442fa8fd4cfd2dfe63797.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bCP5bCP5pif5Lqu5pm25pm2,size_19,color_FFFFFF,t_70,g_se,x_16)
其中一截摄像截图如下:
![在这里插入图片描述](https://img-blog.csdnimg.cn/41235592fe434996ada471f1be923ae2.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bCP5bCP5pif5Lqu5pm25pm2,size_15,color_FFFFFF,t_70,g_se,x_16)
至此,Yolov5的使用到此结束。
三、小结
目标检测在生活中经常用到,比如人脸检测、车辆检测、自动驾驶等,随着技术的进步,目标检测的学习也越来越深入。通过本次Yolov5的安装与使用,根据初步印象来看,Yolov5的配置简单,并且对目标检测的识别效率和速度都是很不错的,当然那些模型都是已经训练好的,要是感兴趣的话也可以训练自己的数据集以及进行源码分析。
四、参考链接
https://blog.csdn.net/HowieXue/article/details/118445766