簡介
在計算機視覺中, 基礎矩陣(Fundamental matrix)F是一個3×3的矩陣,表達了立體像對的像點之間的對應關係。在對極幾何中,對於立體像對中的一對同名點,它們的齊次化圖像坐標分別為p與 p',表示一條必定經過p'的直線(極線)。這意味著立體像對的所有同名點對都滿足:
F矩陣中蘊含了立體像對的兩幅圖像在拍攝時相互之間的空間幾何關係(外參數)以及相機檢校參數(內參數),包括旋轉、位移、像主點坐標和焦距。因為F矩陣的秩為2,並且可以自由縮放(尺度化),所以只需7對同名點即可估算出F的值。
基礎矩陣這一概念由Q. T. Luong在他那篇很有影響力的博士畢業論文中提出。 Faugeras則是在1992年發表的著作 中以上面的關係式給出了F矩陣的定義。儘管Longuet-Higgins提出的本質矩陣也滿足類似的關係式,但本質矩陣中並不蘊含相機檢校參數。本質矩陣與基礎矩陣之間的關係可由下式表達:
其中K和K'分別為兩個相機的內參數矩陣。
推導
基礎矩陣有許多種推導方式,下面介紹其中一種。
在雙相機的拍攝場景中建立一個空間直角坐標系,稱為世界坐標系(如圖1中藍色坐標系)。物點就是場景中物體表面上的點,比如說點P在世界坐標系中的坐標為。
相機的光心從物理上講就是相機鏡頭組的光學中心。以光心為原點,主光軸為Z軸建立空間直角坐標系,稱為相機坐標系(如圖1中綠色和紅色坐標系)。像平面在相機坐標系中的方程即為z=1,像點就是在物點在像平面上的投影,這個投影關係是透視投影。
用一句話來概括相機的拍攝模型,就是物點、像點、光心三點一線,此模型稱為針孔相機模型。在此模型中,世界坐標繫到左右相機坐標系的變換是剛性變換,即只包含旋轉和平移,因此我們分別用增廣矩陣[R|t]和[R'|t']表示,其中R和R'是的旋轉矩陣,t和t'為平移向量。令為P的齊次化坐標,那么物點P在左右相機坐標系下的坐標分別為。
以一台相機為例,如圖2所示,C為相機光心,Z軸為主軸。物點在相機坐標系下的坐標和以相片左下角為原點的像點坐標p有如下關係:
和
式中為像主點在相機坐標系下的坐標。
設兩相機內參數矩陣同為:
那么物點與像點之間的關係為:
將代入上式,並令,得:
由於物點、像點、光心三點一線,那么物點、一對同名點和2個光心這5個點一定處於同一個平面上,我們將這個平面稱為平面。平面和像平面的交線稱為極線l'。顯然,左片上的每一個像點p對應於右片上的一條極線l',且p'一定在l'上。兩個相機光心的連線與右片像平面的交點稱為極點,用e'表示。
在右片像平面內,極線 l'的方程可以表示為Ax+By+C=0。這個平面直線方程的一般式可以視為:
因此,我們可以用一個三維向量 (A,B,C)來表示極線l',並且 l'的方程可以簡單的由e'坐標向量與 p'坐標向量做向量積得到,即。其中
令[e']x表示向量積的矩陣形式,那么再將同名點之間的變換關係代入,得到極線的方程為:
因為p'在 l'上,所以顯然有:
令,即得到: