半小时搞定Yolov5安装配置及使用(详细过程)
之前在学习目标检测的时候,正值Yolov5发布,当时试用了下感觉还不错,最近有时间 使用最新的Yolov5源码,重新整理下安装配置到使用过程。。实践整个过程半小时即可搞定(前提已有Anaconda)
总体来看Yolov5的速度和效率较之前yolov4等系列都快,准确度更高。。
在下载配置Yolov5前,先要安装好Anaconda环境,可参考之前博文:https://howiexue.blog.csdn.net/article/details/118442904
Yolov5官方doc:https://docs.ultralytics.com/quick-start/
1. 下载Yolov5
1.1 下载Yolov5源码:#
- Yolov5 Github地址:https://github.com/ultralytics/yolov5
直接git clone到本地工作目录,等待下载完成:
git clone https://github.com/ultralytics/yolov5
1.2 下载Yolov5预训练模型:#
既已经训练好的权重参数数据,可以直接使用,就不要在本机再做Traninig了
找到最新的release,点开下面的Assets下载(.pt文件就是pytorch的模型文件):
下载后放到Yolov5源码根目录,或新建个weights/目录中使用:
yolov5共有四种模型:yolov5s、yolov5m、yolov5l、yolov5x。
不同的预训练模型 ,效果和精度不一样,如下图
其中yolov5s目标检测速度最快,因为其网络参数最少,但相应的,检测效果相比是最差的
而yolov5x是检测效果最好的,参数最多,而时间上最慢。。
具体使用可以根据实际需要,例如如果目标检测应用场景比较看重速度,就用yolov5s.pt
其中P5/P6模型的差异:(模型后面不带6的就是P5)
- YOLOv5-P5 models (same architecture as v4.0 release): 3 output layers P3, P4, P5 at strides 8, 16, 32, trained at --img 640
python detect.py --weights yolov5s.pt # P5 models
yolov5m.pt
yolov5l.pt
yolov5x.pt
- YOLOv5-P6 models: 4 output layers P3, P4, P5, P6 at strides 8, 16, 32, 64 trained at --img 1280
python detect.py --weights yolov5s6.pt # P6 models
yolov5m6.pt
yolov5l6.pt
yolov5x6.pt
2. 安装Yolov5
源码下完后,下面开始安装Yolov5所需模块,
直接pip install -r requirements.txt,等待安装完成即可
python -m pip install -r requirements.txt
如果没有cuda默认安装的pytorch-cpu版,如果有gpu可以安装gpu版:https://pytorch.org/get-started/locally/, 提升速度
3. 测试Yolov5 :
就使用源码中的Detect.py即可:
python detect.py --source 0 # webcam
file.jpg # image
file.mp4 # video
path/ # directory
path/*.jpg # glob
'https://youtu.be/NUsoVlDFqZg' # YouTube video
'rtsp://example.com/media.mp4' # RTSP, RTMP,
最新版还支持了直接通过Youtube 的url进行目标检测
3.1 Img图片测试#
然后通过detect.py对图像进行目标检测:
python detect.py --source ./data/image/bus.jpg
detect.py默认使用同目录下的yolov5s.pt 模型,如果想用其他的,可以用–weights 进行指定。
然后可以在yolov5/runs/detect目录下找到模型输出结果的文件夹 :
这是源码自带的bus.jpg识别效果:
在网上随便找了一张图片,下载试了效果也不错,同时Yolov5处理该图片时间只用了0.3s
python detect.py --source ./data/image/people.jpg
3.2 Video视频测试#
源码自带没有视频demo,这里就拿我老家的柯基狗崽子们做个测试,哈哈~
视频放到data目录中即可:
然后通过detect.py对视频进行目标检测:
python detect.py --source data/video/dog1.mp4
视频Detect就有些慢了,因为也是转换为图片放到模型处理的,我实测了19s 3M多的视频 用了97s
在识别有时候也会像下面错误识别为cat,如果用yolov5x.pt识别准确度会高一些,当然也可能因为小奶狗长的有点像小猫吧~~。。。
当然识别率也和视频拍摄角度和清晰度、晃动程度有很大关系。。
比如用固定摄像头拍摄的图像,效果会好一些:
总体来看YOLOv5识别效果也不错了,后期可以对模型进行微调和优化 来提高某一类object的识别率。。。
3.3 摄像头测试#
使用本机摄像头测试Yolov5实时检测:
python detect.py --source 0
就会弹出摄像头页面,识别到的物体会用不同颜色的方框进行标识,同时上面会显示名称和概率(置信度)
如果通过摄像头检测出识别的物体会打印出来:比如下面的person,cell phone等。
3.4 App测试#
细心的小伙伴应该看到上面第一张图片App store的宣传照片,没错,IOS可以直接下载iDetection来通过手机摄像头实时测试/使用Yolo 目标检测:
App上面也是可选择四种Yolov5 model
至此 Yolov5的安装使用测试都已经OK了,根据初步印象来看,Yolov5的配置简单,并且识别效率和速度都是不错的。。
作者:木子欢儿
出处:https://www.cnblogs.com/HGNET/p/17958422
版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。
部分文章来源于网络,如疏漏未标注原文地址或侵权,请联系进行删除。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App
2022-01-11 【Linux】安装x11vnc和xrdp,使用windows远程deepin
2021-01-11 【JS】最简单的域名防红方法,QQ/微信打开网站提示浏览器打开
2021-01-11 【HTML】建站成功默认页面
2020-01-11 【Python】异常处理
2020-01-11 【Python】成绩等级判断