Multiple View Geometry(多视图几何)学习笔记(12)—不同的代价函数

本文探讨了单应估计中的不同代价函数,包括代数距离、几何距离、重投影误差及Sampson误差等,详细解析了它们的概念、计算方式及其几何意义。

                 不同的代价函数

  我们现在来介绍为确定HHH的超定解而需最小化的若干代价函数。

1.代数距离

  DLT 算法最小化范数∥Ah∥\left \| A\mathbf{h}\right \|Ah。矢量ε=Ah\varepsilon =A\mathbf{h}ε=Ah称为残差矢量,并且要最小化的正是该误差矢量的范数。矢量εiε_iεi 被称为关联于点对应xi↔xi′x_i\leftrightarrow x'_ixixi和单应HHH的代数误差矢量。该矢量的范数是一个标量,称为代数距离
dalg(xi′,Hxi)2=∥εi∥=∥[0T−wi′xTyi′xTwi′xT0T−xi′xT]h∥2d_{alg}(x'_i,Hx_i)^2=\left \| \varepsilon _i \right \|=\left \| \begin{bmatrix} \mathbf{0^T} &-w'_i\mathbf{x^T} &y'_i\mathbf{x^T} \\ w'_i\mathbf{x^T}&\mathbf{0^T} &- x'_i\mathbf{x^T} \end{bmatrix}\mathbf{h} \right \|^2dalg(xi,Hxi)2=εi=[0TwixTwixT0TyixTxixT]h2

  对于任何两个矢量x1x_1x1x2x_2x2:
dalg(x1,x2)2=a12+a22其中a=(a1,a2,a3)T=x1×x2d_{alg}(x_1,x_2)^2=a_{1}^{2}+a_{2}^{2} 其中\mathbf{a}=(a_1,a_2,a_3)^T=x_1\times x_2dalg(x1,x2)2=a12+a22a=(a1,a2,a3)T=x1×x2

  给定对应的集合,最ε=Ahε = Ahε=Ah是整个集合的代数误差矢量:

∑idalg(xi′,Hxi)2=∑i∥εi∥2=∥Ah∥=∥ε∥2\sum_{i}d_{alg}(x'_i,Hx_i)^2=\sum_{i}\left \| \varepsilon _i \right \|^2=\left \| A\mathbf{h} \right \|=\left \| \varepsilon \right \|^2idalg(xi,Hxi)2=iεi2=Ah=ε2

  其缺点是被最小化的量没有几何或统计上的意义。

2.几何距离

记号 矢量xxx表示测量的图像坐标;x^\hat{x}x^表示该点的估计值而xˉ\bar{x}xˉ表示该点的真值。

单图像误差 我们首先考虑第一幅图像的测量非常精确而误差仅出现在第二幅图像的情行。适宜最小化的量是转移误差。它是第二幅图像上测量点x′x'x与点HxˉH\bar{x}Hxˉ用之间的欧氏距离。用标记d(x,y)d( x , y)d(xy)表示非齐次点xxxyyy之间的欧氏距离。那么对应集合的转移误差是:
∑id(xi′,Hxiˉ)2\sum_{i}d(x'_i,H\bar{x_i})^2id(xi,Hxiˉ)2

对称转移误差 更切合实际的情形是图像测量误差在两幅图像中都发生,从而应该最小化两幅而不仅是一幅图像的误差:
∑id(xi,H−1xi′)2+d(xi′,Hxi)2\sum_{i}d(x_i,H^{-1}x'_i)^2+d(x'_i,Hx_i)^2id(xi,H1xi)2+d(xi,Hxi)2

3.重投影误差一一两幅图像

  对每幅图像误差作量化的另一种方法是估计每组对应的"校正值"。为了得到完全的匹配点集有必要在一幅图像(第二幅图像)上对测量进行校正。
  单应H^\hat{H}H^和完全匹配的点对xi^\hat{x_i}xi^xi′^\hat{x'_i}xi^以最小化总的误差函数。

          ∑id(xi,xi^)2+d(xi′,xi′^)2\sum _id(x_i,\hat{x_i})^2+d(x'_i,\hat{x'_i})^2id(xi,xi^)2+d(xi,xi^)2s.ts.ts.txi′^=H^xi^\hat{x'_i}=\hat{H}\hat{x_i}xi^=H^xi^∀i\forall ii

  先由xi↔xi′x_i\leftrightarrow x'_ixixi估计世界平面的点Xi^\hat{X_i}Xi^,然后把它重投影到估计上认为是完全匹配的对应xi^↔xi′^\hat{x_i}\leftrightarrow \hat{x'_i}xi^xi^

4.几何和代数距离的比较

  令xi′=(xi′,yi′,wi′)T\mathbf{x'_i}=(x'_i,y'_i,w'_i)^Txi=(xi,yi,wi)T并定义矢量(x^i′,y^i′,w^i′)T=x^i′=Hxˉ(\hat{x}'_i,\hat{y}'_i,\hat{w}'_i)^T=\mathbf{\hat{x}'_i}=H\mathbf{\bar{x}}(x^i,y^i,w^i)T=x^i=Hxˉ。则:
d(xi′,x^i′)=dalg(xi′,x^i′)/w^i′wi′d(\mathbf{x'_i,\hat{x}'_i})=d_{alg}(\mathbf{x'_i,\hat{x}'_i})/\hat{w}'_iw'_id(xi,x^i)=dalg(xi,x^i)/w^iwi

  几何距离与代数距离相关, 但不相等。只有当w^i′=wi′=1\hat{w}'_i=w'_i=1w^i=wi=1两个距离相等。因此在仿射变换下,几何距离和代数距离相等。对于仿射变换,最小化几何距离可以用基于代数距离的线性DLT 算法。

5.重投影误差的几何解释

  两平面之间的单应估计可以视为用4D4D4D空间IR4IR^4IR4中的"曲面"来拟合点。每对图像点x、x′x、x'xx定义测量空间IR4IR^4IR4的一个点,记作X\mathbf{X}X。对一个给定的单应HHH,满足x′×Hx=0x'\times Hx=0x×Hx=0的图像对应 x↔x′x\leftrightarrow x'xx定义了IR4IR^4IR4中的一个代数簇υH\upsilon_HυH,它是两个超二次曲面的交集。

d(xi,xi^)2+d(xi′,xi′^)2=d⊥(Xi,υH)2d(x_i,\hat{x_i})^2+d(x'_i,\hat{x'_i})^2 =d_{\perp }(\mathbf{X_i},\upsilon _H)^2d(xi,xi^)2+d(xi,xi^)2=d(Xi,υH)2

  其中d⊥(Xi,υH)2d_{\perp }(\mathbf{X_i},\upsilon _H)^2d(Xi,υH)2是点 XXX到簇υH\upsilon _HυH的垂直距离。

6.Sampson 误差

  Sampson 误差其复杂性介于代数和几何代价函数之间,但非常近似于几何误差。对给定的单应HHH,在υH\upsilon _HυH上的任何点X=(x,y,x′,y′)T\mathbf{X}=(x,y,x',y')^TX=(x,y,x,y)T,代价函数用CH(X)=0C_H(X)=0CH(X)=0表示。用下列 Taylor 展开式来一阶逼近:
CH(X+δx)=CH(X)+∂CH∂XδxC_H(X+\delta _x)=C_H(X)+\frac{\partial C_H}{\partial X}\delta _xCH(X+δx)=CH(X)+XCHδx

  记δx=X^−X\delta _x=\hat{X}-Xδx=X^X希望X^\hat{X}X^υH\upsilon _HυH上,即CH(X^)=0C_H(\hat{X})=0CH(X^)=0,因此CH(X)+∂CH∂Xδx=0C_H(X)+\frac{\partial C_H}{\partial X}\delta _x=0CH(X)+XCHδx=0。记成Jδx=−εJ\delta _x=-\varepsilonJδx=ε,其中JJJ是偏导数矩阵.,ε\varepsilonεXXX相关的代价函数CH(X)C_H(X)CH(X)最小化问题是求满足此方程的最小δx\delta _xδx。即:
  求在满足Jδx=−εJ\delta _x=-\varepsilonJδx=ε条件下使∥δx∥\left \| \delta _x \right \|δx取最小值的矢量δx\delta _xδx

  使用 Lagrange 乘子方法,求得范数∥δx∥2\left \| \delta _x \right \|^2δx2是Sampson 误差 :
∥δx∥2=δxTδx=εT(JJT)−1ε\left \| \delta _x \right \|^2=\delta _x ^T\delta _x =\varepsilon ^T(JJ^T)^{-1}\varepsilonδx2=δxTδx=εT(JJT)1ε

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不放弃的蜗牛

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值