【ステレオビジョン(2)】エピポーラ幾何学とキーマトリックス

これは個人的な勉強メモであり、主に自分のシステムを構築するために関連する知識を整理するために、多くの優れた写真と記事(参考文献は記事の最後にあります)をお借りしました。文字式はつなぎ合わせ、記号式は手入力していますので、間違いがあればご指摘ください。

1. エピポーラ幾何学

ここで、画像I 1 、I 2 I_1、I_2 の2 つのフレームを見つけたいとします。12( R , t R , t間の移動)R t )、同じ名前p 1 、 p 2 p_1、p_22 つの画像フレームで検出されたp1p2写真が示すように。
イメージング原理における象徴的な意味については少し忘れてください。
ここに画像の説明を挿入

  • 基线(Baseline): O 1 O 2 O_1O_2 12繋がり
  • 极点(Epipoles): e 1 、 e 2 e_1、e_2 e12
  • 极線(エピポーラ線):l 1 、 l 2 l_1、l_21l2
  • エピポーラ面: O 1 、O 2 、P O_1、O_2、P12Pによって形成される平面

左カメラ座標系の空間点 P を座標 = [ X , Y , Z ] TP=[X,Y,Z]^T とします。P=[ X やあZ ]Tの場合、ピンホール カメラ モデルから既知の 2 つのピクセル位置は次

s 1 p 1 = KP 、 s 2 p 2 = K ( RP + t ) s_1 p_1=KP 、 s_2 p_2=K(RP+t)s1p1=K P s2p2=K ( RP+t

その中にはKKさんもKは内部参照行列R, t R, tR , tは 2 台のカメラ間の動きの関係です (具体的には、R 21 , t 21 R_{21}, t_{21}R21t21)。s 1 、 s 2 s_1、s_2s1s2PPです2 つの座標系における点Pのzzz軸座標。同次座標を使用する場合、ベクトルはそれ自体にゼロ以外の定数を乗算したものに等しくなります。これは通常、射影関係を表すために使用され、スケールまで等しいと呼ばれます。sp ≃ p sp ≃ pと書きますスパ_pしたがって、
p 1 ≃ KP 、 p 2 ≃ K ( RP + t ) p_1≃KP 、 p_2≃K(RP+t) となります。p1K P p2K ( RP+t

次に、導出を開始します。

  1. KK_ _Kは方程式の左側に移動します:
    K 1 1 p 1 ≃ P 、K 2 1 p 2 ≃ RP + t K^1_1p_1≃P、K^1_2p_2≃RP+tK11p1P K21p2RP+t
  2. 正規化平面上では、x 1 = K 1 1 p 1 、x 2 = K 2 1 p 2 x_1=K^1_1p_1、x_2=K^1_2p_2バツ1=K11p1×2=K21p2x 1 = P , x 2 = RP + t x_1=P,x_2=RP+tバツ1=P ×2=RP+tの場合、
    x 2 = R x 1 + t x_2=Rx_1+tバツ2=R ×1+t
  3. 方程式の両辺でttを使用しますt外積 (ベクトルと自己外積は 0) はt × x 2 = t × R x 1 + t × tt \times x_2=t \times Rx_1+t \times t とt×バツ2=t×R ×1+t×t、すなわち
    t × x 2 = t × R x 1 t \times x_2=t \times Rx_1t×バツ2=t×R ×1
  4. 方程式の両辺にx 2 T x_2^Tを掛けます。バツ2T,得x 2 T t × x 2 = x 2 T t × R x 1 x_2^Tt \times x_2=x_2^T t \times Rx_1バツ2Tt×バツ2=バツ2Tt×R ×1の場合、方程式の左側は明らかに 0 なので、
    x 2 T t × R x 1 = 0 x_2^T t \times Rx_1=0 となります。バツ2Tt×R ×1=0
  5. 外積は非対称行列の点積に等しいため、tttの反対称行列はt ∧ t^{\land}t ( ttと同時に両辺に相当)tを外積として)、
    x 2 T t ∧ R x 1 = 0 x_2^T t^{\land} Rx_1=0バツ2Tt Rx_1=0

この式は 2 つのピクセル座標x 1 、 x 2 x_1、x_2を表します。バツ1×22台のカメラの撮像点における空間点間のttによる接続t外部パラメータ行列は等価関係、または制約関係を確立します。この制約はエピポーラ制約
上記のx 1 、 x 2 x_1、x_2バツ1×2p 1 、p 2 p_1、p_2 が使用される場合、正規化された座標です。p1p2x 1 、 x 2 x_1、x_2を代入バツ1×2、 p 2 TK 2 − T t ∧ RK 1 1 p 1 = 0 p_2^TK^{-T}_2 t^{\land} RK^1_1p_1=0 があります
p2TK2t∧RK __11p1=0
これら 2 つの公式は等価で、両方ともエピポーラ制約と呼ばれ、幾何学的意味はO 1 、 O 2 、 P 、 p 1 、 p 2 O_1、O_2、P、p_1、p_2 です。121p2同一平面上。


2. キーマトリクス

主要な行列: エッセンシャル行列、基本行列、ホモグラフィ行列。
キー マトリックスは、2 つのビューの共通点間の座標接続を確立したり、共通点間の座標変換を完了したりできます。それらはステレオ ビジョンの 2 つのビューの間の橋渡しのようなもので、相互に密接に接続されて全体を形成しており、ステレオ ビジョン システムという概念があります。

1) エッセンシャルマトリックスとファンダメンタルマトリックス

E = t ∧ RE=t^{\land} Rを覚えておいてくださいE=t RF = K 2 − T t ∧ RK 1 1 F=K^{-T}_2 t^{\land} RK^1_1F=K2t∧RK __11、それぞれEssential MatrixおよびFundamental Matrixと呼ばれる場合、エピポーラ制約は次のように表すことができます:
x 2 TE x 1 = 0 p 2 TF p 1 = 0 x_2^T Ex_1=0\\ p_2^ TFp_1=0バツ2Tエクス_1=0p2TFp _1=0

エピポーラ制約は 2 つのマッチング点の空間的位置関係を簡潔に与えるため、カメラの姿勢推定問題は次の 2 つのステップになります。

  1. ペアになった点のピクセル位置からEEを計算EまたはFF
  2. EEによるとEまたはFFF R, tを計算するR t

必須行列EEがEおよび基本行列FFFの差: 直接の必須行列と正規化された座標xxx は関係を確立しますが、xxx は内部パラメータ行列KKKとピクセル座標pppが計算されるため、必須行列を使用する前提は、内部参照行列KKK ; 基本行列はピクセル座標ppp は、内部参照行列を知らずに関係を確立します。または:

  • 必須マトリックス: [異なる視野角を持つカメラ] の [カメラ座標系] における [空間内の点 P の画像点] の表現間の関係を反映します。
  • 基本行列: [異なる視野角を持つカメラ] での [画像座標系] における [空間内の点 P の画像点] の表現間の関係を反映します。

EEのせいでEFFF はカメラの内部パラメータと異なるだけであり (両者の解法は同じ)、SLAM などの問題では内部パラメータが既知であることが多いため、実際にはより単純な形式の EE が使用されることがよくあります

2) 本質的な行列を解く

平行移動と回転にはそれぞれ 3 つの自由度があるため、E = t ∧ RE=t^{\land} RE=t Rには合計 6 つの自由度があります。エピポーラ制約は等式がゼロであるという制約であるため、E にゼロ以外の定数を乗算した後でも、反極制約は満たされます。つまり、EEE は異なるスケールでも同等であるため、EEE には実際には 5 つの自由度があります。これは、 EEを解くために少なくとも 5 つの点のペアを使用できることを示しています。E 。但是, E E Eの固有の性質は非線形特性であり、推定時に問題が発生するため、スケールの等価性のみを考慮して 8 つの点のペアを使用して E を推定することもできます。これが古典的な 8 点法です (8 -ポイントアルゴリズム)。8 点法はEEEは線形であるため、線形代数の枠組みで解くことができます。正規化された座標が x 1 = [ u 1 , v 1 , 1 ] T x_1=[u_1,v_1,1]^T である
一致する点のペアを考えます。バツ1=[1v11 ]Tx 2 = [ u 2 , v 2 , 1 ] T x_2=[u_2,v_2,1]^Tバツ2=[2v21 ]T、波長範囲、波
[ u 2 v 2 1 ] [ e 1 e 2 e 3 e 4 e 5 e 6 e 7 e 8 e 9 ] [ u 1 v 1 1 ] = 0 \left[ \begin{ 行列} u_2 & v_2 & 1 \end{行列}\right]\left[\begin{行列}e_1&e_2&e_3\\e_4&e_5&e_6\\e_7&e_8&e_9\\\end{行列}\ right ] \ left [ \ begin { 行列 } u_1 \\ v_1 \\ 1 \ end { 行列 } \ right ]=0[あなた2v21 e1e4e7e2e5e8e3e6e9 あなた1v11 =0
は行列EEE 展开,写成向量形式:
e = [ e 1 , e 2 , e 3 , e 4 , e 5 , e 6 , e 7 , e 8 , e 9 ] T e=[e_1,e_2,e_3,e_4,e_5,e_6,e_7,e_8,e_9]^T e=[ e1e2e3e4e5e6e7e8e9そうすると、エピポーラ制約はee
と同じように書くことができます。e 相关的线性形式:
[ u 2 u 1 , u 2 v 1 , u 2 , v 2 u 1 , v 2 v 1 v 2 , u 1 , v 1 , 1 ] ⋅ e = 0 [u_2u_1,u_2v_1,u_2,v_2u_1,v_2v_1v_2,u_1,v_1,1] \cdot e=0 [2あなた1あなた2v1あなた2v2あなた1v2v1v2あなた1v11 ]e=0
と同様に、他の点のペアでも同じ表現を持ちます。次に、連立一次方程式 (ui 、 viu^i 、 v^i )あなたvi表示第 i i i特徴点など):
[ u 2 1 u 1 1 、 u 2 1 v 1 1 、 u 2 1 、 v 2 1 u 1 1 、 v 2 1 v 1 1 v 2 1 、 u 1 1 、 v 1 1 、 1 u 2 2 u 1 2、u 2 2 v 1 2、u 2 2、v 2 2 u 1 2、v 2 2 v 1 2 v 2 2、u 1 2、v 1 2、1 u 2 3 u 1 3、u 2 3 v 1 3 、u 2 3 、v 2 3 u 1 3 、v 2 3 v 1 3 v 2 3 、u 1 3 、v 1 3 、 1 。u 2 8 u 1 8 、 u 2 8 v 1 8 、 u 2 8 、 v 2 8 u 1 8 、 v 2 8 v 1 8 v 2 8 、 u 1 8 、 v 1 8 , 1 ] [ e 1 e 2 ] e 3 e 4 e 5 e 6 e 7 e 8 e 9 ] = 0 \left[ \begin{行列} u^1_2u^1_1,u^1_2v^1_1,u^1_2,v^1_2u^1_1,v^1_2v ^1_1v^1_2,u^1_1,v^1_1,1\\ u^2_2u^2_1,u^2_2v^2_1,u^2_2,v^2_2u^2_1,v^2_2v^2_1v^2_2,u^2_1, v^2_1,1\\ u^3_2u^3_1,u^3_2v^3_1,u^3_2,v^3_2u^3_1,v^3_2v^3_1v^3_2,u^3_1,v^3_1,1\\ .. .\\ u^8_2u^8_1,u^8_2v^8_1,u^8_2,v^8_2u^8_1,v^8_2v^8_1v^8_2,u^8_1,v^8_1,1 \end{行列} \right] \left[ \begin{行列} e_1 \\ e_2 \\ e_3\\ e_4 \\ e_5 \\ e_6\\ e_7 \\\ e_8 \\ e_9\\ \end{行列} \right] =0 あなた21あなた11あなた21v11あなた21v21あなた11v21v11v21あなた11v111あなた22あなた12あなた22v12あなた22v22あなた12v22v12v22あなた12v121あなた23あなた13あなた23v13あなた23v23あなた13v23v13v23あなた13v131...あなた28あなた18あなた28v18あなた28v28あなた18v28v18v28あなた18v181 e1e2e3e4e5e6e7 e8e9 =0
一次方程式を解くA e = 0 Ae=0あえ_=ベクトルee を取得するには0e、必須行列EEE 。矢量 e e eは係数行列AAAの零空間は、線形代数の知識から、方程式の特殊解の数は9 − ランク ( A ) 9-rank(A)であることがわかります。9ランク( A ),当ランク ( A ) = 8 ランク(A)= 8ランクA _=8、固有の特殊解があり、方程式のすべての解は特殊解の定数倍であり、EEEのスケール不変性。

3) 必須マトリックスの分解

必須行列E = t ∧ RE=t^{\land} RE=t R3 × 3 3\times 3です3×3行列、その特異値は[ σ , σ , 0 ] T [\sigma,\sigma,0]^T[ p _0 ]Tの形式は、必須行列の固有特性と呼ばれます (反対称行列t ∧ t^{\land}tプロパティ)。RR はSVD 分解によって取得できますRtttEEE 的 SVD 分解为 E = U Σ V T E=U\Sigma V^T E=UΣV _ _T、次にRRRtt考えられる結果: t
1 ∧ = UZUT 、 t 2 ∧ = UZTUT 、 R 1 = UWUT 、 R 2 = UWTUT t_1^{\land}=UZU^T, t_2^{\land}=UZ^TU^T 、\\R_1=UW U^T、R_2=UW^TU^Tt1=ウズウ_ _t2=U Zトゥ_R1=うわう_ _R2=うわ_トゥ_すると
W = [ 0 − 1 0 1 0 0 0 0 1 ] W=\left[ \begin{行列} 0 & -1 & 0\\ 1 & 0 & 0 \\ 0 & 0 & 1 \end{ 行列}\右]W= 010100001 (特定)、Z = [ 0 1 0 − 1 0 0 0 0 1 ] Z=\left[ \begin{行列} 0 & 1 & 0\\ -1 & 0 & 0 \\ 0 & 0 & \end{マトリックス}\right]Z= 010100001 (非対称行列、ベクトル z= W = ( 0 − 1 0 ) TW=\left( \begin{matrix} 0 & -1 & 0 \end{matrix} \right)^TW=(0 10T,则z ∧ = Z z^{\land}=Zz=Z)。

解決してくださいtのとき、 t ∧ t^{\land}を解く必要はありません。t,以t 1 ∧ = UZUT t_1^{\land}=UZU^Tt1=ウズウ_ _Tを例として、両辺にt 1 t_1t1,有t 1 ∧ t 1 = UZUT t 1 t_1^{\land}t_1=UZU^Tt_1t1t1=ウズウ_ _tt _1,つまりUZUT t 1 = 0 UZU^Tt_1=0ウズウ_ _tt _1=0UTU^TUT,有ZUT t 1 = 0 ZU^Tt_1=0あなたtt _1=0,因為z ∧ = Z z^{\land}=Zz=Z,さらにz ∧ z = 0 z^{\land}z=0z∧z _=0なので、UT t 1 = z U^Tt_1=zUtt _1=z,得t 1 = U z = U ( 0 , 0 , 1 ) T t_1=Uz=U(0,0,1)^Tt1=うず_=U ( 0 ,0 1 )T、つまりt 1 t_1t1は行列UUですUの 3 番目の列、つまり
t 1 = U .col ( 3 )、t 2 = − t 1 t_1=U.col(3)、t_2=-t_1t1=U ( 3 ) t _2=t1
可能なRRのセットは 4 つありますRtttの組み合わせ:
ここに画像の説明を挿入

ただしPP以上の最初の組み合わせのみP は両方のカメラで正の深度を持っています。したがって、任意の観測点を検証に持ち込む限り、正しい解のセットを得ることができます。

EEを線形方程式から解くE はEEを満たさない可能性がありますEの固有の性質: 特異値は( σ , σ , 0 ) (σ, σ, 0)( p ,_0 )通常、 EE は8 点法によって取得されます。Eの SVD 分解後Σ = diag ( σ 1 , σ 2 , σ 3 ) Σ = diag(σ1, σ2, σ3) がS=dia g ( σ 1 , _p2 _σ 3 ),セット1 ⩾ σ 2 ⩾ σ 3 σ1 ⩾ σ2 ⩾ σ3p1 _p2 _σ 3,取:
E = U diag ( σ 1 + σ 1 2 , σ 1 + σ 1 2 , 0 ) E=Udiag(\frac{\sigma_1+\sigma_1}{2},\frac{\sigma_1+\sigma_1} {2},0)E=Udiag ( _ _ _2p1+p12p1+p10 )これは、取得した行列をEE
に射影することと同じです。Eが位置する多様体上より簡単なアプローチは、特異値行列をdiag ( 1 , 1 , 0 ) diag(1, 1, 0)dia g ( 1 , _1 0 )EEEにはスケール等価性があるので、そうするのも合理的です。

必須行列を適用する前提は、内部パラメータ行列KKが既知であることです。K._ _ 基本行列は内部パラメータを必要としませんが、未知の部分が多く、正確な内部および外部パラメータを取得するために分解するのは困難です。主点などの初期焦点距離値を持つなど、いくつかの仮定を行う必要があります。画像の中央など 必須行列の推定、基本行列の推定に関わらず、分解して得られたカメラパラメータは初期値としてしか使用できず、正確なパラメータを得るには非線形反復最適化によって正確な値を解く必要があります。

3) ホモグラフィー行列とその解

必須マトリックスと基本マトリックスは、2 つのピクセル間の相互変換関係ではなく、座標間の固有の制約です。それでは、左側のビューのピクセル座標を右側のビューの対応する点のピクセル座標に直接変換する式はあるのでしょうか? はい、つまり、ホモグラフィー行列 (ホモグラフィー行列) Hです。空間内のシーンが同じ平面である場合、左右のビューの投影点は、可逆ホモグラフィー行列を通じて 1 対 1 に変換できます。
ホモグラフィーは射影幾何学の概念であり、射影変換としても知られています。ある投影面上の点 (3 次元の同次ベクトル) を別の投影面にマッピングし、線を線にマッピングします。言い換えれば、ホモグラフィーは 3 次元の同種ベクトルの線形変換です。

次の方程式を満たす空間内の平面を考えます: n TP + d = 0 n^TP+d=0nTP _+d=0、上記と組み合わせると、

p 2 ≃ K ( RP + t ) p 2 ≃ ( RP + t (− n TP d ) ) p 2 ≃ K ( R − n TP d ) P p 2 ≃ K ( R − n TP d ) K − 1 p 1 p_2≃K(RP+t)\\p_2≃(RP+t(-\frac{n^TP}{d}))\\p_2≃K(R-\frac{n^TP}{d}) P\\p_2≃K(R-\frac{n^TP}{d})K^{-1}p_1p2K ( RP+t p2( RP+t ( dnTP _))p2K ( RdnTP _) Pp2K ( RdnTP _) K1p _1
H = K ( R − n TP d ) K − 1 H=K(R-\frac{n^TP}{d})K^{-1}H=K ( RdnTP _) K1の場合、 p 2 ≃ H p 1 p 1 ≃ H − 1 p 2 p_2≃Hp_1\\p_1≃H^{-1}p_2 があります。
p2馬力_1p1H1p _2

ホモグラフィー行列は、2 つの平面間のマッピング関係を記述します。シーン内のすべての特徴点が同じ平面 (壁、地面など) 上にある場合、動き推定はホモグラフィーによって実行できます。その定義は、回転、平行移動、平面のパラメータに関連しており、3 × 3 3 \times 3となります。3×3マトリックス。同様に、HH はH 、 R 、 t R、 t を計算するために分解R t

[ u 2 v 2 1 ] ≃ [ h 1 h 2 h 3 h 4 h 5 h 6 h 7 h 8 h 9 ] [ u 1 v 1 1 ] \left[ \begin{matrix} u_2\\ v_2 \\ 1 \end{行列} \right]≃\left[ \begin{行列} h_1 & h_2 & h_3\\ h_4 & h_5 & h_6\\ h_7 & h_8 & h_9\\ \end{行列} \right] \left[ \ begin{行列} u_1\\ v_1 \\ 1 \end{行列} \right] あなた2v21 h1h4h7h2h5h8h3h6h9 あなた1v11

h 9 = 1 h_9=1とします。h9=1 (ゼロ以外の値を取る場合)、同次数式の通常の処理方法に従って、1 行目と 2 行目を 3 行目で除算してスケール係数を削除します。これは取得できます (
_u v v v違い)

u 2 = h 1 u 1 + h 2 v 1 + h 3 h 7 u 1 + h 8 v 1 + h 9 v 1 = h 4 u 1 + h 5 v 1 + h 6 h 7 u 1 + h 8 v 1 + h 9 u_2=\frac{h_1u_1+h_2v_1+h_3}{h_7u_1+h_8v_1+h_9}\\ v​​_1=\frac{h_4u_1+h_5v_1+h_6}{h_7u_1+h_8v_1+h_9}あなた2=h7あなた1+h8v1+h9h1あなた1+h2v1+h3v1=h7あなた1+h8v1+h9h4あなた1+h5v1+h6

整理すると
h 7 u 1 + h 8 v 1 + h 9 − h 7 u 1 u 2 − h 8 v 1 u 2 = u 2 h 4 u 1 + h 5 v 1 + h 6 − h 7 u 1 v 2 − h 8 v 1 v 2 = v 2 h_7u_1+h_8v_1+h_9-h_7u_1u_2-h_8v_1u_2=u_2\\ h_4u_1+h_5v_1+h_6-h_7u_1v_2-h_8v_1v_2=v_2h7あなた1+h8v1+h9h7あなた1あなた2h8v1あなた2=あなた2h4あなた1+h5v1+h6h7あなた1v2h8v1v2=v2

このようなマッチング点ペアのセットは 2 つの制約を構築できます (実際には 3 つの制約がありますが、線形相関があるため、最初の 2 つだけが採用されます)。そのため、8 自由度のホモグラフィー行列は、次の 4 つのペアによって計算できます。特徴点のマッチング (これらの特徴点は同一線上にある 3 つの点を持つことができないことに注意してください)。つまり、次の一次方程式を解きます (h9 = 0 の場合、右辺はゼロになります)。
[ u 1 1 v 1 1 1 0 0 0 − u 1 1 u 2 1 − v 1 1 u 2 1 0 0 0 u 1 1 v 1 1 1 − u 1 1 v 2 1 − v 1 1 v 2 1 u 1 2 v 1 2 1 0 0 0 − u 1 2 u 2 2 − v 1 2 u 2 2 0 0 0 u 1 2 v 1 2 1 − u 1 2 v 2 2 − v 1 2 v 2 2 u 1 3 v 1 3 1 0 0 0 − u 3 2 u 2 3 − v 1 3 u 2 3 0 0 0 u 1 3 v 1 3 1 − u 1 3 v 2 3 − v 1 3 v 2 3 u 1 4 v 1 4 1 0 0 0 − u 3 4 u 2 4 − v 1 4 u 2 4 0 0 0 u 1 4 v 1 4 1 − u 1 4 v 2 4 − v 1 4 v 2 4 ] [ h 1 h 2 h 3 h 4 h 5 h 6 h 7 h 8 ] = [ u 2 1 v 2 1 u 2 2 v 2 2 u 2 3 v 2 3 u 2 4 v 2 4 ] \left[\begin{行列} u_1^1 & v_1^1 & 1 & 0 & 0 & 0 & -u_1^1u_2^1& -v_1^1u_2^1\\ 0 & 0 & 0 &u_1^1 & v_1^1 & 1 & -u_1^1v_2^1& -v_1 ^1v_2^1\\ u_1^2 & v_1^2 & 1 & 0 & 0 & 0 & -u_1^2u_2^2& -v_1^2u_2^2\\ 0 & 0 & 0 & u_1^2 & v_1^2 & 1 & -u_1^2v_2^2& -v_1^2v_2^2\\ u_1^3 &v_1^3 & 1 & 0 & 0 & 0 & -u_3^2u_2^3& -v_1^3u_2^3\\ 0 & 0 & 0 & u_1^3 & v_1^3 & 1 & -u_1^3v_2^3& -v_1 ^3v_2^3\\ u_1^4 & v_1^4 & 1 & 0 & 0 & 0 & -u_3^4u_2^4& -v_1^4u_2^4\\ 0 & 0 & 0 & u_1^4 & v_1^4 & 1 & -u_1^4v_2^4& -v_1^4v_2^4\\ \end{行列}\right] \left[\begin{行列}h_1\\h_2\\h_3\\h_4\\h_5\\h_6\\ h_7\\h_8\end{行列}\right] = \left[\begin{行列}u_2^1\\v_2^1\\u_2^2\\v_2^2\\u_2^3\\v_2^3\ \u_2^4\\v_2^4\end{行列}\right]-v_1^4v_2^4\\ \end{行列}\right] \left[\begin{行列}h_1\\h_2\\h_3\\h_4\\h_5\\h_6\\h_7\\h_8\end{行列}\right] = \left[\begin{行列}u_2^1\\v_2^1\\u_2^2\\v_2^2\\u_2^3\\v_2^3\\u_2^4\\v_2^ 4\end{行列}\right]-v_1^4v_2^4\\ \end{行列}\right] \left[\begin{行列}h_1\\h_2\\h_3\\h_4\\h_5\\h_6\\h_7\\h_8\end{行列}\right] = \left[\begin{行列}u_2^1\\v_2^1\\u_2^2\\v_2^2\\u_2^3\\v_2^3\\u_2^4\\v_2^ 4\end{行列}\right] あなた110あなた120あなた130あなた140v110v120v130v140101010100あなた110あなた120あなた130あなた140v110v120v130v140101010111あなた2111v2112あなた2212v2232あなた2313v2334あなた2414v24v11あなた21v11v21v12あなた22v12v22v13あなた23v13v23v14あなた24v14v24 h1h2h3h4h5h6h7h8 = あなた21v21あなた22v22あなた23v23あなた24v24
このアプローチでは、HHがH行列をベクトルとみなし、そのベクトルの一次方程式を解くことでHHH。**直接線形変換 (DLT)* とも呼ばれます。エッセンシャル行列と同様に、ホモグラフィー行列を取得した後、対応する回転行列RRRと並進ベクトルtt分解方法には数値的手法と解析的手法があります。ホモグラフィー行列の分解により、4 組の回転行列と並進ベクトルも返され、同時にシーン点に対応する平面の法線ベクトルを計算できます。画像化されていることがわかっているマップ ポイントの深度がすべて正の場合 (つまり、カメラの前の場合)、2 セットの解を除外できます。最終的に残された解は 2 セットのみであり、判断にはより多くの事前情報が必要です。

SLAM ではホモグラフィーが非常に重要です。特徴点が同一平面上にある場合、またはカメラが純粋に回転している場合、基本行列の自由度が減少します。これを縮退といいます。実際のデータには必ずノイズが含まれており、このとき基本行列の解法に 8 点法を使用し続けると、基本行列の余分な自由度は主にノイズによって決まります。劣化現象の影響を避けるため、通常は基本行列FFも同時に推定します。Fとホモグラフィ行列HHH、最終的な動き推定行列として再投影誤差が小さいものを選択します。

DLTの他にRANSACも利用可能です。


参考文献:

[1] Gao Xiang、Zhang Tao、Visual SLAM Fourteen 講義: 理論から実践まで (第 2 版)
[2]ステレオ ビジョン入門ガイド (2): キー マトリックス (必須マトリックス、基本マトリックス、ホモグラフィー マトリックス)
[3] Yes Polar幾何学と三角形分割
[4]コンピュータ ビジョン 6 - エピポーラ幾何学と基本行列
[5]ホモグラフィー行列とエピポーラ幾何学

おすすめ

転載: blog.csdn.net/m0_50910915/article/details/130978856