謝文慧,曾培峰
?。|華大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,,上海 201620)
摘要:文章討論了目標(biāo)定位系統(tǒng)中失真圖像自動(dòng)校正的方法,,并保證目標(biāo)定位的精確性。在球面投影模型的基礎(chǔ)上,,以保持直線特性為約束,,實(shí)現(xiàn)了廣角鏡頭圖像的自動(dòng)校正。建立幾何校正模型,,采用分塊迭代校正的方法,,消除了不確定性誤差的影響,可將失真圖像中的目標(biāo)精確定位到真實(shí)場(chǎng)景中,。
關(guān)鍵詞:目標(biāo)定位,;廣角鏡頭;圖像失真校正
中圖分類號(hào):TP751文獻(xiàn)標(biāo)識(shí)碼:ADOI: 10.19358/j.issn.1674-7720.2017.03.013
引用格式:謝文慧,,曾培峰.目標(biāo)定位系統(tǒng)中圖像失真的自動(dòng)校正[J].微型機(jī)與應(yīng)用,,2017,36(3):42-44,48.
0引言
目標(biāo)定位技術(shù)作為計(jì)算機(jī)視覺(jué)領(lǐng)域的熱門研究方向,,近年來(lái)受到科研人員的廣泛關(guān)注,。智能視頻監(jiān)控、移動(dòng)機(jī)器人以及智能交通等新興科學(xué)技術(shù)都與目標(biāo)定位技術(shù)息息相關(guān),。然而,,由于鏡頭特性的內(nèi)在因素以及角度光線等外界因素,,圖像難免會(huì)出現(xiàn)失真的情況,,圖像失真的自動(dòng)校正是實(shí)現(xiàn)目標(biāo)定位的一個(gè)難點(diǎn)。
圖像失真包括非線性失真和線性失真,。非線性失真由鏡頭特性引起,,具體表現(xiàn)為直線彎曲變形為弧線[1]。線性失真主要由拍攝角度引起,,具體表現(xiàn)為垂直和水平線發(fā)生傾斜[2],。
基于鏡頭成像原理建立校正模型是非線性失真校正的基本方法,目前已有的非線性失真校正模型主要包括多項(xiàng)式畸變模型,、對(duì)數(shù)畸變模型,、球面投影模型和柱面投影模型等[3]。但校正模型的通用性不高,,不能滿足大多數(shù)失真圖像的校正要求,。PRESCOTT B和MCLEAN G F提出可以從單幅圖像中提取信息[4],并依據(jù)直線的線性特征進(jìn)行校正,。KEDZIERSKI M等人提出了依據(jù)差分幾何和弧線曲率的校正方法[5],。這類基于圖像內(nèi)容的校正方法[6]校正效果更優(yōu),但計(jì)算量也更大,。
線性失真校正分為2D校正和3D校正,,GALLAGHER A C提出了2D平面內(nèi)的自動(dòng)旋轉(zhuǎn)校正方法[7],,LEE H等人提出了基于人類感知學(xué)習(xí)的3D校正方法[8]。2D校正速度快但忽略了空間信息,,3D校正算法較為復(fù)雜,,兩者各有利弊。CARROLL等人提出了基于網(wǎng)格的非線性優(yōu)化方法[9],,其通過(guò)最小化直線失真程度和保持局部形狀特征來(lái)優(yōu)化校正效果,,不過(guò)其需要與用戶交互,不能實(shí)現(xiàn)自動(dòng)校正優(yōu)化,。
本文根據(jù)目標(biāo)定位精準(zhǔn)性與實(shí)時(shí)性的要求,,選取了合適的校正算法并加以改進(jìn),實(shí)現(xiàn)了失真圖像的自動(dòng)校正,。此外,,針對(duì)忽略圖像視覺(jué)效果的應(yīng)用場(chǎng)景,本文提出了分塊迭代校正的方法,。該方法最大程度地消除了各種不確定性誤差[10],,實(shí)現(xiàn)了目標(biāo)從失真圖像到真實(shí)場(chǎng)景的精確定位。
1系統(tǒng)介紹
本系統(tǒng)分為兩部分:實(shí)時(shí)目標(biāo)定位模塊和離線校正模塊,,系統(tǒng)結(jié)構(gòu)示意圖如圖1所示,。
目標(biāo)定位的具體流程為:廣角鏡頭采集輸入圖像,,ARM處理器從輸入圖像中提取目標(biāo),,根據(jù)映射參數(shù)進(jìn)行坐標(biāo)映射,最終標(biāo)記出目標(biāo)在真實(shí)場(chǎng)景中的位置,,并顯示到投影顯示屏上,。因?yàn)樾U惴ㄓ?jì)算量很大,包含上千次的浮點(diǎn)數(shù)乘除法運(yùn)算,,而本系統(tǒng)使用的是Cortex-M3低功耗處理器,,執(zhí)行該算法會(huì)耗費(fèi)大量時(shí)間,因此分離出校正模塊來(lái)計(jì)算映射參數(shù),。
本系統(tǒng)的應(yīng)用場(chǎng)景為軍事模擬對(duì)戰(zhàn),,對(duì)戰(zhàn)場(chǎng)地面積較大,為了能夠拍攝場(chǎng)地全景,,選用了視角較大的廣角鏡頭,。輸入圖像為廣角鏡頭拍攝的2×6幅1 024×768像素的靜態(tài)照片。由于使用了廣角鏡頭且攝像頭與拍攝平面存在夾角,,因此圖像同時(shí)存在非線性失真和線性失真,。
為了校正失真圖像,并優(yōu)化校正效果,,本系統(tǒng)在對(duì)戰(zhàn)場(chǎng)地中標(biāo)記了9×7的標(biāo)準(zhǔn)矩形點(diǎn)陣,,將場(chǎng)地等分成48個(gè)方形區(qū)域,。經(jīng)廣角鏡頭拍攝后,該點(diǎn)陣會(huì)產(chǎn)生畸變,,得到一個(gè)失真點(diǎn)陣,,如圖2所示。標(biāo)準(zhǔn)點(diǎn)陣與失真點(diǎn)陣的坐標(biāo)數(shù)據(jù)作為離線校正模塊的輸入,,用來(lái)計(jì)算實(shí)時(shí)定位模塊所需的映射參數(shù),。
2廣角鏡頭失真校正
圖3廣角鏡頭成像示意圖廣角鏡頭的焦距短于標(biāo)準(zhǔn)鏡頭,因?yàn)楣饩€的折射規(guī)律,,擁有較大的視角,。假設(shè)廣角鏡頭的視角為V1OV2,拍攝方向沿Z軸,,其成像原理如圖3所示,。對(duì)于空間中的一點(diǎn)Po,連接Po與球心O交球面于點(diǎn)Ps,,Ps在X-Y平面上的投影點(diǎn)Pd即為Po的像點(diǎn),。
Po(xo,yo,zo)與Pd(xd,yd)的坐標(biāo)關(guān)系如下:
將Po投影到X-Y平面上并轉(zhuǎn)換為極坐標(biāo)(r表示點(diǎn)到球心O的距離,θ表示點(diǎn)和球心連線與X軸的夾角)可得:
其中,,R為球體的半徑,,D=zo為真實(shí)平面到像平面的距離。因?yàn)棣萶與θd相等,,只需確定ro與rd的函數(shù)關(guān)系式(2),,即可實(shí)現(xiàn)失真圖像的校正。
在鏡頭參數(shù)R未知的情況下,,無(wú)法直接應(yīng)用式(2)進(jìn)行計(jì)算,。本文利用標(biāo)準(zhǔn)點(diǎn)陣與失真點(diǎn)陣的坐標(biāo)數(shù)據(jù),,采用多項(xiàng)式逼近的方法,,擬合出等效于式(2)的函數(shù)關(guān)系ro=f(rd)。函數(shù)形式如下:
f(r)=k0+k1r+k2r2+k3r3+k4r4(4)
其中,,k0為平移分量,,k1為線性失真參數(shù),k2~k4為非線性失真參數(shù),。測(cè)試實(shí)驗(yàn)表明,,4階多項(xiàng)式的校正效果與3階相比有很大提升,而更高階較4階的提升程度并不明顯,。本文最終選擇4階多項(xiàng)式進(jìn)行擬合,。
3直線特性約束
直線是圖像中非常明顯的一種信息,保持直線特性可作為圖像失真校正的約束條件,。假設(shè)(x1,y1),、(x2,y2)和(x3,y3)為失真圖像中3個(gè)像素點(diǎn)校正后的坐標(biāo),,如果這3點(diǎn)在一條直線上,應(yīng)該滿足:
其中dij表示(xi,yi)和(xj,yj)兩點(diǎn)間的距離,。
在校正后的圖像中,,選取原本應(yīng)在同一條直線l上的N個(gè)離散點(diǎn),根據(jù)式(5)可以推導(dǎo)出l的直線能量函數(shù):
其中Xn表示平面中點(diǎn)的笛卡爾坐標(biāo)(xn,yn),。圖像中所有直線的能量函數(shù)總和∑El可用來(lái)衡量校正效果,,∑El越小則校正效果越佳。
4 線性失真校正
線性失真校正是對(duì)失真圖像進(jìn)行仿射變換,,使傾斜的直線重新恢復(fù)垂直或水平,。一些復(fù)雜的仿射變換模型可能會(huì)有較好的校正效果,但是需要從圖像中獲取大量信息,,并且計(jì)算過(guò)程復(fù)雜,。而本系統(tǒng)的目標(biāo)是坐標(biāo)映射的精確度和運(yùn)算速度,對(duì)圖像內(nèi)容的校正效果(如清晰度等)沒(méi)有要求,。因此,,本文忽略圖像的顏色、深度等信息,,只利用圖像中目標(biāo)點(diǎn)的坐標(biāo)信息來(lái)建立仿射變換模型,。
對(duì)于失真圖像I和原始圖像I′,存在映射關(guān)系H,,I上的任意一點(diǎn)(x,y)都可通過(guò)H映射到I′上的一點(diǎn)(x′,y′),,即:(x′,y′)=H·(x,y)。仿射變換模型的建立就是確定失真圖像與原始圖像之間的映射關(guān)系H,,本文選取的映射方程如下:
上式中有8個(gè)未知數(shù),,選取失真圖像與原始圖像中4組對(duì)應(yīng)點(diǎn),建立并求解線性方程組,,即可求出映射關(guān)系H,。
5分塊迭代校正
對(duì)于面積較大的圖像,不同區(qū)域的失真程度也不同,,只用一個(gè)校正模型對(duì)整幅圖像進(jìn)行校正,,無(wú)法保證校正效果,對(duì)圖像進(jìn)行分塊校正可以優(yōu)化校正效果,。并且鄰近的分塊之間是相互關(guān)聯(lián),、相互約束的,利用這種約束關(guān)系可以減少誤差,。
針對(duì)本文的校正對(duì)象(9×7的點(diǎn)陣),,依據(jù)點(diǎn)陣的分布,將圖像劃分為48塊,。每4個(gè)點(diǎn)組成一個(gè)四邊形區(qū)域,,為一個(gè)分塊S,,如圖4所示。由上文可知,,4組對(duì)應(yīng)點(diǎn)可確定一個(gè)映射關(guān)系H,,因此每一個(gè)分塊Si都可求解出一個(gè)映射關(guān)系Hi。對(duì)失真圖像中任意一點(diǎn),,先確定其在圖像中屬于哪一個(gè)分塊,,然后利用該分塊對(duì)應(yīng)的映射關(guān)系計(jì)算出該點(diǎn)在原始圖像中的坐標(biāo)。
依據(jù)上述的圖像分塊方式,,點(diǎn)陣中的任意一點(diǎn)P與4個(gè)分塊相關(guān)聯(lián),,這4個(gè)分塊可組合成一個(gè)大的圖像塊Sc,點(diǎn)P包含在其中,。取Sc的4個(gè)頂點(diǎn)ABCD,,結(jié)合標(biāo)準(zhǔn)點(diǎn)陣中對(duì)應(yīng)的4點(diǎn),計(jì)算出原始圖像到失真圖像的逆映射關(guān)系H-1c,。在無(wú)誤差的情況下,,應(yīng)有:P=H-1c·P′(P′為點(diǎn)P在原始圖像中的對(duì)應(yīng)點(diǎn)),但不可避免地會(huì)存在誤差Di=H-1c·P′-P,。同理,,取Sc四邊上的點(diǎn)EFGH,也可計(jì)算得到誤差Dj,。利用Di和Dj,,可以更新點(diǎn)P的坐標(biāo)為:P1=P-(Di+Dj)/2。遍歷全部點(diǎn)陣后,,可得到一組誤差較小的新點(diǎn)陣,。如此反復(fù)迭代,點(diǎn)陣的誤差會(huì)逐漸減小,。
6實(shí)驗(yàn)結(jié)果
應(yīng)用式(4)對(duì)失真點(diǎn)陣進(jìn)行非線性失真校正后的結(jié)果如圖5所示,。可以看出,,原本呈曲線分布的點(diǎn)陣已基本恢復(fù)線性,。但此時(shí)的點(diǎn)陣并不能完全滿足直線特性約束。繼續(xù)對(duì)點(diǎn)陣進(jìn)行分塊迭代校正,,最終得到的點(diǎn)陣如圖6所示。
圖7為迭代校正時(shí),,圖像中所有直線的能量函數(shù)總和∑El的變化情況,。迭代15次之后,∑El已減小90%,,迭代35次之后,,∑El已趨向于0,。
根據(jù)圖6所示點(diǎn)陣與標(biāo)準(zhǔn)點(diǎn)陣的坐標(biāo)信息,計(jì)算出所有圖像塊的映射參數(shù)Hi(i=1,2,…,48),,輸入實(shí)時(shí)目標(biāo)定位模塊,,最終坐標(biāo)映射的計(jì)算結(jié)果如表1所示。
表1結(jié)果表明,,本系統(tǒng)計(jì)算出的映射坐標(biāo)和真實(shí)場(chǎng)景中的坐標(biāo)基本吻合,。在1 024×768的圖像中,誤差控制在一個(gè)像素范圍內(nèi),。
7結(jié)論
針對(duì)注重精度與速度而不要求視覺(jué)效果的應(yīng)用場(chǎng)合,,
本文提出了有效校正非線性失真和線性失真,并可消除鏡頭缺陷及人工失誤所產(chǎn)生誤差的方法,,可實(shí)現(xiàn)失真圖像中的目標(biāo)在真實(shí)場(chǎng)景中的精確定位,。
參考文獻(xiàn)
[1] Wei Jin, Li Chenfeng, Hu Shimin, et al. Fisheye video correction[J]. IEEE Transactions on Visualization and Computer Graphics, 2012, 18(10): 1771-1783.
?。?] WILIEM P, SIMON C, CHO S, et al. Fast and robust perspective rectification of document images on a smartphone[C]. IEEE Conference on Computer Vision and Pattern Recognition Workshops. IEEE Computer Society, 2014: 197-198.
?。?] HAN S B, KIM J H, MYUNG H. Landmarkbased particle localization algorithm for mobile robots with a fisheye vision system[J]. IEEE/ASME Transactions on Mechatronics, 2013, 18(6): 1745-1756.
[4] PRESCOTT B, MOLEAN G F. Linebased correction of radial lens distortion[J]. Graphical Models and Image Processing, 1997, 59(1): 39-47.
?。?] KEDZIERSKI M, FRYSKOWSKA A. Precise method of fisheye lens calibration[C]. Proceedings of the ISPRSCongress, Beijing, China. 2008: 765-768.
?。?] Zhang Mi, Yao Jian, Xia Menghan, et al. Linebased multilabel energy optimization for fisheye image rectification and calibration[C]. 2015 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), IEEE, 2015: 4137-4145.
[7] GALLAGHER A C.Using vanishing points to correct camera rotation in images[C]. The 2nd Canadian Conference on Computer and Robot Vision (CRV'05), IEEE, 2005: 460-467.
?。?] LEE H, SHECHTMAN E, WANG J, et al. Automatic upright adjustment of photographs with robust camera calibration[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2014, 36(5): 833-844.
?。?] CARROLL R, AGRAWALA M, AGARWALA A. Optimizing contentpreserving projections for wideangle images[J]. ACM Transactions on GraphicsTOG, 2009, 28(3): 43.
[10] HOU W, DING M, QIN N, et al. Digital deformation model for fisheye image rectification[J]. Optics express, 2012, 20(20): 22252-22261.