胡 正,于 濤,王汝童
(北京化工大學 信息科學與技術學院,北京 100029)
在大尺寸加工視覺檢測中,常需要在大型構件的關鍵位置安裝靶標并拍攝相應圖像進行處理以實現(xiàn)測量工作。其中對于被測目標圖像的匹配處理,通過獲取不同圖像間內容的對應關系,為圖像拼接、目標追蹤乃至三維建模等后續(xù)重要應用提供相關依據。圖像匹配所使用的特征主要分為區(qū)域特征[1-2]、線特征[3-4]和點特征[5-6]。其中點特征又以其穩(wěn)定性好,不易受到噪聲、光照等外在因素影響的特性,在圖像匹配中較為常見。然而如SIFT、SURF等點特征匹配方法往往存在內存資源占用多、計算過程繁瑣及實時性不高等問題,在視覺測量任務中制約了整體性能,因此有必要研究快速且匹配可靠的圖像點特征匹配算法。
點特征匹配首先檢測圖像中的關鍵點,結合其所處圖像空間給予特定描述,再根據描述符間相似度的比較實現(xiàn)圖像匹配。這其中具有代表性的是由Lowe[5]提出的SIFT特征,其主要思想是檢測高斯差分圖像中的斑點特征,然后由周圍像素梯度賦予主方向并形成128維描述符,依據特征描述之間的歐式距離進行匹配。盡管SIFT特征魯棒性較好,但整體計算量大且特征維數偏高。之后的SURF特征[6]采用盒式濾波器卷積結合積分圖像加快運算速度,根據Haar小波響應確定特征描述,使算法耗時有所縮短。由于對圖像角點特征的檢測速度相比之前算法的斑點特征更快,于是BRISK[7]、ORB[8]等采用FAST角點特征為基礎,并根據模板進行BRIEF描述,但又存在特征點邊緣性強、利用圖像信息單一的缺點。
之后點特征匹配的改進主要包括特征點檢測和特征描述的改進。關于特征點檢測的改進,陳夢婷等[9]將Harris角點和SIFT特征描述結合起來進行遙感圖像匹配;張子龍等[10]和彭勃宇等[11]則分別將SURF匹配中的特征點改用為FAST和SUSAN角點以提升整體算法的實時性;根據中心環(huán)繞極值特征(CenSurE)[12]可快速檢測且較穩(wěn)定的特點,許允喜等[13]在此基礎上進行SURF描述以完成景象匹配,上述幾種方法盡管在特征點檢測上提升了速度,但對應描述的計算量依然較高。而在特征描述方面,LBP特征的引入使得描述更為高效,如鄭永斌等[14]基于SIFT方法檢測特征點,在鄰域內采用旋轉不變LBP特征結合相對距離進行描述;也有算法通過特定模板[15]選取鄰域點計算LBP值用于描述特征點,減少描述冗余信息,不過LBP特征方法只能實現(xiàn)局部紋理的簡單描述;形式簡潔的二進制描述符在描述特征點時也常被應用,Cao等[16]提出二進制的ODG描述符,具有較好的光照不變性;吳鵬等[17]不僅在尺度空間構建中運用高斯引導濾波,而且將局部差分二進制(local difference binary,LDB)[18]作為特征描述,使之性能優(yōu)于常用的BFSIFT算法,但該過程中會損失部分圖像信息。此外也有方法通過加入其他處理以實現(xiàn)整體改進,為進一步利用顏色信息,梁煥青等[19]提取圖像的顏色不變量進行灰度變換,再結合AKAZE特征實現(xiàn)匹配,不過灰度范圍只能由經驗給定;羅天健等[20]則融合顏色不變量邊緣特征和CS-LBP紋理特征組成融合特征圖用于SURF特征匹配,從而提升匹配魯棒性,但由于融合更多特征導致算法復雜程度增加。
為了提升對被測目標圖像匹配的速度并確保匹配精度,本文基于CenSurE-star和LDB完成對圖像中特征點的檢測與描述,并運用相應準確匹配策略逐步提純所得到的匹配點對,通過實際圖像進行實驗并分析性能,探索一種快速準確的被測目標圖像匹配算法。
特征點是實現(xiàn)圖像點匹配的基礎。作為被安裝在構件上的靶標,其上主要包含簡單顯著的幾何線條特征及紋理。對于實現(xiàn)間接測量的被測目標圖像中的特征點檢測,采用相關角點特征雖然檢測速度較快,但所檢測到的點易集中于靶標線條邊緣處,導致匹配效果不佳;而常見的斑點特征有助于得到更多由靶標紋理產生的特征點,卻在計算上相對復雜。CenSurE特征通過構建雙極性濾波器對圖像濾波,實現(xiàn)對用于檢測斑點特征的經典高斯拉普拉斯算子的近似,從而更快速地提取較為穩(wěn)定的圖像斑點特征。雙極性濾波器包含正負兩極,分別代表+1和-1。常用的雙極性濾波器為DOB濾波器,如圖1所示。
圖1 DOB濾波器
方形的DOB濾波器可以直接利用積分圖像,計算速度快。對于在尺度n下檢測特征點的DOB濾波器,其外核邊長為4n+1,內核邊長為2n+1。為使其直流分量為0,內核權值In和外核權值On的關系[12]為:
On(4n+1)2=In(2n+1)2
(1)
相鄰尺度間內核權值In和In+1[12]則滿足等式:
In(2n+1)2=In+1(2(n+1)+1)2
(2)
受到形狀限制,DOB濾波器在圖像發(fā)生旋轉時對相應特征點的檢測性能表現(xiàn)不佳。因此如圖2所示將兩個大小不同的DOB濾波器疊加起來構成包含內外兩層星型的濾波器CenSurE-star用于圖像特征點的檢測。步驟如下:
圖2 星型濾波器CenSurE-star
1)采用星型濾波器在圖像濾波中計算當前中心像素響應值,其計算公式為:
(3)
式中,R為像素響應值,∑+和∑-分別為淺色的正極和深色的負極對應的灰度和,S+和S-分別為正極和負極的面積大小。在星型濾波器濾波時,利用積分圖像計算兩個正方形灰度和,求和作為對應星型內的灰度和,同時星型面積也由構成其的兩正方形面積和確定,根據內外星型情況得到正負極的灰度和與面積,實現(xiàn)響應值的計算。
而濾波器的尺寸大小反映當前的特征點檢測尺度,僅通過改變尺寸就可以實現(xiàn)在不同尺度下的檢測,設組成星型的兩個正方形中無旋轉的邊長為2n,旋轉45°的對角線長度為3n,濾波器尺寸與檢測尺度的關系如表1所示。
表1 星型濾波器尺寸與檢測尺度關系
2)為得到可重復性更好、更穩(wěn)定的特征點,選取各像素在多尺度下響應值R中的最大值為該像素的最終響應值Rf,組成與圖像矩陣同等大小的響應矩陣N,再對N進行t×t范圍內的非極大值抑制,將所得到的極值作為候選特征點。
3)最后針對候選特征點計算Harris矩陣的跡的平方與其行列式的比值,計算公式為[12]:
(4)
(5)
式中,Ha為對應Harris矩陣,Lx和Ly為響應值矩陣中關于水平和垂直方向的導數,k為Ha跡的平方與行列式的比值。排除候選特征點中的比值k大于閾值的直線型特征點,這里閾值被設定為10[5],剩余點即為最終所檢測的CenSurE-star特征點。
由于被測目標上存在許多相似的圖像區(qū)域,因此需要采用描述能力相對較強的特征描述方式。Yang等[18]在2014年提出LDB特征描述,最初被用于在移動設備上進行圖像匹配。在構建描述時,LDB作為二進制特征描述相比SIFT、DAISY等計算更簡單,占用內存資源更少;而將像素灰度強度、水平和垂直圖像梯度共同作為描述依據的特性,使其相比僅基于鄰域像素灰度強度比較的簡單描述LBP等可區(qū)分性更好,因此將其用于對被測目標圖像中的CenSurE-star特征點進行描述。
在選定圖像區(qū)域中劃分若干相同大小的圖像子塊,對各子塊中的灰度強度平均值利用積分圖像進行加速運算,同時引入水平方向和垂直方向梯度反映灰度強度的變化情況,共同組成子塊整體特征。在計算完整體特征之后,抽選該區(qū)域中的子塊對并比較兩子塊特征的大小,以形成相應描述符。計算公式為[18]:
(6)
(7)
(8)
如果劃分子塊面積較小,可以更細致地反映區(qū)域細節(jié)特征,但是諸如圖像噪聲等小變化會較容易影響到描述符,從而使所計算的相似度發(fā)生明顯變動,導致特征描述魯棒性不夠;而如果劃分子塊面積偏大,可以很好地減輕干擾因素對描述符的影響,但同時對圖像中特征的反映會趨于簡略,降低了特征描述的可區(qū)分性。因此LDB采用了多重大小子塊的策略,對選定區(qū)域進行多次不同大小的子塊劃分,將每次劃分所得字符串描述連接起來形成初步的特征描述符。由于初始描述符的維數較高且相關性較大,通過相應的Adaboost算法對其降維得到最終的LDB特征描述符。
由不同尺寸的星型濾波器對被測目標圖像濾波并結合計算,可檢測出圖像中對應各尺度的CenSurE-star特征點。對于每個特征點確定特定圖像區(qū)域,根據灰度質心法由圖像矩估計該特征點的主方向。
(9)
式(9)表明特征點主方向θ即為相應圖像矩m01和m10之比的反正切值。按照主方向旋轉之后,對其特征點鄰域進行2×2、3×3和4×4等多次大小不同的分塊,從中選取子塊對計算二進制字符串以得到原始描述符,然后通過Adaboost算法去相關并降維得到256維的LDB二進制描述符,實現(xiàn)對被測目標圖像的特征構造。
由于特征描述的形式為二進制,因此在衡量特征點間的相似度時將漢明距離作為依據。漢明距離的計算方法是比較描述符中各對應位是否相同,如果不同則距離加一,兩特征點的描述符間漢明距離越大,則相似度越小。匹配時采用簡單易行的暴力匹配搜索,對參考圖像中的每個特征點與待匹配圖像中的特征點逐個進行相似度計算,搜索出與其漢明距離最近的待匹配圖像特征點。特征描述符間的漢明距離計算公式為:
lh(a,b)=∑[a(i)?b(i)]
(10)
式中,a和b為圖像特征點對應的描述符,i則表示當前描述符中的具體位數,?為異或運算符,對兩個描述符逐位做異或運算并累加結果,計算出之間的漢明距離lh,用于衡量兩特征點間的相似度。
對被測目標圖像特征點匹配情況進行交叉驗證,即在單方面得到與參考圖像上一特征點相似度最高的待匹配圖像特征點后,反過來判斷與該待匹配圖像特征點最相似的參考圖像特征點是否為之前的特征點,只有在兩點互相似的情況下才接受該匹配。在計算漢明距離并結合交叉驗證得到初始匹配之后,為提升準確性需要進一步對其進行篩選,其具體步驟如下:
1)統(tǒng)計初始匹配中對應的最大距離,通過設定距離閾值保留其中描述符間距離與最大距離的比值不大于閾值的匹配點對,實現(xiàn)對初始匹配的粗篩選,通常閾值被設定在0.6~0.8之間;
2)從經過粗篩選后的匹配集中隨機抽選匹配以估計相應的圖像變換模型,其中所抽選的匹配要求不存在多點共線的情況;
3)計算其他匹配在所得估計模型下的投影誤差,統(tǒng)計符合估計模型的匹配數,并更新當前迭代次數;
4)判斷當前次數是否達到最大迭代次數,否則重復第2)、3)步;
5)選擇對應匹配數最多的估計模型作為準確的圖像變換模型結果,將與該結果誤差較大的匹配視為誤匹配并予以剔除。
通過距離閾值進行初始匹配的粗篩選,再運用RANSAC算法對篩選后的匹配集估計出合理的圖像變換模型,根據變換模型結果將剔除圖像匹配集中的絕大多數誤匹配,從而得到較為準確一致的被測目標圖像特征點最終匹配結果。圖3為基于CenSurE-star和LDB的匹配算法的整體流程圖。
圖3 基于CenSurE-star和LDB的點特征匹配流程
實驗中所使用的計算機配置是Intel Core i7-7700HQ 2.8 GHz,16 G內存,操作系統(tǒng)為Windows10,運行平臺為Visual Studio 2017。而被測目標圖像是在計算機視覺測量實驗過程中采集的典型靶標圖像。對其進行圖像匹配實驗,從算法魯棒性、匹配準確率和耗時等方面對本文算法的匹配性能進行分析。
單應矩陣反映圖像中某點在另一幅相關圖像中的所處位置,設兩幅圖像的單應矩陣為H,點(x1,y1)和點(x2,y2)分別是理論上在兩幅圖像上對應的兩點,其關系可表示為:
(11)
利用圖像間的單應變換關系H,對之前所得匹配的準確與否進行判斷,匹配誤差由式(12)計算得到:
(12)
(13)
所選擇的三組靶標圖像主要體現(xiàn)在圖像信息獲取過程中受環(huán)境影響而產生的光照、噪聲、模糊變化等情況,同時圖像中也存在一定旋轉尺度上的差別,通過本文算法進行圖像匹配,所得結果如圖4~6所示。
圖4 圖像光照變化匹配結果
圖5 圖像噪聲變化匹配結果
圖6 圖像模糊變化匹配結果
從3組被測目標圖像匹配結果可直觀看出,即使圖像中存在光照不同、噪聲干擾和圖像模糊等情況,采用本文算法依然可以檢測到兩幅圖像中相關聯(lián)的特征點,并結合對應的特征描述將其匹配關聯(lián)。
同時統(tǒng)計相應的匹配準確率和運行時間,然后在相同實驗條件下采用3種常見算法與其進行比較。這3種算法分別為采用圖像斑點特征且應用廣泛的SIFT算法和SURF算法,以及描述符同樣為二進制形式的BRISK算法,所得結果如表2所示。
由表2中數據可知,在對反映圖像典型變化的被測目標圖像的匹配中,本文算法在運行時間上均明顯低于SIFT、SURF以及BRISK等常見算法,分別為1.872 s、2.366 s和2.971 s。其原因主要在于本文算法僅通過調整星型濾波器尺寸大小完成對圖像中不同尺度下相關斑點特征的檢測,而這些常見算法需要構建圖像金字塔才能實現(xiàn)相應檢測;而且二進制型的LDB特征描述符可以通過計算漢明距離快速度量特征間相似度,相比浮點型描述符在匹配效率上更優(yōu)。
表2 被測目標圖像匹配準確率與運行時間對比
對于點特征的準確匹配,在經過距離閾值的粗篩選后,受到靶標中相似區(qū)域較多的影響,4種匹配算法的準確率均表現(xiàn)不佳,普遍低于75%,需要進一步通過RANSAC算法估計變換模型以剔除誤匹配。在RANSAC誤匹配剔除后,光照變化組中SIFT算法的準確率在四種方法中最高,達到99.55%,本文算法和BRISK算法的準確率則低于SIFT算法,分別為99.49%和99.19%,SURF算法準確率最低;而在噪聲變化組中,本文算法為99.38%,同樣僅次于SIFT算法;在模糊變化組中則是本文算法和SIFT算法的準確率均達到了100%。由此可見在與常見算法的比較中,本文算法匹配準確率依然處于相對較高的水平。結合圖4、圖5和圖6中三組圖像的匹配結果,說明本文算法對于圖像中光照、噪聲和模糊變化均具有一定的魯棒性。
本文設計了一種CenSurE-star特征與LDB描述符相結合的被測目標圖像匹配算法。由CenSurE-star算法可以快速提取被測目標圖像中的穩(wěn)定特征點,在計算圖像矩提取特征點主方向的基礎上運用LDB描述符實現(xiàn)特征描述,再根據描述符進行暴力匹配搜索和交叉驗證得到初始匹配,通過距離閾值和RANSAC算法進一步剔除其中的誤匹配點對。經過相關實驗證明,該算法對匹配圖像間存在的光照、噪聲及模糊等典型變化具有魯棒性,相比一般算法能在縮短圖像匹配耗時的同時確保匹配準確率,從而適用于對匹配速度有一定要求的視覺檢測場合。