KirIn 落書き帳

素人がプログラミング, FPGA, LSIをお勉強しているメモ書きです。間違いがあればご指導していただけたら幸いです。

画像の幾何学的モデル

コンピュータ・ビジョンの勉強をしようと思います。 メモを残しておきます。

ピンホールカメラモデル

ピンホールカメラはピンホールを開けた箱の内側に外界の風景を上下左右反転して映ることを利用した初期のカメラです。
被写体と投影面に結像する画像との幾何学的な関係は、ピンホールカメラでモデル化することが多いです。
ピンホールカメラモデルでは、光学中心を通る光線だけで投影面への結像をモデル化している。

f:id:KirIn:20150524034324p:plain

光学中心を原点として、3次元空間の座標を(X,Y,Z)かつZ=-fとします。
投影面上の画像中心を原点とする画像座標を(x,y)とします。

上図から三角形の相似を用いて以下の関係が成り立ちます。

$$ \begin{align} Y:Z=y:f \end{align} $$

座標を考慮して2つの座標の関係配下のように示せます。

$$ \begin{align} x=-f\frac{X}{Z}, y=-f\frac{Y}{Z} \end{align} $$

透視投影モデル

ピンホールカメラモデルでは、対象の像が上下左右反対に投影されるので、2つの座標の向きを考慮するのが面倒です。
そこでコンピュータビジョン分野では、透視投影モデルを使います。
光学中心から透明な仮想投影面を通して3次元空間を見ることによって、対象の向きと投影面における対象の向きが一致します。

f:id:KirIn:20150524034351p:plain

透視投影モデルでは、先ほど表した、2つの座標の関係は以下の式で表せます。

$$ \begin{align} x=f\frac{X}{Z}, y=f\frac{Y}{Z} \end{align} $$