估计----2D射影变换

讲怎么求平面射影变换H

直接线性变换(DLT)算法
  • 利用 xi×Hxi=0 x i ′ × H x i = 0 hiT h i T H H 的第i行。一般选择前2行

    0TwixTiyixTiwixTi0TxixTiyixTixixTi0Th1h2h3=0 [ 0 T − w i ′ x i T y i ′ x i T w i ′ x i T 0 T − x i ′ x i T − y i ′ x i T x i ′ x i T 0 T ] [ h 1 h 2 h 3 ] = 0

  • 求解 H H ,解是A的最小奇异值的单位奇异矢量

    min ||Ah||, s.t. ||h||=1

不同的代价函数
  • 代数距离,DLT的解在次代价函数下取得最优解

    dalg(xi,Hxi)2=||εi||2=||[0TwixTiwixTi0TyixTixixTi]h||2 d a l g ( x i ′ , H x i ) 2 = | | ε i | | 2 = | | [ 0 T − w i ′ x i T y i ′ x i T w i ′ x i T 0 T − x i ′ x i T ] h | | 2

  • 几何距离

    id(xi,Hx¯i)2 单 图 像 误 差 : ∑ i d ( x i ′ , H x ¯ i ) 2

    id(xi,H1xi)2+d(xi,Hxi)2 对 称 转 移 误 差 : ∑ i d ( x i , H − 1 x i ′ ) 2 + d ( x i ′ , H x i ) 2

  • 重投影误差

    id(xi,x^i)2+d(xi,x^i)2    s.t x^i=H^x^i ∑ i d ( x i , x ^ i ) 2 + d ( x i ′ , x ^ i ′ ) 2         s . t   x ^ i ′ = H ^ x ^ i

  • 几何距离和代数距离的比较,考虑单图像误差

    (x^i,y^i,z^i)=Hx¯ ( x ^ i ′ , y ^ i ′ , z ^ i ′ ) = H x ¯

    Aih=εi=(yiw^iwiy^iwix^ixiw^i) A i h = ε i = ( y i ′ w ^ i ′ − w i ′ y ^ i ′ w i ′ x ^ i ′ − x i ′ w ^ i ′ )

    dalg(xi,x^i)=(yiw^iwiy^i)2+(wix^ixiw^i)2 d a l g ( x i ′ , x ^ i ′ ) = ( y i ′ w ^ i ′ − w i ′ y ^ i ′ ) 2 + ( w i ′ x ^ i ′ − x i ′ w ^ i ′ ) 2

    d(xi,x^i)=dalg(xi,x^i)/w^iwi d ( x i ′ , x ^ i ′ ) = d a l g ( x i ′ , x ^ i ′ ) / w ^ i ′ w i ′

  • 重投影的几何解释, νH ν H 是满足 (x,y,1)=H(x,y,1) ( x ′ , y ′ , 1 ) = H ( x , y , 1 ) 的4维空间的代数簇

    ||XiX^i||2=(xix^i)2+(yiy^i)2+(xix^i)2+(yiy^i)2=d(xi,x^i)2+d(xi,x^i)2 | | X i − X ^ i | | 2 = ( x i − x ^ i ) 2 + ( y i − y ^ i ) 2 + ( x i ′ − x ^ i ′ ) 2 + ( y i ′ − y ^ i ′ ) 2 = d ( x i , x ^ i ) 2 + d ( x i ′ , x ^ i ′ ) 2

    通过一系列点 (xi.yi,xi,yi) ( x i . y i , x i ′ , y i ′ ) ,拟合出代数簇

  • Sampson误差,在 νH ν H 上的点 X X 满足Ah=0,记为 ζH(X)=(0,0)T ζ H ( X ) = ( 0 , 0 ) T

    ζH(X+δx)=ζH(X)+δζHδXδx ζ H ( X + δ x ) = ζ H ( X ) + δ ζ H δ X δ x

    求在满足 Jδx=ε J δ x = − ε 条件下使 ||δx|| | | δ x | | 取最小值的矢量 δx δ x ,最小化
    δTxδx2λT(Jδx+ε) δ x T δ x − 2 λ T ( J δ x + ε )

    2δx2λTJ=0Tδx=JTλ 2 δ x − 2 λ T J = 0 T ↦ δ x = J T λ

    JJTλ=ελ=(JJT)1εδx=JT(JJT)1ε J J T λ = − ε ↦ λ = − ( J J T ) − 1 ε ↦ δ x = − J T ( J J T ) − 1 ε

    X^=X+δx,   ||δx||2=εT(JJT)1ε X ^ = X + δ x ,       | | δ x | | 2 = ε T ( J J T ) − 1 ε

       iεTi(JJT)1εi 最 小 化 目 标 函 数 :       ∑ i ε i T ( J J T ) − 1 ε i

    这里有2处近似:1. J J ,点X并未在簇上。2. 泰勒一阶展开

变换不变性
  • DLT算法的非不变性, xixi x i ↔ x i ′ 由DLT算法得到 H H 。相似变换下,x~i=Txix~i=Tx~i由DLT算法会得到 H~=THT1 H ~ = T ′ H T − 1 吗?
    回答是:不一定能,所以DLT算法不具有不变性,会因为坐标选择而出现映射的不同

  • 几何误差具有相似不变性

  • 归一化变换,数据的归一化在一些算法中是必须得,特别是对一些不太良定的问题,例如:基本矩阵的计算以及三焦张量的DLT算法。
    1.对点进行平移,让这些点的图心(Centroid)移到原点
    2.进行尺度缩放,让这些点的到原点的平均距离为 2 2

    T=s100010u¯v¯1/s   ,s=2ni[(xiu¯)2+(yiv¯)2]1/2 T = s [ 1 0 − u ¯ 0 1 − v ¯ 0 0 1 / s ]       , s = 2 n ∑ i [ ( x i − u ¯ ) 2 + ( y i − v ¯ ) 2 ] 1 / 2

迭代最小化方法

   f:h91(Hx1,Hx2,...,Hxn)2n1 单 图 像 误 差 :       f : h 9 ∗ 1 ↦ ( H x 1 , H x 2 , . . . , H x n ) 2 n ∗ 1

   f:h91(H1x1,...,H1x1n,Hx1,Hx2,...,Hxn)4n1 对 称 转 移 误 差 :       f : h 9 ∗ 1 ↦ ( H − 1 x 1 ′ , . . . , H − 1 x 1 n , H x 1 , H x 2 , . . . , H x n ) 4 n ∗ 1

   f:hx^1,...,x^n(9+2n)1(x^1,x^1,...,x^n,x^n)4n1 重 投 影 误 差 :       f : ( h , x ^ 1 , . . . , x ^ n ) ( 9 + 2 n ) ∗ 1 ↦ ( x ^ 1 , x ^ 1 ′ , . . . , x ^ n , x ^ n ′ ) 4 n ∗ 1

  • 有牛顿迭代和LM迭代
鲁棒估计
  • 距离阈值:根据概率来选择,利用 χ2 χ 2 分布
  • 采样多少次: ε=1w ε = 1 − w 是野值比率,,选择 s s 个点,p是采样点中没有野值的概率, (1ws)N=1p ( 1 − w s ) N = 1 − p
  • 算法步骤
    (1)角点检测
    (2)角点匹配
    (3)RANSAC鲁棒估计
    (4)最优估计:由划分为内点的对应点重新估计H,利用LM迭代
    (5)引导匹配:
    (6)最后2步可以重复进行直到对应的数目稳定
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值