引言
该文是由EPFL的Calonder在ECCV2010上提出了一种可以快速计算且表达方式为二进制编码的描述子。主要思路就是在特征点附近随机选取若干点对,将这些点对的灰度值的大小,组合成一个二进制串,并将这个二进制串作为该特征点的特征描述子。
算法描述
首先,该文特征点提取算法与SIFT一致,也可以仿照SURF算法。在此,主方向的计算在此省略(更为详见,参考资料[1]),因该描述子针对的是两幅小角度偏转(30°以内)图像的特征点匹配。
其次,描述子的建立过程:
- 选定建立描述子的区域(特征点的一个正方形邻域)。
- 对该邻域用σ=2的高斯核卷积,以消除一些噪声。因为该描述子随机性强,对噪声较为敏感。
- 以一定的随机化算法生成点对<x,y>,若点x的亮度小于点y的亮度,则返回值1,否则返回0。
- 重复第三步若干次(如256次),得到一个256位的二进制编码,即该特征点的描述子。
最后,在匹配时只需计算两特征点描述子的Hamming距离。判断是否匹配的依据:经过大量实验数据测试,不匹配特征点的描述子的Hamming距离在128左右,匹配点对描述子的Hamming距离则远小于128。
算法优缺点与结果比较
BRIEF算法优缺点,首先,它抛弃了传统的用梯度直方图描述区域的方法,改用检测随机响应,大大加快了描述子建立速度;生成的二进制描述子便于高速匹配(计算Hamming距离只需通过异或操作加上统计二进制编码中“1”的个数的操作,这些通过底层的运算即可实现),且便于在硬件上实现。其次、本描述子的缺点很明显就是旋转不变性较差,需要通过新的方法来改进。
结果比较:第一、在旋转不是非常厉害的图像里,用BRIEF生成的描述子的匹配质量非常高,作者测试的大多数情况中都超越了SURF。但在旋转大于30°后,BRIEF的匹配率快速降到0左右;第二、BRIEF的耗时非常短,在相同情形下计算512个特征点的描述子时,SURF耗时335ms,BRIEF仅8.18ms;匹配SURF描述子需28.3ms,BRIEF仅需2.19ms。在要求不太高的情形下,BRIEF描述子更容易做到实时。
参考资料
[1]Calonder M., Lepetit V., Strecha C., Fua P.: BRIEF: Binary Robust Independent Elementary Features. ECCV 2010
关于Image Engineering& Computer Vision更多讨论与交流,敬请关注本博客和新浪微博songzi_tea.