大家好,我是『K同学啊』!
拖了好久,终于要开始目标检测系列了。自己想过好几次,想尽快出几期目标检测算法的博客教程,但是一直苦于不知道如何写,才能让大家轻松、快速、高效的入门目标检测算法。这段时间终于有个一个比较靠谱的思路。我是这样计划的:
首先,带大家先将算法跑起来,不然都不知道在干嘛,纯理论的东西看着头都大了,然后,教大家将官方的数据集更换成我们自己的数据集,并完成模型的训练。其次,在我们代码可以运行的情况下,从整体上讲解算法的结构。最后,挑选代码中一些比较关键的点,进行详细讲解。
文章目录
一、前言
YOLO系列是目前最热门的目标检测算法,那就拿它“开刀”了。YOLO目前已经更新到了YOLOv5,由于YOLOv5太新了,目前TensorFlow2版本还未出来(网上存在一些tf版本的,但是大概率不靠谱,就不踩坑了),那就用PyTorch吧,反正PyTorch迟早也是要学的嘛。PyTorch与TensorFlow的区别如下:
- TensorFlow:更倾向于工程人员,落地比较好。
- PyTorch:比较倾向于研究人员,前沿算法用得比较多。
某宝上找人帮忙给小项目换一个框架(TensorFlow互转PyTorch),收费一般是
1K
起步,所以啊,技多不压身。
YOLOv5又分为Yolov5s、Yolov5m、Yolov5l、Yolov5x四个版本,我这里以Yolov5s为例。
📌【YOLOv5开源地址】
二、下载源码
安装需要的环境
- 安装PyTorch环境,小白请移步这里:小白入门深度学习 | 第四篇:配置PyTorch环境
- 安装其他项目依赖包,请进入项目文件在文件地址栏中直接输入
cmd
,打开cmd
后输入:
pip install -r requirements.txt -i https://pypi.mirrors.ustc.edu.cn/simple/
其中
-i https://pypi.mirrors.ustc.edu.cn/simple/
为中国科技大学的镜像,可以加快环境包的下载速度。
如何打开CMD命令行
三、运行代码
需要的环境
- Python>=3.6.0
- PyTorch>=1.7
以同样的方法打开
cmd
,输入命令:
python path/to/detect.py --source path/to/img.jpg --weights yolov5s.pt --img 640
,注意需要将图片路径替换成你的,例如:
python detect.py --source data\images\zidane.jpg --weights yolov5s.pt --img 640
。这里我们使用的是官方已经帮我们训练好的模型。
在这个过程中,你中途可能会遇到这两个问题,不用担心,这是网络问题多试几次就好了。
TimeoutError: [WinError 10060] 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。
TypeError: unlink() got an unexpected keyword argument 'missing_ok'
如果你还是一直这样,将 yolov5s.pt (提取码:bum6)文件放到项目的主目录下ok吧,上面的两个错误都是由于下载这个文件、下载失败缺少这个文件导致的。
命令运行成功后,你将会得到如下的反馈:
进行文件夹查看我们的检测结果:
四、视频检测
同样的方法打开
cmd
输入:
python detect.py --source MyVideo_2.mp4
我的 实验视频(提取码:9vaq),或许你用得到。
你将会得到如下运行结果(因为版权问题放不了视频,难受~)
版权归原作者 K同学啊 所有, 如有侵权,请联系我们删除。