本文主要對后續(xù)篇章的核心思想作出簡單說明,,準確,、詳細的定義、公式和算法等將在后續(xù)文章中具體介紹。我們應該都很熟悉投影變換,。當我們看圖片時,,我們所看到的正方形其實并非正方形,圓形并非圓形,。平面對象映射到圖片上的變換,,是一種典型的投影變換實例。所以在投影變換過程中哪些幾何性質(zhì)會被保存下來,?當然,,形狀顯然沒有被保存下來,因為圓形可能成像為橢圓形,,長度同樣也可能無法保存下來,,例如,同一個圓中兩個相互垂直的半徑投影變換后會被拉伸至不同長度幅度,。角度,、距離、距離的比值-這些均未保留下來,,似乎只有少部分幾何性質(zhì)經(jīng)投影變換后會保留下來,。但是,有一個被保存下來的性質(zhì)就是直線度,,這是對映射最普遍的要求,,我們可以定義平面的投影變換是,平面中點的任意映射都保留在其直線中,。為弄清楚為什么需要投影幾何,,我們從熟悉的歐式幾何開始研究。歐式幾何描述了物體的角度和形狀,。歐式(歐幾里得空間的簡寫)幾何在一個主要方面存在麻煩-這需要我們不斷做出例外的原因-例如交線,。兩條二維空間的線普遍在某個點相交,但有些線對并不是這樣-平行線,。解決該問題的方法是,,假設平行線相交于無窮遠處。但這種想法無法令人信服,,并與另一說法相矛盾,即無窮遠不存在,,僅僅是一個虛擬的對象,。通過在平行線相交的無窮遠增加點,這些點稱為理想點,,它們被用來解決無窮遠的困難,,從而解決這一矛盾。通過在無窮遠處增加點,,熟悉的歐式空間轉(zhuǎn)換成一種新的幾何對象,,投影空間,。這是一種非常實用的思考方法,因為我們熟悉歐式空間的特性,,涉及距離,、角度、點,、線和入射等概念,。而投影空間內(nèi)并不存在什么新概念-它僅僅是歐式空間的延伸,兩條線總是在某個點相遇,,盡管有時在無窮遠的理想點,。坐標.歐式二維空間的點,由有序的實數(shù)對表示,,(x,y),。我們可以增加一個坐標到有序?qū)崝?shù)對中,即三坐標(x,y,1)同樣表示相同的點,。該操作似乎并沒有什么影響,,因為我們可以從點的一個表示形式通過增加或刪除最后一個坐標獲得另一個形式坐標。那為什么最后一個坐標需要是1-畢竟,,其他兩個坐標并沒有限制,。為什么不是坐標(x,y,2)。此處,,我們做出定義:(x,y,1)和(2x,2y,2)表示相同的點,,即(kx,ky,k)也表示相同的點(當k非零時)。所以,,點可以采用等價的三坐標形式表達,,盡管這里的倍數(shù)k不同。這些均稱為點的齊次坐標,。給定三坐標(kx,ky,k),,我們可以通過除以k得到原始坐標形態(tài),(x,y),。讀者會注意到,,盡管(x,y,1)表示相同的點坐標(x,y),但沒有點對應三坐標(x,y,0),。如果除以最后一個坐標0,,我們得到坐標(x/0,y/0)位于無窮遠。這就是無窮遠點出現(xiàn)的情況,,當它們以齊次坐標形式表達時,,第三個坐標是0。一旦我們了解了如何對二維歐式空間的處理方法,并將其擴展到投影空間,,將點表示為齊次坐標向量,,我們可以在任意維度上做同樣的事情,歐式空間Rn可以通過將點表示為齊次向量而擴展到投影空間,。結果表明,,二維投影空間中無窮遠處的點形成一條直線,通常稱為無窮遠線,,在三維空間中,,它們形成無窮遠平面。 齊次性.在古典歐式幾何中,,所有點都是相同的,。整個空間都是同質(zhì)的。當坐標增加時,,某一個點會成為原點,。但重點是,這只是選擇特坐標系產(chǎn)生的結果,。我們也可以選擇一種新方法對平面坐標化,,這時原點可能轉(zhuǎn)化為其他點。事實上,,我們可以通過移動坐標軸和旋轉(zhuǎn)到不同位置的方法改變歐式空間中點的坐標,。這種操作的就是歐式變換。一般的變換類型是將線性變換應用到Rn空間,,即歐式變換移動了空間原點,。我們認為這種空間移動、旋轉(zhuǎn)可能在不同方向有不同的線性延展,,這種變換稱之為仿射變換,。歐式變換或者仿射變換的結果是,無窮遠處點仍然在無窮遠,,這些點在某種程度上由這些變換保留下來,。從投影幾何出發(fā),無窮遠點與其他點不存在差異,。正如歐式空間是均勻的,,那么投影空間也是如此。無窮遠點的齊次坐標最后一位是0,,這只不過是坐標系選擇的結果,。通過對比歐式或仿射變換,我們可以定義投影空間的投影變換,。歐式空間的的線性變換,通過矩陣乘以點坐標來表示。同樣方法,,投影空間Pn的投影變換是齊次坐標(表示為n+1向量,,點是n維)的映射,映射是通過坐標向量乘以非奇異矩陣,。在這種映射下,,無窮遠點映射到任意的其他點,不再保留無窮遠點,。因此,,投影空間Pn的投影變換是齊次坐標的線性變換,計算機視覺中,,投影空間是表示真實3D世界的一種便捷表示方法,,通過將3D世界拓展至3維投影空間。類似地,,圖片將真實世界投影到2維空間而形成,,為方便起見,圖片被視作是2維投影空間?,F(xiàn)實中,,現(xiàn)實世界及其圖像并不包含無窮遠點,我們需要將手指放在那些虛擬的點上,,即圖像中無窮遠線和世界中無窮遠平面,。因此,雖然我們經(jīng)常使用投影空間,,但我們清楚無窮遠線和平面在某種程度上是特殊的,,這與純粹投影幾何相矛盾,但對實際問題非常有用,。一般來說,,當無窮遠線或平面適合解決問題時,我們嘗試將投影空間內(nèi)所有點視為平等,,而當問題中有必要涉及無窮遠線或平面時,,就在空間中挑出無窮遠線或圖像中無窮遠平面。我們已經(jīng)知道,,投影空間可以通過在歐式幾何中增加無窮遠線,、平面獲得。現(xiàn)在我們需要思考這個過程的逆操作,。這個逆向過程主要涉及二維和三維投影空間,。仿射幾何.我們認為,在沒有指定特定坐標系時,,投影空間最初是均勻同質(zhì)的空間,。在這樣的空間中,,不存在平行線(三維時是平面)的概念,因為它們在無窮遠處也是相交的,。在投影空間中,,沒有無窮遠點的概念-所有點都是平等的。即在投影幾何中并不存在平行的概念,,談論它是沒有意義的,。為了使這樣一個概念有意義,我們需要挑選出一些特定線,,以作為無窮遠線,。這就形成一種局面,即盡管所有點創(chuàng)建時平等,,但有些點比其他點更平等,。因此,我們從一張白紙開始討論,,想象它延伸到無窮遠并形成投影空間P2,。我們所看到的僅是空間的一小部分,并且看起來是一個普通的歐式平面?,F(xiàn)在,,讓我們在紙上畫一條直線,并聲明這是一條無窮遠線,。接下來,,我們另畫兩條線并與第一條線相交,因為這兩條線與無窮遠線相交,,我們可以將它們定義為平行的,,這種情況下很類似于觀察無窮遠的平面。想象我們處于地球上一個非常平坦的區(qū)域拍攝照片,,平面中無窮遠的點在圖像中作為地平線顯示,。線,例如鐵軌,,也出現(xiàn)在圖像中,,因為線也在地平線相遇。位于地平線上方的點(天空部分的圖像)顯然與世界平面上的點不對應,。但是,,如果我們考慮將相應射線向后延伸到相機后面,它將在相機后面的一個點上與平面相交,。因此,,圖像中與世界平面中的點存在一對一的關系。真實世界平面中無限遠點對應于圖像中實際地平線,,真實世界平行線對應于在地平線相交的線,。從我們的角度看,,真實世界平面及其圖像只是觀看投影平面幾何圖形和一條特殊線的一種替代方式,投影平面的幾何圖形和特殊線稱為仿射幾何學,,任何實現(xiàn)從一個空間的線到另一個空間的線的映射都稱之為仿射變換,。 通過識別特殊線為無窮遠線,我們能夠定義平面中直線的平行,,但是,一旦定義了平行性,,則某些其他概念也變得有意義了,。例如,我們定義平行線上兩個點間間隔相等,。例如,,A/B/C/D是點,線段AB和CD平行,,如果AC和BD也平行,,那么我們定義AB和CD有著相同長度。反之也成立,,若AB平行于CD且AB=CD,,則AC平行于BD。歐式幾何.通過在投影平面中識別特殊線,,我們將得到平行概念,,稱之為仿射幾何。仿射幾何學是投影幾何的特例,,因為在仿射幾何中我們挑選出特殊線或者平面,,將它們稱為無限遠線。接下來,,我們轉(zhuǎn)向歐式幾何學,,通過挑選出無窮遠的一些特殊特征線或者平面,仿射幾何學轉(zhuǎn)化成歐幾里得幾何學,。這樣做,,我們將引入本書最重要的概念之一,絕對圓錐曲線(absolute conic),。我們從二維平面中圓形開始討論,。注意:圓形并不是仿射幾何學中的概念,因為平面任意伸縮,,保留無窮遠線,,會使圓形變成橢圓。因此,,仿射幾何學無法區(qū)別圓形和橢圓形,。但在歐幾里得幾何學中,,它們是不同的,并且有一個重要區(qū)別,。從代數(shù)上講,,橢圓是由一個二階方程來描述,因此兩個橢圓通常相交在四個點是符合邏輯的,。但是從幾何學上講,,兩個不同的圓交點不會超過兩個。從代數(shù)上講,,等價于解兩個二次方程,,預計會有四個解。問題的關鍵是,,四個交點為什么看起來只有兩個,。當然,問題的答案是的確存在另外兩個解,,兩個圓相交在另外兩個復數(shù)點,。我們不必深入探討這兩個點。齊次坐標下圓的方程是,,這個方程表示圓,,其圓心以齊次坐標表示是(x0,y0,w0)T=(a,b,1)T。我們可以驗證,,點(x,y,w)T=(1,±i,0)T也在圓上,。每個圓都經(jīng)過點(1,±i,0)T,因此它是任意兩個圓的交點,。因為該點最后一個坐標是0,,這表示位于無窮遠線上,所以他們被稱為平面的圓點,。注意:盡管這兩個圓點是復數(shù),,但它們同樣滿足實數(shù)方程:x2+y2=0;w=0。根據(jù)上面的思路可以定義歐幾里得幾何學,。歐式幾何學是在無窮遠處挑選出第一條無窮遠線,,所以它是產(chǎn)生于投影幾何學。這兩個稱為圓點的點也位于這條無窮遠線上,。當然這兩個圓點是復數(shù)點,,但對于大多數(shù)情況下無需擔心。現(xiàn)在,,我們定義圓是任意圓錐體(該曲線由二次方程定義)并通過這兩個圓點,。注意,在標準歐幾里得歐式坐標系下,,圓點的坐標是(1,±i,0)T,。但是把歐幾里得結構與投影平面對齊后,,我們需要把那條無窮遠線上的任意線和任意兩個點分配到無窮遠線上和圓點上。作為應用以上觀點的例子,,我們注意到,,一般圓錐體通過平面中五個任意點,這可以通過計算二次方程系數(shù)的數(shù)目看出,,詳情見后續(xù)文章,。另一方面,圓的定義僅需要三個點,。從另一個角度看,,它是一個圓錐體,通過兩個特殊點(兩個圓點)和另外三個點,,因此任意圓錐曲線需要五個點才能唯一確定。3D歐幾里得幾何學.我們已經(jīng)知道歐式平面是如何定義的,,通過在無窮遠處指定一條線和 一對圓點得到投影平面,。同樣的想法也可以應用到3D幾何體。正如2維實例,,我們也可以分析球體是如何相交的,。兩個球體相交形成圓形,這并不是一個四次曲線,。這個思路提醒我們,,在齊次坐標下(X,Y,Z,T)T,所有球體都與無窮遠的平面相交在一條曲線上,,該曲線方程,,X2+Y2+Z2=0;T=0;這是一個二次曲線,,并位于無窮遠平面中,,僅有復數(shù)點組成,它被稱之為絕對圓錐體(absolute conic),,同時是本書中關鍵的幾何內(nèi)容之一,;最特別的原因是它與相機標定的重要聯(lián)系,這將在后面文章具體介紹,。 絕對圓錐體是僅在歐幾里得坐標系下由上述方程定義,。一般情況下,我們可以認為3D歐式空間來自投影空間,,它通過挑選一個特定平面作為無窮遠平面并指定在該平面上的特定圓錐曲線是絕對圓錐曲線,。這些對象在投影空間的某個坐標系下有著一般描述方法。 這里,,我們不會詳細介紹絕對圓錐體如何決定歐式3D幾何學,,這將在后面文章具體介紹,。
|