天天看點

BRIEF: Binary Robust Independent Elementary Features

BRIEF: Binary Robust Independent Elementary Features 論文翻譯

摘要

我們提出使用二進制字元串作為有效的特征點描述符,我們稱其為Brief。 我們表明,即使使用相對較少的位,它也是高度可辨識的,并且可以使用簡單的強度差測試來計算。 此外,可以使用非常有效的漢明(hamming)距離來評估描述符相似度,而不是通常采用的L2範數。

結果,BRIEF的建立和比對速度非常快。 我們将其與标準基準上的SURF和U-SURF進行了比較,并顯示出它産生相似或更好的識别性能,而運作時間僅為兩者中的一小部分。

1引言

特征點描述子現在是許多計算機視覺技術的核心,例如目辨別别,3D重建,圖像檢索和相機定位。 由于這些技術的應用程式必須處理越來越多的資料或在具有有限計算資源的移動裝置上運作,是以,對快速計算,快速比對和高效存儲的本地描述符(local descriptors)的需求日益增長。

加快比對并減少記憶體消耗的一種方法是使用短描述符。 可以通過将降維(例如PCA [1]或LDA [2])應用于原始描述符(例如SIFT [3]或SURF [4])來獲得它們。 例如,在[5-7]中顯示,描述符向量的浮點值可以使用每個值使用很少的比特來量化,而不會損失識别性能。 可以通過使用将SIFT描述符簡化為二進制字元串的哈希函數來實作更大幅度的降維,如[8]中所述。 這些字元串表示二進制描述符,其相似性可以通過漢明距離來度量。

這些降維方法雖然有效,但需要在進行進一步處理之前先計算完整的描述符。在本文中,我們證明了整個計算過程可以通過直接從圖像塊中計算二進制字元串來實作。與[9]中相同的直線上的點對的強度比較得到單個位元,但不需要訓練階段。我們将結果描述符稱為BRIEF。

我們的實驗表明,隻有256位甚至128位通常足以獲得非常好的比對結果。 是以,BRIEF在計算和存儲在記憶體中都是非常有效的。 此外,比較字元串可以通過計算漢明距離來完成,這在現代CPU上可以非常快地完成,而現代CPU經常提供執行XOR或位計數操作的特定指令,就像最新的SSE [10]指令集一樣。

這意味着,在速度方面,BRIEF輕易勝過其他快速描述符,例如SURF和U-SURF,如結果部分所示。 此外,在許多情況下,它的識别率也優于它們,正如我們将使用基準資料集示範的那樣。

2相關工作

SIFT描述符[3]具有很高的判别力,但由于是128向量,是以計算和比對相對較慢。 這對于跟蹤許多點的實時應用(例如SLAM)以及需要存儲大量描述符的算法(例如大規模3D重建)可能是一個缺點。

有許多方法可以解決這一問題,它們可以更快地開發出可計算和比對描述符的方法,同時又保留了SIFT的判别能力。 SURF描述符[4]代表最著名的描述符之一。 像SIFT一樣,它依賴于局部梯度直方圖,但是使用積分圖像來加快計算速度。 可以進行不同的參數設定,但是由于僅使用64個次元就已經産生了良好的識别性能,是以該版本已經非常流行,并且已經成為事實上的标準。 這就是為什麼我們将其與“結果”部分進行比較的原因。

SURF解決了速度問題,但是由于描述符是浮點值的64個向量,是以表示它仍然需要256個位元組。 當必須存儲數百萬個描述符時,這變得很重要。 減少此數量的方法主要有三類。

第一個涉及降維技術,例如主成分分析(PCA)或線性判别嵌入(LDE)。 PCA非常易于執行,并且可以在不損失識别性能的情況下減小描述符的大小[1]。 相比之下,LDE要求标記的訓練資料以應比對在一起的描述符的形式,這更難獲得。 它可以提高性能[2],但也可能過度拟合并降低性能。

減少描述符的第二種方法是将其浮點坐标量化為以更少的位編碼的整數。 在[5]中,示出了SIFT描述符可以在每個坐标中僅使用4位來量化。 量化在[6,7]中用于相同的目的。 這是一個簡單的操作,不僅會導緻記憶體增加,而且會導緻更快的比對速度,因為這樣就可以在現代CPU上非常高效地完成短矢量之間的距離計算。 在[6]中,表明對于DAISY描述符的某些參數設定,可以将PCA和量化結合起來以将其大小減小到60位。 但是,在這種方法中,漢明距離不能用于比對,因為與“摘要”相比,這些位以四個塊的形式排列,是以無法獨立處理。

減少描述符的第三種更激進的方法是将其二進制化。例如,[8]從局域敏感散列(LSH)[11]中獲得靈感,将浮點向量轉換為二進制字元串。這是通過在與适當的矩陣相乘後對向量進行門檻值設定來實作的。描述符之間的相似度通過對應的二進制字元串之間的漢明距離來衡量。這是非常快的,因為可以通過位異或操作和位計數非常有效地計算漢明距離。同樣的算法被應用到GIST描述符上,得到了整個圖像[12]的二進制描述。另一種将GIST描述符進行二值化的方法是使用非線性鄰域成分分析[12,13],這似乎更強大,但在運作時可能會更慢。

盡管所有這三種縮短技術都提供令人滿意的結果,但從某種意義上說,依靠它們仍然是低效的,因為首先計算一個長描述符,然後将其縮短涉及大量耗時的計算。 相比之下,我們在本文中主張的方法是通過比較點對的強度來直接建構簡短的描述符,而無需建立長點。 這樣的強度比較在[9]中用于分類目的,盡管極度簡單,但顯示出非常強大的效果。 然而,本方法與[9]和[14]完全不同,因為它不涉及任何形式的線上或離線教育訓練。

3方法

我們的方法受到早期工作的啟發[9,15],該工作表明可以基于相對較少的成對強度比較來有效地對圖像塊進行分類。 這些測試的結果用于訓練随機分類樹[15]或樸素貝葉斯分類器[9]以識别從不同角度看到的更新檔。 在這裡,我們消除了分類器和樹,僅從測試響應中建立了一個位向量,我們在平滑圖像塊後對其進行了計算。

更具體地說,我們将大小為S×S的圖像塊p上的測試τ定義為

BRIEF: Binary Robust Independent Elementary Features

其中p(x)是p在x =(u,v)處的平滑版本中的像素強度。 選擇一組nd(x,y)-位置對唯一地定義了一組二進制測試。 我們将我們的Brief描述符作為nd維位串

BRIEF: Binary Robust Independent Elementary Features

在本文中,我們考慮nd = 128、256和512,并将在結果部分中顯示它們在速度,存儲效率和識别率之間取得了很好的折衷。 在本文的其餘部分中,我們将Brief描述符稱為Brief-k,其中k = nd / 8表示存儲描述符所需的位元組數。

在建立此類描述符時,唯一需要選擇的是用于在強度差異和(x,y)對的空間排列之前平滑斑塊的核心的那些選擇。 我們将在本節的其餘部分中讨論這些内容。

為此,我們将使用在第4節中将更較長的描述的Wall資料集。它包含五對圖像,第一對圖像在所有圖像對中都是相同的,第二幅圖像是從單調增長的基線拍攝的,進而使比對 越來越困難。 為了比較各種潛在選擇的相關性,我們使用圖像對中的識别率作為品質度量,該識别率将在第4節開始時精确定義。簡而言之,對于一對圖像以及給定數量的對應圖像 它們之間的關鍵點,它量化了使用“簡要說明”和漢明距離作為比對名額建立正确比對的頻率。 因為場景是平面的并且圖像之間的單應性是已知的,是以可以可靠地計算該比率。 是以,它可以用于檢查點是否真正彼此對應。

3.1平滑核心

通過構造,等式1的測試僅考慮單個像素的資訊,是以對噪聲非常敏感。 通過預平滑圖像塊,可以降低這種敏感性,進而提高描述符的穩定性和可重複性。 出于同樣的原因,在尋找邊緣時,需要對圖像進行平滑處理,然後才能對其進行有意義的區分。這個類比是适用的,因為我們的強度差測試可以被認為是在一個patch内求導數的符号。

圖1說明了高斯平滑量的增加對高斯核方差從0到3的識别率的影響。比對越困難,平滑對實作良好性能就越重要。 此外,識别率在1到3的範圍内保持相對恒定,實際上,我們使用的值為2。對于相應的離散核心視窗,我們發現9×9像素的大小是必要和充分的。

BRIEF: Binary Robust Independent Elementary Features

圖1所示。每組10條表示一個特定立體對的識别率,以增加高斯平滑的水準。特别是對于那些難以比對的對,也就是那些在圖的右側的對,平滑對于減緩識别率下降的速度是至關重要的。

3.2二進制測試的空間排列

生成長度為nd的位向量留下了許多選擇等式的nd測試位置(xi,yi)的選項。 大小為S×S的小塊中的圖1所示。我們對圖2所示的五個采樣幾何進行了實驗。假設小塊坐标系的原點位于小塊的中心,則可以将它們描述如下。

繼續閱讀