關於齊次坐標的理解


問題:兩條平行線可以相交於一點
在歐氏幾何空間,同一平面的兩條平行線不能相交,這是我們都熟悉的一種場景。
然而,在透視空間里面,兩條平行線可以相交,例如:火車軌道隨着我們的視線越來越窄,最后兩條平行線在無窮遠處交於一點。

 

歐氏空間(或者笛卡爾空間)描述2D/3D幾何非常適合,但是這種方法卻不適合處理透視空間的問題(實際上,歐氏幾何是透視幾何的一個子集合),2維笛卡爾坐標可以表示為(x,y)。

如果一個點在無窮遠處,這個點的坐標將會(∞,∞),在歐氏空間,這變得沒有意義。平行線在透視空間的無窮遠處交於一點,但是在歐氏空間卻不能,數學家發現了一種方式來解決這個問題。

方法:齊次坐標
簡而言之,齊次坐標就是用N+1維來代表N維坐標

我們可以在一個2D笛卡爾坐標末尾加上一個額外的變量w來形成2D齊次坐標,因此,一個點(X,Y)在齊次坐標里面變成了(x,y,w),並且有

X = x/w

Y = y/w

例如,笛卡爾坐標系下(1,2)的齊次坐標可以表示為(1,2,1),如果點(1,2)移動到無限遠處,在笛卡爾坐標下它變為(∞,∞),然后它的齊次坐標表示為(1,2,0),因為(1/0, 2/0) = (∞,∞),我們可以不用”∞"來表示一個無窮遠處的點了,哈哈。

為什么叫齊次坐標?

我們把齊次坐標轉化為笛卡爾坐標的方法是前面n-1個坐標分量分別除以最后一個分量即可。

轉化齊次坐標到笛卡爾坐標的過程中,我們有一個發現,例如:

你會發現(1, 2, 3), (2, 4, 6) 和(4, 8, 12)對應同一個Euclidean point (1/3, 2/3),任何標量的乘積,例如(1a, 2a, 3a) 對應 笛卡爾空間里面的(1/3, 2/3) 。因此,這些點是“齊次的”,因為他們代表了笛卡爾坐標系里面的同一個點。換句話說,齊次坐標有規模不變性。

證明:兩條直線可以相交

考慮如下方程組:

我們知道在笛卡爾坐標系里面,該方程組無解,因為C ≠ D,如果C=D,兩條直線就相同了。

讓我們在透視空間里面,用齊次坐標x/w, y/w代替x ,y,

現在我們有一個解(x, y, 0),兩條直線相交於(x, y, 0),這個點在無窮遠處。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM