YOLO 格式数据集制作

这篇具有很好参考价值的文章主要介绍了YOLO 格式数据集制作。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

1. YOLO简介

2.分割数据集准备

3.代码展示

整理不易,欢迎一键三连!!!


1. YOLO简介

YOLO(You Only Look Once)是一种流行的目标检测和图像分割模型,由华盛顿大学的 Joseph Redmon 和 Ali Farhadi 开发。YOLO 的第一个版本于 2015 年发布,并因其高速度和准确性而迅速流行起来。

YOLO不同版本发行时间

版本 时间
YOLOv1 2015
YOLOv2 2016
YOLOv3 2018
YOLOv4 2020
YOLOv5 2021
YOLOv8 2022

        以YOLOv5为例,说明同时支持图像分类、目标识别、图像分割的多任务网络训练的数据准备工作。这几天在网上找了好几天,一边摸索,一边准备自己的数据集,终于搞定了,记录下保姆级数据集准备的教程。

YOLO 格式数据集制作


2.分割数据集准备

        通常的分割任务中数据集都是一张原始影像对应一张同样尺寸的掩模图像,YOLO最开始是跑目标检测任务,因此常用的数据组织格式都是一张原始影像对应一个json掩膜文件或者一个TXT掩膜文件,这个看不同的目标检测数据格式就知道(COCO /VOC/......),今天以一张影像对应一个txt掩膜为例来做自己的数据集。

YOLO 格式数据集制作       ------>           YOLO 格式数据集制作

 从原始的png掩膜转为YOLO需要的txt掩膜文件关键是找到txt文件中的内容和组织方式:

YOLO 格式数据集制作

        从上面实例txt文件 可以看到, 第一行的第一个值为“45”,代表类别是45,后面的一堆小数点(0.78...)代表被归一化后的多边形的x,y坐标,归一化的标准是按照原始影像大小进行归一化,比如原始像素坐标为(10,20),原始影像尺寸为100*100,那归一化后的像素坐标为(0.1,0.2)。

        回车之后,第二行开始读取第二个目标的类别和位置,以此类推。


3.代码展示

from skimage import io
import cv2
import numpy as np

def mask_to_polygon(mask: np.array, report: bool = False) -> List[int]:
    contours, _ = cv2.findContours(mask, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
    polygons = []
    for object in contours:
        coords = []
        for point in object:
            coords.append(int(point[0][0]))
            coords.append(int(point[0][1]))
        polygons.append(coords)
    if report:
        print(f"Number of points = {len(polygons[0])}")
    return np.array(polygons).ravel().tolist()
    
mask = io.imread('/labels/xxx.png')
polygons = mask_to_polygon(mask, report=True)

        函数返回得到的polygons就是一个存放了一张影像中所有目标的多边形位置了,要想得到最终的txt文件,别忘了在前面加上影像类别哦。 

        如果像简化掩膜要素,就是把距离较近的点删除一些,减少掩膜文件的大小,可以参考下面的文章。

参考:二进制掩膜转txt

官方给出的COCO128-seg数据集:下载链接文章来源地址https://www.toymoban.com/news/detail-447760.html

欢迎投票,整理不易,一键三连!!!

到了这里,关于YOLO 格式数据集制作的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • pytorch实战5——DataLoader数据集制作

    目录 1.如何自定义数据集: 咱们以花朵数据集为例: 任务1:读取txt文件中的路径和标签 任务2:通过上面字典返回数据,分别把数据和标签都存在list里 任务3:图像数据路径得完整 任务4:把上面那几个事得写在一起,整合到一个类。 任务5:数据预处理(transform)¶ 任务6:根据

    2024年02月04日
    浏览(42)
  • 基于arcgis的遥感深度学习数据集制作

    由于很多时候,我们在研究过程中往往需要根据实际情况使用自己的影像数据来提取目标物,如果没有合适的公开数据集的话,为了满足实际需要,我们就需要制作符合自己要求的数据集。 今天我们就根据实际情况来详细讲解如何利用arcgis,来制作属于自己的数据集。 首先

    2024年02月01日
    浏览(50)
  • 通信调制信号及时频图数据集制作(MATLAB)

    实现平台:MATLAB2022b         首先产生调制信号,包括八种数字调制类型和三种模拟调制类型: 二相相移键控 (BPSK) 四相相移键控 (QPSK) 八相相移键控 (8-PSK) 十六相正交幅值调制 (16-QAM) 六十四相正交幅值调制 (64-QAM) 四相脉冲幅值调制 (PAM4) 高斯频移键控 (GFSK) 连续相位频移

    2024年02月08日
    浏览(46)
  • 使用KITTI数据集的激光雷达数据(数据预处理+数据集制作+训练)

    目录 1.前言 2. 数据集简介 2.1采集区域 2.2采集平台 3. 激光雷达数据位置 4. 激光雷达数据标签含义 5. 数据预处理与训练 5.1配置openpcdet 5.2数据预处理 5.2.1数据集目录整理 5.2.2数据集格式转化 5.3训练 做激光雷达感知相关工作离不开数据集,激光雷达数据标注价格较高,可选的开

    2024年02月09日
    浏览(55)
  • yolov8-pose姿态估计数据集制作(一)

    最近在搞yolo-pose姿态识别算法,现成的模型已经挺好用了,但是在某些特定的场景下,还是识别不准。所以想着自己搞搞数据,查了网上相关的博客,基本思路都是先按照coco格式来标,然后再转化成yolo格式。不废话,直接说咋干。 这里推荐使用CVAT,好用,没啥说。GitHub链接

    2024年02月11日
    浏览(44)
  • 【GAN】pix2pix算法的数据集制作

    以代码在pycharm中运行为例: 点击上图中的“编辑配置”,如下图: 编辑上图中画红线地方Parameters:

    2024年02月10日
    浏览(38)
  • 【计算机图形学】【代码复现】A-SDF中的数据集制作与数据生成

    Follow A-SDF 的 Data Generation 部分: We follow (1) ANSCH to create URDF for shape2motion dataset (1-2) URDF2OBJ(本人认为是1-2之间需要进行的重要的过渡部分) (2) Manifold to create watertight meshes (3) and modified mesh_to_sdf for generating sampled points and sdf values. follow这个github: ANSCH 在 global_info.py 中,主要修改

    2024年02月08日
    浏览(56)
  • python实现视频抽帧,文件批量操作,文件批量处理(数据集制作的工具箱)

    环境准备 数据集制作 文件批量重命名 文件批量移动 将文件批量按照一定格式进行重命名 修改xml文件内容的方法 Pathlib库的常用接口 在计算机视觉项目中,文件批量操作和文件批量预处理是必不可少的步骤。它们涉及处理大量的图像文件,包括读取、处理、保存和预处理。

    2024年02月09日
    浏览(72)
  • win11系统AVA2.1数据集制作、训练、测试、本地视频验证(完整已跑通)

    本文参照杨帆老师的博客,根据自己的需要进行制作,杨帆老师博客原文链接如下: 自定义ava数据集及训练与测试 完整版 时空动作/行为 视频数据集制作 yolov5, deep sort, VIA MMAction, SlowFast-CSDN博客 文章浏览阅读2.2w次,点赞31次,收藏165次。前言这一篇博客应该是我花时间最多

    2024年02月19日
    浏览(54)
  • Python将COCO格式实例分割数据集转换为YOLO格式实例分割数据集

    由于本人水平有限,难免出现错漏,敬请批评改正。 更多精彩内容,可点击进入YOLO系列专栏或我的个人主页查看 YOLOv5:添加SE、CBAM、CoordAtt、ECA注意力机制 YOLOv5:yolov5s.yaml配置文件解读、增加小目标检测层 YOLOv5:IoU、GIoU、DIoU、CIoU、EIoU YOLOv7训练自己的数据集(口罩检测)

    2024年02月15日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包