河南省計(jì)量科學(xué)研究院 劉賓武 張 燕 鄭開放
?
圖像畸變校正算法在測(cè)量中的應(yīng)用
河南省計(jì)量科學(xué)研究院劉賓武張燕鄭開放
【摘要】工業(yè)用鏡頭對(duì)物體進(jìn)行取像時(shí),物體會(huì)產(chǎn)生畸變失真。畸變對(duì)物體參數(shù)的后續(xù)測(cè)量產(chǎn)生影響,所以必須對(duì)畸變圖像進(jìn)行校正。本文通過(guò)對(duì)已有圖像畸變校正算法的介紹比較,采用了一種不拘泥于具體鏡頭,適用性強(qiáng)的校正算法。此算法首先根據(jù)畸變圖像產(chǎn)生的原理對(duì)徑向畸變建立模型,算法第一步使用亞像素邊緣算法對(duì)失真圖像定位邊緣、提取邊緣點(diǎn);第二部用最小二乘法對(duì)提取的邊緣點(diǎn)進(jìn)行線性擬合,得到所有點(diǎn)與標(biāo)準(zhǔn)點(diǎn)的總平方和;第三步使用LM算法對(duì)第二步得到的總平方和進(jìn)行優(yōu)化參數(shù)處理,得到最優(yōu)參數(shù);第四步將最優(yōu)參數(shù)帶入反校正模型,最終還原圖像。還原后的圖像與標(biāo)準(zhǔn)圖像相比,校正結(jié)果的精度可以達(dá)到1個(gè)像素的最大誤差。
【關(guān)鍵詞】廣角鏡頭;徑向失真;亞像素;LM算法
在工業(yè)測(cè)量領(lǐng)域中,電子元器件針腳距離的自動(dòng)化檢測(cè)是一大應(yīng)用。針腳距離的自動(dòng)化檢測(cè)首先要求對(duì)針腳進(jìn)行取像,廣角鏡頭由于其價(jià)格低、視場(chǎng)大而應(yīng)用廣泛。由于成像系統(tǒng)和特定的生產(chǎn)環(huán)境造成的影響,拍攝后的圖像產(chǎn)生畸變,不利于后續(xù)處理。廣角鏡頭取像的特點(diǎn):鏡頭焦距距離拍攝物體距離越近,失真越大;距離越遠(yuǎn),失真越小。但遠(yuǎn)距離的拍攝會(huì)收到各種光源的影響,造成拍攝不清。失真類型為徑向失真。
廣角鏡頭(工業(yè)使用)所造成圖像坐標(biāo)點(diǎn)位置的像素誤差大致在2-12個(gè)像素之間,如賓得(PENTAX)公司生產(chǎn)的焦距為8mm的工業(yè)鏡頭,其在近距離拍攝圖像時(shí)會(huì)產(chǎn)生3個(gè)像素左右的失真。圖像的畸變校正可以從兩方面考慮,硬件的改進(jìn)和軟件的優(yōu)化。一般來(lái)說(shuō),硬件改進(jìn)的成本較高,實(shí)現(xiàn)起來(lái)困難。但軟件不同,軟件改進(jìn)起來(lái)容易且容易實(shí)現(xiàn),最重要的是軟件可以降低企業(yè)的成本,利于推廣。本文首先對(duì)現(xiàn)有校正模型算法進(jìn)行分析,然后采用了一種徑向畸變圖像校正模型來(lái)校正圖像以及完成軟件實(shí)現(xiàn),為工業(yè)中的自動(dòng)化測(cè)量提供參考,此算法的特點(diǎn):通用性強(qiáng),不限制于具體鏡頭。
目前最常用的畸變校正算法主要有模板法和基于參數(shù)已知——等效球面法。
模板法原理:首先做好一個(gè)理想的模板,對(duì)模板取像,然后對(duì)理想模板和成像模板上標(biāo)定對(duì)應(yīng)點(diǎn),為對(duì)應(yīng)點(diǎn)建立數(shù)學(xué)畸變模型,計(jì)算出模型的各個(gè)參數(shù),最后將完整的畸變圖像代入數(shù)學(xué)模型,完成圖像還原。模板法包括棋盤格模板法[1]和同心圓模板法[2]。模板法優(yōu)點(diǎn)是精度高,但算法需要制作理想模板,數(shù)學(xué)計(jì)算量大,實(shí)時(shí)性低。
基于參數(shù)已知——等效球面法[3]原理:采用等效球面模型來(lái)模擬圖像畸變,需要提取鏡頭的水平角度、垂直角度以及焦距的大小,利用上述參數(shù)可以完成圖像的畸變校正。計(jì)算量小。其優(yōu)點(diǎn)是無(wú)需對(duì)各種鏡頭提取模板,只用知道鏡頭的水平角度、垂直角度以及焦距,就可以還原畸變的圖像,算法簡(jiǎn)易實(shí)現(xiàn)。但在確定其鏡頭參數(shù)時(shí)存在誤差,導(dǎo)致算法精度不高。
基于上述兩種畸變校正模型優(yōu)缺點(diǎn)考慮,下面介紹一種通用性強(qiáng)、不限制于具體鏡頭的畸變校正模型系統(tǒng)。通過(guò)實(shí)驗(yàn)結(jié)果證明,此校正算法的精度為一個(gè)像素。
2.1算法設(shè)計(jì)
2.1.1建立徑向畸變校正模型
基于廣角鏡頭,建立徑向失真模型[4]。令標(biāo)準(zhǔn)圖像(圖1)的邊緣點(diǎn)的坐標(biāo)為(x,y),畸變圖像(圖2)中的對(duì)應(yīng)點(diǎn)(邊緣紅點(diǎn))的坐標(biāo)為(),令圖像的長(zhǎng)、高為W和N,令xc=W/2,yc=N/2,中心點(diǎn)坐標(biāo)為(xc,yc),公式如下:
圖1 標(biāo)準(zhǔn)圖
圖2 畸變圖
其中L(r)是關(guān)于半徑r的多項(xiàng)式。
k0,k1,k2,...是模型參數(shù)。關(guān)于L(r)最高次的確定,我們選取偶數(shù)項(xiàng)(k0,k2,k4)作為畸變模型參數(shù),實(shí)驗(yàn)結(jié)果表明,選取偶數(shù)項(xiàng)比選取奇數(shù)項(xiàng)(k1,k3)建立的模型效果更好。多項(xiàng)式的最高次數(shù)越高,校正效果越精確,但會(huì)導(dǎo)致計(jì)算量增加。實(shí)驗(yàn)表明,選取就可以達(dá)到要求的精度,計(jì)算量低。
2.1.2算法步驟
(1)用亞像素[5]邊緣算法對(duì)畸變圖像進(jìn)行邊緣定位,提取邊緣點(diǎn);
(2)將提取的邊緣點(diǎn)集失真模型公式(1)中,對(duì)參數(shù)k做初始化,得到校正點(diǎn)集;
(3)對(duì)校正點(diǎn)集做直線擬合處理,得到直線擬合方程L;
(4)將校正點(diǎn)集到直線L的距離的總平方和作為誤差,初次的誤差當(dāng)做初始值;
(5)使用LM參數(shù)算法優(yōu)化參數(shù)k,得到最優(yōu)k;
(6)將k代入反校正算法模型,還原圖像(如圖3所示)。
圖3 算法流程圖
2.2軟件界面設(shè)計(jì)(如圖4所示)
2.3界面部分按鈕的簡(jiǎn)介
Image:打開圖片;亞像素檢測(cè):對(duì)選取的畸變圖像進(jìn)行邊緣取點(diǎn);求解畸變參數(shù):將取到的邊緣點(diǎn)代入校正模型,進(jìn)行參數(shù)k最優(yōu)化處理;重構(gòu)圖像:將參數(shù)k代入反校正模型,還原圖像。
圖4 軟件概覽圖
本文從定性和定量?jī)煞矫鎸?duì)實(shí)驗(yàn)結(jié)果進(jìn)行分析。
3.1 定性分析(如圖5所示)
3.2定量分析
實(shí)驗(yàn)圖像的選?。翰煌潭然兊乃膹垐D像,通過(guò)軟件運(yùn)行還原圖像,以均方誤差E和最大距離d兩個(gè)參數(shù)作為實(shí)驗(yàn)結(jié)果。
3.2.1實(shí)驗(yàn)圖片的選取
圖6 標(biāo)準(zhǔn)圖與畸變圖的對(duì)比圖
如圖6所示,實(shí)驗(yàn)圖像選取四張畸變程度大小不同的圖像,最大距離d與最小距離d描述標(biāo)準(zhǔn)圖和畸變圖,如表1所示,以像素為單位:
表1 畸變程度不同的四幅圖
3.2.2 求解最優(yōu)參數(shù)k
圖7 邊緣點(diǎn)示例圖
如圖7所示,對(duì)畸變圖像進(jìn)行亞像素邊緣定位取點(diǎn),每條邊選取200個(gè)點(diǎn),總共800個(gè)點(diǎn)帶入畸變校正算法模型,運(yùn)行算法得到最優(yōu)參數(shù)k。如表2所示,系數(shù)k保留小數(shù)點(diǎn)8位:
表2 最優(yōu)參數(shù)
3.2.3 定量分析
均方誤差E:將校正后的圖像的左邊緣選取的380個(gè)點(diǎn)與對(duì)應(yīng)的標(biāo)準(zhǔn)圖像的380個(gè)點(diǎn)進(jìn)行求均方誤差運(yùn)算,由于本實(shí)驗(yàn)為測(cè)量?jī)芍本€的距離,所以只計(jì)算x水平方向的均方誤差E。公式如下:
說(shuō)明:標(biāo)準(zhǔn)圖像的最外邊緣矩形的左上角的點(diǎn)坐標(biāo)為(128,48),將校正后的圖像的最外邊緣矩形邊的坐標(biāo)與標(biāo)準(zhǔn)圖像進(jìn)行計(jì)算。
圖5 實(shí)驗(yàn)結(jié)果圖
四幅圖的均方誤差與最大最小距離如表3所示,單位(像素),小數(shù)點(diǎn)保留到后六位:
圖8所示是四幅還原圖像與標(biāo)準(zhǔn)圖像的對(duì)比分析圖。
表3 校正結(jié)果
圖8 效果對(duì)比圖
說(shuō)明:圖8是我們以標(biāo)準(zhǔn)圖最左邊緣的像素坐標(biāo)與四幅校正圖最左邊線進(jìn)行對(duì)比的實(shí)驗(yàn)結(jié)果圖(y坐標(biāo)不變,x坐標(biāo)有誤差),標(biāo)準(zhǔn)圖像外邊緣上角坐標(biāo)(128,48),下角坐標(biāo)為(128,432)。從圖8上看出還原后的圖像與標(biāo)準(zhǔn)圖像的像素位置相比,x坐標(biāo)最小誤差為0.05個(gè)像素,最大誤差為0.53個(gè)像素,還原圖像精度為1個(gè)像素。
上述實(shí)驗(yàn)結(jié)果表明,此畸變校正系統(tǒng)精度較高。相比于現(xiàn)有其他校正算法,此算法具有不拘泥于具體鏡頭、適用性廣的特點(diǎn),不足之處在于算法運(yùn)行時(shí)間較長(zhǎng),需要繼續(xù)優(yōu)化。此算法可應(yīng)用到廉價(jià)的廣角鏡頭中代替昂貴的鏡頭,降低企業(yè)成本。在工業(yè)自動(dòng)化測(cè)量中,此算法可為工業(yè)中物體參數(shù)的測(cè)量,如元器件針腳距離的自動(dòng)測(cè)量提供參考。
參考文獻(xiàn)
[1]湯旭濤.廣角攝像頭視頻圖像實(shí)時(shí)校正系統(tǒng)設(shè)計(jì)[碩士學(xué)位論文].上海:華東師范大學(xué),2009.
[2]盛琳陽(yáng).基于圓序列的多幀對(duì)齊和徑向畸變校正算法[J].計(jì)算機(jī)應(yīng)用與工程,2006(15).
[3]王偉,鐘堰利.廣角鏡頭圖像畸變校正系統(tǒng)的研究[J].光學(xué)技術(shù),2004(4).
[4]王茂義,王睿.一種校正圖像邊緣的改進(jìn)算法[J].儀器科學(xué)與光電技術(shù),2006.
[5]李慶利.一種基于多項(xiàng)式插值改進(jìn)的亞像素細(xì)分算法[J].2008.
[6]楊文茂,李全英.空間解析幾何[M].1997.