目录
COCO数据集中关键点annotations简介
annotation{
"keypoints": [x1,y1,v1,...], #关键点坐标及标志位 v
"num_keypoints": int, #关键点数量(要求v>0)
"id": int,
"image_id": int, #图像id号,对应图像的文件名
"category_id": int, #只有人,所以为1
"segmentation": RLE or [polygon], #iscrowd 为 0 时是polygon格式,为1时是 RLE格式,代表分割图(用多边形框出人体)
"area": float, #矩形框的面积
"bbox": [x,y,width,height], #矩形框左上角坐标(x,y)和矩形框的宽高
"iscrowd": 0 or 1,
}
在key_points 关键字中 x,y表示坐标值,
v的值有三个
V | 含义 |
0 | 没有该点 |
1 | 该点存在但是被遮挡了 |
2 | 该点存在且没有被遮挡 |
其他含义如注释那样。
标签软件
通常来说利用labelme可以标注,想用的可以自行搜索
本次介绍的是实验室成员利用tkinter库开发的,由于还在测试阶段,所以会有一些小bug,不过不影响
百度网盘链接
https://pan.baidu.com/s/12u270N-RC0HuWr_5ZwW7PQ 密码1234
初始按图中操作,指定大小后就可以选择加载图片
但是由于目前还未能实现滚轮修改显示图片大小,因此使用除512之外的大小都不是很方便(其他大小我会在加载数据集的时候修改,因此目前最好只按512标注)。目前只支持给单人打标签。
此时就可以标注图片了,由鼠标点击图片中待标注位置,便可在该位置上按如下顺序产生关键点信息。
'nose' | 0 |
'left_eye' | 1 |
'right_eye' | 2 |
'left_ear' | 3 |
'right_ear' | 4 |
'left_shoulder' | 5 |
'right_shoulder' | 6 |
'left_elbow' | 7 |
'right_elbow' | 8 |
'left_wrist' | 9 |
'right_wrist' | 10 |
'left_hip' | 11 |
'right_hip' | 12 |
'left_knee' | 13 |
'right_knee' | 14 |
'left_ankle' | 15 |
'right_ankle' | 16 |
每点一个位置右下角会自动点亮,全部标记完后这边就会全变为绿色。
想要修改的点只要点一下右边对应点即可重新标记该点。
然后点击 “保存该图标签数据” 并选择一个新的空文件夹,会产生如下四个文件。只有第一次会需要选择文件夹路径,后面的图片就不用了。但是后面每标记完一个图都要点击按钮保存信息。
注:点击 “保存该图标签数据” 后,如果还有下一张图会自动切换
“img_label” 是修改大小后,并且带有标签点的图片,方便检查
“img_train” 是修改大小后,不带有标签点的图片,用于训练
“annotations.txt” 保存的是相关信息
为了简化我们只保留了需要的部分信息
另外需要注意的是,标志位 v 只有0和1,0代表没有,1代表有,这是不同于COCO数据集的。
全部图片标注完以后就可以选择是否保存为json文件。
另外:软件没有记忆功能,所以如果文件夹中的图片没有标注完,就别关软件!!!。
或者你可以自动手动拆分,然后自己整合到一起。
使用有问题欢迎在评论区提问。依据文件产生数据集的代码会在之后提供。