3. 估计——2D射影变换
估计是指在某些本质测量的基础上计算某个变换或其他数学量。
- 测量数:考虑自由度个数和约束个数后给出的一个下届;
- 近似解:精确解称为最小配置解,近似解是通过最小化某个代价函数完成;
- 黄金标准算法:通常存在一种最优代价函数,其最优的含义是在一定假设下,使代价函数取最小值的解是最好估计,计算该代价函数最小值的算法称为黄金标准算法;
3.1 直接线性变换(DLT)算法
齐次矢量方程,相差一个尺度因子:
x
i
′
=
H
x
i
→
x
i
′
×
H
x
i
=
0
→
A
i
h
=
0
\textbf{x}_i'=H\textbf{x}_i\rightarrow\textbf{x}_i'\times{H}\textbf{x}_i=0\rightarrow{A_i}\textbf{h}=0
xi′=Hxi→xi′×Hxi=0→Aih=0
(1)
A
i
h
=
0
A_i\textbf{h}=0
Aih=0是未知矢量
h
\textbf{h}
h的线性方程,矩阵
A
i
A_i
Ai的元素是已知点坐标的二次多项式;
(2)
A
i
A_i
Ai中只有两行线性独立(包含无穷远点),
A
i
A_i
Ai为
2
×
9
2\times9
2×9矩阵;
(3) 该方程组对任何齐次坐标成立,非零因子可以通过对范数要求任意选择,
∣
∣
h
∣
∣
=
1
||\textbf{h}||=1
∣∣h∣∣=1;
3.1.1 Over-determined solution
对应点多余最小配置,
A
h
=
0
A\textbf{h}=0
Ah=0为超定问题;由于测量存在噪声,可分为零解和近似解两种情况,为避免产生零解(
h
=
0
\textbf{h}=\textbf{0}
h=0),附加范数条件
∣
∣
h
∣
∣
=
1
||\textbf{h}||=1
∣∣h∣∣=1,等价于最小化
∣
∣
A
h
∣
∣
→
∣
∣
A
h
∣
∣
/
∣
∣
h
∣
∣
||A\textbf{h}||\rightarrow||A\textbf{h}||/||\textbf{h}||
∣∣Ah∣∣→∣∣Ah∣∣/∣∣h∣∣最小值问题,解是
∣
∣
A
T
A
∣
∣
||A^TA||
∣∣ATA∣∣的最小特征值的(单位)特征矢量,即
A
A
A最小奇异值的单位奇异向量;
3.1.2 Inhomogeneous solution
强加条件
h
j
=
1
h_j=1
hj=1,既然允许相差一个任意因子,可以通过因子选择使得
h
j
=
1
h_j=1
hj=1:
A
i
h
=
0
→
M
i
h
~
=
b
{A_i}\textbf{h}=0\rightarrow{M_i}\tilde{\textbf{h}}=\textbf{b}
Aih=0→Mih~=b
h
~
\tilde{\textbf{h}}
h~是8维矢量,可用高斯消去(线性方程基本解法)或最小二乘法求解,若真正的解
h
j
h_j
hj趋近于零,此方法导致不稳定解;
3.1.3 Degenerate configurations
对于具体的一类变换而言,出现某种配置(共线点或共点线)不能确定唯一解的情形称为退化(无穷解簇或无解)。
3.1.4 Solutions from lines and other entities
单应也可以由直线或二次曲线的对应来计算,约束数必须等于或大于变换的自由度数,混合配置需注意配置可产生的约束数目;
3.2 不同的代价函数
为确定 H H H超定解而需最小化的若干代价函数。
3.2.1 Algebraic distance
DLT算法最小化范数
∣
∣
A
h
∣
∣
||A\textbf{h}||
∣∣Ah∣∣,矢量
ε
=
A
h
\varepsilon=A\textbf{h}
ε=Ah称为残差矢量;矢量
ε
i
\varepsilon_i
εi是关联对应点对和单应
H
H
H的代数误差矢量,该矢量的范数是一个标量,称为代数距离:
∑
i
d
a
l
g
(
x
i
′
,
H
x
i
)
2
=
∑
i
∣
∣
ε
i
∣
∣
2
=
∣
∣
A
h
∣
∣
2
=
∣
∣
ε
2
∣
∣
\sum_id_{alg}(\textbf{x}_i',H\textbf{x}_i)^2=\sum_i||\varepsilon_i||^2=||A\textbf{h}||^2=||\varepsilon^2||
i∑dalg(xi′,Hxi)2=i∑∣∣εi∣∣2=∣∣Ah∣∣2=∣∣ε2∣∣
对于任何两个矢量
x
1
\textbf{x}_1
x1和
x
2
\textbf{x}_2
x2的代数距离为:
d
a
l
g
(
x
1
,
x
2
)
2
=
a
1
2
+
a
2
2
d_{alg}(\textbf{x}_1,\textbf{x}_2)^2=a^2_1+a^2_2
dalg(x1,x2)2=a12+a22,其中
a
=
(
a
1
,
a
2
,
a
3
)
⊤
=
x
1
×
x
2
=
ε
i
\textbf{a}=(a_1,a_2,a_3)^\top=\textbf{x}_1\times\textbf{x}_2=\varepsilon_i
a=(a1,a2,a3)⊤=x1×x2=εi;其特殊的优越性在于线性(唯一)解以及计算代价小,通常代数距离的解被用作几何或统计代价函数的非线性最小化的起点,非线性最小化给这个解一个最后的“抛光”;
3.2.2 Geometric distance
基于图像上几何距离的测量并最小化图像坐标的测量值与估计值之差:矢量 x \textbf{x} x表示测量的图像坐标, x ^ \hat{\textbf{x}} x^表示该点的估计值,而 x ˉ \bar{\textbf{x}} xˉ表示该点的真值。
- 单幅图像误差:误差仅出现在第二幅图像的情形(标定),最小化转移误差 ∑ i d ( x i ′ , H x ˉ i ) 2 \sum_id(\textbf{x}_i',H\bar{\textbf{x}}_i)^2 ∑id(xi′,Hxˉi)2;
- 对称转移误差: ∑ i d ( x i , H − 1 x i ′ ) 2 + ∑ i d ( x i ′ , H x i ) 2 \sum_id(\textbf{x}_i,H^{-1}\textbf{x}_i')^2+\sum_id(\textbf{x}_i',H\textbf{x}_i)^2 ∑id(xi,H−1xi′)2+∑id(xi′,Hxi)2;
- 对应集合的转移误差是算法要估计的单应使误差取最小值的单应;
3.2.3 Reprojection error – both images
估计每组对应的“校正值”(对测量值校正):
∑
i
d
(
x
i
,
x
^
i
)
2
+
d
(
x
i
′
,
x
^
i
′
)
2
s
.
t
.
x
^
i
′
=
H
^
x
^
i
\sum_id(\textbf{x}_i,\hat{\textbf{x}}_i)^2+d(\textbf{x}_i',\hat{\textbf{x}}_i')^2s.t.\hat{\textbf{x}}_i'=\hat{H}\hat{\textbf{x}}_i
i∑d(xi,x^i)2+d(xi′,x^i′)2s.t.x^i′=H^x^i
这种估计可对诸如世界平面点的图像对应点
x
i
↔
x
i
′
\textbf{x}_i\leftrightarrow\textbf{x}_i'
xi↔xi′测量建模,估计世界平面点
X
^
′
\hat{\textbf{X}}'
X^′,然后将它重投影到估计
H
H
H上认为是完全匹配的对应
x
^
i
↔
x
^
i
′
\hat{\textbf{x}}_i\leftrightarrow\hat{\textbf{x}}_i'
x^i↔x^i′;
3.2.4 Comparison of geometric and algebraic distance
几何距离与代数距离相关,但不相等:
d
(
x
i
′
,
x
^
i
′
)
=
d
a
l
g
(
x
i
′
,
x
^
i
′
)
/
w
^
i
′
w
i
′
d(\textbf{x}_i',\hat{\textbf{x}}_i')=d_{alg}(\textbf{x}_i',\hat{\textbf{x}}_i')/\hat{w}_i'w_i'
d(xi′,x^i′)=dalg(xi′,x^i′)/w^i′wi′
仿射变换下(齐次不变性),几何距离和代数距离相等,对于仿射变换,最小化几何距离可以用基于代数距离的线性DLT算法;
3.2.5 Geometric interpretation of reprojection error
两平面之间的单应估计可以视为4D空间IR4中的“曲面”来拟合点:每对图像点定义测量空间IR4的一个点,满足 x ′ × H x \textbf{x}'\times{H}\textbf{x} x′×Hx的点对定义了IR4中的代数簇 V H \mathcal{V}_H VH(IRN中一个或多个多元多项式公共零点集,是两个超二次曲面的交集), H H H中的元素确定多项式每一项系数,即定义了一个具体的二次曲面;给定IR4中的点 X i = ( x i , y i , x i ′ , y i ′ ) ⊤ \textbf{X}_i=(x_i,y_i,x_i',y_i')^\top Xi=(xi,yi,xi′,yi′)⊤,单应估计的任务变成寻找一个通过点(或几乎通过) X i \textbf{X}_i Xi的某个簇 V H \mathcal{V}_H VH(对应变换 H H H),对每一点 X i \textbf{X}_i Xi,令 X ^ i = ( x ^ i , y ^ i , x ^ i ′ , y ^ i ′ ) ⊤ \hat{\textbf{X}}_i=(\hat{x}_i,\hat{y}_i,\hat{x}_i',\hat{y}_i')^\top X^i=(x^i,y^i,x^i′,y^i′)⊤为簇 V H \mathcal{V}_H VH上最靠近 X i \textbf{X}_i Xi的点;IR4中的几何距离等价于两图像中的重投影误差,求 V H \mathcal{V}_H VH和其上到测量点距离平方和最小的点,等价于求单应和最小化重投影误差函数;
- 在
V
H
\mathcal{V}_H
VH上离测量点
X
\textbf{X}
X最近的点
X
^
\hat{\textbf{X}}
X^与
X
\textbf{X}
X的连线垂直于过
X
^
\hat{\textbf{X}}
X^的切平面:
d ( x i , x ^ i ) 2 + d ( x i ′ , x ^ i ′ ) 2 = d ⊥ ( X i , V H ) 2 d(\textbf{x}_i,\hat{\textbf{x}}_i)^2+d(\textbf{x}_i',\hat{\textbf{x}}_i')^2=d_\perp(\textbf{X}_i,\mathcal{V}_H)^2 d(xi,x^i)2+d(xi′,x^i′)2=d⊥(Xi,VH)2
其中 d ⊥ ( X i , V H ) d_\perp(\textbf{X}_i,\mathcal{V}_H) d⊥(Xi,VH)是点 X \textbf{X} X到簇 V H \mathcal{V}_H VH的垂直距离。 - 二次曲线类似:
在仿射变换时,该代数簇是两张超平面的交,即是一个2维线性子空间, x ′ = H A x \textbf{x}'=H_A\textbf{x} x′=HAx给出 x , x ′ , y x,x',y x,x′,y和 x , y , y ′ x,y,y' x,y,y′两个线性约束,每个约束定一个IR4中的一个超平面,关系都可以通过最小化点到该代数簇的垂直距离来估计。
3.2.6 Sampson error
几何误差的性质相当复杂,其最小化需要同时估计单应矩阵和满足单应矩阵的对应点对,引入Sampson误差介于几何与代数误差之间;由于代数簇
V
H
\mathcal{V}_H
VH的非线性本质,点
X
\textbf{X}
X不能直接估计
X
^
\hat{\textbf{X}}
X^,必须通过迭代;Sampson误差函数的思想是估计点
X
^
\hat{\textbf{X}}
X^的一阶近似并假定代价函数在被估计点附近有很好的线性近似;对给定单应
H
H
H,在
V
H
\mathcal{V}_H
VH上的任何点
X
\textbf{X}
X满足
A
h
=
0
A\textbf{h}=0
Ah=0;为突出代价函数对
X
\textbf{X}
X的相关性,记代价函数(二维矢量)
C
H
(
X
)
=
0
\mathcal{C}_H(\textbf{X})=0
CH(X)=0,代价函数一阶Taylor逼近如下:
C
H
(
X
+
δ
x
)
=
C
H
(
X
)
+
∂
C
H
∂
X
δ
x
=
0
\mathcal{C}_H(\textbf{X}+\delta_{\textbf{x}})=\mathcal{C}_H(\textbf{X})+\frac{\partial\mathcal{C}_H}{\partial\textbf{X}}\delta_{\textbf{x}}=\textbf{0}
CH(X+δx)=CH(X)+∂X∂CHδx=0
δ
x
=
X
^
−
X
→
C
H
(
X
)
+
∂
C
H
∂
X
δ
x
=
0
→
J
δ
x
=
−
ε
\delta_{\textbf{x}}=\hat{\textbf{X}}-\textbf{X}\rightarrow\mathcal{C}_H(\textbf{X})+\frac{\partial\mathcal{C}_H}{\partial\textbf{X}}\delta_{\textbf{x}}=\textbf{0}\rightarrow{J}\delta_{\textbf{x}}=-\varepsilon
δx=X^−X→CH(X)+∂X∂CHδx=0→Jδx=−ε
在满足
J
δ
x
=
−
ε
J\delta_{\textbf{x}}=-\varepsilon
Jδx=−ε条件下使
∣
∣
δ
x
∣
∣
||\delta_{\textbf{x}}||
∣∣δx∣∣取最小值的矢量
δ
x
\delta_{\textbf{x}}
δx,引入Langrange乘子:
δ
x
⊤
δ
x
−
2
λ
⊤
(
J
δ
x
+
ε
)
→
δ
x
=
J
⊤
λ
&
λ
=
−
(
J
J
⊤
)
−
1
ε
→
∣
∣
δ
x
∣
∣
2
=
ε
⊤
(
J
J
⊤
)
−
1
ε
\delta_{\textbf{x}}^\top\delta_{\textbf{x}}-2\lambda^\top(J\delta_{\textbf{x}}+\varepsilon)\rightarrow \delta_{\textbf{x}}=J^\top\lambda\,\&\,\lambda=-(JJ^\top)^{-1}\varepsilon \rightarrow||\delta_{\textbf{x}}||^2=\varepsilon^\top(JJ^\top)^{-1}\varepsilon
δx⊤δx−2λ⊤(Jδx+ε)→δx=J⊤λ&λ=−(JJ⊤)−1ε→∣∣δx∣∣2=ε⊤(JJ⊤)−1ε
范数
∣
∣
δ
x
∣
∣
2
||\delta_{\textbf{x}}||^2
∣∣δx∣∣2是Sampson误差;其中
ε
\varepsilon
ε和
J
J
J都与
H
H
H有关,变参数集仅由
H
H
H的元素组成。
注解:
(1) 2D单应估计中的
X
=
(
x
,
y
,
x
′
,
y
′
)
⊤
\textbf{X}=(x,y,x',y')^\top
X=(x,y,x′,y′)⊤,其中2D测量是
x
=
(
x
,
y
,
1
)
⊤
\textbf{x}=(x,y,1)^\top
x=(x,y,1)⊤和
x
′
=
(
x
′
,
y
′
,
1
)
⊤
\textbf{x}'=(x',y',1)^\top
x′=(x′,y′,1)⊤.
(2)
ε
=
C
H
(
X
)
\varepsilon=\mathcal{C}_H(\textbf{X})
ε=CH(X)是代数误差矢量
A
i
h
A_i\textbf{h}
Aih.
(3)
J
=
∂
C
H
(
X
)
/
∂
(
X
)
J=\partial\mathcal{C}_H(\textbf{X})/\partial(\textbf{X})
J=∂CH(X)/∂(X)是一个
2
×
4
2\times4
2×4的矩阵:
J
11
=
∂
(
−
w
i
′
x
i
⊤
h
2
+
y
i
′
x
i
⊤
h
3
)
/
∂
x
=
−
w
i
′
h
21
+
y
i
′
h
31
J_{11}=\partial(-w'_i\textbf{x}_i^\top\textbf{h}^2+y'_i\textbf{x}_i^\top\textbf{h}^3)/\partial{x}=-w'_ih_{21}+y'_ih_{31}
J11=∂(−wi′xi⊤h2+yi′xi⊤h3)/∂x=−wi′h21+yi′h31.
(4) Sampson误差与代数误差的相似性,可以解释成Mahalanobis范数.
(5)这里推导Sampson误差针对一组点,若干组点估计单应时误差相加:
D
⊥
=
∑
i
ε
i
⊤
(
J
i
J
i
⊤
)
−
1
ε
i
\mathcal{D}_\perp=\sum_i\varepsilon_i^\top(J_iJ_i^\top)^{-1}\varepsilon_i
D⊥=∑iεi⊤(JiJi⊤)−1εi
线性代价函数:代数误差矢量
C
H
(
X
)
=
A
(
X
)
h
\mathcal{C}_H(\textbf{X})=A(\textbf{X})\textbf{h}
CH(X)=A(X)h关于
X
\textbf{X}
X元素是典型多重线性的,由Taylor展开可以给出几何误差的精确一阶近似,表明Sampson误差等同于几何误差;另外,由一组线性方程定义的代数簇是
H
H
H的超平面,求
H
H
H的变成超平面拟合问题。
3.2.7 Another geometric interpretation
- 一个由测量矢量 X \textbf{X} X组成的测量空间IRN;
- 一个模型,该模型视为IRN中点的一个子集,测量矢量 X \textbf{X} X满足此模型,该点集将组成IRN中的某维数流形S,该子流形维数(自由度)等于用来参数化该流形的最少参数数;
3.3 统计代价函数和最大似然估计
- 每个测量点
x
\textbf{x}
x的概率密度函数(pdf):
P r ( x ) = ( 1 2 π σ 2 ) e − d ( x , x ˉ ) 2 / ( 2 σ 2 ) Pr(\textbf{x})=(\frac{1}{2\pi\sigma^2})e^{-d(\textbf{x},\bar{\textbf{x}})^2/(2\sigma^2)} Pr(x)=(2πσ21)e−d(x,xˉ)2/(2σ2) - 单图像误差:给定真实
H
H
H时获得测量
{
x
i
′
}
\{\textbf{x}'_i\}
{xi′}的概率(独立同分布),该对应集合的对数似然为:
P r ( { x i ′ } ∣ H ) = ∏ i ( 1 2 π σ 2 ) e − d ( x i ′ , H x ˉ i ) 2 / ( 2 σ 2 ) Pr(\{\textbf{x}'_i\}|H)=\prod_i(\frac{1}{2\pi\sigma^2})e^{-d(\textbf{x}'_i,H\bar{\textbf{x}}_i)^2/(2\sigma^2)} Pr({xi′}∣H)=i∏(2πσ21)e−d(xi′,Hxˉi)2/(2σ2)
log P r ( { x i ′ } ∣ H ) = − 1 2 σ 2 ∑ i d ( x i ′ , H x ˉ i ) 2 + c o n s t \log{Pr}(\{\textbf{x}'_i\}|H)=-\frac{1}{2\sigma^2}\sum_id(\textbf{x}'_i,H\bar{\textbf{x}}_i)^2+const logPr({xi′}∣H)=−2σ21i∑d(xi′,Hxˉi)2+const
单应的最大似然(ML)估计 H ^ \hat{H} H^最大化对数似然,即最小化几何误差函数; - 双图像误差:
P r ( { x i , x i ′ } ∣ H , x ˉ i ′ ) = ∏ i ( 1 2 π σ 2 ) e − ( d ( x i , x ˉ i ) 2 + d ( x i ′ , H x ˉ i ) 2 ) / ( 2 σ 2 ) Pr(\{\textbf{x}_i,\textbf{x}'_i\}|H,\bar{\textbf{x}}'_i)=\prod_i(\frac{1}{2\pi\sigma^2})e^{-(d(\textbf{x}_i,\bar{\textbf{x}}_i)^2+d(\textbf{x}'_i,H\bar{\textbf{x}}_i)^2)/(2\sigma^2)} Pr({xi,xi′}∣H,xˉi′)=i∏(2πσ21)e−(d(xi,xˉi)2+d(xi′,Hxˉi)2)/(2σ2)
ML估计等同于最小化重投影误差函数; - Mahalanobis距离:在一般高斯分布的情形,可以假定测量矢量
X
X
X满足一个具有协方差矩阵
Σ
\Sigma
Σ的高斯分布函数,最大化对数似然则等价于最小化Mahalanobis距离
∣ ∣ X − X ˉ ∣ ∣ Σ 2 = ( X − X ˉ ) ⊤ Σ − 1 ( X − X ˉ ) ||X-\bar{X}||_\Sigma^2=(X-\bar{X})^\top\Sigma^{-1}(X-\bar{X}) ∣∣X−Xˉ∣∣Σ2=(X−Xˉ)⊤Σ−1(X−Xˉ)
图像间误差独立:
∣ ∣ X − X ˉ ∣ ∣ Σ 2 + ∣ ∣ X ′ − X ˉ ′ ∣ ∣ Σ 2 ||X-\bar{X}||_\Sigma^2+||X'-\bar{X}'||_\Sigma^2 ∣∣X−Xˉ∣∣Σ2+∣∣X′−Xˉ′∣∣Σ2
点之间误差独立:
∑ ∣ ∣ x i − x ˉ i ∣ ∣ Σ i 2 + ∑ ∣ ∣ x i ′ − x ˉ i ′ ∣ ∣ Σ 2 \sum{||\textbf{x}_i-\bar{\textbf{x}}_i||_{\Sigma_i}^2}+\sum||\textbf{x}_i'-\bar{\textbf{x}}_i'||_\Sigma^2 ∑∣∣xi−xˉi∣∣Σi2+∑∣∣xi′−xˉi′∣∣Σ2
这个方程允许用于非各向同性的协方差矩阵,使用两非垂直线相交计算点的位置会出现此情况。
3.4 变换不变性和归一化
评价算法与图像坐标系原点、尺度甚至定向选择之间的关系。
3.4.1 Invariance to image coordinate transformations
x
~
′
=
T
′
H
T
−
1
x
~
\tilde{\textbf{x}}'=T'HT^{-1}\tilde{\textbf{x}}
x~′=T′HT−1x~
(1) 根据公式
x
~
i
=
T
x
i
\tilde{\textbf{x}}_i=T\textbf{x}_i
x~i=Txi和
x
~
i
′
=
T
′
x
i
′
\tilde{\textbf{x}}_i'=T'\textbf{x}_i'
x~i′=T′xi′变换图像坐标;
(2) 由
x
~
i
↔
x
~
i
′
\tilde{\textbf{x}}_i\leftrightarrow\tilde{\textbf{x}}_i'
x~i↔x~i′求变换
H
~
\tilde{H}
H~;
(3) 令
H
=
T
′
−
1
H
~
T
H=T'^{-1}\tilde{H}T
H=T′−1H~T;
最小化几何误差的算法关于相似变换不变,DLT算法结果却不是相似变换不变,归一化变换将消除DLT由任意选取图像坐标系原点和尺度所产生的影响。
3.4.2 Non-invariance of the DLT algorithm
令 T ′ T' T′为具有缩放因子 s s s的相似变换, T T T为任意的射影变换;此外,假设 H H H是任何2D单应并定义 H ~ = T ′ H T − 1 \tilde{H}=T'HT^{-1} H~=T′HT−1;那么 ∣ ∣ A ~ h ~ ∣ ∣ = s ∣ ∣ A h ∣ ∣ ||\tilde{A}\tilde{\textbf{h}}||=s||A\textbf{h}|| ∣∣A~h~∣∣=s∣∣Ah∣∣(余因子式: ( M x ) × ( M y ) = M ∗ ( x × y ) (M\textbf{x})\times(M\textbf{y})=M^*(\textbf{x}\times\textbf{y}) (Mx)×(My)=M∗(x×y)),然后 ∣ ∣ H ∣ ∣ = 1 ||H||=1 ∣∣H∣∣=1不等价于 ∣ ∣ H ~ ∣ ∣ = 1 ||\tilde{H}||=1 ∣∣H~∣∣=1(约束条件不同),因此变换矩阵的解不同。
3.4.3 Invariance of geometric error
d ( x ~ ′ , H ~ x ~ ) = d ( T ′ x ′ , T ′ H T − 1 T x ) = d ( T ′ x ′ , T ′ H x ) = d ( x ′ , H x ) d(\tilde{\textbf{x}}',\tilde{H}\tilde{\textbf{x}})=d(T'\textbf{x}',T'HT^{-1}T\textbf{x})=d(T'\textbf{x}',T'H\textbf{x})=d(\textbf{x}',H\textbf{x}) d(x~′,H~x~)=d(T′x′,T′HT−1Tx)=d(T′x′,T′Hx)=d(x′,Hx)
3.4.4 Normalizing transformations
归一化使代数最小化在一个固定的标准坐标系中进行,因而使DLT算法实际上关于相似变换不变,归一化影响DLT方程组的条件数或准确的说与方程组矩阵A的第一个和倒数第二个奇异值的比率
d
1
/
d
n
−
1
d_1/d_{n-1}
d1/dn−1有关,非各向同性缩放和无穷远附近的点的缩放需特殊考虑。
3.5 迭代最小化方法
- 几何代价函数迭代最小化方法:
- 代价函数:几何误差、重投影误差、Sampson误差、Mahalanobis距离;
- 参数化:把要计算的变换(或其他实体)表示成有限数目的参数,不推荐最小参数化方法(代价函数曲面复杂,易陷入局部最小值),超参数化(优越性)需结合变换具体类型使用;
- 函数确定:必须确定一个用参数集
P
P
P描述的代价函数;
- 一个协方差矩阵为 Σ \Sigma Σ的测量矢量 X ∈ I R N X\in{IR^N} X∈IRN
- 一组参数被表达成一个矢量 P ∈ I R M P\in{IR^M} P∈IRM
- 映射 f : I R M → I R N f:IR^M\rightarrow{IR^N} f:IRM→IRN,容许测量集的模型曲面S
- 最小化代价函数是Mahalanobis距离的平方 ∣ ∣ X − f ( P ) ∣ ∣ Σ 2 ||X-f(P)||_\Sigma^2 ∣∣X−f(P)∣∣Σ2,Sampson近似使重投影误差也能仅对9个参数最小化,LM方法求解m参数的非线性最小化问题,复杂度为 O ( m 3 ) O(m^3) O(m3);
- 初始化:计算一个适当的初始参数估计(Normalized-DLT & RANSAC),参数空间密集采样或固定参数初始化;
- 迭代方法:由初始解开始,在迭代中逐步修正参数以达到最小化代价函数的目的;
3.6 鲁棒估计
3.6.1 RANSAC
- 距离阈值:
- 采样次数:
- 一致集大小:
T = ( 1 − ε ) n T=(1-\varepsilon)n T=(1−ε)n - 自适应采样次数:
3.6.2 Robust MLE
最大一致性集合与LM最小初始集冲突,采用鲁棒代价函数在所有数据上最小化:
3.7 单应自动计算
3.8 黄金标准算法
3.9 总结
- RANSAC用于剔除外点;
- 几何误差迭代为了减小噪声;
- DLT的变换不变性: H 33 = 1 H_{33}=1 H33=1旋转缩放变换下不变但平移变, H 31 2 + H 32 2 = 1 H_{31}^2+H_{32}^2=1 H312+H322=1相似变换下不变, H 31 = H 32 = 0 , H 33 = 1 H_{31}=H_{32}=0, H_{33}=1 H31=H32=0,H33=1仿射变换不变;
- 缩放无界点集:
∑ i x i = ∑ i y i = 0 ; ∑ i x i + ∑ i y i = 2 ; x i 2 + y i 2 + w i 2 = 1 , ∀ i \sum_ix_i=\sum_iy_i=0;\sum_ix_i+\sum_iy_i=2; x_i^2+y_i^2+w_i^2=1,\forall{i} i∑xi=i∑yi=0;i∑xi+i∑yi=2;xi2+yi2+wi2=1,∀i - 具有非各向同性误差分布的Sampson误差:
∣ ∣ δ x ∣ ∣ Σ x 2 = δ x ⊤ Σ x − 1 δ x = ε ⊤ ( J Σ x J ⊤ ) − 1 ε ||\delta_\textbf{x}||^2_{\Sigma_\textbf{x}}=\delta_\textbf{x}^\top\Sigma_\textbf{x}^{-1}\delta_\textbf{x}=\varepsilon^\top(J\Sigma_\textbf{x}J^\top)^{-1}\varepsilon ∣∣δx∣∣Σx2=δx⊤Σx−1δx=ε⊤(JΣxJ⊤)−1ε
δ x = − Σ x J ⊤ ( J Σ x J ⊤ ) − 1 ε \delta_\textbf{x}=-\Sigma_\textbf{x}J^\top(J\Sigma_\textbf{x}J^\top)^{-1}\varepsilon δx=−ΣxJ⊤(JΣxJ⊤)−1ε - 最小化仿射变换的几何误差:
a. 最佳仿射变换把 x i \textbf{x}_i xi的形心映射到 x i ′ \textbf{x}_i' xi′的形心,可通过点的平移使形心移动到原点,变换的平移部分就确定了;
b. 点 X i = ( x i ⊤ , x i ′ ⊤ ) ⊤ X_i=(\textbf{x}^\top_i,\textbf{x}'^\top_i)^\top Xi=(xi⊤,xi′⊤)⊤在 V H \mathcal{V}_H VH上满足充要条件是 [ H 2 × 2 ∣ − I 2 × 2 ] X = 0 [H_{2\times2}|-I_{2\times2}]X=\textbf{0} [H2×2∣−I2×2]X=0,因此 V H \mathcal{V}_H VH是IR4中余维度为2的子空间;
c. 给定行为 X i ⊤ X^\top_i Xi⊤的矩阵 M M M, X i X_i Xi的最好拟合子空间由对应 M M M的两个最大奇异值的特征矢量 V 1 V_1 V1和 V 2 V_2 V2生成, [ H 2 × 2 ∣ − I ] [ V 1 V 2 ] [H_{2\times2}|-I][V_1\,V_2] [H2×2∣−I][V1V2];