2010年6月18日 星期五

透視轉換(Perspective Projection) and 相機模型(Camera Model)

轉載自
http://www.bime.ntu.edu.tw/~ttlin/Course01/lecture_notes/c1lecture_note03.htm

透視轉換(Perspective Transform)

●透視轉換是將三維空間的點投影到平面上,基本上透視轉換和前述之基本轉換是不同的,因透視轉換為非線性轉換

 

 

1.基本關係式:

Image14.gif (1226 bytes) Image13.gif (1220 bytes)

由以上二式可求得點之投影座標

Image15.gif (1283 bytes)

 

2.透視轉換之矩陣表示法:

(1).利用齊次座標(Homogeneous coordinates)轉換與表示:

Image16.gif (1910 bytes)

(2).定義透視轉換矩陣:

 

 

 

(3).進行轉換:

Image18.gif (2973 bytes)

(4).由齊次座標轉換回原座標系統:

Image19.gif (1996 bytes)

* z is a free variable for inverse perspective transform

 

3.透視轉換之反轉換:

h = P-1h

逆矩陣P-1可以由上式求出,如下式:

wpe2.jpg (5739 bytes)

但是影像平面上之一點(x0, y0)或(x0, y0, 0)經由上面式子轉換之結果將無法得到三維空間之投射(z=0),如下所示:

Image21.gif (2776 bytes)

故必須假藉一自由變數z以求得三維之反轉換

以Z表示z則可得

Image23.gif (1424 bytes)

 

三、相機模型(Camera Model)

前述之轉換有一基本假設,即是影像座標與體座標是一致的(原點相同且沒有旋轉)。上圖之相機模型則加入了較複雜之座標系統間的關係,雖然兩個座標系統不一致,但是前述之原理仍可以應用於這個相機模型中,只要經過適當的體座標系統轉換,令兩座標系統之原點和座標軸一致即可,以下為使兩個座標系統一致的步驟:

1.首先將體座標系統之原點移至環架(Gimbal)中心:

Image24.gif (1819 bytes)

2.分別對x軸及z軸進行旋轉:

(請注意逆時針方向角度為正值)

Image25.gif (2492 bytes)

R = Rαθ

3.再將座標系統之原點移至影像平面中心:

Image26.gif (1768 bytes)

4.進行透視轉換:

h = PCRGwh

 

5.一個實例:

 

四、相機校準方法(Camera Calibration)

應用已知點座標來計算照相機參數(Offset, tilt, pan...)的計算程序一般稱為相機校準。

令 A = PCRG, ch = Awh, k = 1, 則

Image27.gif (2790 bytes)

展開得

Image28.gif (2044 bytes)

將ch4代入可得

Image29.gif (2319 bytes)

因此由上面二式可知有12個係數待求得,故校準之目的即是求得這些係數,求取係數之步驟如下:

1.取得六個或六個以上(m≧6)之點的已知座標

(Xi,Yi,Zi), i = 1,2,...,m。

2.以照相機取得已知點之影像座標(xi, yi), i = 1,2,...,m。

3.代入上面之聯立式中求解係數。

 

五、立體取像(Stereo Imaging)

 

沒有留言:

張貼留言