书接上文,yolov5环境搭建(Windows下cpu训练)-CSDN博客  完成后,尝试调用电脑摄像头实现动态识别或者识别本地图片或视频,方法非常简单。

一.调用电脑摄像头

1.复制使用模型路径

在上文中,train.py运行完成后,打开yolov5\runs\train,找到最新的exp前缀的文件夹,我的在exp2

点击进入后,打开weights文件夹,有两个文件,如图,

一个best.pt和一个last.pt,这两个文件就是我们训练得到的模型。

best.pt 和 last.pt 是在训练深度学习模型时保存的两个不同的模型文件。

last.pt 包含最后一次训练迭代的模型参数。

在训练期间,每次完成一次迭代时,模型参数都会被保存在 last.pt 文件中。因此,当使用 last.pt 文件时,将得到最后一次训练迭代的模型。 best.pt 包含在整个训练过程中获得最佳性能的模型参数。通常,这是在验证集上达到最佳性能的模型。保存最佳模型的方法是在每次完成验证集上的迭代时,如果获得了更好的性能,则将模型参数保存到 best.pt 文件中。因此,当使用 best.pt 文件时,将得到整个训练过程中性能最佳的模型。 在应用深度学习模型时,通常建议使用 best.pt 文件,因为它提供了整个训练过程中性能最佳的模型。但是,如果仅仅希望继续训练模型,则可以使用 last.pt 文件。(以上摘自大佬的学习总结,原文如下)【学习总结】win10下yolov5使用GPU训练自己的模型,同时调用网络摄像头识别目标、学习指南与踩坑经验_用gup训练需要安装哪些软件-CSDN博客

此处用作练习可以任意选取一个模型,复制其路径

2.修改使用模型并调用摄像头

打开detect.py文件,找到parse_opt()函数,修改weights和sourse

修改  --weights 为  runs/train/exp2/weights/last.pt  修改使用模型的位置,这里我们使用last.pt模型

修改  --source 为 0    修改调用摄像头0,如果有多个可以改1、2、3

运行detect.py,运行成功,不过识别效果一般,训练集(coco128)和权重文件的问题,后续可以改进。

二.识别本地图片或视频

同样,打开detect.py文件

修改  --weights 为  runs/train/exp2/weights/last.pt  修改使用模型的位置

当识别文件夹里的图片,修改  --source 为  mydata/images/test   识别相对路径里mydata/images/test里我们放的测试集里所有图片

如果识别单个视频或图片,修改 --source 为  video\test.mp4    识别相对路径video/test.mp4   识别mp4视频文件 

这里我选择本地的单个图片,复制文件地址(复制本地文件的路径后记得将  \  修改为  /  ),否则读取失败。

改好后运行detect.py,运行结果在exp3中。

GitHub 加速计划 / yo / yolov5
578
37
下载
yolov5 - Ultralytics YOLOv8的前身,是一个用于目标检测、图像分割和图像分类任务的先进模型。
最近提交(Master分支:1 个月前 )
6981c274 Refactor code for speed and clarity Co-authored-by: UltralyticsAssistant <web@ultralytics.com> 21 天前
f003c3df This commit resolves an issue where the save-csv command did not write the CSV header. The code now correctly saves the header in the CSV file. Signed-off-by: Ali Ghanbari <alighanbari446@gmail.com> Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com> 26 天前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐