朱均超,丁晨曦,劉 蕾,焦英魁
(1.天津理工大學電氣電子工程學院,天津 300384;2.天津市復雜控制理論與應用重點實驗室,天津 300384)
全景立體球視覺模型由光軸互相垂直的四只魚眼鏡頭相機構建,能夠觀測全球域的圖像。近年來,國外對魚眼鏡頭在立體和全景視覺范圍內應用的研究愈來愈多[1]。同時,全景視覺關鍵應用技術以及系統基礎理論算法也得到我國科研工作者的廣泛關注[2-7]。該技術基于視差原理并利用成像設備從不同的位置獲取物體的2幅圖像,通過計算圖像對應點的位置偏差來獲取物體三維幾何信息[8]。在一般情況下,魚眼鏡頭圖像之間的立體匹配,是先將畸變的圖像校正為透視投影圖,然后對校正后需要匹配的圖像進行極線校正處理,再通過尺度不變特征變換(scale invariant feature transform,SIFT)、仿射尺度不變特征變換(affine scale invariant feature transform,ASIFT)等算法對圖像進行匹配[9-10]。該方法通常會破壞圖像原有的信息,從而增加圖像間的誤匹配、損壞立體視覺系統原有的幾何約束,在后續的三維重建中也會影響計算的準確度[11]。
本文選取彩色圖像最大穩定極值區域(maximally stable colour regions,MSCR)檢測方法和ASIFT算法,并將其直接應用到未經失真校正的魚眼鏡頭圖像的立體匹配中,保障了圖像之間的原始幾何關系,完成了魚眼鏡頭圖像之間的立體匹配。MSCR-ASIFT聯合算法不易受到外界因素的干擾,且準確度也較高,可以滿足魚眼鏡頭圖像在未經畸變矯正情況下的立體匹配。
Forssen于2007年提出MSCR檢測方法[12]。由于MSCR在圖像發生尺度變化、視場角度變化等情況下,仍具有非常強的穩定性,因此本文選取MSCR對魚眼圖像特征區域進行提取。
MSCR將原始圖像中的每個像素作為對象,而后采用凝聚聚類算法進行檢測,通過某種相似度準則逐層合并,從而形成簇[13]。這個過程被稱為進化過程,即依次合并圖像中的像素構筑斑點區域。MSCR所采用的相似度準則是卡方距離。卡方距離是對顏色相似度的一種度量:
(1)
式中:k為圖像的不同通道;x和y為彩色圖像的兩個不同像素。
MSCR通過鄰域像素之間的色彩相似度進行聚類合并。鄰域關系有2種,即對角線間鄰域和水平垂直間鄰域。本文中,MSCR所采用的算法是水平垂直間鄰域。一般而言,圖像的每個像素應具有2個相似度值,但是圖像的最下方一行以及最右側的一列只具有1個相似度值。換言之,對于1幅L×M的彩色圖像而言,有(2×L×M-L-M)個相似度值。而后,將這些相似度值加入到邊緣列表中。
在凝聚聚類的算法中需要進行逐層合并。在MSCR中進行逐層合并之后的合并層次稱為進化步長,通常用t表示,t∈[0,1,…,T]。T的取值一般為200,即有200步的進化過程。而每個合并層都對應一個不同的色彩相似度閾值。該合并層選取色彩相似度小于此閾值的像素進行合并。每個合并層的閾值均不同,且隨著t的增加,閾值也不斷增加。因此,合并區域的面積逐步增加。由于圖像的像素鄰域間相關性非常大,故閾值的選擇非常重要。若繼續選擇隨t的增加線性增加閾值的方法,通常會導致當t的值較小時,所形成斑點區域的速率很大;而當t接近T時,形成斑點區域的速率很小。為了使斑點區域在不同的進化步長下具有相同的速率,MSCR采用改進型累積分布函數(cumulative distribution function,CDF)的逆函數對閾值進行選取。而在每個進化的步長之內,MSCR會合并顏色相似的像素,在相鄰像素之間組成斑點區域,以判斷其是否為最大穩定極值區域。隨著t的增加,閾值和此區域的面積也相應增加。只有滿足2個步長間面積之比大于一定值時,才能夠繼續對此區域的面積a*和相似度閾值d*進行初始化處理,則:
(2)
通常,選取定值athr=1.01。MSCR判斷穩定區域的公式為[14]:
(3)
自上次初始化(即更新a*和b*)后,若s取最小值,那么此區域為穩定區域。在判斷穩定區域時,需要同時滿足兩個條件:式(3)中的t不可為初始化a*和b*之后的第一個進化步長;式(3)中的分母大于一定閾值。
dthr-d*>mmin
(4)
一般將mmin設為0.003。在搜尋到穩定區域后,極值區域通過穩定區域的面積變化率進行判斷[15],即:
(5)
式中:Δ為灰度閾值的微小變化量;Qi為閾值是i時的某個連通區域;q(i)為閾值是i時的區域變化率。當q(i)為局部極小值時,Qi為最大穩定不變極值區域[16]。
ASIFT算法是對SIFT算法的改進。除了保持尺度不變之外,ASIFT算法也保持對相機軸方向的不變。ASIFT算法包含模擬多仿射畸變和SIFT算法的實現兩個步驟[17]。
ASIFT算法有獨立的特征檢測算子。本文選取MSCR作為其特征檢測算子。以橢圓的中心作為特征像素點,選取特征像素點鄰域像素的梯度方向分布特性作為每個特征像素點所給定的方向參數,使算子具有扭轉不變性。圖像特征像素點I(x,y)處的梯度模值和方向的運算公式如下[18]:
(6)
(7)
在實際的計算中,以特征像素點作為中心數據窗口進行采樣,并選擇直方圖加以統計。梯度直方圖的范圍為0°~360°,每10°為一個方向。選取直方圖的最大值作為特征像素點的主方向,將大于主峰值的方向作為其輔助方向[19]。為了提高其魯棒性,一個點可以具有多個方向。
首先,把坐標軸扭轉至與特征像素點一致的方位。然后,以特征像素點為中心選取一個8×8像素的窗口,對梯度方向和模值進行運算,再采用高斯加權賦予權值。
特征描述算子的生成如圖1所示。

圖1 特征描述算子生成示意圖
如圖1中箭頭右邊的方形所示,在每個4×4的小方塊上,對8個方位的梯度方位直方圖加以計算且判定種子點。為了增大其配準的穩定性,在實際的計算時共有16個種子點,且每個種子點都擁有8個方位的矢量信息,由此形成一個128維的特征描述算子[20]。這個時刻的ASIFT特征矢量去除了尺度大小的變化、扭轉等一些幾何變形所帶來的影響。接著,對特征矢量的長短作統一規則化處理,以去除光照的亮度變化所帶來的影響。
首先,選擇極限約束,對采集到的2幅未經失真校正的魚眼鏡頭圖像進行描述。把其中的1幅設定為左魚眼鏡頭圖像,剩下的1幅則為右魚眼鏡頭圖像。接著,在左魚眼鏡頭圖像提取到的MSCR里選取一個定點A(x,y),并以A為中心選取1個N×N的鄰域,采用ASIFT描述子加以描述。在右魚眼鏡頭圖像中求取MSCR特征區域的內切圓內接正方形,并將其作為描述區域G,判定該區域的面積是否大于N×N。如果G大于N×N,則按照N×N的大小分為M個塊,對每一個小塊選取ASIFT描述子進行描述;否則,直接以MSCR的中心構造N×N的描述區域,選擇ASIFT描述子加以描述。采用χ2系數法,對特征區域描述向量間的距離進行描述,以獲取最小距離Dmin(j),j=0,1,…,P(j為描述塊的索引),并判斷Dmin是否小于所設定的閾值D。如果Dmin(j)≤D,那么以第j個小塊的中心為定點A的匹配點,輸出匹配點對、無匹配點或者為誤匹配[21]。
該試驗的主要目的是在圖像旋轉、角度轉變、畸變等情況下,通過SIFT、MSCR-SIFT、MSCR-ASIFT這3種算法對魚眼鏡頭圖像配準時的性能進行對比與分析。統計魚眼圖像的立體匹配點對數、誤匹配率及其匹配時間,最后依照試驗和仿真的結果對本文算法的匹配性能進行客觀的評價與分析。其中,所采集的待匹配圖像對的特征提取以及圖像的匹配均在MATLAB R2013b軟件平臺上進行操作。試驗步驟如下。
首先,把2個載有魚眼鏡頭的相機固定到試驗架上;然后,轉動2個鏡頭,使所采集的目標物可以同時出現在兩幅圖像中;最后,采集一組待匹配的魚眼圖像對。采集的原始圖像對如圖2所示。

圖2 原始圖像對
采用3種算法的立體匹配結果如圖3所示。選擇SIFT算法對已經采集的魚眼鏡頭圖像對進行匹配,其試驗仿真圖如圖3(a)所示。接著,由SIFT描述子和ASIFT描述子分別對MSCR區域逐一描述,從而完成魚眼鏡頭圖像之間的立體匹配,匹配的試驗仿真圖分別如圖3(b)和圖3(c)所示。
對算法進行立體匹配的結果進行比對和分析,統計結果如表1所示。

圖3 立體匹配結果

表1 算法匹配結果統計
由圖3和表1可知,本文所采用的MSCR-ASIFT算法能夠得到更多的匹配點對數,且配準質量更好。該算法的誤匹配率約為SIFT算法的22%。
魚眼相機采集到的圖像大小為3 MB,圖像的分辨率均為1 024×1 024。選擇MATLAB軟件加以編程,以實現SIFT、MSCR-SIFT、MSCR-ASIFT這3種算法對魚眼鏡頭圖像的立體匹配。具體描述為:先在左魚眼圖像中提取特征區域,建立其描述向量;接著搜索右魚眼圖像與之對應的區域,從而完成圖像間的立體匹配。
對特征像素點的匹配時間和描述矢量速度進行比對。在計算一個特征像素點的描述向量時,SIFT算法需要計算該特征點鄰近的16×16像素范圍內,每個像素的梯度方向與幅值。因此需要進行256次開平方以及256次反正切運算,在選取梯度的幅值進行加權時,需要進行256次指數運算。本文選擇ASIFT算法進行特征描述。MSCR-ASIFT算法可以檢測得到遠多于SIFT算法的特征點,在計算特征像素點描述矢量時所耗費的時長與SIFT算法的描述用時相差不多。
分別對3種算法的匹配時間進行統計,其結果如表2所示。

表2 匹配時間對比
本文采用MSCR與ASIFT相結合的算法進行魚眼圖像特征區域的匹配,且通過試驗驗證了其可行性。本文所采用的聯合匹配算法比SIFT算法的匹配速度更快,且匹配點對數遠多于MSCR-SIFT和SIFT兩種算法,匹配更為準確、誤匹配率更低。此外,MSCR-ASIFT算法對于實現魚眼圖像等一些大畸變圖像間的立體匹配具有較強的魯棒性,并且對恢復魚眼鏡頭圖像的深度信息以及后續的三維重建都具有十分重要的意義。
本文所采用的MSCR-ASIFT算法,在魚眼鏡頭圖像的立體匹配中,具有良好的應用效果,但是只完成了全景立體球視覺系統中的兩幅魚眼鏡頭圖像的立體匹配。若對本文的算法加以完善和改進,使其可以自動地進行特征區域的立體匹配并完成全景圖像,則可以推廣到全景立體球視覺系統全景圖像的實時拼接中。
參考文獻:
[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].光學學報,2011,32(4):126-132.
[3] 朱均超,葛磊,韓芳芳,等.基于分離參數標定的魚眼鏡頭成像模型研究[J].傳感技術學報,2013,26(7):975-980.
[4] 馮為嘉,張寶峰,曹作良.基于魚眼鏡頭的全方位視覺參數標定與畸變矯正[J].天津大學學報,2011,44(5):417-424.
[5] 于紅緋,劉威,趙宏.基于子塊運動補償的運動目標檢測[J].電子學報,2017,45(1):173-180.
[6] 徐敏,張紅英.吳亞東.基于場景深度的霧天圖像能見度檢測算法[J].自動化儀表,2017,38(9):89-95.
[7] 過志強,殷國亮,肖文皓,等.視覺引導的機器人關節空間動態軌跡規劃[J].自動化儀表,2015,36(3):77-80.
[8] 張旭蘋,汪家其,張益昕,等.大尺度三維幾何尺寸立體視覺測量系統實現[J].光學學報,2012,32(3):148-155.
[9] 姜宏志,趙慧潔,梁宵月,等.基于極線校正的快速相位立體匹配[J].光學精密工程,2011,19(10):2520-2525.
[10]宋陽,周亞麗,張奇志.魚眼鏡頭徑向畸變的校正方法[J].儀器儀表學報,2017,38(4):1014-1023.
[11]祝海江,徐曉波,周靖林.基于球面透視投影旋轉矩陣的魚眼圖像匹配[J].光學學報,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].北京航空航天大學學報,2015,41(3):383-390.
[14]柳濤.多通道圖像MSER局部不變特征提取算法研究[D].長沙:國防科學技術大學,2010.
[15]高士林,吉立新,李紹梅,等.基于MSER擬合橢圓的快速場景文本定位算法[J].計算機工程與設計,2015,36(3):693-720.
[16]廉藺,王海濤,李國輝,等.基于MSER的紅外與可見光圖像關聯特征提取算法[J].電子與信息學報,2011,33(7):1625-1631.
[17]楊杰,劉小軍,孫堅偉,等.基于SIFT的圖像配準方法[J].紅外與激光工程,2008,37(1):156-160.
[18]楊小輝,王敏.基于ASIFT的無縫圖像接方法[J].計算機工程,2013,39(2):241-249.
[19]傅衛平,秦川,劉佳,等.基于SIFT算法的圖像目標匹配與定位[J].儀器儀表學報,2011,32(1):163-169.
[20]劉佳,傅衛平,王雯,等.基于改進SIFT算法的圖像匹配[J].儀器儀表學報,2013,34(5):1107-1112.
[21]薛艷華,何小海,雷翔,等.基于改進ASIFT算法的遙感圖像匹配[J].四川大學學報,2013,50(5):1000-1005.