从头开始训练自己的YOLOv3检测器
想要拥有自己的yolo3目标检测器吗?通过 此博客你可以从头开始训练自己的yolo3目标检测器
本文是基于github上开源项目并根据自己亲身使用来撰写的,旨在帮助对github上此项目不熟的人提供中文教程,让小伙伴们感受到人工智能的魅力。
数据集准备
在本文中我们是使用猫咪的数据集,数据集你可以使用网上现有的开源数据集还可以自己创建数据集
收集数据
创建图像数据集,可以考虑使用Chrome扩展程序,例如Fatkun Batch Downloader,该扩展程序可让您轻松构建自己的数据集。
克隆仓库
在开始之前,请将github.com/AntonMu/TrainYourOwnYOLO的存储库克隆到本地计算机。确保设置虚拟环境并安装要求。
并且请保留项目中的原有的文件结构
数据标注
收集到足够多的猫脸数据集(为保证训练效果请至少收集100个以上的猫咪图片)后需要对图像进行标注,标记图像的工具,我建议使用Microsoft的可视对象标记工具(VoTT),该工具具有适用于Windows,Mac和Linux的发行包,网址为:https://github.com/Microsoft/VoTT/releases
不同的操作系统应该下载不同的应用程序
Mac:下载并安装vott-2.x.x-darwin.dmg;
Windows:下载并安装vott-2.x.x-win32.exe;
Linux:请下载并安装vott-2.x.x-linux.snap
安装后,创建一个新项目并将其命名为Annotations。然后选择TrainYourOwnYOLO / Data / Source_Images / Training_Images作为源和目标连接。在导出设置下,选择逗号分隔值(CSV)作为提供者,然后点击保存导出设置。现在,开始通过在猫脸周围绘制边框来标记猫脸。
标记了足够多的猫脸后,请按CRTL + E导出项目。在TrainYourOwnYOLO / Data / Source_Images / Training_Images文件夹中,您现在应该看到一个名为vott-csv-export的新文件夹,其中包含Annotations-export.csv。
接下来,进入TrainYourOwnYOLO / 1_Image_Annotation文件夹运行转换脚本以将注释转换为YOLO格式
python Convert_to_YOLO_format.py
训练YOLOv3模型
进入TrainYourOwnYOLO / 2_Training并运行以下代码下载好预训练权重模型
python Download_and_Convert_YOLO_weights.py
并运行以下代码,进行训练
python Train_YOLO.py
此过程可能需要几分钟到几个小时。建议使用GPU来加快培训速度。最终权重保存在TrainYourOwnYOLO / Data / Model_Weights中
使用自己训练的yolo3检测器
将自己要测试的图片放入TrainYourOwnYOLO / Data / Source_Images / Test_Images文件夹内
然后进入TrainYourOwnYOLO / 3_Inference并运行:
python Detector.py
上一篇: python对图片中的表格拆分
下一篇: 递推算法4——顺推法之杨辉三角问题
推荐阅读
-
Windows下自己训练数据集,在pytorch上实现基于SSD的物体检测
-
从头开始训练自己的YOLOv3检测器
-
Tensorflow之基于slim训练自己的模型
-
tensorflow深度学习实战笔记(一):使用tensorflow slim自带的模型训练自己的数据
-
在谷歌目标检测(Google object_detection) API 上训练自己的数据集
-
利用Tensorflow构建和训练自己的CNN来做简单的验证码识别方式
-
PaddleDetection——使用自己制作的VOC数据集进行模型训练的避坑指南
-
darknet-yolov3训练自己的数据
-
【代码调试】使用华为云训练自己的代码
-
detectron2训练自己的数据实现目标检测和关键点检测(一) ubuntu18.04安装测试detectron2