CPM 模型压缩怎么做的?有压过 OpenPose 吗?
参考回答:
1)用局部图线索来进行关键定位
第一阶段只用局部图线索来预测部件信任度。figure 2c展示用本地图信息的部件检测的深度网络。先序哦是局部的因为第一阶段感知野只是输出像素附近的一小块。我们用5层卷机网络组成的结构(尾部是量个1x`1卷积层的全卷积架构)。实践中,为了得到一定精度,我们把图片标准化为368x368,感受野是160x160.网络可以看成让深度网络在图像上滑动,并将160x160中局部图像线索回归至代表了各个部件在各个位置的score的P+1大小输出向量。
2)基于空间环境信息的级联预测
对于性状稳定的头和肩膀,检测效果很好,然而人体骨架的连接处准确率就很低,因为形状差异很大。部件周围的信任映射,虽然有噪声,但是很有价值。figure 3中,当检测右手肘时,右肩膀的信任映射达到高峰,可以成为一个很强的线索。后续阶段的预测器(gt)可以用图位置z附近含有噪声的信任映射里的空间组织信息(fai),并且利用“部件的几何设定都是恒定的”这一事实来提高改善预测。
第二个阶段,分类器g2接收特征x2和前一阶段fai的输入。前一阶段不同部件的位置z附近的空间区域产生信任映射,特征方程是把信任映射出的特点编码。CPM不用显式方程来计算环境特征,而是定义含有前一阶段信任度的fai作为预测机的感受野。
这个网络的设计为了在第二阶段输出层得到一个足够大的感知野,可以学习复杂和长距离的部件关系。通过应用迁移阶段的输出层特征(而不是用图模型的显式方程),后续卷积层自由结合最有预测力的特征,来形成环境信息。第一阶段的信任映射来自用小感知野来检验局部图像的网络。第二阶段,我们设计了一个极大扩充的等价感知野。大感知野可以用两种方法实现:牺牲准确度的池化,增加参数为代价的加大卷积核大小,或者冒着可能让反传消失风险增加网络层数。我们选择增加卷积层,在8x降维热力图上达到大感知野,让我们尽可能减少参数数量。8步网络更容易获得大感知野,它和4步网络表现一样好(在高精确度区域也是)。我们也在PM之后图像特征上映射上重复了类似架构,让空间组织依赖图像而且允许错误关联。
我们发现,感受野变大,准确性也变大。通过一系列实验,figure 4的准确度随着感受野的变化曲线,改变感受野只通过改变结构而不是增加参数。准确度随着感受野变大而变大,在250像素饱和,这也大概是归一化物体的大小。这说明,网络确实让远距离物体关系编码,并且这是有益的。我们最好的数据集中,我们把图像归一化为368x368,基于第一级信任映射的第二级感知野输出是31x31,这和原始图片的400x400像素等价,其半径可以覆盖任何部件。当阶段增多,有效感知野就会变大。我们有6个阶段。
3)用CPM学习
这个深度架构可以有许多层。训练这个网可能让梯度消失,就是反向传播在中间层会减弱。pm级联预测框架有一个自然的解决这个问题的方法。我们不断激励这个网络,通过在每个阶段t的输出定义一个损失函数,让预测的和实际信任映射的距离最小化。部件p理想的信任映射是bp,通过把p部件的最可能点设定在ground truth位置。
压缩过OpenPose,效果还可以。