使用径向基函数(RBF)进行图像配准

使用径向基函数(RBF)进行图像配准的效果非常优越。

考虑图像A图像B,两者包含了某个同样的物体M,只是存在着一定的旋转、伸缩甚至非线性的等扭曲差异。现在已有M分别在A中的特征点集合D,在B中的特征点集合S,S与D中的特征点是一一对应的,那么,如何根据D和S中对应点的位置关系,来将M从B配准到A上,使来自A和来自B的M彼此基本吻合呢?


多项式函数

一个最直观的解决方案是,我们先给定一个多项式函数的框架,来从M在B上的坐标(x_B, y_B)得到其在A上的坐标(X_A, Y_A),如下面的一次多项式

\left\{\begin{matrix} X_A(x_B, y_B)=ax_B+by_B+c \\ Y_A(x_B, y_B)=dx_B+ey_B+f \end{matrix}\right.

上面的一次多项式配准一共有6个未知参数abcdef,我们通过特征点集合D和S中的对应关系来优化这6个参数,使得集合中预测和结果差异,也就是\left \| X_A-x_A \right \|^2 + \left \| Y_A-y_A \right \|^2最小,那么就得到了一个多项式的配准函数。由于X_AY_A是关于abcdef的线性函数,因此可以通过线性最小二乘优化来完成,例如QR分解法。一次多项式可以拟合任意的线性变换;但是注意,由于只存在6个未知参数,当特征点集合大于3(对应6个线性方程)而变换本身又非线性时,优化上述问题就变成了求解一个超定线性方程组,使得匹配的准确度在训练集上就已经难以保证。

为了解决这个问题,我们也可以使用更高次的多项式来实现更复杂的配准,如下面的二次多项式

\left\{\begin{matrix} X_A(x_B, y_B)=ax_B^2+by_B^2+cx_By_B + d x_B+ey_B+f \\ Y_A(x_B, y_B)=gx_B^2+hy_B^2+ix_By_B + jx_B+ky_B+l \end{matrix}\right.

上面的二次多项式配准一共有12个未知参数,形式上相当于一次多项式的超集,因此拟合能力更强。由于X_AY_A是未知参数的线性函数,因此依然可以通过线性最小二乘法求解。

在更丧病的情况下,我们还可引入三次多项式四次多项式等等。但是,一昧地增加多项式次数也是不可取的,因为很容易产生过拟合的问题。


径向基函数(RBF)

使用径向基函数进行图像配准,相当于在使用多项式函数配准的基础上,又额外增加了一组径向基的约束。所谓的径向基,简单来说就是点到各个特征点的的距离信息。径向基函数的学习过程相当于求解下面的线性方程组中的F

\begin{bmatrix} R_{00} & R_{01} & R_{02} & R_{03} & \cdots & x_{B0} & y_{B0} & 1\\ R_{10} & R_{11} & R_{12} & R_{13} & \cdots & x_{B1} & y_{B1} & 1\\ R_{20} & R_{21} & R_{22} & R_{23} & \cdots & x_{B2} & y_{B2} & 1\\ R_{30} & R_{31} & R_{32} & R_{33} & \cdots & x_{B3} & y_{B3} & 1\\ \vdots & \vdots & \vdots & \vdots & \ddots & \vdots & \vdots & \vdots\\ x_{B0} & x_{B1} & x_{B2} & x_{B3} & \cdots & 0 & 0 & 0\\ y_{B0} & y_{B1} & y_{B2} & y_{B3} & \cdots & 0 & 0 & 0\\ 1 & 1 & 1 & 1 & \cdots & 0 & 0 & 0 \end{bmatrix} \cdot F=\begin{bmatrix} x_{A0} & y_{A0}\\ x_{A1} & y_{A1}\\ x_{A2} & y_{A2}\\ x_{A3} & y_{A3}\\ \vdots & \vdots \\ 0 & 0\\ 0 & 0\\ 0 & 0 \end{bmatrix}

其中:

在求解出F后,对于B中任意一点p_b(x_b,y_b) \in B,以及B中所有特征点s_{bi} \in S,我们可以构造下面的向量P:

P=\begin{bmatrix} \left \| p_b-s_{b0} \right \| & \left \| p_b-s_{b1} \right \| & \left \| p_b-s_{b2} \right \| & \left \| p_b-s_{b3} \right \| & \cdots \cdots & x_b & y_b & 1 \end{bmatrix}

然后计算P\cdot F来得到其配准后在A中的坐标

可以发现,与多项式函数不同的是,径向基函数不论特征点集合里有多少约束,都能对应一个满秩的线性方程组,既非不定也非超定。因此,它至少能保证在训练集上能够非常完美地拟合(实践表明其在训练集以外地配准上表现也非常优秀)。


细节调整

前面提到的径向基函数已经基本能用于实际使用,但要使其表现得得更加鲁棒还需要一些细节调整。

譬如,我们可以将线性方程组的右部的x_{Ai}y_{Ai},全部减去A中特征点的重心点p_{Ac}(x_{Ac},y_{Ac}});对应地,使用P\cdot F+p_{Ac}(替代原来的P\cdot F)来计算配准点坐标。等等。

称谓(*)
邮箱
留言(*)