目录

一. 概念

Fast角点检测内部实现:

优缺点:

二. 代码

三. 运行结果

四. 拓展对比_SUSAN算子

简介:

内部实现:

计算步骤:

优缺点:


一. 概念

Fast角点检测内部实现:

cv:FastFeatureDectctor

Harris算法的一个简化: 利用少数像素比较数量,来确定是否接受一个特征点。

通过检测候选像素,周围一圈的像素 16个点来决定是否可以接受一个特征点,如果与中心点差异较大(阈值控制)的像素可以组成一个连续的圆弧,并且弧长大于圆周长的3/4,那么我们认为找到了一个特征点。

效率高的原因: 首先价检测周围 上下左右 4个点,如果至少有3个点的灰度值大于或小于中心像素,再去计算圆周上的其他点,如果不成立,直接舍弃。实践中,大部分像素点可以直接被舍弃,因此速度比较高。

优缺点:

优点:  运算速度快,效率高。

缺点:  当图片中的噪点较多时,它的健壮性并不好

FAST不具备尺度不变特,

特征点没有方向信息,失去了旋转不变性

类似算法 susan算子

二. 代码

#include "stdafx.h"
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/features2d/features2d.hpp> //引用cv::KeyPoint 特征检测器通用接口int main()
{cv::Mat image = cv::imread("../../aTestImage/Buildingsm.jpg", 0);std::vector <cv::KeyPoint> keypoints;cv::FastFeatureDetector fast(40);fast.detect(image, keypoints); //检测中心点一圈圆周上16个像素 //与中心点差异较大的像素组成的圆弧 若能构成圆周的3/4,则认为找到了特征点cv::drawKeypoints(image, keypoints, image,cv::Scalar(255, 255,255), cv::DrawMatchesFlags::DRAW_OVER_OUTIMG);cv::namedWindow("FAST Features");cv::imshow("FAST Features", image);cv::waitKey(0);return 0;
}

三. 运行结果

四. 拓展对比_SUSAN算子

简介:

简称:Smallest Univalue Segment Assimilating Nucleus 最小核心值相似区域算子  ['suzn]

应用: 检测直线和角点

内部实现:

opencv中: cvGoodFeaturesToTrack

用一个圆形模板在图像上移动,若模板内的像素灰度与模板中心(被称为“核”——Nucleus)的像素灰度值之差小于一定的阈值,则认为该点与核Nucleus具有相同的灰度,满足该条件的像素组成的区域就称为USAN。根据USAN区域的大小来检测边缘、角点等特征的位置和方向信息。

分析图像可知,边缘处的点的USAN值,小于或等于最大值一半。在边缘或角点处的USAN值最小

计算步骤:

1.  根据相似度 (像素差值的大小),二值化圆形模板中(37个像素=6*6)的每个像素值

2.  统计USAN区域的值 我们可以称为USAN值,反映USAN区域的大小。

3.  使用非极大值抑制来寻找角点。计算边缘响应,通过设定一个阈值,确定边缘或角点

提取边 = 3/4 * 最大USAN值

角点 = 1/2 * 最大USAN值

优缺点:

优点:

运算量也比较小 (0 1 运算 )

抗噪声能力很强,基于对周边象素的灰度比较,完全不涉及梯度的运算

既能检测边缘,又能检测角点

缺点:

准确性受选择阈值的影响,选择合适的阈值需要功夫。

角点似乎比不过harris,边缘似乎比不过Canny。

OpenCV_Corner Detect with FastFeatureDetector(基于FAST的角点检测) 及 SUSAN算子相关推荐

  1. 基于光强的角点检测(SUSAN角点检测、FAST角点检测、FAST-ER角点检测)

    Corner Feature Detector(Intensity-Based) 基于光强比较的角点检测,直接比较光强(像素灰度值),而不计算梯度.所以实时性更好,所需的存储空间更小. SUSAN 角 ...

  2. harris角点检测_角点检测(2) - harris算子 - 理论与Python代码

    数字图像,图像=矩阵,[m*n]从[0,255]的灰度值 角点检测:物体边缘的拐点 ->应用:图像匹配与检索.图像物体形变恢复(摄像机标定).三维重建 Harris角点检测(早期,原理简单,视频 ...

  3. 角点检测和匹配之Harris与FAST角点检测

    这一章主要内容: 1. Harris角点检测 2. FAST特征检测 3. 尺度不变的SURF特征检测 4.SURF检测描述 一.引言 在计算机视觉中,特征点或称兴趣点,角点(即图像的极值点,线段的终 ...

  4. OpenCV —— 角点检测之 Harris 角点检测、Shi-Tomasi 角点检测、FAST 角点检测

    角点检测 Harris 角点检测 实现原理 OpenCV 函数 优化 Shi-Tomasi 角点检测 实现原理 OpenCV 函数 FAST 角点检测 实现原理 OpenCV 函数 优化 在图像处理和 ...

  5. 激光雷达角点检测 c语言,一种基于事件帧的角点检测方法与流程

    本发明属于图像处理领域,用于解决基于事件相机的SLAM项目的角点检测. 背景技术: 在过去几十年里,由于计算机视觉算法的研究与发展,人们对机器人感知的兴趣也日益增加.这种传统相机能够捕获相机周围环境的 ...

  6. 基于曲线曲度或类曲度的角点检测方法总结

    摘要: 主要介绍了基于曲线曲度的角点检测方法,不仅介绍了早期的曲度计算方法,还包括了CSS方法.CPDA方法.样条曲线参数估计曲度方法.协方差矩阵估计曲度方法等,最后还给出了针对这些方法最新的一些改进 ...

  7. Harris角点检测python实现及基于opencv实现

    写在前面: 黄宁然, 七月,骄阳似火. 参考文献镇楼: [1]袁志聪,基于harris特征的点云配准方法研究 [2]高亭,基于改进Harris角点检测的印刷体文档图像检索技术 [3]景庆阳,基于har ...

  8. opencv角点检测学习总结

    学习opencv 角点检测 如果一个点在两个正交方向上都有明显的导数,则我们认为此点更倾向于是独一无二的,所以许多可跟踪的特征点都是角点. 一下为角点检测中用到的一些函数 cvGoodFeatures ...

  9. 图像处理--角点检测

    角点及角点检测 角点是图像的一种重要局部特征,它决定了图像中目标的形状,所以在图像匹配. 目标描述与识别以及运动估计.目标跟踪等领域,角点提取具有十分重要的意义.在计 算机视觉和图像处理中,对于角点的 ...

  10. 【事件相机整理】角点检测与跟踪总结

    本文仅用于自己学习整理,不保证内容的完整性和准确性,仅供其他朋友参考.转载请注明出处. 前言 角点检测与跟踪,是特征提取与跟踪(Feature tracking)下研究较多的内容.相对其他上层任务来说 ...

最新文章

  1. Zookeeper整理(一)- 写操作产生事件,写操作与Watcher对应关系
  2. js中propertyIsEnumerable()方法使用介绍
  3. Istio-0.8.0在Minikube环境中快速启动Bookinfo示例
  4. 军事科学院医学研究院认知与脑科学研究团队2020年诚聘启事
  5. JS实现sleep功能 JS遍历document对象
  6. SQL注入漏洞修复办法
  7. centos php71,CentOS 71编译安装PHP7
  8. ccf_201712-02
  9. python pca降维_协方差矩阵的计算、PCA
  10. Web UI设计师的CSS优化工具 25+
  11. R语言的常用函数速查
  12. html 下拉怎么固定表头,HTML Table 固定表头简单实现
  13. 原创|批处理|批处理安卓log抓取工具
  14. python 股票竞价数据_百度竞价的数据分析怎么做
  15. Matplotlib显示灰度图
  16. what is denoise
  17. 剪刀石头布(胜率提示)
  18. 金山词霸字典转换工具
  19. 浙江大学计算机学院博士论文格式,博士学位论文格式模板(浙江大学博士论文模板样例)...
  20. HTML+CSS flex弹性布局

热门文章

  1. Linux Mysql5.6安装
  2. .NetCore源码阅读笔记系列之Security (四) Authentication AddJwtBearer
  3. BIOS、BootLoader、uboot对比
  4. bootstrap基础样式学习(一)
  5. Python学习三|列表、字典、元组、集合的特点以及类的一些定义
  6. js动态计算移动端rem
  7. Codechef Black Nodes in Subgraphs(树型背包)
  8. Python基础(7) - 函数
  9. (转)ASP.NET程序中常用代码汇总
  10. memcached—如何在Windows操作系统中安装、启动和卸载memcached