《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的二进制字串,并将这个二进制字串作为该特征点的特征描述子。

BRIEF 算法首先利用高斯核对给定图像进行平滑处理,以防描述符对高频噪点过于敏感。然后,对于给定关键点,例如猫爪上的这个点。BRIEF 从该关键点周围界定好的邻域内随机选择一对像素,关键点周围的邻域称为 Patch,它是一个具有特定像素宽度和高度的正方形。

这里显示的随机对中的第一个像素,是一个蓝色正方形,它是从以关键点为中心的高斯分布中抽取的一个像素,标准偏差或分散趋势为 σ。

BRIEF是用二进制串描述局部特征,好处有二:一是很少的bit就能描述独特的性质;二是可以用汉明距离计算两个二进制串之间的特征,计算速度快。在实际应用中的好处是:算的准;算的快;省内存。
经验表明,用256甚至128个bit表示一个BRIEF特征就够用了。算的快,省内存,适合实时计算的应用,比如SLAM(省计算)或者三维重建(省存储)。

BRIEF描述子利用二进制(“0”和“1”)编码,因此在特征匹配时只需计算2个特征点描述子的Hamming距离。大量实验表明,不匹配特征点的描述子 的Hamming距离在128左右,匹配点对描述子的Hamming距离则远小于128。由于BRIEF的匹配速度远高于SURF和SIFT,因此应用较为广泛。
1、两个特征编码对应bit位上相同元素的个数小于128的,一定不是配对的。
2、一幅图上特征点与另一幅图上特征编码对应bit位上相同元素的个数最多的特征点配成一对。

BRIEF特征的建立和用于匹配,都很快。性能测试表明,BRIEF比SURF和U-SURF快,准确度差不多。

SLAM中的 ORB特征检测与匹配(理论篇)相关推荐

  1. ORB-SLAM2从理论到代码实现(三):ORB特征提取和匹配理论和代码详解

    1. 理论知识 特征点由关键点(Key-point)和描述子(Descriptor)两部分组成.ORB特征点(Oriented FAST and Rotated BRIEF)是由Oriented FA ...

  2. ORB 特征检测与匹配

    #include <opencv2/opencv.hpp> #include <opencv2/xfeatures2d.hpp> #include <opencv2/xf ...

  3. ORB 特征提取算法(理论篇)

    Abstract ORB 是 Oriented Fast and Rotated Brief 的简称,可以用来对图像中的关键点快速创建特征向量,这些特征向量可以用来识别图像中的对象. 其中,Fast ...

  4. OpenCV中的SURF特征检测、匹配与对象查找

    SURF算法工作原理 选择图像中的POI(Points of interest) Hessian Matrix 在不同的尺度空间发现关键点,非最大信号压制 发现特征点方法.旋转不变性要求 生成特征向量 ...

  5. 特征匹配中OpenCV Dmatch类的用法解析以及非常详细的ORB特征提取与匹配解析

    首先说明一点,在SLAM中进行特征提取和匹配时,需要注意使用的OpenCV版本,在使用OpenCV2.x版本时,可以创建特征对象如下所示(省略了参数表): ORB orb; SURF surf; SI ...

  6. 数字图像处理学习笔记(一):特征检测和匹配概述

    数字图像处理学习笔记(一):特征检测和匹配概述 参考博客: 特征点的匹配 SIFT特征详解 数字图像处理学习笔记(二):SIFT(尺度不变特征变换)算法 1.特征点概述 如何高效且准确的匹配出两个不同 ...

  7. 作为SLAM中最常用的闭环检测方法,视觉词袋模型技术详解来了

    摘自:https://mp.weixin.qq.com/s/OZnnuA31tEaVt0vnDOy5hQ 作为SLAM中最常用的闭环检测方法,视觉词袋模型技术详解来了 原创 小翼 飞思实验室 今天 基 ...

  8. 模板匹配理论的优缺点,模板匹配和神经网络

    1.模板匹配理论的优缺点 1.函数模板方式克服了C语言解决类似问题时使用大量不通函数名表示相关功能. 2.克服了宏定义不能进行参数类型检查的弊端. 3.克服了C++函数重载用相应函数名字重写几个函数的 ...

  9. Opencv实现Sift、Surf、ORB特征提取与匹配

    在opencv3中,这三个算子都转移到一个名为xfeature2d的第三方库中,而在opencv2中这三个算子在nonfree库中. 关于在vs下配置opencv可参考我转载的另外一篇文章.注意版本号 ...

最新文章

  1. C# EF 基础操作
  2. 框架应用 : Spring MVC - 开发详述
  3. 由存储过程直接生成类文件
  4. css中定义超级链接的样式
  5. andorid程序UI线程下开启子线程闪退错误解决
  6. 将关闭窗口的按钮放在窗口右边
  7. 华硕2020年显卡_TrendForce集邦咨询:2020年液晶显示器年出货成长率达5.4%,华硕成长率居冠、三星排名上升...
  8. Particle Filter Tutorial 粒子滤波:从推导到应用(三)
  9. 轻量级 js取色器 JSColor
  10. ArcGIS中KML/KMZ转为.shp文件
  11. 2020华为外包机试题目
  12. 香港电影经典回顾之爱情二十四章经
  13. 计算机应用基础——计算机硬件(一)
  14. 一种基于STM32F1 MCU的增量型编码器测速的方法
  15. Three.js(2)--->基础篇-Helpers(辅助对象/辅助线)
  16. NDIS中间层的驱动包截获技术教程
  17. 认识学习的重要性,拒绝摆烂
  18. 长沙高中计算机学校排名2015,长沙市所有高中学校排名,2021年长沙市重点高中分数线排名榜...
  19. Flutter 正式推出 Windows 平台支持
  20. 独立正交不相关定义关系

热门文章

  1. 【Html——自由小球球】(效果+代码)
  2. iOS 解决在Storyboard中修改UITableViewCell背景色无效果的问题
  3. 云计算概论 -- 云的基本概念和模型
  4. 【程序解题】图中有几个三角形
  5. 我的页面我做主——浏览器去广告正确姿势
  6. JS设置CSS样式的几种方式
  7. 2019FME博客大赛——基于FME的地理国情监测 变化信息通用属性项检查
  8. 串口通讯助手学习交流
  9. ColorFinale Pro for mac(FCPX插件:专业分级调色插件)
  10. esxi能直通的显卡型号_DIY电脑选购指南(1)-显卡篇