导读:
在人机交互和自主系统中,基于视觉的方向估计(HOE)对理解人类意图至关重要,尤其决定了机器人是否能够正确跟随或避让人类。在完整观测条件下,现有算法已有一定进展,但当观测主体部分被遮挡时,常出现预测错误,并伴随不合理的高置信度,这在实际应用中可能导致机器人对人的方向判断失误。
本文提出了Part-HOE方法,通过利用可见的部分观测内容来估计主体的方向,有效应对遮挡场景。该方法还引入了置信度感知机制,在不完全观测的情况下,让方向估计更加准确、置信度的评估也更加合理,确保机器人在“看不见”时仍能“跟得上”,提高了跟随任务的稳健性。©️【深蓝AI】编译
1. 引入
在本文中,人体方向特指人体的偏航角,它为许多人人机交互应用提供了关键信息,例如机器人跟随任务(RPF)。像助行机器人、视频拍摄无人机和自动小车等RPF任务,都需要精确且可靠的人体方向信息,以便机器人计算出相对于人类的最佳跟随姿态。随着深度神经网络(DNN)和人体关节检测算法的发展,准确估计人体方向成为可能。一些方法尝试利用人体关节作为额外的线索来提高方向估计(HOE)的精度。Yu等人通过利用深度网络检测人体关节并从检测到的关节中提取几何特征,大幅提升了HOE的准确性,这表明人体关节信息在方向估计中起到了至关重要的作用。
尽管HOE的精度有所提高,大多数基于动作捕捉系统构建的方向数据集都是在室内、背景干净且没有遮挡的环境中采集的。因此,这些数据集开发的算法在面对部分观测时表现较差,而部分观测在配有摄像头的轮式机器人或机器狗中非常常见。MEBOW创建了真实环境下的数据集,并同时训练方向估计模型和人体关节检测模型。通过回归方式学习方向并使用人体关节检测提供额外线索,MEBOW显著提高了方向估计的精度。然而,现有方法在部分观测下依然存在挑战,主要因为其遮挡数据有限,无法识别部分观测下的可见关节,而这些关节对HOE任务至关重要。
在传统的RPF系统中,人体方向通常假设与运动方向对齐。可以根据全球坐标系中的人体速度方向获取人体方向。然而,这种方法需要额外的定位算法,而这对RPF系统来说并非必需。此外,即使提供了全球位置信息,当人体在原地旋转时,传统的RPF系统仍会失败。相比之下,基于单目图像的人体方向估计(HOE)不依赖全球位置信息。HOE在计算机视觉领域已经有很长时间的研究历史。早期大多数工作通过从图像中提取手工特征,并使用机器学习进行方向估计。由于数据量和模型能力的限制,早期工作表现出较低的准确性。
为了克服这些限制,研究人员提出了一种遮挡鲁棒的方向估计网络:
1)使用基于transformer的网络,结合大量的先验知识进行关节检测;
2)使用基于23个关节的人体表示提供额外的方向线索。该网络能够识别并利用人体的可见关节进行方向估计。此外,该网络还能通过构建真实值与预测方向之间的对抗策略来预测合理的置信度。
综上所述,研究人员提出了一种针对部分观测场景的具有置信度感知能力的方向估计网络。通过在两个公共数据集和一个自建数据集上的广泛实验,证明该方法相较于基准方法取得了最新的方向估计性能。最后,研究人员通过将其模型集成到RPF系统中,在实际的RPF任务中验证了模型的优越性。
2. 具体方法与实现
为了在部分遮挡情况下估计人的方向,本文提出了一种新颖的方向估计方法(Part-HOE),该方法同时考虑了准确性和置信度。具体方法流程如下:
如图1所示,给定一张标准化的人体RGB图像,使用ViT(Vision Transformer)骨干网络提取特征。选择ViT是因为它在多个大型人体关节检测数据集上进行了预训练,具备丰富的人体关节线索,有助于进行方向估计。提取的特征随后输入到三个解码器中:关节解码器、方向解码器和置信度解码器,关节解码器的作用是将受限观测实验内的人体关节进行计算解码,通过对可视部分的人体关节的估计来预测人体的朝向,方向解码器则是接受了关节解码器的输出,结合先验运动信息与人体的朝向信息,来进一步估计现在人体的具体行动方向,最后置信度解码器则是对这一次方向的估计进行置信度评分,最终得到一个范围区间之内的方向估计。总的来说,这里涉及了三部分计算机视觉的内容,这三部分内容一环扣一环最终实现了受限视野内的准确人体姿态估计,下面笔者将按照顺序逐步解读这三个部分。
2.1 关节解码器
关节解码器的作用是通过视觉输入来估计人体的关节,一般来说关节解码器都要求完整的人体输入,而面对部分人体输入或者是突然丢失的人体输入,往往传统的关节估计方法都会立即失效,本文为了解决这个问题了,提出了一种新的关节解码方法:首先,关节解码器首先通过转置卷积进行上采样,然后通过一个1×1的卷积层输出23个关节的热力图,其中包括足部关节。关节检测被作为一个辅助任务训练,并未直接用于方向估计,而是通过特征图作为输入,进一步帮助方向解码器捕捉人体信息,这里的核心思路就是将原本的常规关节估计进行了扩展,增加了更多的人体末端关节,因为视野受限的情况下,往往视觉只能观测到人体的部分部位,主干部位往往缺失,因此增加更多的肢体末端关节可以有效提升观测信息的利用率。
为了进一步增强基于关节检测的方向估计的能力,本文采用了两项改进措施:1)使用ViT-Small骨干网络,它在人体关节检测任务中具有丰富的先验知识;2)扩展COCO数据集中的17个关节表示,加入额外的6个足部关节,从而构建一个23关节的人体表示。这些关节线索为部分观测场景中的人体方向估计提供了额外的支持。关节检测的核心监督损失函数采用均方误差(MSE),公式如下:
Lkpt=1N∑i=1N1W×H∑x=1W∑y=1H(Hi^(x,y)−Hi(x,y))2L_{kpt} = \frac{1}{N} \sum_{i=1}^{N} \frac{1}{W \times H} \sum_{x=1}^{W} \sum_{y=1}^{H} \left( \hat{H_i}(x, y) - H_i(x, y) \right)^2Lkpt=N1i=1∑NW×H1x=1∑Wy=1∑H(Hi^(x,y)−Hi(x,y))2
其中,Hi^(x,y)\hat{H_i}(x, y)Hi^(x,y)表示在像素位置(x,y)(x,y)(x,y)处对第iii个关节的预测强度,Hi(x,y){H_i}(x, y)Hi(x,y)为相应的真实值。通过以上策略,解决了在视野受限情况下的人体关节检测问题。
2.2 方向解码器
方向解码器用于估计人体的偏航角,输出为离散化的方向预测。这部分内容需要用到第一步中的人体关节检测和基于关节检测的人体方位估计信息,与基线模型MEBOW相同,方向被表示为71个离散的概率值p^=[p0^,p1^,...,p71^],∑i=071pi^=1\hat{p} = [\hat{p_0}, \hat{p_1}, ..., \hat{p_{71}}],\quad \sum_{i=0}^{71} \hat{p_i} = 1p^=[p0^,p1^,...,p71^],∑i=071pi^=1。最大值p^i\hat p_ip^i对应人体方向范围为[i⋅5∘−2.5∘,i⋅5∘+2.5∘][i \cdot 5^\circ - 2.5^\circ, i \cdot 5^\circ + 2.5^\circ][i⋅5∘−2.5∘,i⋅5∘+2.5∘],覆盖[0°,360°]的全方位。
研究发现,当关节检测的准确度足够高时,增加方向解码器的复杂性并不能显著提升性能。因此,方向解码器由一个归一化层和一个全连接层组成,最后通过softmax进行输出。
方向标签被转换为“循环”高斯分布,并作为回归任务进行训练,具体公式为:
pi=12πσe−12σ2⋅min(i−lgt,72−i−lgt)2p_i = \frac{1}{\sqrt{2\pi\sigma}} e^{-\frac{1}{2\sigma^2} \cdot \min(i-l_{gt}, 72-i-l_{gt})^2}pi=2πσ1e−2σ21⋅min(i−lgt,72−i−lgt)2
其中,σ\sigmaσ是常数,lgtl_{gt}lgt表达离散化的方向标签。这个公式结合了第一步人体关节检测的输出,重复利用了视野中的人体观测信息,同时这个输出最终给的是一个范围,值的注意的是,在机器人追踪以及基于视觉的人体姿态估计等问题中,一般都会将目标方程建立为一个概率问题,因为受到诸多外界因素影响,很难估计出一个100%正确的方位,并且在实际的应用中,对于方位上的冗余度还是较高的,只需要知道在某个“方向”上,即可进一步进行精确的路径规划,因此这里作者很聪明的将这个最终的输出改为了一个方位的“范围”,但是这个范围也是有相当高的精度的,因为它受到置信度的约束,即接下里的内容。
2.3 置信度解码器
置信度解码器输出一个0到1的置信度值,用以表示方向估计的可靠性。由于没有明确的置信度标签,置信度通过自监督方式进行学习。具体来说,构建了一个对抗策略,使得预测的方向与真实方向之间的差异能够指导置信度的学习。
置信度ccc的训练公式如下:
p′=c⋅p^+(1−c)⋅pp' = c \cdot \hat{p} + (1 - c) \cdot pp′=c⋅p^+(1−c)⋅p
最终的损失函数由方向损失Lp′L_{p'}Lp′置信度损失LcL_cLc和关节检测损失LkptL_{kpt}Lkpt组成,具体公式为:
L=Lp′−λ⋅Lc+LkptL = L_{p'} - \lambda \cdot L_c + L_{kpt}L=Lp′−λ⋅Lc+Lkpt
其中,λ\lambdaλ是动态调整的权重系数,用于平衡方向损失和置信度损失,这个过程可以从图2来进一步了解,将方向估计看作一个沿着圆周的高斯分布,估计置信度高的方向则是高斯分布的中心区域,而两侧则随着置信度之间递减,通过这个方式能够将方位的估计约束到一个非常准确的区间之内。
2.4 集成到RPF系统中
为了验证Part-HOE方法的有效性,作者将其集成到机器人跟随系统(RPF)中。RPF系统需要准确地估计目标人物的位置和方向,以保持一定的前后跟随距离,并且这些任务的输入都是受到限制的视觉观测,目标人物的位置用基于本文的方法设计的跟踪器进行估计,同时嵌入本文的方向估计方法,RPF系统能够实现稳健的前后跟随任务。
图3展示了如何通过将Part-HOE网络集成到RPF系统的状态估计模块中,在视觉感知端部署本文的方位估测方法,同时将方法直接应用于机器人的导航和路径规划,实现了观测受限的视野范围内的机器人准确人体追踪。
3. 实验
本文的实验主要从数值计算,数据集评估,和真实部署测试三个部分,先来看数值部分的实验,由图4所示,本文方法在不同的数据集上都取得了不错的效果,尤其是不同角度下的估计都能够保持一致的准确度,这表明本文方法的鲁棒性很强,这得益于本文的范围输出+置信度估计的设定,能够在本就精确的范围内“优中选优”,实现SOTA的效果。
图5展示了方向估计的准确度和召回率的实验,这部分主要测试本文方法在视觉受限的输入中能否实现准确的方向估计,同时能否准确的观察并捕捉到受限视觉输入中需要进行估计的内容,如只出现一小部分的人体,从实验结果是来看,本文的方法对于这两个任务的完成度都很好。
图6则进一步展示了受限视觉输入中的方向估计准确度,通过左右两个结果的对比,可以看到本文的方法更加贴近ground truth,即便有时候无法实现100%准确,但是“大方向”是一致的,毕竟ground truth拥有完整的视觉输入,而本文方法则只使用了残缺的视觉输入,仅仅包含部分场景和视野。
图7则体现了本文方法的动态方位估计能力,由于方位估计一般都需要部署在机器人或者无人驾驶车辆上,因此这个过程应该面向一个动态的场景,长时间的准确估计也十分重要,从图7来看,在很长的一段时间里,本文方法都能够紧贴ground truth曲线,并没有出现太大范围的波动,可见其在动态环境中的能力十分出色。
4. 总结
在这项研究中,作者展示了通过改进关节检测,尤其是利用预训练的ViT模型和增加足部关节,在遮挡情况下大幅提升了人体方向估计的准确性。在Human3.6M数据集上的提升高达22%,在自建数据集上的提升也达到了16%。此外,研究还提出了一种自监督的置信度估计方法,相比传统方法能更好地过滤不确定的预测样本。尤其是在机器人跟随任务中,Part-HOE方法表现出了明显的优势。然而,尽管取得了这些进展,该方法仍然面临挑战,如尚未充分利用时间信息,以及在过滤不可靠方向估计方面的不足。未来的研究将致力于解决这些问题,以进一步提升算法的稳定性和准确性。
©️【深蓝AI】
Ref:
Human Orientation Estimation Under Partial Observation
编译|阿豹
审核|Los