MPII数据集单人方面的数据分析!!!

1、在训练hourglass的时候,有几个文件需要清楚

annot.h5文件是包含了25925个人的训练集,对应着17408张图片

train.h5是包含了22246个人的训练集,对应着14679张图片

valid.h5是包含了2958个人的验证集,对应着2729张图片

test.h5是包含了11731个人的测试集,对应着6619张图片

注:valid数据集是根据tompson的划分来的,是从训练集的一部分数据来的,那么问题来了,mat标注文件里面一共有24987张图片,上面的(14679+2729+6619=22207张),差了很多,那么差在哪里了呢?

1.1测试集

首先分析测试集,通过数据分析,一共有6908张测试集,很抱歉,由于数据标注的残缺,最后只有6619张图片可以用

数据标注的问题在于两个

1)annorect域缺失,一共244张

2)annorect域存在,但是1x1的struct是空的,一共45张

244+45=289张,而6908-6619=289张,恰好吻合了

注:6908是img_train=0统计出来的

1.2 训练+验证

1)annorect域缺失,一共576张

2)annorect域不为空,但是只有x1,x2,x3,x4的信息,没有关键点信息,一共95张

576+95 = 671张,而18079-2729-14679 = 671,吻合

注:18079是img_train=1统计出来的

 

2、在图像数量上已经达到了吻合,但是模型训练单位是人,人数上也存在偏差,现在分析

2.1 测试集

h5文件给的是11731个人,但是经过我们的统计,最终的结果却是11776个人,统计代码如下

 

%             for kk = 1:length(RELEASE.annolist(i).annorect)
%                     person_test_num_all = person_test_num_all+ 1;             %i是img_train=0对应的index
%             end

那么究竟是什么原因呢

 

原因是因为对于每一个annorect,虽然从外边看是1x7的结构体,但是进去一看确实这样的
 

将代码改为

 

            for kk = 1:length(RELEASE.annolist(i).annorect)
                if(length(RELEASE.annolist(i).annorect(kk).scale)~=0)
                    person_test_num_all = person_test_num_all+ 1;
                end
            end

这样统计出来的就是11731了,好坑

 

 

2.2训练集+验证集

首先我们用一开始的方法统计出来的人数一共有29017人,然后用后来的统计一共有28883个人(类似于2.1)

现在开始分析

28883-2958=25925,那么问题来了,train.h5里面是啥啊

tompson提取的2958个人,只是从所对应的图像中选取几个人而已,而不是选取所有的标注得人,所以就差在了这里

例如052475643.jpg这张图片,valid.h5只从这张图片中选取了一个人,但实际上这张图片标注了两个人,train.h5和annot.h5区别就在这里,annot.h5会把剩下的另一个人加入到自己的训练中,但是train.h5则不会,他会将已经选定作为验证的这个人的这张图片都不再参与训练,所以就导致了train.h5只有22246个人,而annot.h5则含有25925个人


3、hourglass采用的是annot.h5和valid.h5作为训练,这个似乎更合理

    PyraNet则是采用train.h5和valid.h5作为训练

 

4、在一些训练中会采用mpii_annotation.json文件,该文件包含了train.h5和valid.h5的整合,因此和PyraNet的训练是一致,

都是没有将全部的训练集用于最后的训练。

  • 5
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 31
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 31
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值