馮 珂, 彭曙蓉, 陳立福, 楊京渝
(長(zhǎng)沙理工大學(xué) 電氣與信息工程學(xué)院, 湖南長(zhǎng)沙 410114)
圖像配準(zhǔn)主要分為幾何配準(zhǔn)和深度配準(zhǔn)兩種。本文主要介紹基于點(diǎn)映射的幾何配準(zhǔn)方法。該方法在待配準(zhǔn)和基準(zhǔn)兩幅圖像中選擇控制點(diǎn)來(lái)確認(rèn)圖像中的相同特征和標(biāo)志,然后根據(jù)這些控制點(diǎn)的位置來(lái)推算某種空間映射關(guān)系,再用這種空間映射的關(guān)系對(duì)待配準(zhǔn)圖像進(jìn)行幾何變換,獲得配準(zhǔn)結(jié)果[2-3]。
本文介紹的配準(zhǔn)方法均是在MATLAB軟件中完成,MATLAB以其強(qiáng)大的矩陣運(yùn)算功能及豐富的圖像處理函數(shù)在圖像處理方面占有明顯的優(yōu)勢(shì),在圖像的幾何運(yùn)算方面,MATLAB的圖像處理工具箱(簡(jiǎn)稱(chēng)IPT)提供了一些支持點(diǎn)映射的工具,其中的圖像配準(zhǔn)函數(shù)可以幫助研究人員把精力集中在算法研究上,而不是繁瑣的程序的編寫(xiě)上,從而大大提高工作效率。
圖像配準(zhǔn)的關(guān)鍵問(wèn)題是圖像之間的空間變換,確定使圖像對(duì)準(zhǔn)的空間幾何變換參數(shù)。在數(shù)字圖像處理中,幾何變換由兩個(gè)基本操作組成:一是空間變換,它定義了圖像平面上像素的重新安排;二是灰度級(jí)插補(bǔ),它處理空間變換后圖像中像素灰度級(jí)的賦值。
假設(shè)一幅定義在坐標(biāo)系(w, z)上的圖像f,經(jīng)過(guò)幾何變換T后產(chǎn)生了另一幅定義在坐標(biāo)系(x, y)上的圖像g,那么這個(gè)變換可以表示為:
空間幾何變換的最常用的形式是仿射變換,它可以用如下矩陣形式表示:
該變換可以做到按比例縮放、旋轉(zhuǎn)、平移或者剪切等,具體取決于T元素的取值。
圖像經(jīng)過(guò)幾何變換后,像素的坐標(biāo)不會(huì)和原來(lái)的采樣網(wǎng)絡(luò)完全重合,這就需要對(duì)變換后的圖像進(jìn)行重采樣和插值處理。我們常用的插值方法有3類(lèi)[1,4]:最鄰近插值法(nearest)、雙線性插值法(bilinear)、雙三次插值法(bicubic)。
這些插值方法都是利用了鄰近像素的灰度值,計(jì)算量小且誤差小,因此在配準(zhǔn)中得到了廣泛的應(yīng)用。
圖像配準(zhǔn)就是對(duì)在同一視覺(jué)系統(tǒng)中,針對(duì)不同條件環(huán)境下所獲得的圖像數(shù)據(jù),進(jìn)行校正相對(duì)位置平移、角度旋轉(zhuǎn)和縮放尺度,達(dá)到兩張或多張圖像在空間上對(duì)齊,使得圖像上的特征點(diǎn)更容易達(dá)到一對(duì)一映射。
從數(shù)學(xué)角度,圖像配準(zhǔn)之間的映射關(guān)系可以如下表示,假設(shè)用二維矩陣I1和I2來(lái)分別表示源圖像和目標(biāo)圖像,I1(x, y)和I2(x, y)分別表示源圖像和目標(biāo)圖像在點(diǎn)(x, y)處的灰度值,那么圖像間的映射關(guān)系可以表示為:
其中,f表示的是二維空間下的坐標(biāo)變換,g是個(gè)一維函數(shù),代表了成像設(shè)備因成像條件不同所對(duì)應(yīng)的灰度變化。坐標(biāo)變換是關(guān)鍵,圖像校正屬于圖像預(yù)處理階段。由此可見(jiàn),圖像配準(zhǔn)其實(shí)就是找最佳坐標(biāo)變換。
MATLAB中的IPT支持以控制點(diǎn)為基礎(chǔ)的點(diǎn)映射圖像配準(zhǔn)。一旦選出了足夠的有效控制點(diǎn)就可以利用IPT函數(shù)來(lái)推導(dǎo)出實(shí)現(xiàn)某種映射關(guān)系的空間變換,以便控制這些點(diǎn)。
使用點(diǎn)映射的圖像配準(zhǔn)如圖1所示。
圖1 MATLAB配準(zhǔn)流程圖
2.2.1 將圖像讀入MATLAB中
>> I1=imread(‘C: shift_left.bmp’);% 讀入待配準(zhǔn)圖像
I2=imread('C: base_img.bmp’);%讀入基準(zhǔn)圖像
unregistered =I2;
rect=I1;
雖然在顯示圖像時(shí)并不一定要將圖像讀入MATLAB中,但是如果希望使用相關(guān)性調(diào)節(jié)控制點(diǎn)的位置,那么圖像必須位于MATLAB工作平臺(tái)中。
2.2.2 在兩幅圖中采集控制點(diǎn)對(duì)并保存
在MATLAB中IPT提供了一個(gè)稱(chēng)為控制點(diǎn)選擇工具的交互工具cpselect函數(shù),可以利用它在兩幅圖像中選擇成對(duì)的對(duì)應(yīng)控制點(diǎn)。其調(diào)用格式為:
cpselect(unregistered(:,:,1),rect);
其中unregistered為基準(zhǔn)圖像,rect為待配準(zhǔn)圖像。
cpselect函數(shù)是一個(gè)交互工具。它能同時(shí)顯示如圖2所示的待配準(zhǔn)圖像和如圖3所示的基準(zhǔn)圖像的兩個(gè)視圖(如圖4所示,概覽窗口左圖為待配準(zhǔn)圖像,右圖為基準(zhǔn)圖像)。執(zhí)行該函數(shù),啟動(dòng)控制點(diǎn)選擇工具,觀察圖像,通過(guò)平移和縮放圖像獲得圖像觀察區(qū)域內(nèi)的細(xì)節(jié)信息,尋找在兩幅圖像中都可以識(shí)別的可視元素,選定輸入圖像和基本圖像中匹配的控制點(diǎn)對(duì),最后將控制點(diǎn)保存在MATLAB的工作平臺(tái)中。采集控制點(diǎn)時(shí)應(yīng)遵循以下原則:(1)兩圖像上的控制點(diǎn)特征一致,必須是兩幅圖像中都能找到的標(biāo)記同名點(diǎn);(2)選擇控制點(diǎn)相對(duì)分散均勻;(3)控制點(diǎn)的數(shù)量需適中,控制點(diǎn)太少會(huì)影響估計(jì)精度,太多則影響估計(jì)速度。
圖2 待配準(zhǔn)圖像
圖3 基準(zhǔn)圖像
圖4 利用cpselect提取圖像的控制點(diǎn)
2.2.3 指定所需變換類(lèi)型和求解變換參數(shù)
根據(jù)已選擇的控制點(diǎn)對(duì),可調(diào)用函數(shù)cp2tform來(lái)計(jì)算出待配準(zhǔn)圖像和基準(zhǔn)圖像之間的幾何變換關(guān)系。cp2tform函數(shù)是一個(gè)數(shù)據(jù)擬合函數(shù),其輸入?yún)?shù)除了確定的控制點(diǎn)外還要求輸入變換類(lèi)型,該變換類(lèi)型還限制了控制點(diǎn)的數(shù)目。由于輸入圖像中的形狀沒(méi)有改變,但圖像經(jīng)過(guò)平移變換后右邊部分明顯發(fā)生了失真,所以變換類(lèi)型采用linear conformal(線性等角)變換,具體的調(diào)用函數(shù)如下:
tform=cp2tform(input_points,base_points,’linear conformal’);
執(zhí)行該函數(shù)后,cp2tform將變換類(lèi)型和變換參數(shù)等信息返回給變量tform,以備imtransform函數(shù)調(diào)用。
2.2.4 進(jìn)行圖像配準(zhǔn)
調(diào)用imtransform函數(shù),重采樣類(lèi)型選用雙線性插值法[1,5]。定義g代表配準(zhǔn)后的輸出圖像,則執(zhí)行完該函數(shù)后,完成圖像的幾何變換和圖像重采樣。
g=imtransform(I2,tform,’bilinear’);
在該過(guò)程中,變換將應(yīng)用于輸入圖像的每一個(gè)顏色分量。圖5是待配準(zhǔn)圖像配準(zhǔn)后的的圖像,與之前的基準(zhǔn)圖像相比,配準(zhǔn)后的圖像與基準(zhǔn)圖基本保持一致。
圖5 配準(zhǔn)完成后的圖像
作為圖像處理的關(guān)鍵環(huán)節(jié),根據(jù)圖像的特點(diǎn)和對(duì)圖像的不同的應(yīng)用目的,圖像配準(zhǔn)可由多種方法實(shí)現(xiàn)。例如ENVI,IPT工具箱等,相比之下,MATLAB調(diào)用函數(shù)的配準(zhǔn)方法簡(jiǎn)單易行,且運(yùn)算速度較快,在任務(wù)量小且配對(duì)精度不高的情況下是一個(gè)很好的選擇。但是,基于點(diǎn)特征的圖像配準(zhǔn)對(duì)控制點(diǎn)的選擇有較高的精度要求,本方法采用人機(jī)交互選擇控制點(diǎn),精度不夠穩(wěn)定,選點(diǎn)時(shí)應(yīng)格外注意。因此,研究一種快速自動(dòng)的算法以獲得精確的匹配點(diǎn)對(duì),將基于特征點(diǎn)的圖像配準(zhǔn)方法向自動(dòng)化與高精度方向推進(jìn)的同時(shí)考慮算法的魯棒性是進(jìn)一步要探索的方向。
[1]岡薩雷斯.數(shù)字圖像處理[M].3版.北京:電子工業(yè)出版社,2011.
[2]陳顯毅.圖像配準(zhǔn)技術(shù)及其MATLAB編程實(shí)現(xiàn)[M].北京:電子工業(yè)出版社,2009.
[3]卡斯?fàn)柭?數(shù)字圖像處理[M].朱志剛 譯.北京:電子工業(yè)出版社,2002.
[4]劉振潁,張永壽.基于控制點(diǎn)圖像配準(zhǔn)方法的研究[J].中國(guó)醫(yī)學(xué)裝備,2011.
[5]李弼程,彭天強(qiáng),彭波,等.智能圖像處理技術(shù)[M].北京:電子工業(yè)出版社,2004:4-8.
[6]Bentoutou,Y.;Taleb,N.;Kpalma,K.;Ronsin,J.An Automatic Image Registration for Applications in Remote Sensing[J].IEEE Transactions on Geoscience and Remote Sensing,2005,43(9):2127-2137.
[7]L G.Brown A survey of image registration t e c h n i q u e s[J].A C M C o m p u t e r Surveys,1992,24,(4):325-376.
[8]P.J Bunt,E.H Adelson.A multiresolution spline with application to image mosaics[J].ACM Transactions on Graphics,1983,2(4):217-236.