(23) TRB: A Novel Triplet Representation for Understanding 2D Human Body : ICCV 2019

mac2025-02-09  11

TRB: A Novel Triplet Representation for Understanding 2D Human Body  


ICCV 2019

paper : https://arxiv.org/pdf/1910.11535.pdf


 

论文介绍了一种新的人体特征表示方法(TRB->Triplet Representation for Body):既体现了人体姿态,又体现了人体形态信息。如下图。 

【论文建立了3个TRB数据集,分别基于MPII,LSP和COCO。分别是MPII_trb,LSP_trb和COCO_trb。在MPII和LSP的所有训练数据上标注了轮廓关键点,构建了包含一套完整的骨架和轮廓三联体的MPII trb和LSP trb。COCO随机标注了一般的数据集,对于MPII和LSP数据集,所有被遮挡的轮廓关键点都用估计位置进行标记。对于COCO,只有在相应的骨架关键点被注释时,才会对被遮挡的关键点进行注释。】

TRB-Net

TRB-Net采用广泛使用的多堆栈框架进行粗到精的预测。

在每个堆栈中,模型由骨架关键点预测的骨架分支和轮廓关键点预测的轮廓分支组成。

在每一个分支:(MS Block)->用于有效的特征提取;(MP Block)->用于加强这两个分支之间的相互作用。

同时,为了有效的进行空间变换,设计了Directional Convolution(DC),用来促进信息在特定方向上的传递。

最后。论文提出了 Pairwise Mapping(PM)模块,加强骨骼和轮廓预测的一致性。

增加了中间监督,()代表骨骼loss,轮廓loss 和 pairwise loss。pairwise损失衡量两两映射的不一致性;测量了预测和ground-truth heatmap之间的L2距离。

 MP Block:

X-structured模块支持在不同的特征学习阶段进行消息传递,以获得两个任务更好的特征表示。通过引入x结构的MP块,骨架分支可以从轮廓分支获得更精确定位的指导,反之亦然。

DC

之前,MP中使用了简单的Transform模块,将骨骼heatmap映射到轮廓空间。但是,骨骼分支的激活通常集中在骨架上,而轮廓支的激活主要分布在骨架周围。需要一个特定于任务的本地空间转换,以便在消息传递之前更好地对齐激活映射。

论文首先考虑一个定义在小区域(sub-region)上的面向特征融合问题,然后尝试解决这个子问题。一个方向卷积算子T由K个迭代卷积步骤组成。一个有效的方向卷积应该满足以下要求:(1)每一个step,只更新一组像素(2)在最后一次迭代之后,所有像素应该更新一次,并且只更新一次。 一个特征函数序列定义用来控制像素的更新顺序:  :  他的输入时像素的位置,输出是1或者0。表示是否在第k次迭代更新像素。具体来说,我们只更新其中Fk = 1的区域,保持其他区域不变。第i次迭代的更新可以表述为:。其中T0(X) = X, X表示方向卷积的输入特征图,W和b表示迭代卷积中共享的权值和偏差。为了明确处理骨架与轮廓特征映射对齐的任务,我们专门研究了一对对称的方向卷积算子,即散射卷积和聚集卷积。采集卷积和散射卷积分别由外向内和由内向外更新。在size为n的网格,包含n/2次迭代。

上面讨论了sub-region的特征融合任务,现在讨论如何如何将一组feature maps在空间上划分为 sub-region。

上图是以feature map为8,gird为4为例的四种分法。了充分利用不同位置上的空间信息,我们使用几个不同的分区作为一组特征映射来捕获多样性。在这些分区(partitions:对应上面的四种中的一种)上并行地进行方向卷积。

给出了featuremap 的四种划分。,表示每一个partitions上的聚集卷积。 所以,最终结果G:

 Pairwise Mapping

更好的保持骨架点和轮廓点的一致性。我们在临近关键点对之间建立pairwise mapping。我们首先构建一个人体结构的模型。

 为了在临近点对的heatmaps上添加pairwise mapping。论文使用了feature wraping strategy。

首先,在每一个stage(网络有多个stage stack起来的)中间,我们增加一个分支来估计双向流动特征(bi-directional feature flows)Flow和RevFlow。这个特征流利用轮廓和骨架分支的特征来估计他们之间的mapping。

然后,这个估计的特征流用来(warp)源空间(source domain)到目标空间(Taeget domain)-》(例如:L_i 通过Flow被wrap到R_i)。wrap操作是双向进行的.理想情况下,在wrap后,wrap的源热图应与目标热图相同。所以,引入了一个loss。

wrap的热图代表了一个关键点位置由其他相关关键点支持的证据 .一个融合模块的设计是为了结合通过网络预测的粗糙的热图和warp模块生成的wrap热图进行预测。

loss

最新回复(0)