摘要
近年来,基于三维输入数据的手部姿态估计方法显示出最先进的性能,因为三维数据比深度捕捉更多的空间信息。而基于三维体素的方法需要大量计算量,基于PointNet的方法需要冗长的预处理步骤,如计算曲面法线向量,分组时使用k-最近邻搜索。
本文提出了一种新的基于无序点云的手势估计方法。采用1024个三维点作为输入,不需要额外的信息。本文以置换等变层(PEL)为基本单元,提出一个PEL版本的ResNet用于手势识别任务。此外,还提出了一个基于投票的方案(Voting-Based Scheme),合并各个点的信息用于最终手势预测。
关键
-
预处理
将深度图像素转换为3D点云
-
归一化视角
问题:观察视角不同得到的点云也不同 —> 同一个手势对应多种输入
-
解决:把质心旋转到z轴上
如上图所示,点第一次旋转到yOz平面为,再次旋转使得该点位于z轴上,最终得到
-
形式化描述
-
Permutation Equivariant Layers(PEL)置换等变层
PEL接受点云作为输入,为每个点独立计算特征,输出
输入输出特征为度, N为点数, 为N个点中在各个维度上出现的最大值
即x的每一维乘以权值,x点集中i维出现过的最大值 乘以权值,二者相加,再乘以权值矩阵W,加上偏置项,非线性激活,得到最终输出
注意到权值和是共享的
因为每个点使用自己的输入特征和各个特征维度上的最大值计算自己的特征。所以PEL能处理无序数据,而且各个点在一定程度上相当于使用交换信息。
本文将PEL嵌入ResNet中提取点云特征,一共使用了27层PEL,网络结构如下
-
Point-to-Pose Voting
通过ResNet-PEL得到NxF维特征,每一行F维向量表示一个点的局部特征。使用Point-to-Pose voting方式估计关节点坐标,文章提出了分类和回归两种版本(回归效果更好)。
-
回归
中元素表示3D点n对于关节点j预测的贡献程度(置信水平),为网络输出的每个3D点预测的关节点j的坐标激励值
根据每个3D点对每个关节点的贡献程度及自身估计的坐标激励值,综合归一化得到最终的估计值。
-
损失函数