BRIEF是一种特征描述子提取算法,并非特征点的提取算法,一种生成二值化描述子的算法,不提取代价低,匹配只需要使用简单的汉明距离(Hamming Distance)利用比特之间的异或操作就可以完成。因此,时间代价低,空间代价低,效果还挺好是最大的优点。

  算法的步骤介绍如下:

  1. 图像滤波:原始图像中存在噪声时,会对结果产生影响,所以需要对图像进行滤波,去除部分噪声。

  2. 选取点对:以特征点为中心,取S*S的邻域窗口,在窗口内随机选取N组点对,一般N=128,256,512,默认是256,关于如何选取随机点对,提供了五种形式,结果如下图所示:

  ·x,y方向平均分布采样

  ·x,y均服从Gauss(0,S^2/25)各向同性采样

  ·x服从Gauss(0,S^2/25),y服从Gauss(0,S^2/100)采样

  ·x,y从网格中随机获取

  ·x一直在(0,0),y从网格中随机选取

  图中一条线段的两个端点就是一组点对,其中第二种方法的结果比较好。

  3. 构建描述符:假设x,y是某个点对的两个端点,p(x),p(y)是两点对应的像素值,则有:

  对每一个点对都进行上述的二进制赋值,形成BRIEF的关键点的描述特征向量,该向量一般为 128-512 位的字符串,其中仅包含 1 和 0,如下图所示:

什么BRIEF算法?BRIEF算法详解相关推荐

  1. python如何调用文件进行换位加密_python 换位密码算法的实例详解

    python 换位密码算法的实例详解 一前言: 换位密码基本原理:先把明文按照固定长度进行分组,然后对每一组的字符进行换位操作,从而实现加密.例如,字符串"Error should neve ...

  2. DL之AlexNet:AlexNet算法的架构详解、损失函数、网络训练和学习之详细攻略

    DL之AlexNet:AlexNet算法的架构详解.损失函数.网络训练和学习之详细攻略 相关文章 Dataset:数据集集合(CV方向数据集)--常见的计算机视觉图像数据集大集合(建议收藏,持续更新) ...

  3. DL之ShuffleNet:ShuffleNet算法的架构详解

    DL之ShuffleNet:ShuffleNet算法的架构详解 相关文章 DL之ShuffleNet:ShuffleNet算法的简介(论文介绍).架构详解.案例应用等配图集合之详细攻略 DL之Shuf ...

  4. DL之MobileNetV2:MobileNetV2算法的架构详解(包括ReLu的意义)

    DL之MobileNet V2:MobileNetV2算法的架构详解 相关文章 DL之MobileNetV2:MobileNetV2算法的简介(论文介绍).架构详解.案例应用等配图集合之详细攻略 DL ...

  5. DL之SqueezeNet:SqueezeNet算法的架构详解

    DL之SqueezeNet:SqueezeNet算法的架构详解 相关文章 DL之SqueezeNet:SqueezeNet算法的简介(论文介绍).架构详解.案例应用等配图集合之详细攻略 DL之Sque ...

  6. ​​​​​​​DL之ResNeXt:ResNeXt算法的架构详解

    DL之ResNeXt:ResNeXt算法的架构详解 相关文章 DL之ResNeXt:ResNeXt算法的简介(论文介绍).架构详解.案例应用等配图集合之详细攻略 DL之ResNeXt:ResNeXt算 ...

  7. 【算法知识】详解堆排序算法

    点击蓝色字关注我们! 什么是堆 「堆」首先是一个完全二叉树,「堆」分为「大顶堆」和「小顶堆」: 「大顶堆」 : 每个节点的值大于或等于其左右孩子节点的值,称为大顶堆. 「小顶堆」同理就是每个节点的值小 ...

  8. 【算法知识】详解基数排序算法

    已发布: [算法知识]详解选择冒泡算法 [算法知识]详解选择排序算法 [算法知识]详解插入排序算法 [算法知识]详解快速排序算法 [算法知识]详解归并排序算法 基本思想 基数排序的思想是将整数按位数切 ...

  9. 【算法知识】详解归并排序算法

    已发布: [算法知识]详解选择冒泡算法 [算法知识]详解选择排序算法 [算法知识]详解插入排序算法 [算法知识]详解快速排序算法 基本思想 归并排序的基本思想是: 先将序列一次次分成子序列,直到子序列 ...

  10. 【算法知识】详解希尔排序算法

    前言 已发布: [算法知识]详解选择冒泡算法 [算法知识]详解选择排序算法 [算法知识]详解插入排序算法 当待插入元素是一个很小(当需求是从小到大排序时,从大到小排序时此处为很大)直接插入排序需要移动 ...

最新文章

  1. torch量化训练后导出onnx模型并运行
  2. aida64副屏监控_“遥信”在电力监控系统中的重要作用
  3. 决策智能(Decision Intelligence)二三事
  4. 贪心算法--加油站问题
  5. ASP.NET Core配置Kestrel 网址Urls
  6. TCP建立连接三次握手和释放连接四次握手
  7. wp7 通过后台代码给ListBoxItem添加ContextMenu 属性
  8. hdfs中一个block块默认多大?
  9. Angular @HostListener 装饰器的使用笔记
  10. 哈希表及哈希表查找相关概念(转)
  11. 【Jetson Nano学习笔记】1. 系统镜像和ROS的安装
  12. CodeSmith实用技巧(九):重载Render方法来控制输出
  13. ESA和NetWeaver
  14. 究竟是什么?让程序员们怒了
  15. 封禁3年,微信重磅功能回归!
  16. Slickedit 打开Qt工程
  17. JavaScript基础知识总结笔记
  18. hhkb mac设置_HHKB MAC 配置指南 操作指南 快捷键
  19. 二级备考:ppt自学知识笔记--基础操作1:ppt界面介绍
  20. 计算机电脑如何连网,电脑之间如何连网?

热门文章

  1. CSS3动画过渡的jquery动态弹出框插件
  2. JS 中 URL 编码的问题.
  3. HUST 1586 数字排列
  4. three.js绘制过程(二)
  5. 推荐一个个人感觉比较有吸引力的网站
  6. 随笔之如何实现一个线程池
  7. IT工作者,你们的爱情是这样的吗?
  8. [USACO07JAN]平衡的阵容Balanced Lineup BZOJ 1699
  9. Java并发编程(一)Thread详解
  10. 26.2. Web UI