最適化計算3 基礎行列の推定 理論編

最適化計算のエントリ第三弾ということで,ようやく基礎行列の話題まで来ました.参考文献はいつもの通り金谷先生の本です.

基礎行列・基本行列とは

下記のエントリにも書いた通り,3次元上の点を異なる二視点から撮影した時,点の二つの投影画像座標が満たす数式があります.この拘束条件をエピポーラ拘束といいますが,エピポーラ拘束式に出てくる F を基礎行列,E を基本行列といいます.今回のテーマでは,二つの画像の対応点を使って,この F を求めます.
daily-tech.hatenablog.com

基礎行列の計算

エピポーラ拘束より,下記の数式が成立します.
f:id:rkoichi2001:20180429141317j:plain

今回のエントリでは,上記エピポーラ方程式の 3 x 3 行列である F を計算します.
f:id:rkoichi2001:20180429141718j:plain

DLT法が使えるように,線形方程式に変換

楕円の当てはめエントリでも実施しましたが,線形方程式を立式するところは結局同じアプローチになります.
f:id:rkoichi2001:20180429143438j:plain

式展開の最後で,エピポーラ方程式を単純な内積の形に表せました.楕円の当てはめの時と同じように,すべての点ペアの内積和が最も小さくなるように F 行列の 9個の要素を決定するという問題になります.ここで一点注意ですが, F 行列は定数倍の自由度があるのでノルムを 1 であると勝手に決めて正規化します.ここで,このノルムを下記のように定義します.
f:id:rkoichi2001:20180429144316j:plain

共分散行列と代数的方法(最尤推定

楕円当てはめの時と同じように,式の構造を意識しながら誤差を考えてみます.楕円当てはめの時と同じように,線形化している関係上,入力ベクトル(ζ)が (x, y) の2変数ではなく9変数あるように見えますが,これは方程式を線形化する過程で意図的に作ったもです.なので,結局誤差が発生するのは x, y となります.あとの 7 項の誤差成分に関しては x, y の誤差を適切に仮定してあげれば計算から出てきます.
f:id:rkoichi2001:20180429164656j:plain

上式のΔ項を確率変数としてζの定義に入れて式展開し,誤差の次数に応じて数式を分割して書くと下記のようになります.
f:id:rkoichi2001:20180429165809j:plain

誤差の第二項は十分小さいとして無視すると,誤差分布は誤差の第一項だけで決まります.確率変数4つがそれぞれ独立で,期待値0,分散σの正規分布に従うとすると,共分散行列は下記のようになります.
f:id:rkoichi2001:20180429174312j:plain

共分散行列が求まったので,楕円の当てはめの時と同じように, Taubin法,重み反復法等を使って基礎行列を求めることができるようになります.楕円当てはめの時とアルゴリズムはまったく同じですが一応メモ程度に書いておきます.

最小二乗法

f:id:rkoichi2001:20180429175848j:plain

重み反復法

f:id:rkoichi2001:20180429175945j:plain

Taubin法

f:id:rkoichi2001:20180429180421j:plain

ランク拘束

ここまでで,基礎行列を求めることは形的に楕円当てはめの問題と同じになることがわかりました.が,上で説明した方法では,誤差のある点群からは正しく基礎行列が求まりません.この点が「楕円当てはめ」と「基礎行列計算」の違いになります.それは,基礎行列 F はランクが 3 ではなく,2 である必要があるためです.これをランク拘束と呼びます.上の方法では,誤差のある点群に対して基礎行列を計算すると,求まる解がランク3になってしまいます.ということで,このランク拘束を満たす必要があるのですが,このやり方で手法が大きく3つに大別されます.

1.事後補正法(ランク補正)

 ひとまずランク拘束を考慮せず θ を計算し,次にランク拘束を満たすように補正する方法.

まず,一番簡単な特異値分解によるランク補正法です.この方法では,一番小さい特異値を無理矢理0に変えます.
f:id:rkoichi2001:20180429231233j:plain

特異値によるランク補正では一番小さい特異値を無理矢理0に変えましたが,これをもっと最適に補正する方法が次の方法です.
f:id:rkoichi2001:20180429234035j:plain

2.内部接近法

 初めから基礎行列をランク2となるようにパラメータ化し,そのパラメータ空間内で J を最小にする基礎行列を求める方法です.
ちょっと書くのに疲れたので,あとでアップします....

3.外部接近法

 適当な初期値から出発し,サンプソン誤差 J を最小にするために反復を重ねつつ,かつランク拘束も満たすように収束させる方法です.
f:id:rkoichi2001:20180430000939j:plain

と,,,いうことで,なんだか内容が難しくなってきましたが,実験編に移ります!

参考文献

参考文献1

3次元コンピュータビジョン計算ハンドブック

3次元コンピュータビジョン計算ハンドブック

参考文献2
画像の三次元理解のための最適化計算[Ⅲ]