前言
笔记
- 这篇文章反反复复读了多遍,其并没有什么过多的新内容,只是作者疯狂的对其进行修饰暗喻,把本来很多浅显易懂的词汇和概念都加以包装,这样的目的是为了进行投稿但对于读者来说确实是一种煎熬。
- 作者在摘要中提出,其表明适当的factorization, and encodings
of layout and appearance constructed from outputs of pretrained object detectors就可以得到一个比其他复杂模型更好的HOI检测模型。 - 作者谈到利用预训练好的模型检测出来的目标和human-pose(就是骨骼点)就提供了一个很强的用来预测动作交互的线索。其所谓的encode appearance and layout就是用Faster RCNN检测出来的目标框和OpenPose检测出的骨骼点来做的(后边好像就是用的很简单的MLP)。
- 作者进一步说,他的模型通过给定图片中的一对候选区域和他们的appearance and layout encoding就可以预测出HOI类别的条件概率。这里的appearance和layout encoding是使用预训练好的目标检测器的检测结果和ROI pooled特征(比如faster rcnn中的roi pooling层crop下来的特征)(以及可选择的human pose特征from pose detector)来构建的。作者提出的模型的主要因素有human和object的检测分数和一个interaction term(这个东西就是进一步结合了human和object的appearance还有layout得出的)。
- 前边提到的interaction term中,作者还同时用了两种layout encoding,分别是通过h-o pair得到的空间位置特征和使用关键点检测器(检测人的关键骨骼点)得到的人物的pose特征。同时这个appearance和layout特征都是使用简单的MLP实现的。
- 然后作者还介绍了一些可以提升他们因子模型性能的训练策略:1)通过直接使用多标签的HOI分类标签损失代替之前大多数采用分开预测物体和动作的损失。2)在目标检测因子中提出了一个indicator terms用来reject such easy negatives。3)采用更大的负-正样本比例(500,1000)。
- 这是全文仅有的一张与网络结构有关的图,左边是using object and interaction classification losses respectively,作者说这样有问题。然后使用a multi-label HOI classification loss。同时作者的模型还是用一个indicator terms(functions)去筛掉那些容易negative的box-pairs(false positive?)。
- 接下来就是详细的关于作者模型的细节的一些介绍。作者将推理分成两步。第一步:用目标检测器,比如Faster RCNN检测出所有特定的目标类别框,然后将人物和不同的目标一一匹配获得一个(h,o,i)HOI类别。第二步:fatored model计算每个HOI类别的分数并排序。下面的算法是具体的操作过程,
9.接着作者详细的说明了前文提到的factored model的具体实现细节。具体的HOI概率就是通过下边的式子计算的。
同时这三部分的概率,首先人和物体的概率就直接按照目标检测器检测出的分数作为detector terms的分数。
Interaction term有一点复杂,即检测交互性取决于多个因素,可以被进一步分解成式子3,它有四个因子,每一个因子都是通过一个deep net来计算的。
human和object的appearance使用Faster RCNN,从ROI中通过average pooled fc7提取特征来encoding。然后后边接MLP,最后输出层有117个神经元表示117个interaction categories.
两个框的空间特征使用两个框和目标的label来encoding,目标的label就是一个one-hot vector,两个框分别被encoding成21维的feature vector(作者没有具体说这21维都分别表示什么,但从文章来看就是一些长宽,比例等位置信息和两个框之间的相对位置信息等),然后把2*21+80维的vector送入一个MLP,接BN和RELU。这里没有说输出,显然输出的维度应该还是117.
最后的pos特征使用了OpenPose来检测18个关键点,然后作者将这18个关键点与物体之间的关系以及物体的label等组合成了具有368维的特征向量,也是送入MLP加BN加RELU,同样的输出也是117。
到这里整个model的结构就结束了,上边提到的四个因子加起来通过sigmoid就是最终的117个interaction的得分,再结合前边human和object的得分通过公式4计算出最终的HOI得分。注意由于前边目标检测器都是预训练好的,因此在实验当中作者需要训练的参数只有后边我们提到的interaction term这些。
- 后边就是作者进行的一些实验和对比,没什么好说的就不再赘述。另外就是作者的ablation study证明了它用的这些特征对HOI检测器性能的好坏都非常重要。
- 总结来说就是,这篇文章其实就是提出了表示两个框之间交互的更多因素(比如之前没有出现过的使用人体关键点和物体之间的关系做特征编码送入网络),然后把他们考虑到了网络中来,本质还是类似于multi-stream的方法。同时作者还提出了几种训练的技巧,并通过实验证明了他们对实验很有帮助并且很容易被用到文献中的其他因子模型上。