首页/新闻资讯/正文详情

PaddleSeg 自定义数据集准备与配置实战:目录结构、文件列表生成与 Dataset 配置详解

发布时间:2026/9/27 3:44:04 来源:云帆数科 栏目:资讯中心
PaddleSeg 自定义数据集准备与配置实战:目录结构、文件列表生成与 Dataset 配置详解
人工智能计算机视觉预训练【免费下载链接】PaddleSegEasy-to-use image segmentation library with awesome pre-trained model zoo, supporting wide-range of practical tasks in Semantic Segmentation, Interactive Segmentation, Panoptic Segmentation, Image Matting, 3D Segmentation, etc.项目地址https://gitcode.com/gh_mirrors/pa/PaddleSeg点击查看免费下载本文是 PaddleSeg 自定义数据集使用指南完整覆盖从原始图片/标注整理、自动划分生成train.txt/val.txt/test.txt文件列表到在训练配置文件中声明自定义数据集的全部流程。读完本文你将掌握 PaddleSeg 自定义数据集的标准目录规范、两个文件列表生成脚本split_dataset_list.py与create_dataset_list.py的全部参数含义与使用场景并能独立编写一份可直接用于训练的train_dataset/val_datasetYAML 配置同时理解底层 Dataset 数据集类 的读取原理与常见报错规避方法。1. 自定义数据集的标准目录结构使用自定义数据集训练的第一步是按照 PaddleSeg 约定组织目录结构。官方文档建议将数据集划分为如下形式custom_dataset | |--images | |--image1.jpg | |--image2.jpg | |--... | |--labels | |--label1.jpg | |--label2.png | |--... | |--train.txt | |--val.txt | |--test.txt其中images/存放原始图像labels/存放与之一一对应的标注图分割任务中通常为单通道灰度 PNG像素值即类别编号根目录下三个 txt 文件分别描述训练、验证、测试三个子集的样本清单。train.txt、val.txt的内容格式如下每一行由「图像相对路径 分隔符 标注相对路径」构成images/image1.jpg labels/label1.png images/image2.jpg labels/label2.png ...这两类 txt 文件正是 PaddleSeg 的 dataset 父类 Dataset 读取数据的依据所有内置数据集类Cityscapes、VOC、ADE20K 等都继承自该类自定义数据集同样通过它加载。也就是说只要把数据整理成上述结构并生成对应的 txt 文件列表PaddleSeg 就能以统一的方式完成训练、验证与预测的数据加载。2. 方式一自动化划分数据集split_dataset_list.py如果你的原始数据尚未按上述结构划分只有零散的原图和标注图没有训练/验证/测试子集推荐使用split_dataset_list.py脚本一键完成「随机打乱 按比例切分 生成 txt」。2.1 前置目录整理首先将自定义数据集摆放成如下结构目录名、文件名均可自定义./dataset/ # 数据集根目录 |--images # 原图目录 | |--xxx1.jpg (xx1.png) | |--... | └--... | |--annotations # 标注图目录 | |--xxx1.png | |--... | └--...2.2 命令格式与参数说明python tools/data/split_dataset_list.py dataset_root images_dir_name labels_dir_name ${FLAGS}位置参数说明dataset_root数据集根目录images_dir_name原图目录名labels_dir_name标注图目录名。可选 FLAGS 说明如下表与当前仓库 split_dataset_list.py 中argparse实际注册的参数对照| FLAG | 含义 | 默认值 | 参数数目 | | - | - | - | - | |--split| 数据集切分比例训练/验证/测试 |0.7 0.3 0| 3 | |--separator| 文件列表分隔符 | 空格 | 1 | |--format| 图片和标签集的数据格式 |jpg png| 2 | |--postfix| 按文件主名无扩展名是否包含指定后缀对图片和标签集进行筛选 | 2 个空字符 | 2 |需要说明的是文档中的参数表还列有--label_class标注类别默认__background__ __foreground__当前仓库源码中实际注册的 flag 为--split、--separator、--format、--postfix四个类别数量在训练配置中以num_classes指定见第 4 节。从源码实现generate_list可以看到几个关键约束与行为--split三个比例之和必须为 1且每个取值须在 0~1 之间否则脚本抛出ValueError若第三个比例设为 0则不生成test.txt的样本内容文件仍会创建脚本通过glob匹配目录、子目录乃至三级子目录下的文件get_files因此原图/标注可以放在多级子目录中切分前会对原图与标注采用相同随机种子同步打乱保存np.random.get_state()后分别 shuffle保证原图与标注的配对关系不被破坏写入 txt 时会把dataset_root前缀从路径中剥离只保留相对路径。2.3 使用示例以 6:2:2 的比例切分、图片格式 jpg、标注格式 png 为例python tools/data/split_dataset_list.py dataset_root images annotations --split 0.6 0.2 0.2 --format jpg png2.4 数量匹配要求重要约束生成文件列表必须满足以下条件之一原图与标注图片数量一致一一配对只有原图没有标注图片如纯测试场景。若数据集缺少标注图片将生成不含分隔符和标注图片路径的文件列表每行只有图像路径。源码中当原图与标注数量不一致时会直接抛出Exceptionsplit_dataset_list.py提示检查数据集。运行后将在数据集根目录下生成train.txt、val.txt、test.txt以及labels.txt后者用于记录类别名称列表。3. 方式二已有划分好的数据集仅生成文件列表create_dataset_list.py如果你的数据集已经按 train/val/test 划分好了目录例如遵循images/train、annotations/train这种二级目录结构则无需再做随机切分直接执行create_dataset_list.py生成文件列表即可。3.1 基本用法指定分隔符与格式# 生成文件列表其分隔符为空格图片和标签集的数据格式都为 png python tools/data/create_dataset_list.py your/dataset/dir --separator --format png png3.2 指定文件夹与二级目录名# 生成文件列表其图片和标签集的文件夹名为 img 和 gt # 训练和验证集的文件夹名为 training 和 validation不生成测试集列表 python tools/data/create_dataset_list.py your/dataset/dir \ --folder img gt --second_folder training validation该脚本支持的参数见 create_dataset_list.pydataset_root位置参数必须指定的数据集目录--type数据集类型custom默认或cityscapes。选择cityscapes时会自动套用 Cityscapes 专用配置_leftImg8bit与_gtFine_labelTrainIds后缀、leftImg8bit/gtFine目录、png 格式自定义数据集无需指定--type--folder原图与标注文件夹名默认images annotations--second_folder二级目录训练/验证/测试子集名默认train val test可只写training validation以跳过测试集--separator文件列表分隔符默认空格--format图片与标签格式默认jpg png--postfix文件名后缀过滤默认空。运行后在数据集根目录下生成train.txt、val.txt、test.txt和labels.txt。PaddleSeg 正是通过读取这些文本文件来定位图像路径的。3.3 标签编码约定关于标注图的像素值有一条必须遵守的约定官方文档明确说明标注类别编号从 0、1 开始连续取值不能跳跃例如只有类别 0 和类别 1不应出现 3 而缺失 2如果有需要忽略的像素如边缘、未知区域将其标为255这与 Dataset 类的ignore_index255默认值一致见下节。4. 在训练配置中声明自定义数据集数据文件准备好后即可在训练配置文件中声明数据集。划分好的训练数据集可按如下方式配置验证数据集同理将mode改为valtrain_dataset: type: Dataset dataset_root: the-relative-path-to-your-data num_classes: 2 transforms: - type: ResizeStepScaling min_scale_factor: 0.5 max_scale_factor: 2.0 scale_step_size: 0.25 - type: RandomPaddingCrop crop_size: [512, 512] - type: RandomHorizontalFlip - type: Normalize mode: train4.1 关键字段说明type: Dataset使用 PaddleSeg 通用的自定义数据集类即 dataset.py 中注册的Dataset。当mode为train时PaddleSeg 会自动定位根目录下的train.txt为val/test时对应val.txt/test.txt。dataset_root填写数据根目录相对路径或绝对路径均可相对路径基于配置文件位置解析。num_classes类别总数不含忽略像素 255源码中要求num_classes 1否则抛出ValueErrordataset.py。mode必须是train、val、test三者之一否则直接报错dataset.py。transforms数据预处理与增强流水线由 Compose 按顺序串行执行。4.2 transforms 各算子源码级解读均见 paddleseg/transforms/transforms.pyResizeStepScalingtransforms.py在min_scale_factor与max_scale_factor之间按scale_step_size步长随机取缩放系数对图像与标注做等比缩放。默认值分别为 0.75、1.25、0.25要求最小值不大于最大值否则抛ValueError。文档示例用 0.5~2.0、步长 0.25覆盖更大的尺度扰动范围。RandomPaddingCroptransforms.py随机裁剪crop_size大小的子图若原图小于裁剪尺寸则在右下方向做 padding 补齐——原图 padding 值为 127.5标注图 padding 值为 255即 ignore_index不参与 loss 计算从而避免裁剪边界被误当成某个类别。另有category_max_ratio单类别最大占比与loop_times最大尝试次数默认 10等进阶参数。RandomHorizontalFliptransforms.py以概率prob默认 0.5水平翻转并且会同步翻转标注图通过gt_fields机制保证图像与标签增强一致。Normalizetransforms.py按 mean/std 对图像归一化默认(0.5,)、(0.5,)长度需为 1 或 3分别对应灰度图与三通道图。实际训练时val_dataset通常不包含随机增强算子只做 Resize/Normalize以保证评估结果稳定。5. 底层原理Dataset 类如何读取自定义数据理解 paddleseg/datasets/dataset.py 的读取逻辑有助于排查「文件列表格式错误」等常见问题。其核心流程如下构造阶段__init__根据mode选择对应的train_path/val_path/test_path三者任一缺失或路径不存在都会报错逐行读取 txtline.strip().split(separator)得到[图像路径, 标注路径]train/val 模式下每行必须恰好有 2 列否则抛出File list format incorrect!test 模式允许只有 1 列无标注用于纯推理场景将文件内记录的相对路径与dataset_root拼接为完整路径dataset.py。取样本阶段__getitem__返回图像、标签并把label加入gt_fields列表使图像与标签执行同步增强val 模式下若标签是二维数组会补成[1, H, W]。需要边缘监督edgeTrue时还会调用mask_to_binary_edge生成边缘 mask供带边缘损失的模型使用。因此只要你的 txt 文件满足「两列、以空格分隔、路径基于 dataset_root 可解析」自定义数据集就能无缝接入 PaddleSeg 的 训练入口 tools/train.py、验证与预测全流程。6. 常见问题与注意事项速查图片与标注数量不一致split_dataset_list.py会直接报错请检查images与annotations目录是否存在多余文件或子目录未被 glob 匹配到。文件列表行数不足两列训练/验证时必须每行包含图像与标注两列且分隔符要与生成 txt 时使用的--separator一致默认空格测试列表可仅含图像路径。类别编号跳跃标注像素值必须从 0 开始连续编号需要忽略的区域统一标记为 255。--split之和必须为 1例如0.7 0.3 0或0.6 0.2 0.2否则脚本抛ValueError。--postfix过滤适合同一目录下混有_leftImg8bit、_gtFine等命名变体文件的场景普通自定义数据保持默认空即可。目录与文件名自由split_dataset_list.py与create_dataset_list.py均支持自定义文件夹名images/annotations、img/gt、train/val/test等只需保证参数与目录结构一致。按照上述流程完成「目录整理 → 生成 txt → 编写 YAML 配置」三步后即可直接使用python tools/train.py --config your_config.yml启动自定义数据集的训练。赞分享人工智能计算机视觉预训练【免费下载链接】PaddleSegEasy-to-use image segmentation library with awesome pre-trained model zoo, supporting wide-range of practical tasks in Semantic Segmentation, Interactive Segmentation, Panoptic Segmentation, Image Matting, 3D Segmentation, etc.项目地址https://gitcode.com/gh_mirrors/pa/PaddleSeg点击查看免费下载相关推荐使用 PaddleSeg 准备自定义数据集目录结构、文件列表生成与训练配置全指南使用 PaddleSeg 准备自定义数据集目录结构、文件列表生成与训练配置全指南 本文是一份面向 PaddleSeg 用户的完整自定义数据集准备指南覆盖从数人工智能计算机视觉预训练PaddleSeg 自定义数据集准备全指南目录划分、文件列表生成与训练配置PaddleSeg 自定义数据集准备全指南目录划分、文件列表生成与训练配置 本指南面向需要在 PaddleSeg 中使用自建图像分割数据集进行训练的开发者完人工智能计算机视觉预训练配置管理详解fuels-ts配置文件结构与自定义选项配置管理详解fuels ts配置文件结构与自定义选项 概述 Fuel Network 是一个专为区块链应用设计的高性能Layer 2解决方案而 fuels区块链Web3创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关推荐

做国外网站完整流程拆解 从0到1搞懂技术栈与运营避坑
做国外网站完整流程拆解 从0到1搞懂技术栈与运营避坑

做国外网站完整流程拆解 从0到1搞懂技术栈与运营避坑 想给公司做套海外业务,手里没代码底子,心里肯定打鼓。别慌, 自己不会代码想做网站 这事儿,在2024年根本难不倒人,关键在于你走对路。… · 2026/9/27 3:43:58

12 本 科普书 推荐 (第 1 波)
12 本 科普书 推荐 (第 1 波)

(本文使用 AI 辅助创作) 声明: 仅为个人体验, 仅供参考. 大部分 科普书 (科普文章) 读完还是一大堆问号 (?? ?), 感觉啥也没有学到. 要想获得真正的知识 (而非 哄小孩的玩具), 只能去 “批量进货”. 本文推荐一些知识含量较高的 科普书, 这些书窝都读过一遍 (只读过目录,… · 2026/9/27 3:43:58

【实测】AI 办公 Agent 横向测评:从“能不能干活“到“干完能不能信“
【实测】AI 办公 Agent 横向测评:从“能不能干活“到“干完能不能信“

【实测】AI 办公 Agent 横向测评:从"能不能干活"到"干完能不能信" 标签:AI Agent / 测评 / 开源 / 本地部署 / 办公自动化 / DeepSeek / Ollama 选 AI 办公工具的时候,大家习惯看功能列表。这个方式有问题,因… · 2026/9/27 3:43:46

越秀区做网站别踩坑,避坑指南教你挑对服务商
越秀区做网站别踩坑,避坑指南教你挑对服务商

越秀区做网站别踩坑,避坑指南教你挑对服务商 改个按钮颜色拖一周,加个表单收不到邮件,这种建站公司真的不少。很多在越秀区搞实业、做贸易的老板,问得最多的一句话就是:越秀区做网站,到底哪家好?说实话,这行水很深,价格从几千到几万都有,但坑也对应… · 2026/9/27 4:20:46

东莞网站设计知名乐云seo多少钱?揭秘模板站变废为宝的实战成本
东莞网站设计知名乐云seo多少钱?揭秘模板站变废为宝的实战成本

东莞网站设计知名乐云seo多少钱?揭秘模板站变废为宝的实战成本 还在为官网被当成“垃圾站”而焦虑吗?那些千篇一律的模板网站,不仅丑得让人想关页面,更致命的是它们根本接不住搜索流量。很多东莞老板问乐云seo多少钱,其实钱不是花在买模板上,而是… · 2026/9/27 4:20:46

消费品新品分析试点:统一指标口径如何提升验证效率
消费品新品分析试点:统一指标口径如何提升验证效率

导语 消费品行业新品迭代速度不断加快,小范围上线试点验证已经成为企业控制试错成本、快速验证新品市场接受度的常规操作。但在实际推进过程中,不少企业都会遇到指标口径不统一导致的数据打架问题,同样的新品点击率、动销率,不同部… · 2026/9/27 4:20:40

2026最新wordpress收费下载系统避坑指南
2026最新wordpress收费下载系统避坑指南

2026最新wordpress收费下载系统避坑指南 域名买好了,服务器也租了,为什么网站还是打不开? 是不是配置里少了一行指令,或者SSL证书没配对? 很多刚入行的兄弟,卡在“域名服务器搞不懂”这一关,花了不少冤枉钱。… · 2026/9/27 4:20:40

1932年「南宋」活字重生:朱雀仿宋的设计故事与民国仿宋字潮的来龙去脉
1932年「南宋」活字重生:朱雀仿宋的设计故事与民国仿宋字潮的来龙去脉

1932年「南宋」活字重生:朱雀仿宋的设计故事与民国仿宋字潮的来龙去脉 【免费下载链接】朱雀仿宋 开源仿宋字库计划 项目地址: https://gitcode.com/TrionesType/zhuque 如果你正在找一套能免费商用的开源仿宋字体,那么「朱雀仿宋」值得关注。它是… · 2026/9/27 4:20:34

树莓派工业级控制器 BL460:从开发板到控制柜的完整落地指南
树莓派工业级控制器 BL460:从开发板到控制柜的完整落地指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/27 4:20:28

MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现
MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现

简介:这套Matlab仿真工具完整呈现雷达信号脉冲压缩过程,从线性调频(LFM)信号生成、目标回波仿真到匹配滤波压缩处理均有可运行代码支撑,面向电子信息工程、计算机、数学等专业学生,适用于课程设计、期末大作… · 2026/9/27 0:00:01

汕头网站建设制作厂家避坑指南:5大注意事项救急
汕头网站建设制作厂家避坑指南:5大注意事项救急

汕头网站建设制作厂家避坑指南:5大注意事项救急 改个需求建站公司拖一周,这种憋屈事我见得太多了。 很多汕头老板找本地建站团队,签合同前看着方案挺美,一上线就变脸。 今天不聊虚的,直接拆解找 汕头网站建设制作厂家 时的5个核心 注意事项… · 2026/9/27 0:00:01

多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习
多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习

简介:基于PyTorch的多模态虚假新闻检测项目完整代码包,面向自然语言处理与计算机视觉交叉方向的开发者、科研人员及毕业设计选题者,解决社交媒体中文本与图像联合识别虚假新闻的问题。系统以BERT预训练模型提取文本语义特征,以Res… · 2026/9/27 0:00:01

MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现
MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现

简介:这套Matlab仿真工具完整呈现雷达信号脉冲压缩过程,从线性调频(LFM)信号生成、目标回波仿真到匹配滤波压缩处理均有可运行代码支撑,面向电子信息工程、计算机、数学等专业学生,适用于课程设计、期末大作… · 2026/9/27 0:00:01

汕头网站建设制作厂家避坑指南:5大注意事项救急
汕头网站建设制作厂家避坑指南:5大注意事项救急

汕头网站建设制作厂家避坑指南:5大注意事项救急 改个需求建站公司拖一周,这种憋屈事我见得太多了。 很多汕头老板找本地建站团队,签合同前看着方案挺美,一上线就变脸。 今天不聊虚的,直接拆解找 汕头网站建设制作厂家 时的5个核心 注意事项… · 2026/9/27 0:00:01

多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习
多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习

简介:基于PyTorch的多模态虚假新闻检测项目完整代码包,面向自然语言处理与计算机视觉交叉方向的开发者、科研人员及毕业设计选题者,解决社交媒体中文本与图像联合识别虚假新闻的问题。系统以BERT预训练模型提取文本语义特征,以Res… · 2026/9/27 0:00:01

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码