1. 磐创AI首页
  2. Medium

基于Yolov5的目标检测

什么?™的对象检测?

对象检测是与计算机视觉和图像处理相关的计算机技术,其处理在数字图像和视频中检测特定类别(例如人、建筑物或汽车)的语义对象的实例。目前研究较多的目标检测领域包括人脸检测和行人检测。目标检测在计算机视觉的许多领域都有应用,包括图像移动和视频监控。c i

在了解了目标检测之后,我们去KNOWER

什么?™‘s Yolov5?

YOLOv5是在COCO数据集上预先培训的一系列对象检测架构和模型,代表了对未来Vision AI方法的超分析开源研究,结合了在数千小时的研究和开发过程中获得的经验教训和发展的最佳实践。

根据您拥有的数据量,您必须选择此型号的Yolov5。

要编写代码,我们需要Google ColabGoogle Colab

什么?™的谷歌可乐?

Google Colab是一项由Google提供的云服务,允许您使用Python语言编程,并允许您安装和使用各种Python语言包和深度学习框架,如TensorFlow、Kera、Pytorch等。Google Colab提供了允许多个开发人员处理共享源代码的功能,为团队中不同人员的开发和研究提供了丰富的环境。Google Colab

这项服务的不同寻常之处在于,除了提供了使用深度学习框架的独立平台外,还为用户提供了免费的GPU,这几乎使这项服务的效果成倍增加。该服务为每位用户提供一台NVIDIA Tesla T4(以前为Tesla K80 GPU)。用户可以使用它来开发和实现深度学习领域的应用或研究。

什么是Jupyter笔记本?

Jupyter Notebook是一种交互式计算环境,使用户能够生成基于笔记本的文档,其中包括实时代码、交互式小部件、图表、说明性文本、公式、图像和视频。

这些文档提供完整而独立的计算记录,可以转换为各种格式,也可以通过电子邮件、Dropbox、版本控制系统(如GIT/GitHub)或nbviewer.jupyter.org共享。

让?EURO™‘s开始行动吧

介绍数据库我们说过,在我们正在尝试做的项目中,我们要识别人和车!所以我们需要一个人和车的照片数据库。这个数据库中的所有图片都是通过谷歌搜索获得的。Person数据集数据库中有800张图像。此数据库中的每个图像都有一个标记。数据集的数量越多,输出效果越好。

标记工具标记对象检测数据的一种方法是编写简单的代码。您可以用您喜欢的任何编程语言编写此代码。但是这里有一个重要的点可以加快你的工作。有一些工具可用于标记检测对象数据。这些工具可以是在线的,也可以是离线的。

使用这些工具,您可以在所需对象周围绘制一个框。在某些工具中,您甚至可以分割所需的对象。拖动该框后,将创建一个包含该框详细信息的文件。在这个文件中,有顶点的坐标、我们绘制的长方体的长度和宽度。此文件通常具有扩展名XML或CSV。喜欢:LabelMe、Imglab、Supere.ly、Makeense、?LabelMe Imglab supervise.ly makesense

然后将采集到的照片和标签分别放在测试、训练、验证三个文件夹中,考虑到训练、测试、有效照片的比例分别为20%、20%和40%。

然后将您的数据集上传到Google驱动器中。

克隆repo,安装依赖项,并检查PyTorch和GPU。

!git clone https://github.com/ultralytics/yolov5  # clone repo

然后,您必须将Google Drive连接到您的项目。首先,您必须导入您的驱动器,然后他们会为您发送连接代码。

from google.colab import drive


然后创建YAML文件,保存到Yolov5->数据位置:

train: ../yolov5/train_data/images/train 
val: ../yolov5/train_data/images/val
test: ../yolov5/train_data/images/test

在Colab中导入数据集后,我们必须在项目中解压缩此文件

!unzip /content/drive/Mydrive/train_data.zip 

最后,让-Euro™‘s去运行该程序

!python train.py --img 640 --batch 20 --epochs 160 --data 'data/data.yaml' --cfg ./models/custom_yolov5s.yaml --weight '' --cash --project '../drive/My Drive/train_data

如果您的连接丢失,您可以使用以下代码:

!python train.py --resume '../drive/My Drive/train_data/
exp2/weights/best.pt'

因为yolo在列车运行过程中会在Runs文件夹中存储一系列日志,所以可以使用TensorBoard来显示度量和损耗函数

您可以看到输出结果。

原创文章,作者:fendouai,如若转载,请注明出处:https://panchuang.net/2021/09/26/%e5%9f%ba%e4%ba%8eyolov5%e7%9a%84%e7%9b%ae%e6%a0%87%e6%a3%80%e6%b5%8b/

联系我们

400-800-8888

在线咨询:点击这里给我发消息

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息