从零开始安装并运行YOLOv5
该文主要实现用YOLOv5的基准检测为自己的视频片段渲染对象检测结果和边界框,本文大部分都是实操,帮助大家快速上手。
什么是YOLOv5?
yolo是一种用于对象检测的最先进的机器学习模型,yolo有不同的版本比如v5v8,如果你提供一个输入,它会给你返回一个输出,那么yolo的输入和输出是什么呢?yolo接受图像或者是一批图像作为其输入,在处理该图像后,它会在图像上放置边界框,它会告诉你在每个边界框中检测到的一个对象,这些边界框就是输出,它还识别每个边界框中的对象是什么,如下图。
图片中有一个红色框标识了person,黄色框标识了backpack,简而言之,yolo就是一台将此类边框放在图片上的机器。但是yolo不会直接将这些边界框绘制或渲染到图像上,而是为每个边界框提供多个值,它为每个边界框提供xmin、xmax、ymin、ymax,标识该边界框的位置,第五个值label代表标签,其中有一个id,例如0标识person,27代表tie(领带)等等
因此,当id为0时,我们知道这里有一个人,然后我们就可以渲染此边界框时写入,最终值是置信度,告诉你整个结果的确定性。
如何使用我们自己的视频在我们自己的计算机上使用YOLO?
正式开始操作!!!
1、环境配置
首先我们需要一个Python环境,这个过程不需要会Python编程,因为代码已经存在,我们只需要运行它即可。这里可以使用一个单独的Python环境或者Anaconda中的环境,本文用的是单独的Python环境,如果你没有Python环境或者有很多个Python环境,请看作者的另一篇文章,pip安装报错?彻底弄清Python软件包安装流程并解决安装错误,文中也会清楚的说明如何把python和pip加入到环境变量中,这也是环境配置中重要的一环。
2、下载YOLOv5
下载网址:GitHub - ultralytics/yolov5: YOLOv5 🚀 in PyTorch > ONNX > CoreML > TFLite
点击Download即可下载,下载完成后解压。
此时我们就得到了这样一个文件夹,如下图。
3、安装必要的库
首先我们要安装的库是pytorch,网址:PyTorch,下滑找到下图页面,我用的是Windows所以选择Windows,因为是单独的python环境所以选择pip,有显卡GPU的话可以选择CUDA对应版本,这里我选择CPU版本,选择好后,最下方就会出现终端指令,复制在终端运行即可。
终端运行。
在这里我出现了这个错误,这是因为我代理忘记关了,此时可以关闭代理或者让终端也处于代理模式,终端代理指令看这篇文章。
处理好后再次执行命令,就能安装成功啦,如下图。
4、开始使用
先切换到yolov5所在目录,如下图操作,你的yolov5放在哪你就去哪找,我这里放在e盘。
然后,你可以放一个你想要输入的视频在该文件夹中,如下图。
接着,终端执行以下命令。
python detect.py --source PUBG.mp4
此时提示没有某某模块。
那就使用pip安装一下这个模块就行,如果提示没有别的模块也同理(这里注意如果安装yaml需要把模块名称写成pyyaml)。
安装好后再次执行。
python detect.py --source PUBG.mp4
可以看到已经在输出了。
最后进入到结果路径文件夹就能找到输出的视频。
其他版本yolo
我们在yolov5主页可以看到还有很多个版本的yolo,如下图。
我们可以使用版本的yolo,例如指定yolov5s6,使用以下命令。
python detect.py --source PUBG.mp4 --weights yolov5s6.pt
可以使用版本的yolo,例如指定yolov5s6,使用以下命令。
python detect.py --source PUBG.mp4 --weights yolov5s6.pt
教程就到这里啦,希望大家能顺利运行。