如何追踪物体姿态:深度网络架构与方法解析
立即解锁
发布时间: 2025-09-03 01:00:39 阅读量: 8 订阅数: 33 AIGC 


视觉与语言的融合探索
# 如何追踪物体姿态:深度网络架构与方法解析
## 1. 引言
在物体姿态跟踪领域,精确估计物体的姿态是一个具有挑战性的问题。本文将介绍一种基于卷积神经网络(CNN)的物体姿态跟踪方法,该方法通过处理RGB - D帧来回归物体的姿态表示。我们将详细探讨该方法的问题表述、架构设计、数据生成与增强,以及评估结果。
## 2. 背景知识
### 2.1 姿态估计基础
物体姿态通常描述为相对于固定坐标系的三维刚性变换,属于特殊欧几里得李群SE(3),可分解为旋转矩阵R(属于SO(3))和平移向量t(属于R³)。对于具有旋转对称性的物体,其姿态描述需要考虑更多因素。
### 2.2 相关工作
- **空间注意力模块**:一些方法使用空间注意力模块来提取背景杂波和遮挡物,并将二维像素映射到三维物体坐标。本文的注意力模块具有类似效果,但计算成本更低。
- **时间跟踪方法**:不同的研究采用了不同的时间跟踪策略,如生成合成RGB - D帧对、使用光流正则化项等。
## 3. 方法
### 3.1 问题表述
物体姿态P的定义为:
\[C = \left\{P \mid P = \begin{pmatrix}R \cdot G & t \\ 0^T & 1\end{pmatrix}, t \in R^3, R \in SO(3), G \in SO(3)\right\}\]
对于具有球对称性的物体,其姿态描述只需3个参数;对于非对称物体,G = I₃。
### 3.2 架构描述
#### 3.2.1 整体架构
CNN输入两个大小为150×150的RGB - D帧,回归输出一个9维的姿态表示Δp,其中3个参数用于平移,6个参数用于旋转。“观察”流的前两层使用在Imagenet上预训练的ResNet18的权重进行初始化。
#### 3.2.2 背景和遮挡处理
在“观察”流的第一个Fire层之后,模型使用专门的Fire层和1×1卷积生成注意力权重图,用于提取前景和处理遮挡。通过添加二元交叉熵损失到总损失函数,来监督空间注意力图。
#### 3.2.3 旋转表示
为了处理旋转部分的非线性问题,使用测地距离来建模旋转损失:
\[L_{Rot}(\Delta \hat{R}, \Delta R^{GT}) = d_{(Geod)}^{Rot}(\Delta \hat{R}, \Delta R^{GT}) = \arccos\left(\frac{Tr(\Delta \hat{R}^T \cdot \Delta R^{GT}) - 1}{2}\right)\]
采用6D连续旋转表示来减少参数化选择带来的歧义。
#### 3.2.4 对称物体处理
- **离散反射对称**:对于具有反射对称性的物体,当网络预测的旋转分量出现不可接受的值时,采用启发式算法进行处理。计算当前和前一个时间步的欧拉旋转分量的角度距离,如果超过阈值(100°),则将该欧拉角设置为前一个时间步的值。
- **连续旋转对称**:训练一批欧拉角三元组,通过线性分类层选择合适的参数,并在总损失函数中加入惩罚项,鼓励这些参数尽可能均匀分布。
#### 3.2.5 总体损失
总体跟踪损失函数为:
\[L_{Track}(\Delta\hat{P}, \Delta P) = e^{(-v_1)} \cdot MSE[(\Delta\hat{t}, \Delta t)] + v_1 + v_2 + e^{(-v_2)} \cdot \arccos\left(\frac{Tr((\Delta \hat{R} \cdot \hat{G}^* \cdot \Lambda(G.S.))^T \cdot (\Delta R \cdot \Lambda(G.S.)) - 1}{2}\right)\]
结合主要学习任务(姿态跟踪)和两个辅助任务(杂波和遮挡处理)的损失函数为:
\[Loss = e^{(-s_1)} \cdot L_{Track} + e^{(-s_2)} \cdot L_{Unoccl} + e^{(-s_3)} \cdot L_{Foregr} + s_1 + s_2 + s_3\]
对于具有连续旋转对称性的物体
0
0
复制全文
相关推荐










