跳到主要内容

数据格式:实例分割

介绍

实例分割是在目标检测数据格式的基础上,对两点框增加了对检测框中掩膜(mask)的边界定位,使用 JSON 文件作为标注,001.jpg 是一张原图,001.json 则是该图中若干个实例分割的标注和对应标签。

样例

train_meta.csv
json_Label,image_Source
labels/001.json,images/001.jpg

实例分割的 JSON 标注内容,是标注框和对应的内容和属性,标注框包括分为两点框和掩膜(mask)边界:

  • 两点框是左上角(x_min 和 y_min)和右下角(x_max 和 y_max)两个点
  • mask 是从区域左上点开始顺时针方向的若干个点坐标,闭合图案表示该物体的形状。

所有标注坐标使用的是点在图片上的相对位置,例如:图片大小(800, 600),点坐标(10,30),则标注框的表示为(10/800,30/600),即(0.125,0.05)。

字段说明

  • image_width - 该图片的宽度
  • image_height - 该图片的高度
  • image_path - 该图片文件的相对路径
  • num_box - 该图片上的标注框数目
  • bboxes - 该图片上的标注框列表
    • attributions - 数据集自定义使用的属性值(训练不使用,但是有保留意义的标注)
    • label - 该框的标注标签
    • x_min / y_min - 两点框左上角坐标
    • x_max / y_max - 两点框右下角坐标
    • x_arr - Mask 边缘点依次 x 坐标
    • y_arr - Mask 边缘点依次 y 坐标

实例分割标注样例

{
"num_box": 1,
"bboxes": [
{
"id": 0,
"attributions": {
"group": 2
},
"label": "people",
"x_max": 0.08816,
"x_min": 0.00001,
"y_max": 0.20833,
"y_min": 0.00001,
"x_arr": [0.0, 0.0, 0.0861, 0.0875, 0.2083, 0.2097, 0.3292, 0.3306, 0.4514, 0.4528, 0.57222, 0.5736, 0.6347, 0.6347],
"y_arr": [0.0, 0.0652, 0.0652, 0.0707, 0.0706, 0.0761, 0.0761, 0.0815, 0.0815, 0.0869, 0.0869, 0.0924, 0.0924, 0.0]
}
],
"image_height": 2019,
"image_width": 2048,
"image_path": "images/1.jpg"
}