3. 估计——2D射影变换
估计是指在某些本质测量的基础上计算某个变换或其他数学量。
- 测量数:考虑自由度个数和约束个数后给出的一个下届;
- 近似解:精确解称为最小配置解,近似解是通过最小化某个代价函数完成;
- 黄金标准算法:通常存在一种最优代价函数,其最优的含义是在一定假设下,使代价函数取最小值的解是最好估计,计算该代价函数最小值的算法称为黄金标准算法;
3.1 直接线性变换(DLT)算法
齐次矢量方程,相差一个尺度因子:
xi′=Hxi→xi′×Hxi=0→Aih=0
(1) Aih=0是未知矢量h的线性方程,矩阵Ai的元素是已知点的坐标的二次多项式;
(2) Ai中只有两行线性独立(包含无穷远点),Ai为2×9矩阵;
(3) 该方程组对任何齐次坐标成立;
(4) 非零因子可以通过对范数要求任意选择,∣∣h∣∣=1;
3.1.1 Over-determined solution
对应点多余最小配置,Ah=0为超定问题;由于测量存在噪声,可分为零解和近似解两种情况,为避免产生零解(h=0),附加范数条件∣∣h∣∣=1,等价于最小化∣∣Ah∣∣→∣∣Ah∣∣/∣∣h∣∣最小值问题,解是∣∣ATA∣∣的最小特征值的单位特征向量,即A最小奇异值的单位奇异向量;
3.1.2 Inhomogeneous solution
强加条件hj=1,既然允许相差一个任意因子,可以通过因子选择使得hj=1:
Aih=0→Mihˉ=b
hˉ是8维矢量,可用高斯消去(线性方程基本解法)或最小二乘法求解,若真正的解hj趋近于零,此方法导致不稳定解;
3.1.3 Degenerate configurations
对于具体的一类变换而言,出现某种配置(共线点或共点线)不能确定唯一解的情形称为退化(无穷解簇或无解)。
3.1.4 Solutions from lines and other entities
单应也可以由直线或二次曲线的对应来计算,约束数必须等于或大于变换的自由度数,混合配置需注意配置可产生的约束数目;

3.2 不同的代价函数
为确定H超定解而需最小化的若干代价函数。
3.2.1 Algebraic distance
DLT算法最小化范数∣∣Ah∣∣,矢量ε=Ah称为残差矢量;矢量εi是关联对应点对和单应H的代数误差矢量,该矢量的范数是一个标量,称为代数距离:
i∑dalg(xi′,Hxi)2=i∑∣∣εi∣∣2=∣∣Ah∣∣2=∣∣ε2∣∣
对于任何两个矢量x1和x2的代数距离为:dalg(x1,x2)2=a12+a22,其中a=(a1,a2,a3)T=x1×x2;其特殊的优越性在于线性(唯一)解以及计算代价小,通常代数距离的解被用作几何或统计代价函数的非线性最小化的起点,非线性最小化给这个解一个最后的“抛光”;
3.2.2 Geometric distance
基于图像上几何距离的测量并最小化图像坐标的测量值与估计值之差:矢量x表示测量的图像坐标,x^表示该点的估计值,而xˉ表示该点的真值。
- 单幅图像误差:误差仅出现在第二幅图像的情形(标定),最小化转移误差∑id(xi′,Hxˉi)2;
- 对称转移误差:∑id(xi,H−1xi′)2+∑id(xi′,Hxi)2;
3.2.3 Reprojection error – both images
估计每组对应的“校正值”:
i∑d(xi,x^i)2+d(xi′,x^i′)2s.t.x^i′=H^x^i
这种估计可对诸如世界平面点的图像对应点xi↔xi′测量建模,估计世界平面点X^′,然后将它重投影到估计H上认为是完全匹配的对应x^i↔x^i′;

3.2.4 Comparison of geometric and algebraic distance
仿射变换下,几何距离和代数距离相等:
d(xi′,x^i′)=dalg(xi′,x^i′)/w^i′wi′
几何距离与代数距离相关,但不相等;
3.2.5 Geometric interpretation of reprojection error
两平面之间的单应估计可以视为4D空间IR4中的“曲面”来拟合点:每对图像点定义测量空间IR4的一个点,满足H的点对定义了IR4中的代数簇VH(IRN中一个或多个多元多项式公共零点集),是两个超二次曲面的交集,H元素对应二次多项式系数,即定义了一个具体的二次曲面;
给定IR4中的点Xi=(xi,yi,xi′,yi′)T,单应估计的任务变成寻找一个通过点(或几乎通过)Xi的某个簇VH(对应变换H),对每一点Xi,令X^i=(x^i,y^i,x^i′,y^i′)T为簇VH上最靠近Xi的点;IR4中的几何距离等价于量图像中的重投影误差,求VH和其上到测量点距离平方和最小的点,等价于求单应和最小化重投影误差函数;
- 在VH上离测量点X最近的点X^与X的连线垂直于过X^的切平面:
d(xi,x^i)2+d(xi′,x^i′)2=d⊥(Xi,VH)2
其中d⊥(Xi,VH)是点X到簇VH的垂直距离。
- 二次曲线类似:

在仿射变换时,该代数簇是两张超平面的交,即是一个2维线性子空间,x′=HAx给出x,x′,y和x,y,y′两个线性约束,每个约束定一个IR4中的一个超平面;
3.2.6 Sampson error
几何误差的性质相当复杂,其最小化需要同时估计单应矩阵和满足单应矩阵的对应点对,引入Sampson误差介于几何与代数误差之间;
由于代数簇∣∣VH∣∣的非线性本质,点X不能直接估计,必须通过迭代;
Sampson误差函数的思想是估计点X^的一阶近似并假定代价函数在被估计点附近有很好的线性近似;
对给定单应H,在∣∣VH∣∣上的任何点X满足Ah=0;为突出代价函数对X的相关性,记代价函数(二维矢量)CH(X)=0,代价函数一阶Taylor逼近如下:
CH(X+δx)=CH(X)+∂X∂CHδx
δx=X^−X→CH(X)+∂X∂CHδx=0→Jδx=−ε
在满足Jδx=−ε条件下使用∣∣δx∣∣取最小值的矢量δx,引入Langrange乘子:
δxTδx−2λ(Jδx+ε)→2δxT−2λTJ=0T&JJTλ=−ε→∣∣δx∣∣2=εT(JJT)−2ε
范数∣∣δx∣∣2是Sampson误差;