深度学习6D姿态估计pose estimation分类
最近看了几篇6D姿态估计的文章,对他们做个分类。6D姿态估计就是估计出物体相对于相机的姿态。我把他们分成了 类:1、vote方式 2、latent space方式1、vote方式1.1 PoseCNN: A Convolutional Neural Network for 6D Object Pose Estimation in Cluttered Scenes...
最近看了几篇6D姿态估计的文章,对他们做个分类。
6D姿态估计做的就是估计出物体相对于相机的姿态,比如translation,rotation.
6D姿态估计就是估计出物体相对于相机的姿态。他们有几种分类方式
- 1 实现方式分:1)vote 估计方式 2)keypoint方式 3)latent space方式。
- 2 问题设置分:1) seen object pose estimation; 2) unseen object pose estimation
- 3 input分:1)rgb only; 2) depth only; 3) rgb and depth
评价指标
通常都用 average distance metric
用
R
R
R表示gt的rotation,
T
T
T表示gt的translation,用
R
^
\hat R
R^表预测的rotation,
T
^
\hat T
T^ 表预测的translation
d
=
1
m
∑
x
∈
M
∣
∣
(
R
x
+
T
)
−
(
R
^
x
+
T
^
)
d = \frac{1}{m} \sum_{x \in M } || (Rx + T) - (\hat R x + \hat T)
d=m1∑x∈M∣∣(Rx+T)−(R^x+T^)
M
M
M denotes the set of 3D model points and
m
m
m is the number of points
对于对称物体
d
=
1
m
∑
x
1
∈
M
m
i
n
x
2
∈
M
∣
∣
(
R
x
1
+
T
)
−
(
R
^
x
2
+
T
^
)
d = \frac{1}{m} \sum_{x_1 \in M } min_{x_2 \in M}|| (Rx_1 + T) - (\hat R x_2 + \hat T)
d=m1∑x1∈Mminx2∈M∣∣(Rx1+T)−(R^x2+T^)
这里可以理解为不用每个点都对应上,而是对应到最像的那个位置。
1、vote方式
1.1 PoseCNN: A Convolutional Neural Network for 6D Object Pose Estimation in Cluttered Scenes
文章的创新点是
- 1.提出了PoseCNN,PoseCNN物体的中心点是通过每个像素点投票得到,可以很好地处理遮挡问题。
这篇文章中translation部分,先通过投票得到物体的中心,再预测物体距离相机的距离。rotation部分通过回归得到。
PoseCNN分成了特征提取和后面的multi task学习。有labels,translation,rotation学习。
1.1.1 label分支,对每个pixel预测他所属的类的分数
1.1.2 translation分支
- 1 霍夫投票层:用于确定中心点。首先采样物体中心点,两个像素点预测的中心点方向的交线就是中心点。然后该类的所有点会对中心点投票得分,得分代表了该pixel是中心的可能性。得到图片上的中心位置后,可以通过坐标系转化的关系,得到物体相对相机的 ( x , y ) (x,y) (x,y)位置。
- 2 深度:内部点的深度平均值。
1.1.3 rotation分支
rotation用上了上面霍夫投票的bounding box,还用了第一阶段的分割信息,对前面提取的特征进行了’crop and pooling’,然后预测了每个类的方向。
1.2 DenseFusion: 6DObject Pose Estimation by Iterative Dense Fusion
1.3 PVNet: Pixel-wise Voting Network for 6DoF Pose Estimation
这一篇发在2019的CVPR
2 keypoint方式
3 latent space 方式
这个方法主要用在unseen object pose estimation。
3.1 Learning Canonical Shape Space for Category-Level 6D Object Pose and Size Estimation
这篇文章的思路很正。
在FoldingNet的编码器和解码器之间添加一个采样层,将他转成为VAE。(用上VAE网络的泛化性能应该更好?)
Canonical Shape Space部分训练的时候用Canonical point cloud训练。这部分训练出vae和重建
Learning view-factorizing RGBD embedding,加上场景中的rgb和depth图(mask-rcnn)
未完待续。。。
更多推荐
所有评论(0)