楊中偉 楊鳴
摘要: 魚眼鏡頭的大視角、短焦距等特點(diǎn),使魚眼圖像校正算法成為目前圖像研究的熱點(diǎn)。提出一種橢球面校正模型,通過邊緣檢測算法獲取特征點(diǎn),運(yùn)用偽特征點(diǎn)剔除法得到正確的特征點(diǎn),利用這些真特征點(diǎn)得出校正模型的參數(shù),并以網(wǎng)格圖像為例進(jìn)行研究。實(shí)驗(yàn)結(jié)果表明,特征點(diǎn)檢測準(zhǔn)確,得到的模型對網(wǎng)格圖像的校正效果好,驗(yàn)證了該校正模型的準(zhǔn)確性和有效性。
關(guān)鍵詞: 魚眼鏡頭; 橢球面模型; 偽特征點(diǎn)剔除; 畸變校正
中圖分類號(hào): TP 391.41文獻(xiàn)標(biāo)志碼: Adoi: 10.3969/j.issn.10055630.2015.02.008
A fisheye image correction method based on ellipsoid model
YANG Zhongwei, YANG Ming
(College of Information Science and Engineering, Ningbo University, Ningbo 315211, China)
Abstract: Fisheye lens have the characteristics of short focus and wideangle, which makes the fisheye image correction algorithms become hot topics in the field of image research currently. An ellipsoid correction model is put forward. All feature points are obtained by using edge detection algorithm, and the correct feature points are also obtained by using the pseudofeaturepoint elimination method. The correction model parameters are obtained with the correct feature points. The grid image is taken as an example to conduct the research. As a result, the detection of the feature points is accurate and the correction effect is good. It is proved that this model is accurate and efficient.
Keywords: fisheye lens; ellipsoid model; elimination of pseudofeature points; distortion correction
引言在大范圍監(jiān)控、智能交通等領(lǐng)域,為了獲得大視角,魚眼鏡頭[1]被廣泛使用。但是,在獲得大范圍拍攝視角的同時(shí),為解決在一定的成像面內(nèi)容納大視場中的目標(biāo)物體等問題,魚眼鏡頭中不可避免地引入了徑向畸變[2]。 如何把存在畸變的魚眼圖像校正為適合人眼觀看的圖像,顯得尤為重要。目前,魚眼校正算法有高次多項(xiàng)式擬合校正法[3]、球面坐標(biāo)定位法[4]、球面透視投影約束法[56]、拋物面投影校正[78]、基于漸變方程和經(jīng)緯映射模型校正[9]及基于幾何性質(zhì)[1011]等方法。現(xiàn)有的方法中,仍存在一些問題:校正公式復(fù)雜,校正后圖像中有桶形或枕形畸變,校正模型參數(shù)擬合需要人工采樣?;谶@些情況,本文提出一種橢球面校正模型,并且通過自動(dòng)檢測特征點(diǎn)得出校正模型的參數(shù)。圖1魚眼鏡頭成像模型
Fig.1Imaging model of fisheye lens1魚眼鏡頭成像模型本文采用橢球面成像模型,成像原理如圖1所示。假設(shè)相機(jī)在場景坐標(biāo)系的原點(diǎn)O,沿著z軸正方向拍攝,從空間任一點(diǎn)P1(x,y,z)指向原點(diǎn)O的射線,與成像模型曲面交于一點(diǎn)P2,根據(jù)正交投影規(guī)則過P2做z軸的平行線,交xy平面于點(diǎn)P3(u,v),P3就是空間點(diǎn)P1(x,y,z)經(jīng)過魚眼變換后的圖像點(diǎn)。魚眼圖像輪廓中心點(diǎn)坐標(biāo)為(u0,v0),因此空間點(diǎn)與魚眼圖像點(diǎn)之間的關(guān)系可表示為(u-u0,v-v0)=M(x,y,z)(1)式中M為本文的成像模型。光學(xué)儀器第37卷
第2期楊中偉,等:基于橢球面模型的魚眼圖像校正方法
2魚眼校正模型擬合
2.1校正模型的建立由橢球面成像模型可知,本文的橢球面校正模型方程為(Ax2+By2)+Cz2+Dz+E=0(2)魚眼圖像在xy平面內(nèi)是圓心在成像坐標(biāo)系原點(diǎn)的圓形輪廓,因此,A=B。
2.2魚眼輪廓的提取及圓心確定現(xiàn)有的魚眼圖像輪廓提取方法中:統(tǒng)計(jì)法[12],當(dāng)魚眼圖像圓形輪廓區(qū)域內(nèi)存在大量黑色像素點(diǎn)時(shí),該算法失效;掃描線逼近法[13],設(shè)定一個(gè)行列極限亮度差的閾值,通過閾值判定是否掃描到魚眼圖像圓形輪廓的上、下、左和右邊緣的切線,這4條切線確定了圓形輪廓的外切正方形,據(jù)此可得出圓心坐標(biāo)和半徑,但是當(dāng)魚眼輪廓不是一個(gè)完整的圓形時(shí),該算法與切線法[14]同樣失效。本文采用標(biāo)準(zhǔn)圓標(biāo)定法獲取魚眼圖像的圓心和半徑,具體做法:預(yù)先設(shè)定圓心坐標(biāo)(x0,y0),半徑為r0,魚眼圖像中出現(xiàn)一個(gè)預(yù)置的標(biāo)準(zhǔn)圓形輪廓,通過鼠標(biāo)拖動(dòng),從而調(diào)整標(biāo)準(zhǔn)圓的大小和位置,使得標(biāo)準(zhǔn)圓最終與魚眼輪廓吻合。魚眼圖像的圓心(x,y)和半徑r分別為x=x0+Δx(3)
y=y0+Δy(4)
r=r0+Δr(5)式中:Δx為圓心橫坐標(biāo)改變量;Δy為圓心縱坐標(biāo)改變量;Δr為半徑的改變量。
2.3自動(dòng)選取特征點(diǎn)
2.3.1特征點(diǎn)檢測在RGB圖像中,令c(x,y)為RGB彩色空間中點(diǎn)(x,y)處的像素值,可表示為c(x,y)=R(x,y)
G(x,y)
B(x,y)(6)令gxx,gyy和gxy分別為gxx=Rx2+Gx2+Bx2(7)
gyy=Ry2+Gy2+By2(8)
gxy=RxRy+GxGy+BxBy(9)其中:在式(7)、(8)、(9)中用符號(hào)R、G、B代替R(x,y)、G(x,y)、B(x,y),而R(x,y)、G(x,y)和B(x,y)分別表示在RGB圖像上點(diǎn)(x,y)處的R、G、B分量的值; gxx,gyy和gxy均是x和y的函數(shù)。函數(shù)c(x,y)的最大變化率的方向由角度θ(x,y)給出,變化率的值由Fθ(x,y)給出,其中θ(x,y)=12arctan2gxy(gxx-gxy)(10)
Fθ(x,y)=12(gxx+gyy)+(gxx-gyy)cos2θ+2gxysin2θ12(11)θ(x,y)是在計(jì)算梯度后每個(gè)點(diǎn)的角度,F(xiàn)θ(x,y)是(x,y)點(diǎn)的梯度幅值?;谝陨戏治?,在魚眼圖像中,對圓心兩邊(沿x軸)的3條網(wǎng)格線的梯度幅值進(jìn)行分析,結(jié)果如圖2所示。由圖可知每條網(wǎng)格線經(jīng)邊緣檢測后,有左右兩條邊緣。對上述邊緣梯度函數(shù)作如下處理,即g(x)=Fθ(x,y)xy=ry(12)式中ry為圓心的縱坐標(biāo)。式(12)的零點(diǎn)所在位置作為左(右)邊緣橫坐標(biāo),特征點(diǎn)處在兩條邊緣的中點(diǎn),檢測結(jié)果如圖3所示。
圖2圓心所在行上三條網(wǎng)格線的梯度值
Fig.2Gradient magnitude of three grid lines
on the center row
圖3特征點(diǎn)檢測示意圖
Fig.3Featurepoint detection
2.3.2偽特征點(diǎn)剔除法圖3所示的特征點(diǎn)中,有些點(diǎn)是偽特征點(diǎn),不能用于擬合校正模型參數(shù)??臻gxz平面中網(wǎng)格上點(diǎn)在x軸上坐標(biāo)為x(以x>0為例),魚眼圖像中對應(yīng)的圖像點(diǎn)到原點(diǎn)距離是x的函數(shù),記為h(x),則有h(x)=Rxx2+R2(13)
dh(x)dx=R2(x2+R2)3(14)
d2h(x)dx2=-3xR2(x2+R2)5(15)式中R是式(5)中得到的魚眼圖像圓形輪廓的半徑,并且假設(shè)理想魚眼成像面在成像坐標(biāo)系中位于z=R的位置??臻g平面中的網(wǎng)格是等距的,沿x軸正方向的點(diǎn)依次記為1,2,3,…,n,其在魚眼圖像中的對應(yīng)點(diǎn)到原點(diǎn)的距離記為h(1),h(2),h(3),…,h(n),這些點(diǎn)對(n,h(n))是上述函數(shù)h(x)上的點(diǎn)。由上式可知,式(14)大于0,式(15)小于0,因此Δh(n)是遞減的,即Δh(n)=h(n)-h(n-1)(n≥1)(16)
Δh(n)<Δh(n-1)(17)式(17)成立時(shí),點(diǎn)n是特征點(diǎn),否則就剔除該偽特征點(diǎn)。圖4特征點(diǎn)及擬合曲線示意圖
Fig.4Feature points and the fitting curve
2.4參數(shù)擬合式(5)中得到的魚眼輪廓半徑為R,把R代入式(2),則橢球面校正模型的方程簡化為(x2+y2)+Cz2+Dz-R2=0(18)代入特征點(diǎn)坐標(biāo),得出C=0.707 7,D=189.967 7。上述得到的真特征點(diǎn)及式(18)對應(yīng)的曲線如圖4所示。由圖可知,本文提出的校正模型曲線與特征點(diǎn)軌跡相吻合,橢球面校正模型與實(shí)際的魚眼成像曲面接近。由校正模型可得,魚眼圖像點(diǎn)與空間點(diǎn)的坐標(biāo)關(guān)系為u-u0=-DZ+D2Z2+4R2(X2+Y2+CZ2)2(X2+Y2+CZ2)X(19)
v-v0=-DZ+D2Z2+4R2(X2+Y2+CZ2)2(X2+Y2+CZ2)Y(20)式中:(u,v)為魚眼圖像中點(diǎn)的坐標(biāo);(u0,v0)為魚眼輪廓中心點(diǎn)的坐標(biāo);(X,Y,Z)為目標(biāo)校正平面上點(diǎn)的坐標(biāo)。3實(shí)驗(yàn)結(jié)果以網(wǎng)格圖像為例,運(yùn)用上述校正模型對魚眼圖像進(jìn)行校正,結(jié)果如圖5所示,并與球面校正模型、拋物面校正模型和高次多項(xiàng)式校正模型的效果進(jìn)行對比,其他校正結(jié)果分別如圖6、圖7和圖8所示。
圖5本文方法校正結(jié)果
Fig.5The correction result by using
the method proposed in this paper圖6球面模型校正結(jié)果
Fig.6The correction result by using
the spherical model
圖7拋物面模型校正結(jié)果
Fig.7The correction result by using
the parabolic model圖8高次多項(xiàng)式模型校正結(jié)果
Fig.8The correction result by using
the highdegree polynomial model
由校正結(jié)果可知:球面校正后仍存在桶形畸變;拋物面模型中存在枕形畸變;高次多項(xiàng)式模型校正后圖片的中心存在枕形畸變,而在靠近邊緣的地方存在桶形畸變;本文的校正模型中不存在畸變,校正效果好。4結(jié)語本文依據(jù)魚眼鏡頭的成像特點(diǎn),并針對現(xiàn)有算法中存在的不足,提出一種橢球面校正模型,該模型與魚眼鏡頭實(shí)際的成像模型吻合較好,并用雙線性插值法[15]填充像素。實(shí)驗(yàn)結(jié)果表明,該校正模型取得了比較好的校正效果。參考文獻(xiàn):
[1]肖瀟,楊國光.全景成像技術(shù)的現(xiàn)狀和進(jìn)展[J].光學(xué)儀器,2007,29(4):8489.
[2]李洪海,王敬東.攝像機(jī)標(biāo)定技術(shù)研究[J].光學(xué)儀器,2007,29(4):712.
[3]張景國,將大鋼,李曉峰.廣角鏡頭桶形畸變的二元二次多項(xiàng)式修正法[J].光學(xué)技術(shù),2010,36(4):500504.
[4]張寧,劉天鍵.魚眼圖像校正算法研究與實(shí)現(xiàn)[J].閩江學(xué)院學(xué)報(bào),2012,33(5):7476.
[5]崔漢國,陳軍,王大宇.魚眼圖像校正及拼接的研究與實(shí)現(xiàn)[J].計(jì)算機(jī)工程,2007,33(10):190192.
[6]DEVERNAY F,F(xiàn)AUGERAS O.Straight lines have to be straight:automatic calibration and removal of distortion from scenes of structured environments[J].Machine Vision and Applications,2001,13(1):1424.
[7]溫燦紅,楊強(qiáng),羅飛,等.一種基于橢圓拋物面透視投影約束的魚眼鏡頭校正方法[J].大學(xué)數(shù)學(xué),2010,26(3):192195.
[8]周飚,趙鑫,齊志宏,等.一種通用的基于拋物面模型的魚眼圖像校正算法[J].長春理工大學(xué)學(xué)報(bào):自然科學(xué)版,2014,37(2):2225.
[9]王依桌,席志紅.基于漸變方程的魚眼圖像校正方法[J].電子科技,2013,26(10):7072.
[10]楊晶晶,陳更生,尹文波.一種基于幾何性質(zhì)的魚眼圖像校正算法[J].計(jì)算機(jī)工程,2012,38(3):203205.
[11]李根,費(fèi)章君,楊仕友.基于幾何成像模型的魚眼鏡頭圖像校正算法和技術(shù)研究[J].機(jī)電工程,2013,30(10):12681272.
[12]唐俊,趙為民,谷峰.基于魚眼圖像的全景漫游模型[J].微機(jī)發(fā)展,2003,13(2):6970.
[13]韓迎輝.基于改進(jìn)掃描線逼近的魚眼圖輪廓提取算法的研究[J].電子器件,2013,36(6),784788.
[14]常丹華,趙丹,楊峰明,等.提取魚眼圖像輪廓的算法改進(jìn)及圖像校正[J].激光與紅外,2012,42(4):448451.
[15]吳桂萍,吳巍,王成,等.基于雙線性插值的魚眼圖像校正方法[J].計(jì)算機(jī)應(yīng)用與軟件,2012,29(2):122125.
(編輯:劉鐵英)