炼丹日记02-COCO姿态检测数据集结构讲解

背景

到现在,我的vitpose在full coco dataset已经跑了1天07个小时了,eta还有12个小时,要是每次我造一个新模型就得跑2天,那我估计要被我导师一脚踹飞了。因此我准备子集切一个COCO姿态估计数据集的子集出来,要切分就肯定要先了解数据格式,所以我就先去探索了一下coco姿态估计的json标注,然后就有了这篇文章。

Person_keypoints_train2017.json 结构解读

用Dadroit JSON阅读器打开 person_keypoints_train_2017.json文件,最顶层有5个key:
在这里插入图片描述

info

包含了COCO数据集的元信息,如网址,版本,年份等等:
在这里插入图片描述

licneses

包含了如何合法使用和分发数据集中的内容,对训练没啥用所以跳过

images

包含所有训练图片,一共有118287个元素,这里面的每一个元素都对应着一个img的元信息,对训练重要的有三个:

  • 文件名
  • 图片尺寸
  • 唯一的索引id
    在这里插入图片描述

annotations:

现在重头戏来了,annotations表示在这个Pose-Estimation标注文件中提供的所有标注信息,在这个train的标注文件中一共有262465条标注,每一条标注的结构如下所示:
在这里插入图片描述

  • segmentation: 这个是语义分割的标注,用一堆坐标点把一个实例抠出来,和姿态估计不怎么相关,先不管在这里插入图片描述

接下来就是和keypoints相关的annotation部分

  • num_keypoints: 图片中可见的coco关键点有几个

  • area:标注对象所占的像素面积

  • iscrowd: 这个人和其他人有没有重合,有1否0

  • keypoints: 一共有51个元素,对应着17个coco关键点的一维序列展开(每个点有(x, y visible)三个属性, 3 * 17 = 51)
    在这里插入图片描述

  • image_id: 这个标注对应的图片id

  • bbox:该物体的检测框[xywh] (x, y)是左上角坐标,w代表宽度,h代表高度
    在这里插入图片描述

  • category_id: 物体的所属类别,在姿态估计任务中只有1个,就是人,id为1

  • id:标注的唯一id

categories

对应着每个categories的关键点配置,这里目前只有人一类,所以catgories的元素就只有一个
在这里插入图片描述

  • supercategory: 所属超类,先不管

  • id:category的id

  • keypoints:定义了这个类有多少个keypoints,以及每个keypoints的名字
    在这里插入图片描述

  • skeleton:定义了每个关键点之间的连接,每一个元素就是一个连接线,第一个连接线就是16和14关键点的连接。coco完整的人体标注会有19条连接线。
    在这里插入图片描述

后记

这里只是简单的过了一遍json中的大概结构和重要字段,充当一个速查表的作用了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值