0%

SVD求解配准的推导过程

配准误差函数 与 SVD + IQR 的完整推导

下面整理配准中计算推导过程,包含:平移 的消去(逐项展开并对 求导的详细步骤)、矩阵/范数形式的推导、SVD(Kabsch)求解旋转 的严格证明,以及 IQR 筛除离群点的直观解释与算法流程。


问题设定

给定两组对应点

  • 源点
  • 目标点

希望求刚体变换(旋转 与平移 ):

使平方误差

最小。

在下文中, 通常取为正交矩阵(理想为 ,即
特殊正交群 (Special Orthogonal Group)


1. 消去平移 (逐项展开并对 求导)

这是把问题从同时求 化为先固定 ,再代回仅关于 的问题的标准做法。

1.1 逐项展开

对第 项展开:

把它展开为三项:

1.2 对所有点求和

注意最后一项合并为 ,因为 对每一项相同。

1.3 对 求导并令导数为零

使用向量求导规则:

  • ,
  • .

因此:

令导数为零得到最优

将上式分离为质心形式:记

得到

这就是“消去平移”的结果:最优的平移等于把源点质心经 旋转后移到目标点质心。

1.4 代回得到中心化问题

带入到可得

因此剩下的任务变为在去掉质心后的两组点上仅求旋转 以最小化上式。


2. 矩阵 / Frobenius 范数形式的推导

把点堆成矩阵(列为点)更紧凑:

  • ,
  • ,
  • 为全 1 向量。

则总体误差写作 Frobenius 范数:

展开(使用 ):

求导的快速方式:把 看作关于 的二次型,使用矩阵微分规则可得

注意 ,因此上式与逐项展开的结果一致,进而得到


3. 求解旋转 :SVD(Kabsch/Procrustes)证明

在确定了最优平移后,问题变为最小化

目标是找到 (正交/旋转矩阵)使 最小。

3.1 把问题转化为最大化迹

展开平方和:

因此最小化 等价于最大化

定义交叉协方差(或交叉矩阵)

3.2 对 做 SVD

其中 (正交矩阵),

3.3 用迹的不等式最大化

。由于 正交,则 也为正交矩阵,其对角元满足 。于是

上界在 时取到,这对应于

因此取

可以使 达到最大,从而 达到最小。

3.4 反射修正(保证

,则 包含一次反射(不是纯旋转)。为了保证 ,我们做标准修正:

这相当于将 的最后一个奇异值对应的符号做调整,从而避免反射并保持在旋转群内。


4. 的显式表达

总结前面单项展开得到的导数:

最优点处令其为零,得到


5. 离群点的影响与 IQR(四分位距)筛选的作用

5.1 最小二乘对离群点的敏感性

最小二乘目标是平方残差和:

离群点若使某些 非常大,则这些项按平方被放大,会主导总误差,导致最优解被少数异常值拉偏。

5.2 IQR 的基本思想

IQR 基于残差的分位数:计算残差集合的第一四分位数 (下四分位数:数据中 25% 的值)、第三四分位数 (上四分位数:数据中 75% 的值),四分位距 。常用的离群点阈值为

通常取 。超出该区间的残差被视为离群点并剔除。

5.3 IQR + SVD 的算法流程(常见实现)

  1. 初始化匹配:根据最近邻或特征匹配得到点对 (可能包含错误匹配)。
  2. 初始估计:可用简单的初始 (例如单位矩阵)或用全部点快速估计一次 (直接 SVD)。
  3. 计算残差
  4. IQR 筛选:计算 ,保留满足 的点(这些称为内点)。
  5. 用内点重算:对内点应用中心化 + SVD(Kabsch)得到新的
  6. 可选迭代:重复步骤 3–5,直到内点集稳定或 的变化小于阈值。

注意:IQR 筛选是一种简单且实用的预处理,它能在少数离群点存在时显著提升 SVD 解的稳健性。但它不是唯一或最优的鲁棒方法:可选替代包括 RANSAC、trimmed least squares、M-estimators(例如 Huber 损失)等。

5.4 简要的理论直观说明

若离群点集合 中的残差下界为很大的常数 ,那么离群点对总误差的贡献至少为 。当该量远大于内点误差和时,最小二乘会被迫优先降低离群点误差,从而牺牲对大多数点的拟合。IQR 通过剔除这些极端残差,使得 SVD 最小化的目标更贴近对大多数点的最佳拟合,从而提高鲁棒性。


6. 扩展与补充

  • 加权情形:若每对 有权重 ,则可用带权质心与加权协方差: 最优平移为 仍可由加权 做 SVD 得到。

  • 其他鲁棒方法:RANSAC(随机采样一致性)在存在大量错误匹配时极其有效;M-estimator 通过修改损失函数减小大残差的影响;trimmed least squares 则直接在目标中剔除一定比例的大残差项并全局优化。


结论

  • 关于 求导并设导数为零可得到明确的闭式解 ,即最优平移把源点质心的变换结果对齐到目标质心。
  • 在去掉质心后,旋转 可通过最大化 来求解,使用 的 SVD(Kabsch 算法)给出解析解 (必要时修正避免反射)。
  • 当存在离群点时,直接最小二乘(L2)解容易被极端值主导。使用 IQR 进行残差筛除可以显著提高 SVD 求解的稳健性;更严谨或更鲁棒的替代方案有 RANSAC、M-estimators 等。

附录:常用矩阵/向量求导规则(本推导中用到)

  • 维度一致)
  • (矩阵导数规则,按需使用)
×