齊次座標(Homogeneous Coordinates)_stereo
來源:互聯網
上載者:User
齊次座標(Homogeneous Coordinates)
問題: 兩條平行線會相交
鐵軌在無限遠處相交於一點
在歐幾裡得幾何空間裡,兩條平行線永遠都不會相交。但是在投影空間中,如右圖中的兩條鐵軌在地平線處卻是會相交的,因為在無限遠處它們看起來相交於一點。
在歐幾裡得(或稱笛卡爾)空間裡描述2D/3D 幾何物體是很理想的,但在投影空間裡面卻並不見得。 我們用 (x, y) 表示笛卡爾空間中的一個 2D 點,而處於無限遠處的點 (∞,∞) 在笛卡爾空間裡是沒有意義的。投影空間裡的兩條平行線會在無限遠處相交於一點,但笛卡爾空間裡面無法搞定這個問題(因為無限遠處的點在笛卡爾空間裡是沒有意義的),因此數學家想出齊次座標這個點子來了。
解決辦法: 其次座標由 August Ferdinand M?bius 提出的齊次座標(Homogeneous coordinates)讓我們能夠在投影空間裡進行映像和幾何處理,齊次座標用 N + 1個分量來描述 N 維座標。比如,2D 齊次座標是在笛卡爾座標(X, Y)的基礎上增加一個新分量 w,變成(x, y, w),其中笛卡爾座標系中的大X,Y 與齊次座標中的小x,y有如下對應關係:
X = x/w
Y = y/w
笛卡爾座標中的點 (1, 2) 在齊次座標中就是 (1, 2, 1) 。如果這點移動到無限遠(∞,∞)處,在齊次座標中就是 (1, 2, 0) ,這樣我們就避免了用沒意義的"∞" 來描述無限遠處的點。
為什麼叫齊次座標。前面提到,我們分別用齊次座標中的 x 和 y 除以 w 就得到笛卡爾座標中的 x 和 x,如圖所示:
仔細觀察下面的轉換例子,可以發現些有趣的東西:
上圖中,點 (1, 2, 3), (2, 4, 6) 和 (4, 8, 12) 對應笛卡爾座標中的同一點 (1/3, 2/3)。 任意數量積的(1a, 2a, 3a) 始終對應於笛卡爾座標中的同一點 (1/3, 2/3)。因此這些點是“齊次”的,因為他們始終對應於笛卡爾座標中的同一點。換句話說,齊次座標描述縮放不變性(scale invariant)。
證明: 兩平行線可以相交笛卡爾座標系中,對於如下兩個直線方程:
如果 C ≠ D,以上方程組無解;如果 C = D,那這兩條線就是同一條線了。
下面我們用 x/w, y/w 代替 x, y 放到投影空間裡來求解:
現在我們就可以在 C ≠ D 的情況得到一組解 (x, y, 0),代入得 (C - D)w = 0,因為 C ≠ D,所以 w = 0。因而,兩條平行線相交於投影空間中無限遠處的一點 (x, y, 0)。
齊次座標在電腦圖形學中是有用的,將 3D 情境投影到 2D 平面的過程中就用到它了。 轉自:http://blog.163.com/m_note/blog/static/208197045201272341230195/