相機畸變校正原理初步理解

相機畸變校正

相機成像的過程實際就是將世界座標系的點,轉換到相機座標系,投影得到圖像座標系,進而轉化爲像素座標系的過程。而由於透鏡精度和工藝會引入畸變(所謂畸變,就是指在世界座標系中的直線轉化到其他座標系不在是直線),從而導致失真,爲了解決這個問題,從而引入了相機畸變校正模型。

爲了瞭解畸變校正原理,我們首先要了解相機的成像模型。

相機成像模型

前面已經說過相機成像就是座標系的轉換過程。
在這裏插入圖片描述

世界座標系(Xw,Yw,Zw)(X_{w}, Y_{w}, Z_{w}), 單位爲mm
相機座標系(Xc,Yc,Zc)(X_{c}, Y_{c}, Z_{c}), 單位爲mm
圖像座標系(X,Y)(X, Y), 單位爲mm
像素座標系(U,V)(U, V), 單位爲像素
1)世界座標系—相機座標系
該座標系間轉換即從一個三維座標到另一個三維座標系,可以通過旋轉矩陣RR平移向量tt得到(爲了方便,我們一般假設真實世界中zw=0z_w=0)
在這裏插入圖片描述
2)相機座標系–圖像座標系
在這裏插入圖片描述
相機座標系到圖像座標系實際就是將一個三維座標投影在一個二維平面上,其中這兩個座標系距離爲ff(相機焦距),則
在這裏插入圖片描述
3)圖像座標系到像素座標系
, 在這裏插入圖片描述
該圖含義爲,圖像座標系原點O1O_{1}在相對於像素座標系O0O_{0}(u0,v0)(u_{0}, v{0})位置,則在圖像座標系中(x,y)(x, y)的點在像素座標系爲
u=xdx,v=ydyu = \frac{x}{dx}, v=\frac{y}{dy}, dx,dydx, dy代表一個像素點相對於圖像座標系的大小,則:
在這裏插入圖片描述

最終成像模型即把所有的矩陣相乘:

在這裏插入圖片描述

則外參矩陣即爲,隨拍攝的圖片而改變
在這裏插入圖片描述

內參矩陣爲,只和相機有關
在這裏插入圖片描述

相機畸變

相機畸變發生在圖像座標系中,上面公式的推到都建立在理想圖像座標系中,而實際上會發生畸變,
徑向畸變(泰勒級數前幾項)
xdistorted=x(1+k1r2+k2r4+k3r6)ydistorted=y(1+k1r2+k2r4+k3r6) x_{distorted} = x( 1 + k_1 r^2 + k_2 r^4 + k_3 r^6) \\ y_{distorted} = y( 1 + k_1 r^2 + k_2 r^4 + k_3 r^6)
切向畸變
xdistorted=x+[2p1xy+p2(r2+2x2)]ydistorted=y+[p1(r2+2y2)+2p2xy] x_{distorted} = x + [ 2p_1xy + p_2(r^2+2x^2)] \\ y_{distorted} = y + [ p_1(r^2+ 2y^2)+ 2p_2xy]
從這裏面可以看出,我們共有五個畸變參數要求,

因此對於N張無畸變的圖像來說,共有4個內參+6N個外參來標定,每張棋盤圖上有4個有效的角點,可以提供8個約束,則需要8N>=4+6N8N>=4+6N,則至少需要2張無畸變的圖像可以求出相機的內參和外參,實際上一般可以取10張,從而利用最小二乘得到更精確的解。在求出了內參和外參後,即可根據剩餘的點座標求出畸變相關參數。

參考鏈接
參考鏈接

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章