景國峰
(山東正元數字城市建設有限公司, 山東 煙臺 264670)
由于相機在制造中受工藝、安裝水平等內部因素影響,以及在使用過程中受溫度、濕度、壓強等外在因素影響,使得相機在成像過程中并不是理想的針孔成像模型。這使得相機傳感器的畸變參數,隨著設備不斷使用及數據采集環境的不斷變化,其數值也在隨之變化,從而降低了影像空中三角測量的穩定性[1]。因此,在一定的周期內,對傳感器畸變參數校正成為實際所需。目前,相機標定原理較為完善成熟,且相機標定是完成影像測量、重建過程中必不可少的一步。針對本文的研究內容,為了提高影像空三的精度與可靠性,對采集影像數據的相機進行標定。
由于受內在和外在因素影響,相機中不可避免存在一定的內部誤差和畸變影響,其中內部誤差在攝影測量中又稱為內方位元素,為了確定這些誤差參數,需要對相機標定[2]。
相機在采集現實世界的信息成像時,以針孔模型作為數學模型,將現實空間中的三維實體映射到相機中的二維平面中。針孔模型以透視變換原理為基礎,以局部攝影坐標系作為過渡坐標系,首先將現實世界中的三維實體轉換到攝影坐標系中,然后再轉換到相機的圖像坐標系中,通過兩次坐標系的旋轉變換,按照中心投影原理將三維空間中的點一一對應到二維圖像中[3]。
把現實世界中點參考的坐標系稱為世界坐標系,則該坐標系與攝影坐標系之間的轉換關系如下所示:
(1)

通過式(1)得到局部攝影坐標系下的三維點,根據攝影測量學中的共線方程,建立三維點與二維圖像之間的關系如下所示:
(2)
(3)

以上是考慮到相機嚴格遵照針孔模型原理成像,但是在實際使用中相機受各種因素的綜合影響,使得在成像時并不是理想的針孔模型。
在攝影測量學中,從攝影中心往圖像做垂線,與圖像的交點稱為像主點,理論上認為像主點在圖像中心點o處。但是,由于相機內部誤差的原因,實際的交點位置o1與圖像中心存在一定誤差。如式(4)、式(5)所示,把這種誤差作為相機的內方位元素(x0,y0)。
x0=x01-x0
(4)
y0=y01-y0
(5)
其中,(x0,y0)與(x01,y01)是以圖像左上角為原點的像素坐標系中的點坐標;(x0,y0)為圖像中心點坐標,(x01,y01)為實際相機標定出的像主點坐標。
相機在實際成像與理想成像在圖像坐標系上存在一定畸變。空間點P(x,y,z)在理想情況下成像在圖像的pu(xu,yu)位置處,但是由于畸變原因使得實際成像位置卻在pd(xd,yd)處[4]。相機的畸變可分為徑向畸變與切向畸變,其切向畸變比徑向畸變小得多,在實際中一般只考慮徑向畸變對影像成像的影響。徑向畸變差通常用如下公式表示[5]:
Δr=k0r+k1r3+k2r5+k3r7+k4r9+…
(6)
式中,Δr為徑向畸變差;r為像片的像點到像主點距離;k0,k1,k2,…為畸變系數。
畸變差在x,y方向上的改正數ΔxΔy表示為:
(7)
(8)
綜上分析,相機標定的目的是獲得相機的內參元素與畸變參數,是三維重建不可缺少的一步。
在相機標定中參照針孔模型通常把像主點在圖像中的位置以及相機焦距組成的矩陣稱為內參矩陣,圖像像素坐標與標定板坐標之間的關系如下[6]:
q=MQ
(9)
其中
(10)
式中q是以圖像左上角為坐標原點的像素坐標;矩陣M中fx、fy為相機x軸與y軸方向的焦距;s表示成像平面x軸與y軸方向的不正交性,一般s為0;
對于棋盤格不同位置處的點到相機的成像過程可用下式表示:

(11)
(12)

在相機標定中假定標定板在世界坐標系Z=0的平面上,則式(12)可進一步簡化為[7]:
(13)

(14)
式中旋轉向量在構造中是相互正交的,將縮放因子提到外面,則r1與r2相互正交,如下所示:
(15)
根據兩向量正交的含義,則有以下兩個基本的約束條件如下:
(16)
(17)
(18)
實際上矩陣B有通用形式的封閉解如下所示:
(19)

(20)

(21)
如果有K個棋盤圖像,累積列出這些方程,如下所示:
Vb=0
(22)
式中V是一個2×K×6的矩陣,在矩陣B通用形式的封閉解中得到[8]:
(23)

對于旋轉與平移通過下式得到:
(24)

結合針孔模型,利用畸變參數對(xd,yd)畸變點進行糾正得到正確點(xp,yp),如下所示[9]:
(25)
根據相機標定原理,以計算機視覺中的標定方法為基礎,對相機傳感器設備進行參數標定計算。按照如下算法過程進行標定:
(1)從不同角度拍攝獲取標定圖片;
(2)對每一張標定圖片,提取角點信息,并進一步提取亞像素角點信息;
(3)初始化參數求解,獲得相機內插的初始值,將畸變參數設置為0,最小二乘總體迭代求解,獲得相機標定結果。
(4)對最后的標定結果精度分析,利用畸變參數進行矯正。
利用自制標定板,在相機相對于標定板的不同角度、不同距離處拍攝系列圖像,如圖1所示。

圖1 采集標定圖像
在標定程序中計算相機的畸變參數P與內參元素M,并對空間三維點反算投影點,計算標定投影誤差v。

P=(0.987 627-40.872 50.004 510.011 72816.122 5)
其中投影誤差V為0.170 8個像素。
利用畸變參數P進行標定圖像的畸變糾正,如圖2、圖4所示,為原始未畸變影像,利用本文算出的畸變參數進行畸變糾正處理,結果如圖3、圖5所示。

圖2 原始標定圖像 圖3 畸變糾正后圖像

圖4 原始標定圖像 圖5 原始標定圖像
相機標定的內參元素,在影像的定向中提供像主點的精確位置,可提高影像定向精度。
為了驗證本文計算畸變參數的可靠性,以相機傳感器獲取的初始影像為原始數據,同時不加入畸變參數,以PhotoScan軟件進行空三計算[10],其計算結果如圖6所示,可看出影像前方交會出的稀疏點云存在錯亂,說明其計算的影像外方位元素存在問題。
將上述3.1中計算的畸變參數應用到其采集的影像空三中,同時加入畸變參數,同樣以PhotoScan軟件進行空三計算,其計算結果如圖7所示,可看出影像前方交會出的稀疏點云穩定一致,說明加入畸變參數后極大提高了空三的精度。

圖6 未加入畸變參數結果 圖7 加入畸變參數結果
本文以解決傳感器畸變參數的準確性為出發點,介紹相機成像原理及相機標定的方法,對相機標定進行實驗分析,以達到準確標定相機參數的目的,并將計算的畸變參數應用于數據處理。通過對比分析,其計算的畸變參數可提高空三精度。