?

基于紋理增強的ORB 特征點提取與匹配算法

2024-01-05 07:21胡茂偉
關鍵詞:直方圖紋理梯度

胡茂偉

(深圳市悅動天下科技有限公司,深圳 518000)

隨著計算機視覺和圖像處理技術的快速發展,特征點提取和匹配算法在各種視覺任務中扮演著重要的角色。其中,ORB[1]算法作為一種經典的特征點提取和描述算法,具有高效性和魯棒性的優勢,在圖像特征匹配、物體識別和視覺SLAM 等領域被廣泛應用。該算法結合了FAST[2](Features from Accelerated Segment Test)關鍵點檢測和BRIEF[3](Binary Robust Independent Elementary Features)描述子,具有良好的實時性能。然而,ORB 算法在處理復雜紋理場景時也存在一些挑戰。 具體而言,當紋理不明顯或紋理變化較大時,傳統的ORB 算法容易失效,導致特征點提取和匹配的準確性下降。 針對這一問題,本文探索了基于紋理增強和顏色增強的ORB 特征點提取與匹配算法,提高ORB 算法在復雜紋理場景下的性能和魯棒性。

1 相關工作

在改進ORB 特征點提取和匹配算法的領域,研究者們提出了許多創新的方法和技術。BRISK[4](Binary Robust Invariant Scalable Keypoints)是一種新的關鍵點檢測和描述子生成方法,通過選擇不同的采樣點和采樣模式,提高了特征點提取和匹配的性能和魯棒性。FREAK[5](Fast Retina Keypoint)是另一種對ORB 的改進,它使用像素的二進制特征來描述關鍵點,但與ORB 中BRIEF不同的是,FREAK 在描述子生成過程中考慮了關鍵點的尺度和旋轉信息,提高了描述子的可靠性和魯棒性。 ORB-SLAM 系列[6]是一種基于單目相機的同時定位與地圖構建(SLAM)系統。其利用ORB 特征提取和描述符匹配來進行實時的相機定位和地圖構建,同時通過優化位姿和地圖點云來提高定位和重建的準確性。 ORBSLAM2 引入了新的局部地圖和回環檢測機制,以提高地圖構建和定位的準確性。它還支持多種類型的相機,包括單目、雙目和RGB-D 相機,從而擴展了適用范圍。祝曉軒等人[7]提出在特征點匹配時,使用雙向匹配過濾和最小匹配點距離倍數判別剔除誤匹配,進而改進原有算法在弱紋理環境下運行不穩定的問題。王傳傳等人[8]針對ORB 算法不具備尺度不變性的問題,提出了一種動態跟蹤尺度補償的策略,對其算法進行優化。Ma 等人[9]提出了一種利用動態閾值和改進的四叉樹方法的均質化ORB 算法,在特征點提取階段,利用了新的動態局部閾值計算方法,以增強算法在均勻區域提取特征點的能力。Xie 等人[10]針對傳統的ORB 算法對光照引起的曝光不足或曝光過度的圖像匹配效果較差的問題,提出將自適應直方圖均衡與ORB 算法相結合的思想,以獲得更好的特征點質量和匹配效率。劉明珠等人[11]針對傳統ORB 算法尺度不變性較差的問題,提出了基于圖像金字塔的ORB算法,并得出了基于高斯圖像金字塔的ORB 算法具有更好的準確率的結論。

盡管ORB 算法已經被設計為高效的特征點提取和描述子生成算法,但在處理大規模數據或復雜場景時,仍可能存在速度和效率的挑戰。改進的算法需要更好地處理大規模和實時應用的能力,以滿足不同領域的需求[12]。此外,ORB算法使用二進制描述子來表示特征點,這種簡化的描述子可能在復雜場景下丟失一些細節信息,在極大尺度變化或非剛性變換的情況下,仍然存在改進的空間。

本文提出的特征增強策略主要包括紋理增強預處理、ORB 特征點提取和特征點匹配優化三個部分。

2 改進的ORB 特征點提取

ORB 算法使用FAST 角點檢測器在增強后的圖像中檢測出候選的關鍵點。隨后,計算每個關鍵點周圍像素的梯度方向,以確定關鍵點的主方向。在每個關鍵點周圍的一組固定大小的區域內,采用BRIEF 描述子來描述關鍵點的特征。由于圖像已經過紋理和顏色的增強處理,這些描述子能夠提供更為準確和魯棒的特征表示。

本文所提的特征增強策略為ORB 算法提供了一個新的視角,通過在特征提取前對圖像進行紋理和顏色的增強,可以有效地改善ORB 算法在處理復雜紋理和顏色變化大的圖像時的表現。

2.1 紋理增強預處理

為了提高特征點的精確度,本文提出了基于自適應直方圖均衡化(Contrast Limited Adaptive Histogram Equalization,CLAHE)的ORB 特征點提取算法CLAHE-ORB,自適應直方圖均衡化是一種用于改善圖像對比度的技術,特別是在存在不同照明條件的情況下。CLAHE 通過分析圖像的局部區域來避免過度增強噪聲,與傳統的直方圖均衡化不同,它不是在整個圖像上應用,而是在圖像的小區域上應用。每個小區域都獨立地進行直方圖均衡化。

首先,將圖像劃分為大小相同的非重疊區域。 通常,這些非重疊區域的大小通常是8×8,16×16 或32×32。 計算直方圖和累積分布函數,對于每個tile,計算其直方圖和累積分布函數。如果直方圖中的某個bin 超過了預定義的對比度限制值,則將超過的像素均勻地分配到其他bins中。使用修改后的直方圖計算每個非重疊區域的均衡化查找表。對于每個非重疊區域,使用相應的查找表來映射其像素值,以獲得均衡化的圖像。在非重疊區域之間的邊界處,需要通過雙線性插值來獲得最終的像素值。

本研究分別利用兩種方法與ORB 進行了特征點提取,測試用圖全部來自Oxford 公開測試圖集,該圖集包括ubc、bikes、leuven、graf 等圖像。對于ubc 場景的特征點分布如圖1 所示,可以看出高波ORB 提取的特征點數量為979,CLAHEORB 的特征點數量超過1 000。

圖1 高波ORB 與CLAHE-ORB 特征點對比

另一方面,高通濾波得到的特征點的平均響應值為0.000 13,CLAHE 得到的特征點的平均響應值為0.003 9,從平均響應值來看,CLAHE 得到的特征點的質量更高,響應值更高表示特征點的質量更高。從分布圖來看(圖2),CLAHE 得到的特征點在圖像上的分布也相對更均勻。

圖2 高波ORB 與CLAHE-ORB 的特征點分布

接下來,對CLAHE 參數設定進行分析,本研究通過設置500 特征點閾值和1 000 特征點閾值,開展了參數的平均響應時間實驗,通過對不同的clipLimit 和tileGridSize 值(見表1)進行分析可知,在這些參數組合中,clipLimit(簡寫為Limit)為10.0,tileGridSize(簡寫為S)為(16,16)的組合得到了最高的平均響應值0.005 9,表示此組合下得到的特征點質量最高。雖然所有的參數組合都得到了1 000 個特征點(設定的特征點數量上限),但平均響應值的差異反映了特征點質量的差異。

表1 基于CLAHE 增強的特征點響應值分析

在此基礎上,本文在leuven 圖像上提取的ORB 特征點的結果如圖3 所示。圖3(a)顯示了傳統ORB 上的特征點,圖3(b)顯示了應用了最優CLAHE 參數后的圖像上的特征點。從圖中可以看出,應用CLAHE 后的圖像上的特征點數量有所增加,而且分布也相對更均勻。 這意味著CLAHE 可以幫助ORB 算法在圖像中發現更多的特征,從而提高特征匹配和圖像識別的準確性。

圖3 leuven 圖像上的ORB 特征點

2.2 顏色增強預處理

在紋理特征增強的基礎上,進一步通過顏色特征增強來選擇和突顯具有較大顏色梯度的區域。這種方法不僅可以進一步提高特征點的檢測和匹配準確性,而且可以提供更豐富的顏色信息,能夠為特征匹配提供更多的依據。 顏色增強策略通過局部窗口內梯度方差的動態閾值來選擇具有較大顏色梯度的區域。具體過程如下:

(1)計算RGB 圖像的梯度。

(2)計算梯度方差來評估紋理的強度。

(3)根據梯度方差計算動態閾值以選擇要增強的區域。

(4)應用顏色增強公式增強圖像的顏色。

使用已有的Sobel 算子計算圖像在水平方向x和垂直方向y上的梯度?x和?y。 然后計算圖像的梯度幅值G:

對于每個像素,以窗口為中心計算窗口內梯度幅值的方差Var,公式(2)如下:

其中,mean 是平均值。

根據計算得到的梯度方差,設置動態閾值T。較大的閾值可以增強顏色的差異,使得特征點在紋理較大的區域更加突出;而較小的閾值可以減小顏色的差異,使得特征點在紋理較小的區域更加平滑。最后,運用顏色增強公式(3),對局部區域進行增強。

其中,α是增強系數;C是原始顏色值;C′是增強后的顏色值;Var 是局部梯度方差。

圖4 為graf 的顏色特征增強計算。從圖中可以看出,顏色越亮表示該區域的顏色梯度越強。

圖4 graf 顏色特征增強計算

2.3 實驗與分析

本實驗所用測試用圖全部來自Oxford 公開測試圖集。首先,對圖集中的graf 和ubc 兩幅圖像進行改進的ORB 特征提取,如圖5 所示,原始ORB 特征點為紅色,增強后圖像特征點為綠色點,圖5(c)為改進前后的比較??梢钥吹礁倪M前后兩者之間的特征點分布有所不同,特別是在某些區域,增強后的圖像可能會檢測到更多的特征點,且特征點的位置有所變化,這種分散的特征點進行特征匹配將更有優勢。

在對ubc 和graf 圖像執行特征點檢測的過程中,紋理增強起到了重要作用。通過紋理增強,圖像中不太明顯的紋理特征得到了突顯,這可能導致檢測到更多的特征點。特別是在那些原本被忽略的微小紋理區域,紋理增強使得這些區域成為特征點檢測的重點,從而增加了特征點的數量。

然而,特征點的減少也是可能發生的。過度的紋理增強可能會使圖像變得過于復雜,某些原本清晰的特征點可能會變得不再明顯,或者被其他強烈的紋理特征所掩蓋。這種情況可能會在紋理多變或過于復雜的場景中出現,導致特征點的減少。 圖6 和圖7 展示了紋理增強與顏色增強前后特征點的位置及數量變化,bikes的特征點經過紋理增強為443,經過顏色增強后為488。圖8 動態展示了不同增強系數α下特征點的變化情況。

圖6 bikes 與leuven 紋理增強與顏色增強ORB 效果

圖7 bikes 紋理增強與顏色增強特征點變化

圖8 ubc 圖像不同參數下的特征點變化

3 特征點匹配優化

在進行特征點匹配時,本文提出了一種優化策略,不僅考慮特征點的局部紋理相似度,還考慮它們的尺度一致性??梢源_保匹配的特征點既在紋理上相似,又在尺度上相近,有望提高匹配的準確性和魯棒性。

紋理相似度度量有助于區分具有相似外觀但不同尺度的物體。尺度一致性度量有助于排除具有相似紋理但尺度差異很大的物體的匹配。這兩個度量的綜合考慮可以進一步提高匹配的精確性,使得在復雜紋理場景中的ORB 特征點匹配更加魯棒。

3.1 紋理相似度檢測

為了準確度量兩個特征點之間的紋理相似度,本文采用了一種基于傳統圖像處理技術的紋理相似度度量方法。

采用LBP(Local Binary Pattern)方法提取每個特征點周圍區域的紋理特征。對圖像中的每個像素,比較其值與周圍8 個鄰域像素的值。如果中心像素的值大于或等于鄰域像素的值,則賦值為1,否則賦值為0。按照順序連接這些二進制位,得到一個二進制數。 將該二進制數轉換為十進制數,得到該像素的LBP 值。統計每個LBP 值的頻率,得到一個直方圖,將LBP 直方圖歸一化,使其總和為1,以消除圖像區域大小的影響,然后采用直方圖的交集來衡量它們的相似度。直方圖交叉的公式為:

其中,H1和H2是要比較的兩個直方圖;i是直方圖的二進制索引。通過這種基于傳統圖像處理技術的紋理相似度度量方法,可以在不依賴深度學習的情況下,準確度量兩個特征點之間的紋理相似度,從而提高特征點匹配的準確性和魯棒性。

3.2 尺度一致性度量

對于任意兩個匹配的特征點,計算它們在特征金字塔中的尺度差異。然后定義一個尺度一致性得分(高斯函數),公式如下:

其中,s1和s2是兩個匹配特征點在特征金字塔中的尺度;σ是一個調節參數。該得分反映了兩個匹配特征點在尺度上的一致性,本實驗中σ=0.5。尺度差越小,尺度一致性得分越接近1,表示兩個特征點在尺度上更一致。 反之,尺度差越大,尺度一致性得分越接近0,表示兩個特征點在尺度上不一致。

實施紋理相似度和尺度一致性度量來優化這些匹配結果,并與上面的結果進行比較。 首先計算每個特征點周圍的紋理特征,然后使用這些特征來計算匹配特征點之間的紋理相似度。同時計算匹配特征點在特征金字塔中的尺度差異,以評估它們的尺度一致性。最后,將基于紋理相似度和尺度一致性來篩選和優化匹配結果。本實驗的具體參數選擇如表2 所示。

表2 匹配優化參數

圖9 展示了通過紋理相似度和尺度一致性度量優化后的匹配結果。

圖9 bikes 與ubc 特征點匹配的效果對比

從圖9 中可以看到,這種優化方法找到了在紋理和尺度上更為一致的匹配對??梢钥吹絻灮蟮钠ヅ湓谝恍﹨^域得到了改善,尤其是在那些紋理明顯的區域。

4 結論

本文通過引入紋理增強的預處理方法,有效地提高了圖像中的紋理信息,與傳統的ORB 算法相比,基于紋理增強的ORB 算法在特征點提取和匹配的準確性和魯棒性方面都取得了顯著的改進。該算法在復雜紋理場景下表現出更好的性能,能夠有效應對紋理不明顯或紋理變化較大的情況,提高了算法的可靠性和穩定性。

未來的研究可以進一步優化紋理增強的預處理方法,提高紋理信息的準確性和豐富性,探索更多的特征點匹配策略,進一步提高匹配的魯棒性和準確性。 此外,還可以考慮與其他圖像特征提取算法的結合,進一步提升特征點檢測和匹配的性能。

猜你喜歡
直方圖紋理梯度
符合差分隱私的流數據統計直方圖發布
一個改進的WYL型三項共軛梯度法
一種自適應Dai-Liao共軛梯度法
基于BM3D的復雜紋理區域圖像去噪
用直方圖控制畫面影調
使用紋理疊加添加藝術畫特效
一類扭積形式的梯度近Ricci孤立子
TEXTURE ON TEXTURE質地上的紋理
基于空間變換和直方圖均衡的彩色圖像增強方法
消除凹凸紋理有妙招!
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合