相機標定內參和外參
在圖像測量過程以及機器視覺應用中,為確定空間物體表面某點的三維幾何位置與其在圖像中對應點之間的相互關系,必須建立相機成像的幾何模型,這些幾何模型參數就是相機參數。在大多數條件下這些參數必須通過實驗與計算才能得到,這個求解參數的過程就稱之為相機標定(或攝像機標定)。無論是在圖像測量或者機器視覺應用中,相機參數的標定都是非常關鍵的環節,其標定結果的精度及算法的穩定性直接影響相機工作產生結果的準確性,做好相機標定和提高標定精度是做好后續工作的前提。
相機標定中所要確定的幾何模型參數分為內參和外參兩種類型。相機內參的作用是確定相機從三維空間到二維圖像的投影關系。相機外參的作用是確定相機坐標與世界坐標系之間相對位置關系。
相機內參共有6個參數(f,κ,Sx,Sy,Cx,Cy),其中:
f為焦距;?
κ表示徑向畸變量級,如果κ為負值,畸變為桶型畸變,如果為正值,那畸變為枕型畸變。
Sx,Sy是縮放比例因子。一般情況下相機成像單元不是嚴格的矩形的,其在水平和垂直方向上的大小是不一致的,這就導致在X和Y方向上的縮放因子不一樣,所以需要分別定義兩個縮放因子。對針孔攝像機來講,表示圖像傳感器上水平和垂直方向上相鄰像素之間的距離;? ? ? ? ? ? ? ? ? ?
Cx,Cy是圖像的主點,即過鏡頭軸心垂直于成像平面與圖像平面的交點。對針孔攝像機來講,這個點是投影中心在成像平面上的垂直投影,同時也是徑向畸變的中心 。
攝像機外參共有6個參數(α,β,γ,Tx,Ty,Tz),相機坐標與世界坐標的關系可以表述為:
Pc= RPw + T
其中Pw為世界坐標,Pc是攝像機坐標。式中,T= (Tx,Ty,Tz),是平移向量,R =R(α,β,γ)是旋轉矩陣,分別是繞攝像機坐標系z軸旋轉角度為γ,繞y軸旋轉角度為β,繞x軸旋轉角度為α。6個參數組成(α,β,γ,Tx,Ty,Tz)為攝像機外參。
通常情況下,通過鏡頭,一個三維空間中的物體會被映射成一個倒立縮小的像,然后被成像傳感器感知到。
●理想情況下,鏡頭的光軸(就是通過鏡頭中心垂直于傳感器平面的直線)應該是穿過圖像的正中間的,但是,實際由于安裝精度的問題,總是存在誤差,即光軸偏移,這種誤差需要用內參來描述;?
●理想情況下,相機對x方向和y方向的尺寸的縮小比例是一樣的,但實際上,鏡頭如果不是完美的圓,傳感器上的像素如果不是完美的緊密排列的正方形,都可能會導致這兩個方向的縮小比例不一致。內參中包含兩個參數可以描述這兩個方向的縮放比例,不僅可以將用像素數量來衡量的長度轉換成三維空間中的用其它單位(比如米)來衡量的長度,也可以表示在x和y方向的尺度變換的不一致性;
●理想情況下,鏡頭會將一個三維空間中的直線也映射成直線(即射影變換),但實際上,鏡頭無法這么完美,通過鏡頭映射之后,直線會變彎,所以需要相機的畸變參數來描述這種變形效果。以下三種畸變分別為枕形畸變、桶形畸變和線性畸變。
? ? ? ? ? ??? ? ? ? ? ??
相機標定的方法
相機標定方法有:傳統相機標定法、相機自標定法、主動視覺相機標定方法。
傳統相機標定法需要使用尺寸已知的標定物,通過建立標定物上坐標已知的點與其圖像點之間的對應,利用一定的算法獲得相機模型的內外參數。根據標定物的不同可分為三維標定物和平面型標定物。三維標定物可由單幅圖像進行標定,標定精度較高,但高精密三維標定物的加工和維護較困難。平面型標定物比三維標定物制作簡單,精度易保證,但標定時必須采用兩幅或兩幅以上的圖像。傳統相機標定法在標定過程中始終需要標定物,且標定物的制作精度會影響標定結果。同時有些場合不適合放置標定物也限制了傳統相機標定法的應用。
傳統的相機標定方法的優點是可以使用于任意的攝像機模型,標定精度高,缺點是標定過程復雜,需要高精度的標定模板,在一些場合下無法使用標定塊。
目前出現的自標定算法中主要是利用相機運動的約束。相機的運動約束條件太強,因此使得其在實際中并不實用。利用場景約束主要是利用場景中的一些平行或者正交的信息。其中空間平行線在相機圖像平面上的交點被稱為消失點,它是射影幾何中一個非常重要的特征,所以很多學者研究了基于消失點的相機自標定方法。自標定方法靈活性強,可對相機進行在線定標。但由于它是基于絕對二次曲線或曲面的方法,其算法魯棒性差。僅僅依靠多幅圖像之間的對應關系進行標定,優點是僅需要建立圖像之間的對應,靈活性強,潛在應用范圍廣,缺點是非線性標定,魯棒性不高。
基于主動視覺的相機標定法是指已知相機的某些運動信息對相機進行標定。該方法不需要標定物,但需要控制相機做某些特殊運動,利用這種運動的特殊性可以計算出相機內部參數。基于主動視覺的相機標定法的優點是算法簡單,往往能夠獲得線性解,故魯棒性較高,缺點是系統的成本高、實驗設備昂貴、實驗條件要求高,而且不適合于運動參數位置或無法控制的場合。
主動視覺相機標定方法應用的前提是已知相機的某些運動信息,優點是可以線性求解,魯棒性較好,缺點是不能使用與相機運動信息未知和無法控制相機運動的場合。
標定模板
標定模板(標定板 Calibration Target) 在機器視覺、圖像測量、攝影測量、三維重建等應用中,為校正鏡頭畸變;確定物理尺寸和像素間的換算關系;以及確定空間物體表面某點的三維幾何位置與其在圖像中對應點之間的相互關系,需要建立相機成像的幾何模型。通過相機拍攝帶有固定間距圖案陣列平板、經過標定算法的計算,可以得出相機的幾何模型,從而得到高精度的測量和重建結果。而帶有固定間距圖案陣列的平板就是標定模板(標定板 Calibration Target)。
常見標定模板種類
1)等間距實心圓陣列圖案 Ti-times CG-100-D
2)國際象棋盤圖案 Ti-times CG-076-T
一般需要20張圖片,這只是一個經驗值,實際上太多也不好,太少也不好。單純從統計上來看,可能越多會越好,但是,實際上圖片太多可能會讓參數優化的結果變差,因為棋盤格角點坐標的確定是存在誤差的,而且這種誤差很難說是符合高斯分布的,同時,標定過程所用的非線性迭代優化算法不能保證總是得到最優解,而更多的圖片,可能會增加算法陷入局部最優的可能性。
拍照時的標定板位置和朝向的多樣性,會讓內參的估計更為準確。準確的內參可以較好地把整個圖像的畸變都進行矯正,但如果給定的標定板的位置過于單一,比如都是在圖像的左上角,那么優化得到的內參也可能只會比較好地糾正圖像左上角的畸變。推薦找個畸變較大的鏡頭做做實驗,會更形象。· ? ? ? ?
世界坐標系、相機坐標系、圖像坐標系
世界坐標系(Xw、Yw、Zw)
是由用戶定義的空間三維坐標系,用來描述三維空間中的物體和相機之間的坐標位置,滿足右手法則,世界坐標系是物理世界中反映物體位置的真實坐標。
相機坐標系(Xc、Yc、Zc)
以相機的光心作為原點,Zc軸與光軸重合,并垂直于成像平面,且取攝影方向為正方向,Xc、Yc軸與圖像物理坐標系的x、y軸平行。
圖像坐標系(u、v)或(x、y)
是以圖像的左上角為原點的圖像坐標系(u,v),以像素為單位,
張正友標定方法?
通過在圖像上一個二維點m=[u,t]后加上一個1的向量,在相機坐標系中一個3D點M=[X,Y,Z]后也加上一個1的向量,在針孔模型中,3D點M和它的圖像投影m的關系為:
其中內參A為:
若定義H=A[R,t],有s*m=H*M,則H就是通常說的單應性矩陣,在這里描述的是空間中平面三維點和相機平面二維點之間的關系,相機平面中的坐標點可以通過圖像處理尋找角點的方式獲取,空間平面三維點可以通過尺寸已知的標定板獲取,所以說針對每張圖圖片都可以計算出來一個對應的H矩陣。
轉動標定模板,從不同的角度拍攝棋盤標定模板的n幅圖像,求出內參矩陣和外參矩陣,就有了相機坐標和圖像坐標的投射矩陣,就可以將空間中的某一點映射到圖片上的某一個點上:
張正友相機標定流程
1. 打印棋盤標定紙,附加到一個平坦的表面上;
2. 通過移動相機或者平面拍攝標定板各種角度的圖片,一般拍攝20張;
3. 檢測圖片中的特征點;
4. 計算5個內部參數和所有的外部參數;
5. 通過最小二乘法先行求解徑向畸變系數;
6. 通過求最小參數值,優化所有參數;
張正友的平面標定方法是介于傳統標定方法和自標定方法之間的一種方法,它既避免了傳統方法設備要求高,操作繁瑣等缺點,又較自標定方法精度高,符合通用的桌面視覺系統(DVS)的標定要求。該方法的缺點是確定模板上點陣的物理坐標以及圖像和模板之間的點的匹配,專業性要求比較高。
編輯:黃飛
?
評論
查看更多