深度学习——制作自己的VOC图像分割数据集

1、数据集介绍
COCO数据集有80个类别,VOC数据集有20个类别。当这些数据集类别中没有自己需要的时候,就需要自己动手做自己的数据集了。

我自己在做数据集的时候主要使用到了labelme和labelImg两个工具。labelme主要是制作语义分割数据集(ImageSets,JPEGImages,SegmentationClass,SegmentationObject几个文件夹),labelImg主要是制作目标检测数据集(主要是Annoations中的xml文件),最后把两个合在一起就可以使用maskR-CNN来训练了。文件结构如下图所示:
在这里插入图片描述
2、安装labelme

参考:Windows下使用labelme标注图像
在这里插入图片描述

3、开始数据集制作
点击OpenDir打开要制作数据集图片的文件夹。点击CreatePolygons标记图片就可以了,最后每张图片标记好之后,别忘记点击save保存。此时的会保存问json格式的文件,如图所示:
在这里插入图片描述
接下来就要转换这些json格式为轮廓图片。
将图片和json文件放在同一个文件夹,命名为data_annotated
在这里插入图片描述

在data_annotated文件的目录下启动cmd,命令conda activate labelme切换至labelme环境下。

编辑labelme2voc.py文件

#!/usr/bin/env python

from __future__ import print_function

import argparse
import glob
import os
import os.path as osp
import sys

import imgviz
import numpy as np

import labelme


def main():
    parser = argparse.ArgumentParser(
        formatter_class=argparse.ArgumentDefaultsHelpFormatter
    )
    parser.add_argument("input_dir", help="input annotated directory")
    parser.add_argument("output_dir", help="output dataset directory")
    parser.add_argument("--labels", help="labels file", required=True)
    parser.add_argument(
        "--noviz", help="no visualization", action="store_true"
    )
    args = parser.parse_args()

    if osp.exists(args.output_dir):
        print("Output directory already exists:", args.output_dir)
        sys.exit(
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于使用 YOLOv8 训练自己的 VOC 分割数据集,你可以按照以下步骤进行操作: 1. 数据集准备: - 下载 VOC 数据集,该数据集包含了图像和相应的标注文件,可以从 VOC 数据集官方网站获取。 - 确保你有一个包含图像和标注的数据集文件夹。 2. 数据集转换: - 使用脚本将 VOC 数据集转换为 YOLOv8 的格式。你可以使用开源的代码库,如 convert2Yolo,来完成这个转换过程。该代码库可以将 VOC 格式转换为 YOLO 格式,并生成相应的标注文件。 - 运行转换脚本,将 VOC 数据集转换为 YOLOv8 的格式。 3. 配置文件: - 创建一个配置文件,用于描述你的数据集和训练参数。配置文件通常包含以下内容: - 输入图像大小 - 类别数量 - 训练集、验证集和测试集的路径 - 学习率、批大小等超参数 - 根据你的数据集和实验需求,调整配置文件中的参数。 4. 模型训练: - 使用 YOLOv8 框架进行模型训练。你可以选择使用开源的 YOLOv8 实现,如 Darknet 或 PyTorch-YOLOv3。 - 根据你选择的框架,按照其文档和示例代码进行模型训练。 - 在训练过程中,你可以通过调整超参数、增加数据增强等方法来提高模型性能。 5. 模型评估: - 在训练完成后,使用测试集来评估训练得到的模型的性能。 - 运行评估脚本,该脚本会计算模型在测试集上的准确率、召回率等指标。 以上是一个大致的步骤,你可以根据自己的实际需求和数据集的特点进行调整。建议在开始训练之前,先详细了解 YOLOv8 的原理和使用方法,以及相关的数据集处理工具和框架。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值