目录

1、角点检测概念

2、角点检测流程

3、角点检测实践


图像的特征是图像的原始特性或属性,它包含图像中的关键信息,是机器视觉算法工作的基础。

图像的灰度、边缘、轮廓、纹理、色彩和颗粒属性等都可作为图像的特征,它们均从某一维度对图像中的目标关键属性进行描述。然而,在实际工作中,有时需要寻找一种可以对图像的各个局部都能进行抽象描述的特征。

例如,若要在图像存在透视畸变且被测目标会发生旋转和缩放的情况下,对图像中多个关键部分进行关联拼接,然后再进行目标识别或匹配,此时就需要使用一种可以对旋转、缩放和畸变均保持不变的局部特征。

角点(Corner Point)是解决这类问题的一种理想选择。

1、角点检测概念

图像中的兴趣点(又称为关键点、特征点)是在图像中容易检测且具有代表意义的点。基于这些点,可以进行目标识别、图像匹配和缺陷检测等。角点是图像中最基本的一种兴趣点,它可定义为图像中两个边缘的交点,或目标轮廓线上曲率的局部极大点。角点特征具有计算量少,匹配简单以及旋转、平移、放缩不变性等特点,因此在图像配准与匹配、目标识别、运动分析、目标跟踪等应用领域都起着非常重要的作用。

图像在角点处不仅梯度的数值大,而且梯度方向的变化速率也很大。也就是说,角点显示了图像在二维空间内灰度变化剧烈的位置,它和周围邻点有着明显差异。

例如,下图中,当小窗口位置在任意方向上发生变化时,含有角点的窗口的灰度就会有明显变化。因此可以通过计算图像中的角点获知图像各个局部的信息,从而实现对图像的一种抽象描述。而基于该抽象描述,即可进行图像的匹配及识别等工作。

2、角点检测流程

以角点为特征的机器视觉应用一般涉及角点检测、角点描述和角点匹配3个过程。

角点检测过程使用Harris、Shi-Tomasi或FAST等算法来确定图像中的角点。角点描述过程使用BRISK (Binary Robust Invariant Scalable Keypoints)或FREAK (FastRetina Keypoint)方法,基于检测到的角点生成以二值方式编码的特征向量。而角点匹配过程则计算两幅图像二值特征向量之间的汉明距离,并依据距离的大小来判断其是否匹配。

下图对常用的角点检测、描述及匹配方法进行了汇总。

3、角点检测实践

Nl Vision使用位于LabVIEW的视觉与运动→Machine Vision→Feature
Correspondence函数选板中的IMAQ Corner Detector和IMAQ FAST Feature PointDetector
封装角点检测过程,返回从矩形ROI中检测到的角点坐标和强度。

其中IMAQ Corner Detector封装了Harris和Shi-Tomasi角点检测算法,且支持在图像不同的金字塔图层进行多尺度检测。换句话说,在进行角点检测时,它不仅能对光照和旋转变化保持不变性,还能通过多尺度的近似方法对图像的缩放变化保持不变性。

lMAQ FAST Feature Point Detector封装了FAST检测算法,它以像素为中心,取距其半径为3的圆环上的16个点,若其中有连续的12个点的灰度与像素的灰度差超过输入参数Min Feature Point Strength设定的阈值,就将像素标记为角点。VI对于光照、旋转和尺度变化保持不变,但是当图像中噪点较多时,FAST健壮性较差,而且算法的效果也依赖于阈值的选取。

通过使用角点特征进行图像匹配的实例,了解角点算法的应用,程序设计思路如下所示:

  • 程序首先为模板图像和待检测图像分配缓冲区,并将它们分别读入内存;
  • 随后调用IMAQ FAST Feature PointDetector,基于FAST算法分别检测两幅图像中的角点,并由IMAQ Feature PointDescriptor以FREAK算法对角点信息进行二进制描述;
  • 这样一来,从图像中检测到的各个角点特征都可以由一个二进制的角点特征字符串表示;
  • IMAQ Match Feature Points能通过计算各个角点特征字符串之间的汉明距离,在设定的最大可接受距离范围内(本例为32),对两幅图像中的角点进行匹配关联。

程序设计如下所示:

程序运行效果如下所示:

资源下载请参见:LabVIEW角点检测-嵌入式文档类资源-CSDN下载

IMAQ Match Feature Points还能基于在两幅图像中匹配到的角点坐标,返回它们之间的单应性矩阵(Homography Matrix)。在机器视觉领域中,若成像系统可抽象为针孔比如,通过旋相机,则空间中同一平面内的任意两幅图像就可由单应性矩阵进行关联。比如,通过旋转相机镜头可获取某一个物体的两张不同图像,这两张图像的内容不可能只有部分对应。

若存在一个二维的3×3矩阵,与其中一幅图像相乘可得到第二幅图像,则该矩阵就称为两幅图像的单应性矩阵。单应性矩阵可以通过两幅图像中对应的4个特征点来计算,一旦得到单应性矩阵,就可以在已知原图像中关键特征点坐标时,计算得到其在匹配图像中的坐标位置。如上述例子所示,程序使用IMAQ Match FeaturePoints计算得到的单应性矩阵,在检测图像中标出所匹配到的目标范围。

角点是图像中一种特殊的特征点,基于角点进行图像检测和匹配,能在较难找到图像特征的情况下,创建图像拼接或图像匹配应用。常见的角点检测方法有Harris、Shi-Tomasi和FAST等。计算两幅图像角点特征向量之间的汉明距离即可完成角点的匹配。基于4个以上的匹配角点,可求得关联两幅图像的单应性矩阵,进而基于此矩阵,就能确定模板图像的位置。

LabVIEW角点检测(基础篇—10)相关推荐

  1. LabVIEW彩色图像分割(基础篇—14)

    基于目标颜色的彩色图像分割常包括色彩阈值处理(Color Threshold)和色彩分割(Color Segmentation)两种方法. 色彩阈值处理可以对图像在色彩空间中的3个分量分别进行阈值处理 ...

  2. 拼题A基础篇 10 统计字符

    拼题A 基础篇 统计字符 #include<stdio.h> #include<math.h> main() {int letter = 0, blank = 0, digit ...

  3. LabVIEW图像模式匹配(基础篇—11)

    目录 1.图像模式匹配概念 2.影响图像模式匹配的因素 3.灰度匹配 4.几何匹配 5.黄金模板比较 图像模式匹配是指通过分析模板图像和目标图像中灰度.边缘.外形结构以及对应关系等特征的相似性和一致性 ...

  4. LabVIEW图像分割算法(基础篇—6)

    目录 1.图像阈值分割 1.1.全局阈值分割 1.1.1.手动阈值分割 1.1.2.自动阈值分割 1.2.局部阈值分割 1.3.阈值分割算法比较 2.图像边缘分割 2.1.点检测 2.2.线检测 2. ...

  5. 机械精度设计与检测|基础篇

    目录 标准化,优先数系和优先数 标准化 优先数系和优先数 测量技术基础 基准 度量指标 测量误差 标准化,优先数系和优先数 标准化 在以往理学如数学.物理等学科的学习中,即便我们有许多不同的解决方法, ...

  6. LabVIEW目标测量方法(基础篇—12)

    目录 1.目标搜索 2.特征定位 3.几何测量 3.1.卡钳 3.2.卡尺 3.3.解析几何 目标测量(Dimensional Measurements)是机器视觉的重要应用之一,它以被测目标的关键尺 ...

  7. Python Qt GUI设计:QMainWindow、QWidget和QDialog窗口类(基础篇—10)

    目录 1. QMainWindow窗口 2.QWidget窗口 3.QDialog窗口 3.1.QMessageBox窗口 3.2.QInputDialog窗口 3.3.QFontDialog窗口 3 ...

  8. LabVIEW图像增强算法(基础篇—5)

    目录 1.空间域图像增强算法 1.1.线性卷积 1.1.1.一维卷积 1.1.2.二维卷积 1.2.领域增强 1.2.1.线性滤波 1.2.2.非线性滤波 2.频率域图像增强算法 2.1.傅里叶变换算 ...

  9. Java多线程系列--“基础篇”10之 线程优先级和守护线程

    概要 本章,会对守护线程和线程优先级进行介绍.涉及到的内容包括: 1. 线程优先级的介绍 2. 线程优先级的示例 3. 守护线程的示例 转载请注明出处:http://www.cnblogs.com/s ...

最新文章

  1. CAS机制中的ABA问题
  2. python获取链接跳转后地址_爬虫:获取多次跳转后的页面url
  3. VirtualBox 图形化界面
  4. php pdo 封装类,php pdo封装类代码(支持事务)
  5. shell脚本执行返回的状态码
  6. mysql 记录所有操作_mysql 的一些记录的操作
  7. Microsoft Teams的Outgoing Webhook开发入门
  8. elasticjob 分片策略
  9. python学习-- django 2.1.7 ajax 请求 进阶版
  10. Define a New Server 没有tomcat选项
  11. Python数据结构实战——哈希表(HashTable)
  12. 斐波那契数列的数学分析
  13. Java创建型设计模式之简单工厂,工厂方法,抽象工厂
  14. masm32快速编辑器菜单翻译整理
  15. 测试软件测显卡有啸叫,完美解决 显卡电流声!显卡啸叫!吱吱的电流声!附解决方案!...
  16. android手机紧急快捷键,常用手机指令(手机快捷键)及呼叫转移快捷指令
  17. App发送短信验证码实现
  18. 顶级区块链开发人员工具:涉及框架、IDE、安全工具、测试网络、区块链预言机和节点服务
  19. Practicing Mindfulness
  20. chrome插件之——Enhanced Github和Octotree

热门文章

  1. python买卖股票_python买卖股票的最佳时机(基于贪心/蛮力算法)
  2. 两种并发模式:半同步半异步 领导者追随者
  3. 【操作系统】第二章-进程的描述与控制
  4. Flink cdc+ doris 大宽表实践~
  5. frappe学习笔记
  6. 从0开始的技术美术之路(十一)HDR与LDR
  7. 【win10】LaTex安装踩雷记录
  8. 全新奢华品牌德国高仪SPA正式发布,定制奢华家庭水疗中心
  9. AutoCAD2021的新功能具备哪些特点?
  10. 计算机里的and符号,and符号怎么打?英文的and符号怎么打?英文中的“and”符号怎么打?...