梁玉敏,蔡曉東,張學(xué)敏
(桂林電子科技大學(xué) 信息與通信學(xué)院,廣西 桂林541004)
責(zé)任編輯:任健男
圖像拼接技術(shù)主要考慮圖像之間的配準(zhǔn)與融合,圖像可以由不同相機(jī)在不同時(shí)間、不同條件下拍攝得到,主流的算法主要有以下兩大類[1-2]:
1)基于特征的拼接[3-4]的方法,提取了圖像的顯著特征,從而極大地壓縮了圖像的信息量、減少計(jì)算量。然而由于它只利用了一部分圖像的信息,因此對(duì)于特征提取和匹配的錯(cuò)誤就更為敏感,拼接的效果很大程度上依賴于特征點(diǎn)的選取以及匹配。這種方法特別不適用于特征較少、場(chǎng)景單一的環(huán)境。
2)基于變換域的圖像配準(zhǔn)方法[5],根據(jù)傅里葉變換將圖像由空域轉(zhuǎn)換到頻域上,在圖像的頻域中進(jìn)行圖像匹配,再由傅里葉逆變換獲得圖像在空域中相應(yīng)的變換參數(shù)。這種方法對(duì)于兩幅圖像之間只具有平移的情況具有較好的效果,對(duì)于圖像間存在旋轉(zhuǎn)和縮放的情況,就需要采用對(duì)數(shù)極坐標(biāo)變換將旋轉(zhuǎn)和縮放量轉(zhuǎn)換為平移量處理,這種反復(fù)的空域和頻域變換影響了配準(zhǔn)的效率。
通過(guò)上述兩類算法的優(yōu)缺點(diǎn)分析,本文針對(duì)攝像機(jī)安裝位置固定的情況下,提出了攝像機(jī)標(biāo)定與相位相關(guān)算法相結(jié)合的拼接算法。攝像機(jī)標(biāo)定通常被用于三維重建[6],三維重建通過(guò)標(biāo)定來(lái)確定兩幅圖像之間的對(duì)應(yīng)關(guān)系,而圖像拼接配準(zhǔn)最主要的目的也就是得到兩幅圖像間的對(duì)應(yīng)關(guān)系,運(yùn)用這種方法,就不需要依賴于由場(chǎng)景特征來(lái)確定兩幅圖像間的匹配關(guān)系。通過(guò)標(biāo)定求得的攝像機(jī)參數(shù)對(duì)圖像進(jìn)行校正,使得兩幅圖像之間只存在平移關(guān)系,只要利用傅里葉變換中的平移特性,就可以快速地對(duì)兩幅圖像進(jìn)行配準(zhǔn),從而避免了基于變換域方法中復(fù)雜、反復(fù)的對(duì)數(shù)極坐標(biāo)的運(yùn)算,大幅提高運(yùn)算效率。
本文提出的算法流程如圖1所示。
首先在預(yù)處理階段進(jìn)行攝像機(jī)標(biāo)定,獲得攝像機(jī)的內(nèi)外參數(shù),從而完成待拼接圖像坐標(biāo)系到基準(zhǔn)圖像坐標(biāo)系變換模型的求解,對(duì)圖像進(jìn)行畸變矯正,同時(shí)對(duì)圖像之間存在的旋轉(zhuǎn)、縮放進(jìn)行調(diào)整。
再利用相位相關(guān)的方法將攝像機(jī)標(biāo)定調(diào)整后輸出的待拼接圖像轉(zhuǎn)換到基準(zhǔn)坐標(biāo)系,確定重合區(qū),將重合區(qū)的圖像進(jìn)行融合處理,最終實(shí)現(xiàn)兩幅圖像的拼接。
圖1 算法流程圖
本文算法中引入攝像機(jī)標(biāo)定的目的主要有:1)通過(guò)標(biāo)定的方法對(duì)攝像機(jī)輸入的圖像進(jìn)行矯正,去除因?yàn)殓R頭引起的畸變;2)求解2臺(tái)攝像機(jī)的位置關(guān)系,將圖像校正在同一水平位置,使得2幅圖像之間只具有平移關(guān)系,為后續(xù)的相位相關(guān)算法做準(zhǔn)備。因此,這也是本文拼接算法中至關(guān)重要的一環(huán)。攝像機(jī)標(biāo)定發(fā)展到今天已經(jīng)形成了許多比較成熟的算法[7-8]。
本文使用棋盤標(biāo)定的方法,在標(biāo)定的過(guò)程中要求解4個(gè)內(nèi)參數(shù)(fx,fy,cx,cy)和5個(gè)畸變參數(shù),包括3個(gè)徑向(k1,k2,k3)和2個(gè)切向(p1,p2)。對(duì)于畸變參數(shù),理論上需要已知模式的3個(gè)角點(diǎn)所產(chǎn)生的6組信息來(lái)求解。對(duì)于棋盤6個(gè)不同視場(chǎng)圖像需要3個(gè)旋轉(zhuǎn)參數(shù)(ψ,φ,θ)和3個(gè)平移參數(shù)(Tx,Ty,Tz)。所以在每個(gè)視場(chǎng)中,就必須計(jì)算4個(gè)內(nèi)參數(shù)和6個(gè)外參數(shù)。假設(shè)有N個(gè)角點(diǎn)和K個(gè)棋盤圖像,K個(gè)棋盤圖像提供2NK個(gè)約束,忽略畸變參數(shù),有4個(gè)內(nèi)參數(shù)和6K個(gè)外參數(shù),有解的前提是2NK≥6K+4,或等價(jià)表示為(N-3)K≥2,其中圖像個(gè)數(shù)K必須滿足K>1。這就是說(shuō)3×3的棋盤最少需要2個(gè)視場(chǎng)來(lái)求解標(biāo)定問(wèn)題??紤]到噪聲和數(shù)值的穩(wěn)定性要求,得到高質(zhì)量的結(jié)果,至少需要10幅7×8或者更多更大的棋盤圖像。
本文實(shí)驗(yàn)中采用的是9×7個(gè)黑白相間的方格棋盤作為標(biāo)定模板,其中每個(gè)方格的邊長(zhǎng)為53 mm。實(shí)驗(yàn)中使用2臺(tái)工業(yè)應(yīng)用的CCD攝像機(jī)輸出的是704×576,將攝像機(jī)水平平行擺放,左右兩邊攝像機(jī)同時(shí)采集標(biāo)定板的不同位置的圖像,共計(jì)15組(采集圖像位置越多,標(biāo)定結(jié)果越精確)。如圖2所示,從圖像中可以看到,圖像邊緣房梁的彎曲就是由于攝像機(jī)鏡頭畸變引起的。
圖2 攝像機(jī)的原始圖像
假定求解標(biāo)定參數(shù)時(shí)攝像機(jī)沒(méi)有畸變。對(duì)每個(gè)棋盤視場(chǎng),都有一個(gè)單應(yīng)性矩陣H=[h1h2h3],世界坐標(biāo)系中的點(diǎn)Q映射到成像儀上點(diǎn)q可以單應(yīng)性表示為:,其中H可以設(shè)置為等于攝像機(jī)內(nèi)參數(shù)矩陣M乘以旋轉(zhuǎn)向量和平移向量的組合矩陣,再加上縮放因子s,表示為
由于旋轉(zhuǎn)向量是相互正交的,將縮放因子提到外邊,則有r1和r2正交,由正交向量的性質(zhì)可知r1和r2滿足:r2=0且r1=r2。那么就可以得到2個(gè)約束關(guān)系
由此即可推導(dǎo)估計(jì)出攝像機(jī)的內(nèi)外參數(shù)。若考慮到透鏡畸變,假設(shè)針孔模型是完美的,令(x,y)為點(diǎn)的位置,(xd,yd)為畸變位置,那么就有
根據(jù)透鏡畸變建模的方法[10],對(duì)公式中的值進(jìn)行替換,即可得到?jīng)]有畸變的標(biāo)定結(jié)果
重新估計(jì)內(nèi)外參數(shù)之后,即可從這些大量的方程中得到畸變參數(shù)。通過(guò)求取這些內(nèi)外參數(shù),就可以計(jì)算出左右視圖的校正查找映射表。通過(guò)目標(biāo)圖像上的每個(gè)整型的像素位置,首先找出對(duì)應(yīng)于原始圖像上的浮點(diǎn)位置,再利用周圍源像素的整形值差值出新的值來(lái),就可以得到經(jīng)過(guò)校正后的效果如圖3所示。與攝像機(jī)原始圖像相比較,可以明顯地看見(jiàn)圖像邊緣因攝像機(jī)鏡頭引起的彎曲畸變,經(jīng)過(guò)標(biāo)定處理之后變得平直。
圖3 左右兩邊攝像機(jī)經(jīng)過(guò)標(biāo)定校正的圖像
經(jīng)過(guò)對(duì)鏡頭畸變的矯正以及圖像的位置校正得到的輸出圖片就只具有平移關(guān)系,因此可以利用相位相關(guān)方法進(jìn)行圖像匹配。
相位相關(guān)算法是配準(zhǔn)兩幅圖像平移失配的典型方法。最早于1975年由Kuglin和Hines提出[11],具有場(chǎng)景無(wú)關(guān)性,能夠?qū)⒓兇獾亩S平移的圖像精確配準(zhǔn)。
當(dāng)圖像之間只具有平移關(guān)系時(shí),相位相關(guān)可以簡(jiǎn)單描述如下:假設(shè)F1(u,v)和F2(u,v)分別為f1(u,v)和f2(u,v)的傅里葉變換,它們的互功率譜為
當(dāng)圖像中同時(shí)出現(xiàn)平移、旋轉(zhuǎn)和縮放時(shí),相位相關(guān)算法就會(huì)失效,因?yàn)橛衫碚撏茖?dǎo)[9]可知無(wú)法獲得脈沖函數(shù)。為了避免圖像配準(zhǔn)失敗,同時(shí)避免文獻(xiàn)[12]中復(fù)雜的坐標(biāo)變換方法,首先由攝像機(jī)標(biāo)定得到的旋轉(zhuǎn)和縮放參數(shù)將兩幅圖像位置校正,使得兩者之間只存在平移關(guān)系,再對(duì)校正后的圖像進(jìn)行配準(zhǔn)。這樣,就大幅度降低了算法的復(fù)雜度,快速地確定二維脈沖函數(shù)和求出高精度的平移參數(shù),進(jìn)而實(shí)現(xiàn)精確的配準(zhǔn)。
實(shí)驗(yàn)用的計(jì)算機(jī)主要參數(shù)有:英特爾酷睿雙核E7400主頻為2.8 GHz、內(nèi)存4 Gbyte,使用Windows XP 32位操作系統(tǒng)。本文拼接算法在VS2008平臺(tái)上通過(guò)C++編程實(shí)現(xiàn)。所用的攝像機(jī)輸出的數(shù)字圖像分辨率為704×576。
拼接中最常用的特征提取方法有SIFT,SURF等算法,文獻(xiàn)[13]對(duì)SIFT,PCA-SIFT,SURF算法進(jìn)行分析比較,對(duì)源圖像進(jìn)行尺度、旋轉(zhuǎn)、模糊、亮度變化、仿射變換等變化后再與源圖像進(jìn)行匹配,經(jīng)過(guò)實(shí)驗(yàn)得出:SIFT[14]在尺度和旋轉(zhuǎn)變換的情況下效果最好,而SURF在亮度變化下匹配效果最好,而尺度和旋轉(zhuǎn)的變化不及SIFT。因此在相同的場(chǎng)景下,將本文算法與基于SIFT特征提取的算法進(jìn)行比較。
攝像機(jī)的原始圖像如圖4a和圖4b所示,圖中的數(shù)字表示兩幅圖像中相互匹配的特征點(diǎn),圖4c為SIFT算法拼接結(jié)果,圖4d為本文算法的拼接結(jié)果,圖像中較明亮的部分表示重疊區(qū)域。從圖中可以看出,SIFT算法在相對(duì)單一的場(chǎng)景中正確提取的特征點(diǎn)較少,拼接圖像的邊緣依然存在畸變且圖像重影明顯。本文提出的拼接算法消除了由于攝像機(jī)鏡頭本身帶來(lái)的畸變,同時(shí)較好地配準(zhǔn)圖像,但是為了校正2幅圖像的位置,拼接圖像損失了一部分邊緣的像素。
圖4 基于SIFT特征提取的拼接算法與本文拼接算法的效果對(duì)比
為了研究2幅圖像的重合率對(duì)拼接的影響,改變2臺(tái)攝像機(jī)夾角的大小,獲取4組不同的圖像重合率,以2個(gè)攝像機(jī)重合的畫(huà)面范圍為變量進(jìn)行實(shí)驗(yàn),得到的相位相關(guān)數(shù)據(jù)如表1所述。實(shí)驗(yàn)數(shù)據(jù)列表中相關(guān)系數(shù)經(jīng)歸一化即相同的圖像相關(guān)系數(shù)為1,數(shù)值落在[-1,1]區(qū)間范圍內(nèi)。
表1 圖像重合率對(duì)相關(guān)系數(shù)的影響
由實(shí)驗(yàn)數(shù)據(jù)可以看出,當(dāng)圖像重合率上升時(shí),互功率譜的峰值就越大,也越容易檢測(cè)出更大范圍的位移,從而更準(zhǔn)確地確定平移位置,匹配也就越精確。
經(jīng)過(guò)實(shí)驗(yàn)發(fā)現(xiàn)當(dāng)圖像重疊率低于30%時(shí),無(wú)法進(jìn)行配準(zhǔn),分析其原因主要有兩個(gè)方面:第一,在預(yù)處理階段進(jìn)行相機(jī)標(biāo)定時(shí)因?yàn)橹睾蠀^(qū)域較少標(biāo)定有一定的困難;第二,重疊率小于30%時(shí)相關(guān)系數(shù)的最大值不能從相關(guān)系數(shù)集合中明顯的區(qū)分出來(lái),也就無(wú)法確定圖像平移位置。因此,本文設(shè)定一個(gè)相關(guān)系數(shù)最大值閾值,當(dāng)計(jì)算得到的相關(guān)系數(shù)峰值超過(guò)預(yù)設(shè)的閾值時(shí),再對(duì)圖像進(jìn)行拼接融合,如果低于閾值,就應(yīng)調(diào)節(jié)攝像機(jī)位置提高重合率,重新進(jìn)行計(jì)算。
基于該拼接算法工程的應(yīng)用考慮,不選重合率為70%的圖像,因?yàn)橐@得同一分辨率的拼接圖像,重合率越高,意味著需要更多的攝像機(jī)。折中考慮攝像機(jī)成本和拼接效率,選取重合率分別為30%和50%進(jìn)行實(shí)驗(yàn),得到2組拼接圖如圖5和圖6所示。
從拼接效果來(lái)看,圖像重合率50%的效果要比重合率30%的拼接效果好。30%的圖像出現(xiàn)了一定程度的誤匹配,如圖5中矩形框的區(qū)域。
最后,實(shí)驗(yàn)取4組不同分辨率且只具有平移關(guān)系的圖像輸入進(jìn)行測(cè)試,每組進(jìn)行20次測(cè)試,求得平均處理時(shí)間如表2所述。
表2 圖像分辨率和平均處理時(shí)間的關(guān)系
如果按照視頻25幀/秒(f/s),當(dāng)數(shù)字圖像分辨率超過(guò)1 280×720時(shí)就難以達(dá)到實(shí)時(shí)性的要求。因此實(shí)際應(yīng)用中可根據(jù)需要選擇分辨率相對(duì)較低的攝像機(jī),通過(guò)多臺(tái)攝像機(jī)來(lái)獲得高分辨率的視頻圖像輸出。
本文針對(duì)固定攝像機(jī)條件下,通過(guò)攝像機(jī)標(biāo)定與相位相關(guān)圖像匹配結(jié)合實(shí)現(xiàn)了實(shí)時(shí)視頻的拼接。算法在預(yù)處理階段通過(guò)相機(jī)標(biāo)定獲取圖像旋轉(zhuǎn)、縮放的變換矩陣,在實(shí)時(shí)處理視頻的過(guò)程中直接進(jìn)行矩陣運(yùn)算,避免了復(fù)雜的對(duì)數(shù)極坐標(biāo)變換和反復(fù)的FFT正向與逆向操作,使得算法處理速度有了極大的提高。特別是在場(chǎng)景特征單一的環(huán)境下,對(duì)魯棒性特征選擇與提取的依賴程度大大降低,與傳統(tǒng)的基于特征的方法相比,具有明顯的優(yōu)勢(shì)。同時(shí)運(yùn)算速度與輸入數(shù)字圖像的分辨率成正比例關(guān)系,因此整套拼接系統(tǒng)具有較好的實(shí)時(shí)性和可控性。
而本算法的不足之處主要是在預(yù)處理過(guò)程中,攝像機(jī)標(biāo)定的操作相對(duì)比較復(fù)雜,在攝像機(jī)相對(duì)位置改變后需要重新進(jìn)行標(biāo)定,缺乏一定的靈活性,如何找到一種自動(dòng)快速準(zhǔn)確的標(biāo)定方法還需要進(jìn)行相關(guān)研究。另外,圖像拼接的效果在一定程度上依賴于2幅圖像的重合率,在本文提出的算法中,2幅圖像重合率在30%以上的情況下才會(huì)取得較好的結(jié)果,如何減少拼接對(duì)圖像之間重合范圍的依賴性還有待進(jìn)一步研究。
[1]SZELISKI R,SHUM H.Creating full view panoramic image mosaics and environment maps[C]//Proc.ACM SIGGRAPH’97.Los Angeles:Addison Wesley,1997:251-258.
[2]SZELISKI R.Image alignment and stitching:a tutorial[M].[S.l.]:Handbook of Mathematical Models in Computer Vision,2006:273-292.
[3]宋海華,邵志一.基于改進(jìn)型特征匹配的圖像拼接方案設(shè)計(jì)[J].電視技術(shù),2008,32(2):19-20.
[4]BROWN M,LOWE D G.Automatic panoramic image stitching using invariant features[J].International Journal of Computer Vision,2007,1(74):59-73.
[5]HUMBLOT F,COLLIN B,MOHAMMAD-DJFARI A.Evaluation and practical issues of sub-pixel image registration using phase correlation methods[C]//Proc.Physics in Signal and Image Processing(PSIP)Conference.Toulouse,F(xiàn)rance:[s.n.],2005:115-120.
[6]HARTLEY R,ZISSERMAN A.Multiple view geometry in computer vision[M].2nd ed.Cambridge,UK:Cambridge University Press,2004.
[7]ZHANG Z Y.A flexible new technique for camera calibration[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2000,22(11):1330-1334.
[8]戴玉超.立體視覺(jué)系統(tǒng)中定標(biāo)、配準(zhǔn)與三維測(cè)量研究[D].西安:西北工業(yè)大學(xué),2008.
[9]LU YAN,PAYANDEH S.On the sensitivity analysis of camera calibration from images of spheres[J].Computer Vision and Image Understanding,2010,114(1):8-20.
[10]BROWN D C.Close-rang camera calibration[J].Photogrammetric Engineering,1971(37):855-866.
[11]KUGLIN C D,HINES D C.The phase correlation image alignment method[C]//Proc.the 1975 International Conference on Cybernetics and Society.[S.l.]:IEEE Press,1975:163-165.
[12]REDDY B,CHATIERJI B N.An FFT-Based technique for translation,rotation,and scale-Invariant image registration[J].IEEE Transactions on Image Processing and Remote Sensing,1996,5(8):1266-1271.
[13]LUO J,OUBONG G.A comparison of SIFT,PCA-SIFT and SURF[J].International Journal of Image Processing,2009,3(4):143-152.
[14]LOWE D G.Distinctive image features from scale-invariant key points[J].International Journal of Computer Vision,2004,60(2):91-110.