YOLO系列网络训练数据准备工具—Yolo_mark
项目介绍
Yolo_mark是一个检测任务数据集制作工具,制作完成后的数据格式不是VOC或者COCO的数据格式,从它的名字也可以看出,它是专门为了YOLO系列的网络训练准备数据的,YOLO这一点还是很任性的,它没有使用任何一个已有的深度学习框架来实现他的代码,而是自己写了一个纯C的轻量级框架—darknet,所以它的训练数据准备也不是按照标准开源数据集那样的格式。Yolo_mark就是专门为了准备YOLO准备训练数据的,这里是它的github地址。
该项目支持windows和linux两中系统,依赖Opencv库,2.X或者3.X都可以。如果是windows的话,需要VS2013或VS2015。
使用
下面介绍下windows下如何使用Yolo_mark:
项目中已经提供了.sln文件,使用VS2013或VS2015打开解决方案后,在x64和Release平台下编译这个工程,需要注意的是,我们需要先配置好OpenCV,这个过程就不详细说了。
编译成功后会在x64下的Release文件夹中生成.exe程序,然后通过yolo_mark.cmd的命令行文件运行这个生成的exe程序就好了。
效果就是这样,一个很简单的GUI界面:
Yolo_mark运行还是很好实现的,关键的问题是数据如何组织,因为这些数据要用到YOLO的网络训练中。
数据组织形式
项目中的data文件夹内存放需要标注的数据与标注后的结果:
.data文件中定义了目标检测的类别数量,训练数据与测试数据的txt文件列表,各个类别的名字(它是从.names)文件中获取到的:
classes= 1
train = data/train.txt
valid = data/valid.txt
names = data/obj.names
backup = backup/
.names文件中定义了各个类别的名字,每个类别的名称都在单独的一行,行数与名称一一对应,比如做单类别行人检测时,.names文件中只有一行:
human
此时,human就是id 0。
train.txt文件为训练数据的列表,它由img文件夹内存放的数据自动获取:
data/img/0.jpg
data/img/1.jpg
data/img/2.jpg
data/img/3.jpg
data/img/4.jpg
data/img/5.jpg
data/img/6.jpg
data/img/7.jpg
最后就是img文件夹了,开始标注之前,img文件夹内只存放需要标注的图像数据(要求.jpg文件),一张图片标注完成之后,会给该图片生成一个名字相同的.txt文件,里面存放的就是bbox的信息:
.txt文件中,每一行都是一个目标的信息,这意味着有几行数据,图像中就标注了几个目标,它根据“id x y w h”的形式存放,其中“ x y w h”都是经过归一化之后的。比如0.txt文件中的结果:
0 0.341797 0.547917 0.049219 0.118056
0 0.731250 0.581944 0.050000 0.225000
YOLO系列网络训练数据准备工具—Yolo_mark相关推荐
- yolo系列网络算法的演变过程
目录 目标检测的历史发展历程: Yolo1 论文地址 Yolo1结构图: 设计思路: Yolo1输出形状 bbox的置信度计算 bbox的所属类的置信度计算 Yolo1的损失函数 四个部分 loss函 ...
- Yolo系列检测网络不再孤单,延伸框架层出不穷(附框架源代码)
点击蓝字关注我们 关注并星标 从此不迷路 计算机视觉研究院 学习群|扫码在主页获取加入方式 计算机视觉研究院专栏 作者:Edison_G 至今,目标检测框架已经百花齐放,各种应用场景.应用限制的要求, ...
- YOLO系列(v1~v3)的学习及YOLO-Fastest在海思平台的部署(中)
YOLO系列(v1~v3)的学习及YOLO-Fastest在海思平台的部署(上) YOLO系列(v1~v3)的学习及YOLO-Fastest在海思平台的部署(中) YOLO系列(v1~v3)的学习及Y ...
- TensorFlow2-神经网络训练
TensorFlow2神经网络训练 文章目录 TensorFlow2神经网络训练 梯度下降 反向传播 训练可视化 补充说明 梯度下降 梯度∇f=(∂f∂x1;∂f∂x2;-;∂f∂xn)\nabla ...
- 网络训练生成飞行轨迹
网络训练生成飞行轨迹 介绍 本文是博客的子文.介绍如何对网络进行训练.主要代码文件如下: 整体代码框图如下,本文介绍框图中的B模块: 网络结构 网络结构定义代码在 nets.py中,模型名称为 Pla ...
- 【YOLO系列】YOLOv5超详细解读(网络详解)
前言 吼吼!终于来到了YOLOv5啦! 首先,一个热知识:YOLOv5没有发表正式论文哦~ 为什么呢?可能YOLOv5项目的作者Glenn Jocher还在吃帽子吧,hh 目录 前言 一.YOLOv5 ...
- 【目标检测】yolo系列:从yolov1到yolov5之YOLOv5训练自己数据集(v6.0)
一.源码下载及requirments 源码下载地址:https://github.com/ultralytics/yolov5 (持续更新中) 本人所用环境如下: pytorch:1.8(因为cuda ...
- 【深度学习】快照集成等网络训练优化算法系列
[深度学习]快照集成等网络训练优化算法系列 文章目录 1 什么是快照集成? 2 什么是余弦退火学习率? 3 权重空间中的解决方案 4 局部与全局最优解 5 特别数据增强 6 机器学习中解决数据不平衡问 ...
- yolo v3制作自己的数据_小白也能弄懂的目标检测之YOLO系列 第一期
大家好,上期分享了电脑端几个免费无广告且实用的录屏软件,这期想给大家来讲解YOLO这个算法,从零基础学起,并最终学会YOLOV3的Pytorch实现,并学会自己制作数据集进行模型训练,然后用自己训练好 ...
最新文章
- python多线程的使用(导入线程模块、创建子线程任务、启动子线程任务、获取当前执行的线程号)
- Grafana Worldmap外网用户request地图监控
- RS485光纤中继器有哪些优缺点?
- mysql jdbc驱动_JDBC认识与实践
- java点_java常见基础点
- CDOJ 1803 绿帽自动机 思维题
- Hibernate处理MySQL的时间
- python异常信息中最重要的部分是_Python中获取异常(Exception)信息
- boost::variantT1, T2类型变量的适配
- DevExpress 创建EXCEL
- webmin开新网站/创建虚拟服务器失败setquota: Quota file not found
- 3D滚动控件实现抽奖效果
- matlab转置的问题
- 基于bind搭建智能dns
- 如何在云服务器上自动运行.py文件
- 2020-10-18Go语言接口
- sqlserver2012不允许保存更改,阻止保存要求重新创建表的更改
- 模拟电子技术之学前必备知识点
- 混币器Tornado遭制裁 对DeFi市场意味着什么?
- 暑假期间,怎么保护好孩子的视力?盘点适合孩子用的护眼台灯