BRIEF(Binary Robust Independent Elementary Features) 並沒有 feature detection 的功能,而是專注於 feature descriptor,BRIEF 的特點是 feature description 短,在 matching 時所需要的時間少,以下簡單說明 BRIEF 的演算法。

SIFT 的每個 feature description 為 128 維度,每個維度都是 floating point,所以共需要 512 bytes,而 SURF 以最少的 64 維度來說,也需要 256 bytes,對於愈長的 description 來說,除了佔用的記憶體愈大之外,所需要的 matching 時間也會增加。

而真正在作 matching 時,也未必需要全部的維度,可以利用 PCA, LDA 之類的方式來作壓縮,或是使用像是 LSH 的方法來將 SIFT descriptor 轉換成二進制字串,利用 Hamming distance 可以輕易計算這些二進制字串,這對於速度的提升有很大的幫助,因為 Hamming distance 的計算簡單。

BRIEF 因此油然而生,直接提供二進制字串,而不是找尋 feature descriptor,它利用特殊的方式在 feature 的區域取得 nd 對像素值,再依序對每對像素值比較大小,如果 < 則為 1,否則為 0,因此得到 nd 維度的二進制字串。

nd 的值可以是 128, 256 或 512, OpenCV 都有支援,預設為 256 (在 OpenCV 中是以 byte 為單位,所以分別是 16, 32 及 64)。

要注意的一點是 BRIEF 只是個 feature descriptor,沒辦法作 feature detection,所以必須以其它方式來實作,例如 SIFT 或 SURF,論文中推薦以 CenSurE 來作 feature detection,而且 BRIEF 在作用於 CenSurE 所偵測到的 feature 也有較佳之效果。

BRIEF 不管是在產生或比較 feature descriptor 的速度都是比較快的,除了影像中有較大的平面旋轉的情況,對於 feature 的識別率也很高。




Reference

BRIEF (Binary Robust Independent Elementary Features)

文字內容 或 影像內容 部份參考、引用自網路,如有侵權,請告知,謝謝。
創作者介紹

拾人牙慧點滴

silverwind1982 發表在 痞客邦 PIXNET 留言(0) 人氣()