一種結(jié)合點特征和線特征的圖像匹配算法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于圖像匹配、計算機視覺及數(shù)字圖像處理技術(shù)領(lǐng)域,具體涉及一種結(jié)合 點特征和線特征的圖像匹配算法。
【背景技術(shù)】
[0002] 隨著科學技術(shù)尤其是計算機技術(shù)的迅速發(fā)展,景象匹配識別技術(shù)已經(jīng)成為信息處 理領(lǐng)域極其重要和基本的技術(shù),特別是在航空航天、無人機導航以及導彈末制導等領(lǐng)域具 有廣泛的應用價值。
[0003] 景象匹配識別是將飛行器現(xiàn)場拍攝的實時圖與事先制備好的模板圖進行匹配識 別的過程。通過圖像識別以確定飛行器所處位置,從而能修正航向偏差。目前采用的模板 圖主要來源于衛(wèi)片或航片,實時圖為機載相機(或彈載相機)拍攝的下方圖像。
[0004] 實時圖一般為紅外圖像,而模板圖可能為可見光或紅外圖像。模板圖與實時圖因 為拍攝時間、成像器不同,其灰度紋理與實時圖通常會有較大差異。在現(xiàn)實場景中,實時圖 內(nèi)的物體還會受光照,陰影,云霧遮擋等影響,其灰度紋理特性會發(fā)生較大變化。特別是在 紅外圖像中,即使相同的物體其灰度特征在一天中的不同時段也會發(fā)生變化。
[0005] 景象匹配識別中通常會根據(jù)模板圖和部分關(guān)于材質(zhì)的先驗知識,通過聚類的方法 生成反映模板圖中較為顯著穩(wěn)定的結(jié)構(gòu)特征的二值(多值)模板。二值(多值)模板應用 到復雜場景的匹配中,能在統(tǒng)計意義上部分消除適應灰度變化帶來的影響,但是會出現(xiàn)重 復模式較多,描述能力不夠的問題。
[0006] 根據(jù)參與運算的數(shù)據(jù)結(jié)構(gòu)的不同,圖像的匹配識別算法有兩個研宄方向:基于 特征的匹配識別方法和基于區(qū)域的匹配識別方法。其中,著名的基于點特征的匹配識別方 法包括尺度不變特征轉(zhuǎn)換(Scale-invariant feature transform,SIFT),快速魯棒特征 (Speed-Up Robust Features,SURF),標定方向的 BRIEF 算法(ORiented Brief^C(RB)tjSIFT 類算法適用于描述紋理豐富的圖像,在簡單二值模板中,紋理信息較少,線條簡單,可提取 的角點數(shù)量較少,而且SIFT類算法尋找主方向時依賴局部梯度,主方向定位不準確會影響 描述子的描述能力。
[0007] 常用的邊緣特征提取方法包括:Robert邊緣檢測算子、高斯一拉普拉斯算子(LOG 算子)、Canny算子、Hough變換等。邊緣匹配算法相對角點匹配發(fā)展較慢,當前邊緣匹配算 法易受噪聲影響,匹配精度和抑制噪聲能力通常不能兼顧,復雜場景下邊緣提取可能不穩(wěn) 定,影響匹配結(jié)果。
[0008] 基于區(qū)域的匹配識別方法又稱為模板匹配法,是一種常見的圖像匹配算法,最常 用的基于區(qū)域的匹配方法包括:灰度互相關(guān)算法和互信息匹配算法等,主要利用區(qū)域的灰 度信息或者灰度信息的某種變換進行匹配識別。它的發(fā)展比較成熟,穩(wěn)定性好、可靠性高, 被廣泛應用于模式識別、飛行器導航等領(lǐng)域?;趨^(qū)域的匹配識別在區(qū)域的選擇方面帶有 較強的先驗,在模板較大時運算耗時較大。
【發(fā)明內(nèi)容】
[0009] 本發(fā)明提出一種結(jié)合點特征和線特征描述子的圖像匹配算法,目的在于通過使用 角點鄰域的線特征對點特征的多個候選匹配點進行篩選,獲得更好的在復雜場景中的匹配 定位能力。
[0010] 為實現(xiàn)本發(fā)明的目的,本發(fā)明提供了一種結(jié)合點特征和線特征描述子的圖像匹配 算法,所采取的方法如下步驟:
[0011] (1)分別對模板圖和實時圖在多尺度下提取角點
[0012] 分別對模板圖和實時圖構(gòu)建尺度金字塔圖像。構(gòu)建尺度金字塔圖像時,保持圖像 大小不變,通過改變高斯模糊尺寸和用于計算haar響應窗口的大小以獲得每一層不同尺 度的金字塔圖像。在每層金字塔圖像中,使用hessian矩陣計算每個像素的局部曲率P,將 每個像素點與其尺度鄰域上的α個點的局部曲率p (通常取3個尺度鄰域上的26個點, 即α通常取為26)進行比較,如果該像素點的局部曲率P是這α個點中的最大值或者最 小值,則保留下來,作為初步選擇的角點。
[0013] 對初步選擇的角點,根據(jù)其局部曲率P使用雙閾值(tl,t2,且tl〈t2)進行篩選, 獲得最終選定的角點。篩選過程中,局部曲率P小于閾值tl的角點則直接舍去,局部曲率 P大于閾值t2的角點則直接保留,局部曲率P大于閾值tl但小于t2的角點,如果在其鄰 域能提取出較多的長邊緣(說明該角點鄰域能描述足夠的結(jié)構(gòu)特征),則保留該角點,否則 將其舍去。
[0014] (2)獲得實時圖和模板圖角點周圍的邊緣集合
[0015] 遍歷步驟⑴獲得的最終選定的角點,分別從實時圖和模板圖角點的β鄰域(β 鄰域通常取為IOs半徑鄰域,s為該角點所在尺度的像素單位)開始提取邊緣并進行生 長,獲得角點周圍的邊緣集合。獲得邊緣集合過程中,將屬于某邊緣的像素點標記為η(η 表示該像素屬于被找到的第η條邊緣曲線),將處理過但被認為不屬于邊緣的像素標記為 NotEdge。如果某角點鄰域包含已被標記為η的像素點,則直接將第η條邊緣曲線并入該角 點的邊緣集合,不再從該像素開始生長。處理過的像素點不再被處理。
[0016] 將提取出來的邊緣點坐標以曲線為單位,存儲到鏈表中,使用數(shù)組M(索引即為上 述的η)對鏈表進行索引。角點周圍的邊緣集合使用鏈表表示。鏈表內(nèi)的值為其包含的邊 緣曲線在數(shù)組M中的索引。
[0017] (3)計算角點的點特征描述子
[0018] 利用公式(1)或(2)描述步驟(1)獲得的最終選定的實時圖與模板圖角點的類 ORB點特征描述子。計算類ORB點特征描述子過程中,首先在角點鄰域選擇一定數(shù)量的圖塊 對(即兩個圖塊組成的集合),計算每個圖塊內(nèi)像素的灰度值之和,比較每個圖塊對的灰度 值之和,根據(jù)比較的結(jié)果進行編碼,所有圖塊對比較結(jié)果的編碼組成了該角點的類ORB點 特征描述子(可以根據(jù)標準ORB算法建議的方式選擇512個圖塊對,所有圖塊都在該角點 所在尺度上獲取)。每個圖塊對的編碼方式如下公式所示:
[0020] 其中t為根據(jù)對實時圖對比度要求選擇的閾值,P(X)和P (y)表示選擇的圖塊內(nèi) 像素的灰度值之和。如果只考慮材質(zhì)反差(例如紅外圖像),可將編碼Ol和10合并為1, 即公式為:
[0022] 每個圖塊對i計算出一個τ i,K個圖塊對比較結(jié)果的編碼組成了該角點的點特征 描述子[τ 0,τ !,…,τ κ-J °
[0023] (4)邊緣集合匹配相似度計算
[0024] 利用最小截平方 Hausdorff 距離(Least Trimmed Square-Hausdorff Distance, LTS-HD)描述步驟(2)獲得的實時圖和模板圖的邊緣集合的匹配相似度。LTS-HD將點到 點集按最小坐標距離(使用歐式距離描述)從小到大排序,取前h個的平均值作為單向 Hausdorff 距離。
[0025] 設(shè)點集A為實時圖某角點周圍邊緣集合內(nèi)像素點組成的集合,點集B為模板圖某 角點周圍邊緣集合內(nèi)像素點組成的集合,其像素點數(shù)量分別為NjPN b。計算點集A中所有 點與點集B內(nèi)的點的最小坐標距離,并從小到大進行排序,得到有序集合X。其中,dB( ai) (1)表示點集A中的點a jlj點集B內(nèi)的點的最小距離在所有點集A中其他點的最小距離中 排序為第i位。
[0027]同理計算點集B中所有點與點集A內(nèi)的點的最小坐標距離,并從小到大進行排 序,得到有序集合Y。其中,(1Α〇^)ω表示點集B中的點bjlj點集A內(nèi)的點的最小距離在所 有點集A中其他點的最小距離中排序為第i位。
[0029] 設(shè)K = f\XNA,L = f2XNB,fJP f 2分別為點集像素數(shù)量N,Nb對應的比例系數(shù), 且滿足〇〈4〈1,〇〈以1。定義六和8之間的單向距離1^^,8)和1^?,)為:
[0032] LTS-HD距離定義為:
[0033] H (A, B) = max [hLTS (A, B), hLTS (B, A) ] (5)
[0034