PaddleX实例分割任务模块数据标注教程本文档将介绍如何使用 Labelme 标注工具完成实例分割相关单模型的数据标注。点击上述链接参考⾸⻚⽂档即可安装数据标注⼯具并查看详细使⽤流程。1. 标注数据示例该数据集是水果实例分割数据集涵盖五种不同的水果包含目标不同角度的拍摄照片。图片示例2. Labelme标注2.1 Labelme 标注工具介绍Labelme是一个python语言编写带有图形界面的图像标注软件。可用于图像分类、目标检测、图像分割等任务在实例分割的标注任务中标签存储为JSON文件。2.2 Labelme 安装为避免环境冲突建议在conda环境下安装。conda create -n labelme python3.10 conda activate labelme pip install pyqt5 pip install labelme2.3 Labelme 标注过程2.3.1 准备待标注数据创建数据集根目录如fruit。在fruit中创建images目录必须为images目录并将待标注图片存储在images目录下如下图所示在fruit文件夹中创建待标注数据集的类别标签文件label.txt并在label.txt中按行写入待标注数据集的类别。以水果实例分割数据集的label.txt为例如下图所示2.3.2 启动 Labelme终端进入到带标注数据集根目录并启动labelme标注工具。cd path/to/fruit labelme images --labels label.txt --nodata --autosave --output annotations*labels类别标签路径。 *nodata停止将图像数据存储到JSON文件。 *autosave自动存储。 *output标签文件存储路径。2.3.3 开始图片标注启动labelme后如图所示点击Edit选择标注类型选则Create Polygons。 * 在图片上创建多边形描绘分割区域边界。再次点击选择分割区域类别。标注好后点击存储。若在启动labelme时未指定output字段会在第一次存储时提示选择存储路径若指定autosave字段使用自动保存则无需点击存储按钮。然后点击Next Image进行下一张图片的标注。最终标注好的标签文件如图所示。调整目录得到水果实例分割标准labelme格式数据集。 在数据集根目录创建train_anno_list.txt和val_anno_list.txt两个文本文件并将annotations目录下的全部json文件路径按一定比例分别写入train_anno_list.txt和val_anno_list.txt也可全部写入到train_anno_list.txt同时创建一个空的val_anno_list.txt文件待上传零代码使用数据划分功能进行重新划分。train_anno_list.txt和val_anno_list.txt的具体填写格式如图所示经过整理得到的最终目录结构如下将fruit目录打包压缩为.tar或.zip格式压缩包即可得到水果实例分割标准labelme格式数据集。3. 数据格式PaddleX 针对实例分割任务定义的数据集名称是COCOInstSegDataset组织结构和标注格式如下dataset_dir # 数据集根目录目录名称可以改变 ├── annotations # 标注文件的保存目录目录名称不可改变 │ ├── instance_train.json # 训练集标注文件文件名称不可改变采用COCO标注格式 │ └── instance_val.json # 验证集标注文件文件名称不可改变采用COCO标注格式 └── images # 图像的保存目录目录名称不可改变标注文件采用COCO格式。请大家参考上述规范准备数据此外可以参考示例数据集。当大家使用的是 PaddleX 2.x 版本的实例分割数据集时请参考实例分割模块开发教程中对应的格式转换部分将 VOC 格式数据集转换为 COCO 数据集。模块开发文件中注明注实例分割数据要求采用COCO数据格式标注出数据集中每张图像各个目标区域的像素边界和类别采用[x1,y1,x2,y2,...,xn,yn]表示物体的多边形边界segmentation。其中(xn,yn)表示多边形各个角点坐标。标注信息存放到annotations目录下的json文件中训练集instance_train.json和验证集instance_val.json分开存放。如果你有一批未标注数据我们推荐使用LabelMe进行数据标注。对于使用LabelMe标注的数据集PaddleX产线支持进行数据格式转换。为确保格式转换顺利完成请严格遵循示例数据集的文件命名和组织方式 LabelMe 示例数据集。实例分割任务模块 - PaddleX 文档