1 数据标签格式
COCO数据集主页:http://cocodataset.org
COCO关键点检测数据共有17个关键点,点的位置如图:
标注文件中,每一个检测框共有56个标签值,他们分别是:
类别 | 0 |
---|---|
目标框坐标 | center_x, cneter_y, w, h |
鼻子 | nose_x, nose_y, nose_v |
左眼 | Leye_x, Leye_y, Leye_v |
右眼 | Reye_x, Reye_y, Reye_v |
左耳 | Lear_x, Lear_y, Lear_v |
右耳 | Rear_x, Rear_y, Rear_v |
左肩 | Lshoulder_x, Lshoulder_y, Lshoulder_v |
右肩 | Rshoulder_x, Rshoulder_y, Rshoulder_v |
左肘 | Lelbow_x, Lelbow_y, Lelbow_x |
右肘 | Relbow_x, Relbow_y, Relbow_v |
左腕 | Lwrrst_x, Lwrist_y, Lwrist_v |
右腕 | Rwrist_x, Rwrst_y, Rwrist_v |
左髋 | Lhip_x, Lhip_y, Lhip_v |
右髋 | Rhip_x, Rhip_y, Rhip_v |
左膝 | Lknee_x, Lknee_y, Lknee_v |
右膝 | Rknee_x, Rknee_y, Rknee_v |
左踝 | Lankle_x, Lankle_y, Lankle_v |
右踝 | Rankle_x, Rankle_y, Rankle_v |
类别只有人(0)
关键点 [*_x, *_y, *_v] 表示该点的位置(x, y)以及可见性(v)
v=0(not label);v=1(labeled not_visible);v=2(labeled visible)
标注结果按照yolo格式存储,目标框和坐标需要分别除以图像的高宽
2 标注软件
coco-annotator标注软件需要使用docker-compose进行安装,windows用户可以使用WSL先安装ubuntu,然后再安装docker,最后安装coco-annotator
2.1 进入coco-annotator
docker-compose up
- 浏览器输入:http://localhost:5000
- 注册用户
- 登录用户
2.2 创建类别标签
关键点为上述的17个关键点,并可以根据图中的方式添加关键点之间的连接
2.3 创建数据集
在创建数据集时记得将之前创建的标签导入,最后会在coco-annotator目录下的dataset生成对应的数据集文件夹,且进入数据集图片为空
2.4 导入数据
将需要标注的数据导入到相应目录下,我的目录是:
windows用户可通过Mobaxterm进行数据传输,他会自动创建安装的WSL连接
数据传输完成了,刷新网页,如果仍然没有图片可以点击scan进行扫描
2.5 数据标注
标注界面如图,如果没有红框中的标签信息,返回数据集将创建的标签导入就行
- 点击+,框出目标人物
- 依次标出相应的关键点,创建标签时设置了连接关系的会在标注时体现
- 对于不可见的点,可以直接不标注,或者标注后设置可见性,例如图中的左髋设置为labeled not_visible
2.6 导出标注结果
导出标签有两种方式
- 红框:会同时下载所选的图片和标签数据(json),json文件为单张图片的结果
- 黄框:会将所有的标签数据合并成一个json文件进行
coco-annotator导出的数据格式:
1、目标框:[x1, y1, w, h]
2、关键点:[x, y, v]
坐标点对应原始图像,如果需要制作成COCO关键点相同格式的数据,需要分别处理成yolo格式