YOLO v2 训练自己的图像数据

本文详细介绍了如何使用YOLO v2训练自己的图像数据集,包括数据集准备、配置文件修改、训练过程等步骤。首先,修改darknet源码和数据路径,然后建立VOC数据集结构,使用labelImg标注工具和voc_label.py转换数据。接着,调整配置文件如tiny-yolo-voc.cfg,设置classes和filters。最后,执行训练命令开始训练模型。
摘要由CSDN通过智能技术生成

2017-10-23更新:YOLO运行环境,CUDA 8 + cuDNN5, 如果使用cuDNN6,编译都不通过。

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

初次使用YOLO,记录一下。

0、源码下载,并修改

官网:https://pjreddie.com/darknet/yolo/

1、修改example/darknet.c文件的第424行,将“cfg/coco.data”改为“cfg/voc.data”,如下,

这一步如果不修改,最后执行darknet命令去检测的时候,得到的BoundingBox显示的类名会跟实际检测到的物体“风马牛不相及”。


2、如果已经安装有cuda和cudnn,先修改Makefile文件的第一行和第二行,0改为1,

执行make,得到的darknet执行文件支持cuda和cudnn。

下面开始进入正题


1、准备数据集

准备数据是最难的一步了,我们说的详细些。

最终目的,要得到两个文件:label.txt(标签文件?标注文件?)和train.txt(包含所有训练图片的绝对路径)。

有的文档会说到第三个文件valid.txt(验证文件?测试文件),因为我们只需训练,所以valid.txt我们不需要

我用了两种方法来准备数据,本篇文章只说一种,第二种方法在此(链接)。

因为YOLO使用的是VOC数据集,所以我们仿照VOC2007数据集文件层级结构来进行。


1.1 建立VOC数据集文件层级结构

因为要用到YOLO自带的voc_label.py文件,其位于darknet/scripts目录下,强烈推荐读一下该文件。

功能一:标注工具得到的xml文件转为label.txt;功能二

评论 21
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值