朱均超,丁晨曦,劉 蕾,焦英魁
(1.天津理工大學(xué)電氣電子工程學(xué)院,天津 300384;2.天津市復(fù)雜控制理論與應(yīng)用重點實驗室,天津 300384)
全景立體球視覺模型由光軸互相垂直的四只魚眼鏡頭相機(jī)構(gòu)建,能夠觀測全球域的圖像。近年來,國外對魚眼鏡頭在立體和全景視覺范圍內(nèi)應(yīng)用的研究愈來愈多[1]。同時,全景視覺關(guān)鍵應(yīng)用技術(shù)以及系統(tǒng)基礎(chǔ)理論算法也得到我國科研工作者的廣泛關(guān)注[2-7]。該技術(shù)基于視差原理并利用成像設(shè)備從不同的位置獲取物體的2幅圖像,通過計算圖像對應(yīng)點的位置偏差來獲取物體三維幾何信息[8]。在一般情況下,魚眼鏡頭圖像之間的立體匹配,是先將畸變的圖像校正為透視投影圖,然后對校正后需要匹配的圖像進(jìn)行極線校正處理,再通過尺度不變特征變換(scale invariant feature transform,SIFT)、仿射尺度不變特征變換(affine scale invariant feature transform,ASIFT)等算法對圖像進(jìn)行匹配[9-10]。該方法通常會破壞圖像原有的信息,從而增加圖像間的誤匹配、損壞立體視覺系統(tǒng)原有的幾何約束,在后續(xù)的三維重建中也會影響計算的準(zhǔn)確度[11]。
本文選取彩色圖像最大穩(wěn)定極值區(qū)域(maximally stable colour regions,MSCR)檢測方法和ASIFT算法,并將其直接應(yīng)用到未經(jīng)失真校正的魚眼鏡頭圖像的立體匹配中,保障了圖像之間的原始幾何關(guān)系,完成了魚眼鏡頭圖像之間的立體匹配。MSCR-ASIFT聯(lián)合算法不易受到外界因素的干擾,且準(zhǔn)確度也較高,可以滿足魚眼鏡頭圖像在未經(jīng)畸變矯正情況下的立體匹配。
Forssen于2007年提出MSCR檢測方法[12]。由于MSCR在圖像發(fā)生尺度變化、視場角度變化等情況下,仍具有非常強(qiáng)的穩(wěn)定性,因此本文選取MSCR對魚眼圖像特征區(qū)域進(jìn)行提取。
MSCR將原始圖像中的每個像素作為對象,而后采用凝聚聚類算法進(jìn)行檢測,通過某種相似度準(zhǔn)則逐層合并,從而形成簇[13]。這個過程被稱為進(jìn)化過程,即依次合并圖像中的像素構(gòu)筑斑點區(qū)域。MSCR所采用的相似度準(zhǔn)則是卡方距離。卡方距離是對顏色相似度的一種度量:
(1)
式中:k為圖像的不同通道;x和y為彩色圖像的兩個不同像素。
MSCR通過鄰域像素之間的色彩相似度進(jìn)行聚類合并。鄰域關(guān)系有2種,即對角線間鄰域和水平垂直間鄰域。本文中,MSCR所采用的算法是水平垂直間鄰域。一般而言,圖像的每個像素應(yīng)具有2個相似度值,但是圖像的最下方一行以及最右側(cè)的一列只具有1個相似度值。換言之,對于1幅L×M的彩色圖像而言,有(2×L×M-L-M)個相似度值。而后,將這些相似度值加入到邊緣列表中。
在凝聚聚類的算法中需要進(jìn)行逐層合并。在MSCR中進(jìn)行逐層合并之后的合并層次稱為進(jìn)化步長,通常用t表示,t∈[0,1,…,T]。T的取值一般為200,即有200步的進(jìn)化過程。而每個合并層都對應(yīng)一個不同的色彩相似度閾值。該合并層選取色彩相似度小于此閾值的像素進(jìn)行合并。每個合并層的閾值均不同,且隨著t的增加,閾值也不斷增加。因此,合并區(qū)域的面積逐步增加。由于圖像的像素鄰域間相關(guān)性非常大,故閾值的選擇非常重要。若繼續(xù)選擇隨t的增加線性增加閾值的方法,通常會導(dǎo)致當(dāng)t的值較小時,所形成斑點區(qū)域的速率很大;而當(dāng)t接近T時,形成斑點區(qū)域的速率很小。為了使斑點區(qū)域在不同的進(jìn)化步長下具有相同的速率,MSCR采用改進(jìn)型累積分布函數(shù)(cumulative distribution function,CDF)的逆函數(shù)對閾值進(jìn)行選取。而在每個進(jìn)化的步長之內(nèi),MSCR會合并顏色相似的像素,在相鄰像素之間組成斑點區(qū)域,以判斷其是否為最大穩(wěn)定極值區(qū)域。隨著t的增加,閾值和此區(qū)域的面積也相應(yīng)增加。只有滿足2個步長間面積之比大于一定值時,才能夠繼續(xù)對此區(qū)域的面積a*和相似度閾值d*進(jìn)行初始化處理,則:
(2)
通常,選取定值athr=1.01。MSCR判斷穩(wěn)定區(qū)域的公式為[14]:
(3)
自上次初始化(即更新a*和b*)后,若s取最小值,那么此區(qū)域為穩(wěn)定區(qū)域。在判斷穩(wěn)定區(qū)域時,需要同時滿足兩個條件:式(3)中的t不可為初始化a*和b*之后的第一個進(jìn)化步長;式(3)中的分母大于一定閾值。
dthr-d*>mmin
(4)
一般將mmin設(shè)為0.003。在搜尋到穩(wěn)定區(qū)域后,極值區(qū)域通過穩(wěn)定區(qū)域的面積變化率進(jìn)行判斷[15],即:
(5)
式中:Δ為灰度閾值的微小變化量;Qi為閾值是i時的某個連通區(qū)域;q(i)為閾值是i時的區(qū)域變化率。當(dāng)q(i)為局部極小值時,Qi為最大穩(wěn)定不變極值區(qū)域[16]。
ASIFT算法是對SIFT算法的改進(jìn)。除了保持尺度不變之外,ASIFT算法也保持對相機(jī)軸方向的不變。ASIFT算法包含模擬多仿射畸變和SIFT算法的實現(xiàn)兩個步驟[17]。
ASIFT算法有獨(dú)立的特征檢測算子。本文選取MSCR作為其特征檢測算子。以橢圓的中心作為特征像素點,選取特征像素點鄰域像素的梯度方向分布特性作為每個特征像素點所給定的方向參數(shù),使算子具有扭轉(zhuǎn)不變性。圖像特征像素點I(x,y)處的梯度模值和方向的運(yùn)算公式如下[18]:
(6)
(7)
在實際的計算中,以特征像素點作為中心數(shù)據(jù)窗口進(jìn)行采樣,并選擇直方圖加以統(tǒng)計。梯度直方圖的范圍為0°~360°,每10°為一個方向。選取直方圖的最大值作為特征像素點的主方向,將大于主峰值的方向作為其輔助方向[19]。為了提高其魯棒性,一個點可以具有多個方向。
首先,把坐標(biāo)軸扭轉(zhuǎn)至與特征像素點一致的方位。然后,以特征像素點為中心選取一個8×8像素的窗口,對梯度方向和模值進(jìn)行運(yùn)算,再采用高斯加權(quán)賦予權(quán)值。
特征描述算子的生成如圖1所示。
圖1 特征描述算子生成示意圖
如圖1中箭頭右邊的方形所示,在每個4×4的小方塊上,對8個方位的梯度方位直方圖加以計算且判定種子點。為了增大其配準(zhǔn)的穩(wěn)定性,在實際的計算時共有16個種子點,且每個種子點都擁有8個方位的矢量信息,由此形成一個128維的特征描述算子[20]。這個時刻的ASIFT特征矢量去除了尺度大小的變化、扭轉(zhuǎn)等一些幾何變形所帶來的影響。接著,對特征矢量的長短作統(tǒng)一規(guī)則化處理,以去除光照的亮度變化所帶來的影響。
首先,選擇極限約束,對采集到的2幅未經(jīng)失真校正的魚眼鏡頭圖像進(jìn)行描述。把其中的1幅設(shè)定為左魚眼鏡頭圖像,剩下的1幅則為右魚眼鏡頭圖像。接著,在左魚眼鏡頭圖像提取到的MSCR里選取一個定點A(x,y),并以A為中心選取1個N×N的鄰域,采用ASIFT描述子加以描述。在右魚眼鏡頭圖像中求取MSCR特征區(qū)域的內(nèi)切圓內(nèi)接正方形,并將其作為描述區(qū)域G,判定該區(qū)域的面積是否大于N×N。如果G大于N×N,則按照N×N的大小分為M個塊,對每一個小塊選取ASIFT描述子進(jìn)行描述;否則,直接以MSCR的中心構(gòu)造N×N的描述區(qū)域,選擇ASIFT描述子加以描述。采用χ2系數(shù)法,對特征區(qū)域描述向量間的距離進(jìn)行描述,以獲取最小距離Dmin(j),j=0,1,…,P(j為描述塊的索引),并判斷Dmin是否小于所設(shè)定的閾值D。如果Dmin(j)≤D,那么以第j個小塊的中心為定點A的匹配點,輸出匹配點對、無匹配點或者為誤匹配[21]。
該試驗的主要目的是在圖像旋轉(zhuǎn)、角度轉(zhuǎn)變、畸變等情況下,通過SIFT、MSCR-SIFT、MSCR-ASIFT這3種算法對魚眼鏡頭圖像配準(zhǔn)時的性能進(jìn)行對比與分析。統(tǒng)計魚眼圖像的立體匹配點對數(shù)、誤匹配率及其匹配時間,最后依照試驗和仿真的結(jié)果對本文算法的匹配性能進(jìn)行客觀的評價與分析。其中,所采集的待匹配圖像對的特征提取以及圖像的匹配均在MATLAB R2013b軟件平臺上進(jìn)行操作。試驗步驟如下。
首先,把2個載有魚眼鏡頭的相機(jī)固定到試驗架上;然后,轉(zhuǎn)動2個鏡頭,使所采集的目標(biāo)物可以同時出現(xiàn)在兩幅圖像中;最后,采集一組待匹配的魚眼圖像對。采集的原始圖像對如圖2所示。
圖2 原始圖像對
采用3種算法的立體匹配結(jié)果如圖3所示。選擇SIFT算法對已經(jīng)采集的魚眼鏡頭圖像對進(jìn)行匹配,其試驗仿真圖如圖3(a)所示。接著,由SIFT描述子和ASIFT描述子分別對MSCR區(qū)域逐一描述,從而完成魚眼鏡頭圖像之間的立體匹配,匹配的試驗仿真圖分別如圖3(b)和圖3(c)所示。
對算法進(jìn)行立體匹配的結(jié)果進(jìn)行比對和分析,統(tǒng)計結(jié)果如表1所示。
圖3 立體匹配結(jié)果
表1 算法匹配結(jié)果統(tǒng)計
由圖3和表1可知,本文所采用的MSCR-ASIFT算法能夠得到更多的匹配點對數(shù),且配準(zhǔn)質(zhì)量更好。該算法的誤匹配率約為SIFT算法的22%。
魚眼相機(jī)采集到的圖像大小為3 MB,圖像的分辨率均為1 024×1 024。選擇MATLAB軟件加以編程,以實現(xiàn)SIFT、MSCR-SIFT、MSCR-ASIFT這3種算法對魚眼鏡頭圖像的立體匹配。具體描述為:先在左魚眼圖像中提取特征區(qū)域,建立其描述向量;接著搜索右魚眼圖像與之對應(yīng)的區(qū)域,從而完成圖像間的立體匹配。
對特征像素點的匹配時間和描述矢量速度進(jìn)行比對。在計算一個特征像素點的描述向量時,SIFT算法需要計算該特征點鄰近的16×16像素范圍內(nèi),每個像素的梯度方向與幅值。因此需要進(jìn)行256次開平方以及256次反正切運(yùn)算,在選取梯度的幅值進(jìn)行加權(quán)時,需要進(jìn)行256次指數(shù)運(yùn)算。本文選擇ASIFT算法進(jìn)行特征描述。MSCR-ASIFT算法可以檢測得到遠(yuǎn)多于SIFT算法的特征點,在計算特征像素點描述矢量時所耗費(fèi)的時長與SIFT算法的描述用時相差不多。
分別對3種算法的匹配時間進(jìn)行統(tǒng)計,其結(jié)果如表2所示。
表2 匹配時間對比
本文采用MSCR與ASIFT相結(jié)合的算法進(jìn)行魚眼圖像特征區(qū)域的匹配,且通過試驗驗證了其可行性。本文所采用的聯(lián)合匹配算法比SIFT算法的匹配速度更快,且匹配點對數(shù)遠(yuǎn)多于MSCR-SIFT和SIFT兩種算法,匹配更為準(zhǔn)確、誤匹配率更低。此外,MSCR-ASIFT算法對于實現(xiàn)魚眼圖像等一些大畸變圖像間的立體匹配具有較強(qiáng)的魯棒性,并且對恢復(fù)魚眼鏡頭圖像的深度信息以及后續(xù)的三維重建都具有十分重要的意義。
本文所采用的MSCR-ASIFT算法,在魚眼鏡頭圖像的立體匹配中,具有良好的應(yīng)用效果,但是只完成了全景立體球視覺系統(tǒng)中的兩幅魚眼鏡頭圖像的立體匹配。若對本文的算法加以完善和改進(jìn),使其可以自動地進(jìn)行特征區(qū)域的立體匹配并完成全景圖像,則可以推廣到全景立體球視覺系統(tǒng)全景圖像的實時拼接中。
參考文獻(xiàn):
[1] JAN H,TOMAS P.Stereographic rectification of omnidirectional stereo pairs[C]//2009 IEEE Conference on Computer Vision and Pattern Recognition,2009:1414-1421.
[2] 項志宇.折反射全向相機(jī)鏡面位資的自標(biāo)定方法[J].光學(xué)學(xué)報,2011,32(4):126-132.
[3] 朱均超,葛磊,韓芳芳,等.基于分離參數(shù)標(biāo)定的魚眼鏡頭成像模型研究[J].傳感技術(shù)學(xué)報,2013,26(7):975-980.
[4] 馮為嘉,張寶峰,曹作良.基于魚眼鏡頭的全方位視覺參數(shù)標(biāo)定與畸變矯正[J].天津大學(xué)學(xué)報,2011,44(5):417-424.
[5] 于紅緋,劉威,趙宏.基于子塊運(yùn)動補(bǔ)償?shù)倪\(yùn)動目標(biāo)檢測[J].電子學(xué)報,2017,45(1):173-180.
[6] 徐敏,張紅英.吳亞東.基于場景深度的霧天圖像能見度檢測算法[J].自動化儀表,2017,38(9):89-95.
[7] 過志強(qiáng),殷國亮,肖文皓,等.視覺引導(dǎo)的機(jī)器人關(guān)節(jié)空間動態(tài)軌跡規(guī)劃[J].自動化儀表,2015,36(3):77-80.
[8] 張旭蘋,汪家其,張益昕,等.大尺度三維幾何尺寸立體視覺測量系統(tǒng)實現(xiàn)[J].光學(xué)學(xué)報,2012,32(3):148-155.
[9] 姜宏志,趙慧潔,梁宵月,等.基于極線校正的快速相位立體匹配[J].光學(xué)精密工程,2011,19(10):2520-2525.
[10]宋陽,周亞麗,張奇志.魚眼鏡頭徑向畸變的校正方法[J].儀器儀表學(xué)報,2017,38(4):1014-1023.
[11]祝海江,徐曉波,周靖林.基于球面透視投影旋轉(zhuǎn)矩陣的魚眼圖像匹配[J].光學(xué)學(xué)報,2013,33(2):1-8.
[12]FORSSéN P E,LOWE D G.Shape descriptors for maximally stable extremal regions[C]//IEEE 11th International Conference on Computer Vision.IEEE,2007:1-8.
[13]丁文銳,康傳波,李紅光,等.基于MSER的無人機(jī)圖像建筑區(qū)域提取[J].北京航空航天大學(xué)學(xué)報,2015,41(3):383-390.
[14]柳濤.多通道圖像MSER局部不變特征提取算法研究[D].長沙:國防科學(xué)技術(shù)大學(xué),2010.
[15]高士林,吉立新,李紹梅,等.基于MSER擬合橢圓的快速場景文本定位算法[J].計算機(jī)工程與設(shè)計,2015,36(3):693-720.
[16]廉藺,王海濤,李國輝,等.基于MSER的紅外與可見光圖像關(guān)聯(lián)特征提取算法[J].電子與信息學(xué)報,2011,33(7):1625-1631.
[17]楊杰,劉小軍,孫堅偉,等.基于SIFT的圖像配準(zhǔn)方法[J].紅外與激光工程,2008,37(1):156-160.
[18]楊小輝,王敏.基于ASIFT的無縫圖像接方法[J].計算機(jī)工程,2013,39(2):241-249.
[19]傅衛(wèi)平,秦川,劉佳,等.基于SIFT算法的圖像目標(biāo)匹配與定位[J].儀器儀表學(xué)報,2011,32(1):163-169.
[20]劉佳,傅衛(wèi)平,王雯,等.基于改進(jìn)SIFT算法的圖像匹配[J].儀器儀表學(xué)報,2013,34(5):1107-1112.
[21]薛艷華,何小海,雷翔,等.基于改進(jìn)ASIFT算法的遙感圖像匹配[J].四川大學(xué)學(xué)報,2013,50(5):1000-1005.