Epipolar (エピポーラ)とはどういう意味か?【Q&A記事】

1. Question

epipolar(エピポーラ)とはどういう意味? という質問に,管理人なりに答えてみたい.

2. Answer

エピポーラ幾何の Epipolar は「Ep・i・polar」であり,原義では「極座標(polar)の上位型の(epi)」という意味である.

すなわち,『Epipolar Geometry(エピポーラ幾何)』とは,「極座標系の,上位に(構築されている複数カメラ間で成り立つ)3次元幾何」である.以上が,この記事の質問に対するAnswerである.Epipolarは「上位極座標系の」という意味である.

ここで,エピポーラ幾何の下位に基盤として構築されるのは,基線と画像平面の交点であるエピポール(epipole)を極とした「画像平面上の極座標系」である.その極座標系では,それぞれ「エピポール=極」で「エピポーラライン=極線」に対応している.

以上がAnswerであるが,詳細については,2.2節で3次元空間上での図解とともに,エピポーラ平面の回転を通して,「極座標を基盤としてその上位に構築されているのが,エピポーラ幾何であること」の解説をおこないたい.まずはその準備として,2.1節で「エピポーラ幾何」の基礎を復習しておく.

また2.3節では更に追加で,平行カメラ設定でのステレオマッチングにおいても,極座標とエピポーラ幾何の対応関係を確認しておこうと思う.

2.1 エピポーラ幾何の復習

エピポーラ幾何の構成要素
図1 エピポーラ幾何の構成要素

図1は,エピポーラ幾(Epipolar Geometry)の記事の「エピポーラ幾何」である.2.2節で,Answerについてきちんと説明するために,2.1節では先にエピポーラ幾何の全体を短く復習しておきたい.

エピポーラ幾何とは,透視投影カメラモデルの2カメラ間における,3次元空間上での幾何である.

ここで,エピポール(エピ極) $\bm{e}, \bm{e}^{\prime}$ とは,2つのカメラの光学中心$\bm{C}, \bm{C}^{\prime}$間を結ぶ基線(図1青色の直線)と,共通して2カメラの画像に写っている点$P$の3角形がなす「エピポーラ平面」と「画像平面」の交点であった.

2.2 エピポーラ平面の回転:「画像上では極座標系」

基線を軸とした,エピポーラ平面の回転
図2 基線を軸とした,エピポーラ平面の回転

図2は,エピポーラ平面が,ある2つのカメラを軸にした基線(青色の直線)を軸に,回転している様子である.このように基線青線)は,エピポーラ平面の回転の中心軸である.図1のように$\bm{P}\bm{C}\bm{C}^{\prime}$が形成するエピポーラ平面上でしか,2つの画像平面とは交わらないという「エピポーラ拘束」が常に成り立る.よってそれらの交線であるエピポーラライン赤線)は,エピポーラ平面が回転するのに合わせて,左右の画像上で,エピポールを中心とした極座標系を描く.つまり,$p$の座標次第で,エピポーラ平面がどういう角度位置に変わろうが,エピ極は,いつも極座標の原点にあるというのがエピポーラ幾何なのである.よって,画像平面上の極座標の上位概念的な幾何系なので,エピポーラ幾何と呼ばれる.(※「メタ極座標」と呼んでもよかったのかもしれないが,それだとメタ側も2次元極座標を表していそうな聞こえかたがしてしまう.よって,エピ・極座標となづけられた方がベターである木がする)

この図2はCVOnline の Epipolar geometry examples を参考にして,私の方で描いた図であるが,CVOnlineではそのエピ極を極として,エピポーラ平面が(極座標的に)基線を軸に回転する様子を,図に対応した実画像つきで例示してくれている.各エピポーララインが,カメラ中心に向かって収斂(converge)していく様子は,やはり対応する実画像も並べてあるとわかりやすい(平行ステレオで,エピポーララインが水平になっている図例も,用意されている)

2.3 Epipolar の意味をおさえた上で「ステレオマッチング」について

エピポーラ幾何の拘束を用いたステレオ対応点の探索
図3左画像を基準画像とした,点$\bm{p}$に対応する右画像上の点$\bm{p}^{\prime}$の探索

2.2節で,原義に基づいたエピポーラ幾何の理解が深まったと思う.そこで,Answerの理解は2.2節までで,もう十分ではあろうものの,2.3節では,ついでにステレオマッチングの処理についてもみておこう.「エピポーラ幾何は,極座標系の上位幾何である」点を抑えながらステレオマッチングの処理のを再度見ておくことで,エピポーラ幾何の理解度を向上させていただけると思う.

まず左画像を基準画像とし,3次元空間で左カメラ座標系の3軸を基準とみなす.このとき,3次元空間中の$\bm{P}$が,左画像に透視投影されている点$\bm{p}$について,右画像平面上のどの点$\bm{p}^{\prime}$に対応しているのかの点対応を,なんらかのステレオマッチングアルゴリズムで推定したい(図3).

ここで,2.2節で見たように,(基線上にある)エピポール(epipole)は,$\bm{p}$と$\bm{P}$の位置がどこにあろうとも「画像上でずっと移動しない点」である(図2).

エピポーラ拘束により,『エピポーラ平面上のエピポーラライン赤線)上だけにしか,対応点$\bm{p}^{\prime}$ は存在しない』という拘束が使用できる.したがって「右画像上のエピポーラライン上の点だけを,候補の対応点として探索すればよい」というのが,エピポーラ幾何と,それを用いたステレオマッチングであった(図3).

コンピュータビジョンのテキストなどでは,2.1 節や上の平面が回転する話の説明が,天下り的におこなわれたところまでで終わり,epipolarがどういう意味かはスルーされがちである.よって,「はて?結局epipolarとはどういう意味だ?」となるのがお決まりのパターンである(実際,私のサイトでも,この記事を書くまではそのように構成してしまっていたので,このQ&A記事を書いた.)

3. まとめ

エピポーラ幾何とは,3次元空間の点を画像平面上に投影した$\bm{p}$を,(画像の上の)極座標を基盤とした上位系の幾何系である.よって「エピポーラ幾何=極座標系の上(に成り立つ3次元の)幾何」と呼ばれるのであった.

また,元となるのは,基線を軸とて形成される「画像平面上の極座標系」である.その極座標系では,それぞれ「エピポール=極」で「エピポーラライン=極線」に対応している.

図3の,軸周りにエピポーラ平面が回転するイメージと関連づけておくと,原義に「極座標の(polar)」が入っていることを思い出しやすいと思う.

参考文献

References