崔戈輝,房金譜
(1. 西安工業(yè)大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院,陜西 西安 710021;2. 西安工業(yè)大學(xué),陜西 西安 710021)
在不同類型的影像中均含有大量有價(jià)值的幾何和語義信息,影像匹配在三維建模中占據(jù)重要的地位,影像匹配是指分析兩幅圖像中相似特征之間的關(guān)聯(lián)性,即求解不同影像之間的幾何關(guān)系[1,2]。目前,影像匹配已經(jīng)逐漸發(fā)展成為目標(biāo)圖像識(shí)別和配準(zhǔn)的重要技術(shù)之一。和傳統(tǒng)的影像相比,多重影像更加復(fù)雜,導(dǎo)致進(jìn)行多重影像線特征匹配存在更大的難度。
為此,各種多重影像線特征匹配方法相繼被提出,例如張平等人[3]通過直線檢測算法針對參考圖像和搜索圖像進(jìn)行直線特征提取,將提取結(jié)果進(jìn)行編碼處理,得到對應(yīng)的直線對。將直線對設(shè)定為匹配基元,通過雙重核線約束以及最優(yōu)相似性原則確定同名直線對,對直線對進(jìn)行拆分處理,同時(shí)結(jié)合仿射變換過程中不一致的單直線進(jìn)行整合,獲取最終的匹配結(jié)果。陳敏等人[4]優(yōu)先分析不同直線特征之間的幾何關(guān)系,構(gòu)建特征區(qū)域和對應(yīng)的描述符,采用雙向匹配策略對圖像直線特征進(jìn)行初始匹配。結(jié)合初始匹配結(jié)果建立影像基礎(chǔ)矩陣,同時(shí)借助自適應(yīng)特征進(jìn)行二次匹配。在設(shè)定的自適應(yīng)特征區(qū)域內(nèi),提取影像內(nèi)容一致的特征區(qū)域,獲取相似特征描述符,完成特征點(diǎn)自適應(yīng)匹配。
由于以上兩種算法沒有對多重影像進(jìn)行邊緣檢測,導(dǎo)致匹配結(jié)果不理想,匹配效率下降,漏匹配率增加。為此提出一種基于仿射不變性的多重影像線特征匹配算法,經(jīng)實(shí)驗(yàn)測試證明,所提算法能夠有效提升匹配效率,降低漏匹配率,獲取高精度的匹配結(jié)果。
對于多重影像{f(x,y)}中的不同像素,需要考慮不同坐標(biāo)下鄰近點(diǎn)灰度的加權(quán)和,設(shè)定Sobel算子表示為
s(i,j)=|Δxf|+|Δyf|
(1)
式中,s(i,j)代表邊緣圖像;Δxf和Δyf分別代表不同的卷積算子,詳細(xì)的表達(dá)形式如下
(2)

(3)
針對Sobel算子具有較強(qiáng)的方向性等特點(diǎn),對已有Sobel算子進(jìn)行改進(jìn),詳細(xì)的操作步驟為:
優(yōu)先對圖像進(jìn)行全局閾值分割處理,同時(shí)進(jìn)行邊緣提取,即可精準(zhǔn)檢測到多重影像各個(gè)方向的邊緣[5,6]。經(jīng)過以上分析,結(jié)合邊緣提取以及數(shù)學(xué)形態(tài)學(xué)理論和方法,對多重影像進(jìn)行邊緣檢測,詳細(xì)的檢測流程如圖1所示。

圖1 多重影像邊緣檢測流程圖
結(jié)合圖1,優(yōu)先對多重影像進(jìn)行閾值處理,主要使用迭代求全局閾值的方法,詳細(xì)的操作步驟如下所示:
1)設(shè)定閾值為T,選取一個(gè)與之對應(yīng)的初始估計(jì)值。
2)通過閾值T對多重影像進(jìn)行分割。
3)計(jì)算亮度值G1和高度值G2,設(shè)定范圍內(nèi)像素的平均值。
4)計(jì)算一個(gè)全新的閾值。
5)重復(fù)步驟1)到步驟4),直至滿足設(shè)定的約束條件。
當(dāng)?shù)玫蕉嘀赜跋竦淖罴验撝礣后,需要對多重影像進(jìn)行二值化處理,得到經(jīng)過分割處理后的影像[7,8]。對多重影像進(jìn)行分割時(shí),會(huì)出現(xiàn)將錯(cuò)誤背景作為孤立像素的情況。因此,需要將背景中存在的孤立像素全部剔除,然后再進(jìn)行閉運(yùn)算。其中,閉運(yùn)算的基本計(jì)算流程為:優(yōu)先對多重影像進(jìn)行膨脹;完成膨脹后再對其進(jìn)行腐蝕,將影像中存在的小裂縫進(jìn)行擬合,確保目標(biāo)的位置和形狀不發(fā)生任何改變。
通過上述分析,能夠直接得到一個(gè)可以進(jìn)行目標(biāo)邊緣檢測的目標(biāo)影像。通過Sobel算子實(shí)現(xiàn)目標(biāo)影像的邊緣檢測,采用A表示。另外一幅多重目標(biāo)影像需要先對其中一個(gè)閾值進(jìn)行分割,然后再通過Sobel算子進(jìn)行一次邊緣檢測,采用B表示。將兩幅影像加以相加,即可獲取一幅完成邊緣檢測的多重影像。
針對目標(biāo)區(qū)域內(nèi)的不同影像分別采取不同的分割方式進(jìn)行劃分,將梯度方向相同的點(diǎn)統(tǒng)一放置在一個(gè)支持區(qū)域內(nèi),同時(shí)提取對應(yīng)的直線,詳細(xì)的操作流程如下所示:
1)計(jì)算多重影像中各個(gè)像元對應(yīng)的幅值以及梯度方向。
2)將梯度方向?qū)?yīng)的值域劃分為多個(gè)較小的區(qū)域,將各個(gè)區(qū)域進(jìn)行編號。
3)通過連通成分算法將符號相同的鄰接點(diǎn)進(jìn)行連接,組成直線支持區(qū)。
4)提取每一個(gè)直線區(qū)域所對應(yīng)的直線。
當(dāng)?shù)玫较裨奶荻群螅梢酝ㄟ^方向的差異,根據(jù)一定的規(guī)則將多重影像劃分為不同的直線支撐區(qū)域。將多重影像直線支持區(qū)域內(nèi)的灰度表面借助平面進(jìn)行展示。其中,平面中的參數(shù)是利用最小二乘法加權(quán)擬合獲取,而且直線的各個(gè)面都是相互垂直的。結(jié)合2.1小節(jié)獲取的邊緣檢測結(jié)果,優(yōu)先提取邊緣點(diǎn)所在的直線支持區(qū),同時(shí)將全部像元設(shè)定為已知變量,通過計(jì)算得到不同邊緣點(diǎn)的權(quán)值。采用最小二乘計(jì)算方法對直線支持區(qū)內(nèi)的全部參數(shù)進(jìn)行擬合,得到直線方程。詳細(xì)的操作步驟如圖2所示。

圖2 多重影像線特征提取流程圖
1)在二值化影像中獲取不同坐標(biāo)點(diǎn)的位置信息,將其存儲(chǔ)到對應(yīng)的二維數(shù)據(jù)組中。對數(shù)組中的全部像素進(jìn)行遍歷處理,得到對應(yīng)的參數(shù)空間矩陣。
2)嵌入清零法的峰值檢測:計(jì)算多重影像經(jīng)過Hough變換后矩陣的最大極值點(diǎn),即局部峰值點(diǎn)。獲取該點(diǎn)的取值范圍以及坐標(biāo)位置信息,將其存儲(chǔ)到對應(yīng)的文件夾中。
3)消除偽直線和過連接直線:設(shè)定直線連接的最小間隔和檢測直線的最小長度,結(jié)合兩者的取值設(shè)定閾值,通過閾值進(jìn)行偽直線和過連接直線的消除工作。
4)直線合并:由于直線本身具有長度和角度等多種不同的幾何屬性,所以在進(jìn)行直線檢測的過程中,需要結(jié)合閾值對兩條直線之間的角度進(jìn)行設(shè)定,當(dāng)直線滿足設(shè)定的約束條件,則將其進(jìn)行合并。
5)直線擬合:當(dāng)直線完成合并后,通過最小二乘法進(jìn)行擬合,同時(shí)結(jié)合仿射不變特性完成多重影像線特征提取[9,10]。
采用SIFT算子對特征區(qū)域進(jìn)行描述,SIFT算子共包含4個(gè)步驟,具體如下所示:
1)尺度空間特征檢測:
將原始多重影像和高斯函數(shù)兩者進(jìn)行卷積操作,形成高斯尺度空間。同時(shí)將卷積結(jié)果和鄰近層次的卷積結(jié)果兩者相減,獲取DOG金字塔D(x,y,σ),具體的計(jì)算公式為

(4)
式中,G(x,y,σ)代表特征描述符;I(x,y)代表原始多重影像;L(x,y,σ)代表經(jīng)過卷積操作后的多重影像;k代表特征描述符的總數(shù)。
2)特征點(diǎn)精確定位:
根據(jù)局部極值點(diǎn)對全部函數(shù)進(jìn)行擬合,實(shí)現(xiàn)亞像素的精準(zhǔn)定位,并且消除外界各種干擾因素帶來的不良影響。
3)特征點(diǎn)主方向的計(jì)算:
設(shè)定鄰域中心為特征點(diǎn),以此為依據(jù)計(jì)算各個(gè)梯度方向的像素值。
4)特征描述符的形成:
設(shè)定特征點(diǎn)所在的方向?yàn)橹鞣较颍渲卸嘀赜跋褚蕴卣鼽c(diǎn)為中心進(jìn)行旋轉(zhuǎn)。設(shè)定中心窗口的大小為16×16,將其劃分為4個(gè)規(guī)格相同的小塊,經(jīng)過計(jì)算得到對應(yīng)的累加值,進(jìn)而構(gòu)建128維的SIFT特征向量,即特征描述符。
通過Hesssin-Affine和MSER算法對多重影像中的仿射不變特征進(jìn)行提取,將目標(biāo)提取區(qū)域進(jìn)行標(biāo)準(zhǔn)化處理,形成全新的橢圓形區(qū)域,采用統(tǒng)一的參數(shù)形式進(jìn)行描述。另外,還需要對得到的區(qū)域統(tǒng)一進(jìn)行歸一化處理,形成圓形區(qū)域。同時(shí)借助SIFT對區(qū)域的組成結(jié)構(gòu)進(jìn)行描述,在此基礎(chǔ)上,結(jié)合歐式距離進(jìn)行粗匹配,將匹配不成功的匹配點(diǎn)刪除[11]。詳細(xì)的操作步驟如下所示:
優(yōu)先通過仿射不變量的方式對特征區(qū)域進(jìn)行轉(zhuǎn)換,形成橢圓區(qū)域。結(jié)合不同規(guī)格MSER特征區(qū)域內(nèi)的像素信息建立二階中心矩陣,同時(shí)將該區(qū)域調(diào)整為橢圓形區(qū)域,如公式(5)所示:

(5)
式中,X代表向量;R代表不規(guī)則區(qū)域;|R|代表不規(guī)則區(qū)域內(nèi)相似像素的總數(shù);E代表中心坐標(biāo)點(diǎn);T代表橢圓區(qū)域內(nèi)全部像素點(diǎn)數(shù)量。
在上述分析的基礎(chǔ)上,需要建立標(biāo)準(zhǔn)的橢圓方程,將兩種不同形式的特征參數(shù)采用標(biāo)準(zhǔn)化機(jī)制進(jìn)行描述,并且轉(zhuǎn)換為標(biāo)準(zhǔn)的橢圓參數(shù)模式。另外,還需要將屬性不同的特征進(jìn)行屬性統(tǒng)一。
為了對特征區(qū)域進(jìn)行描述,同時(shí)保持原有區(qū)域內(nèi)的內(nèi)容能夠順利進(jìn)行傳遞。結(jié)合特征點(diǎn)自相關(guān)矩陣M,將特征點(diǎn)xL和xR對應(yīng)的橢圓區(qū)域經(jīng)過歸一化處理形成圓形區(qū)域,具體的計(jì)算式為

(6)
經(jīng)過歸一化處理后,兩個(gè)特征區(qū)域之間的關(guān)系為
xL=RxR
(7)
將Hesssin-Affine和MSER獲取的橢圓區(qū)域經(jīng)過歸一化處理形成圓形區(qū)域,優(yōu)先通過SIFT計(jì)算主方向的方式計(jì)算獲取各個(gè)特征點(diǎn)的主方向,并對多重影像根據(jù)特征點(diǎn)進(jìn)行旋轉(zhuǎn),保持其旋轉(zhuǎn)不變的特性。結(jié)合Hesssin-Affine和MSER特征區(qū)域的優(yōu)勢,優(yōu)先采用SIFT描述目標(biāo)區(qū)域內(nèi)的全部向量,使多重影像具有旋轉(zhuǎn)不變特性,并且對光照以及噪聲等具有較好的抑制作用。所以,無論在任何位置都能夠進(jìn)行精準(zhǔn)地匹配。
為了提升匹配結(jié)果的準(zhǔn)確性,需要通過兩個(gè)不同的階段實(shí)現(xiàn)。第一階段將提取的全部多重影像特征向量進(jìn)行對比,獲取可信度最高的匹配點(diǎn);第二階段分析不同多重影像之間的約束關(guān)系,同時(shí)設(shè)定約束條件,將不滿足需求的特征向量剔除,獲取高精度的匹配對。詳細(xì)的操作步驟如下所示:
1)通過距離相似度的初始匹配:
當(dāng)?shù)玫诫S機(jī)兩幅多重影像的特征向量后,在多重影像中任意提取一個(gè)特征點(diǎn),同時(shí)獲取另外一個(gè)影像中相似的特征點(diǎn)。假設(shè)第一近距離和第二近距離之間的比例小于閾值,則說明兩者是匹配的。另外,多重影像線特征匹配率會(huì)隨著閾值的降低而增加。
2)基于核線約束的特征匹配:
核線約束在計(jì)算機(jī)視覺中也可以稱為極限幾何約束,主要采用基礎(chǔ)矩陣F描述任意兩幅多重影像之間的核線約束關(guān)系。
利用RANSANC算法對各個(gè)多重影像之間的關(guān)系進(jìn)行分析,進(jìn)而獲取基本矩陣F,結(jié)合矩陣完成基于核線約束的匹配。
為了驗(yàn)證所提基于仿射不變性的多重影像線特征匹配算法的有效性,選取文獻(xiàn)[3]方法和文獻(xiàn)[4]方法作為對比方法,進(jìn)行仿真實(shí)驗(yàn)測試。
為了實(shí)現(xiàn)多重影像的匹配,需要對各個(gè)算法的匹配性能進(jìn)行測試,實(shí)驗(yàn)優(yōu)先對比三種不同匹配算法的正確匹配對數(shù)量,詳細(xì)的實(shí)驗(yàn)結(jié)果如表1所示。

表1 不同視角下的正確匹配對數(shù)量
分析表1中的實(shí)驗(yàn)數(shù)據(jù)可知,當(dāng)視角開始增加,各個(gè)方法的正確匹配對數(shù)量開始呈下降趨勢,但是相比另外兩種方法,所提方法的正確匹配對數(shù)量明顯更高一些。
分析各個(gè)方法在不同實(shí)驗(yàn)次數(shù)下的正確匹配率,詳細(xì)的實(shí)驗(yàn)對比結(jié)果如圖3所示。

圖3 不同算法的正確匹配率仿真測試
分析圖3中的實(shí)驗(yàn)數(shù)據(jù)可知,所提算法的匹配結(jié)果明顯更好,同時(shí)具有較高的正確匹配率。
為了更進(jìn)一步驗(yàn)證所提算法的匹配性能,實(shí)驗(yàn)選取一幅多重影像作為測試對象,對各個(gè)算法的匹配性能進(jìn)行測試,詳細(xì)的實(shí)驗(yàn)結(jié)果如圖4所示。

圖4 不同算法的匹配結(jié)果測試分析
根據(jù)圖4可知,相比另外兩種算法,所提方法能夠更加精準(zhǔn)提取多重影像的線特征,進(jìn)而更好地進(jìn)行線特征匹配,獲取滿意的匹配結(jié)果。
在進(jìn)行多重影像線特征匹配的過程中,會(huì)存在遺漏匹配的情況,以下實(shí)驗(yàn)測試將漏匹配率設(shè)定為測試指標(biāo),詳細(xì)的實(shí)驗(yàn)對比結(jié)果如5所示。

圖5 不同算法的漏匹配率對比結(jié)果
分析圖5中的實(shí)驗(yàn)數(shù)據(jù)可知,相比另外兩種算法,所提算法的漏匹配率明顯更低一些,其漏匹配率始終低于5%。
為了更進(jìn)一步驗(yàn)證所提算法的有效性,以下測試三種不同算法的匹配效率,詳細(xì)的實(shí)驗(yàn)對比結(jié)果如圖6所示。

圖6 不同算法的匹配效率對比結(jié)果
分析圖6中的實(shí)驗(yàn)數(shù)據(jù)可知,由于所提算法在進(jìn)行多重影像線特征匹配之前,對影像進(jìn)行了邊緣檢測,并結(jié)合邊緣檢測結(jié)果進(jìn)行特征匹配,能夠有效優(yōu)化特征匹配流程,促使整個(gè)算法的匹配效率得到有效提升,明顯優(yōu)于另外兩種算法。
多重影像線特征匹配是目前三維重建過程中的難點(diǎn)和熱點(diǎn)話題,通過對現(xiàn)有算法的分析和總結(jié),提出一種基于仿射不變性的多重影像線特征匹配算法。實(shí)驗(yàn)測試結(jié)果表明,所提算法能夠有效提升匹配結(jié)果的準(zhǔn)確性和匹配效率,降低漏匹配率,更好地完成多重影像線特征匹配。
由于研究時(shí)間和精力有限,所提算法仍然存在一定的不足,后續(xù)將對其展開更加深入地研究。