《SLAM十四讲》视觉里程计第一部分的实践便是ORB特征检测
下面来讲讲ORB的理论:
ORB算法分为两部分,第一部分是特征提取算法即FAST算法,第二部分是特征描述子BRIEF,BRIEF将第一个算法发现的关键点变成特征向量,这些特征向量可以共同表示一个对象。
FAST
给与一个像素点 p,FAST 比较目标 p 圆圈范围中的 16 个像素,每个像素按高于 p、小于 p或者与 p 相似,分为三类。
在 FAST-12 算法中,为了更高效,可以添加一项预测试操作,以快速地排除绝大多数不是角点的像素。具体操作为,对于每个像素,直接检测邻域圆上的第 1,5,9,13 个像素的亮度。只有当这四个像素中有三个同时大于 I p + T 或小于 I p − T 时,当前像素才有可能是一个角点,否则应该直接排除。这样的预测试操作大大加速了角点检测。
FAST算法还是很好理解的,下面简单总结一下FAST算法的步骤:
BRIEF
BRIEF是在keypoint周边随机取点对进行灰度计算,直接得到二进制特征描述向量。在特征点附近随机的选取若干点对,将这些点对的灰度值大小组合成一个长为256的二进制字串ÿ