手把手教你使用LabVIEW人工智能视觉工具包快速实现Harris角点检测(含源码)

‍‍🏡博客主页: virobotics(仪酷智能):LabVIEW深度学习、人工智能博主

🍻本文由virobotics(仪酷智能)原创首发

🥳欢迎大家关注✌点赞👍收藏⭐留言📝

前言

Hello,大家好,我是virobotics(仪酷智能),一个深耕于LabVIEW和人工智能领域的开发工程师。

本文将带领大家一起在LabVIEW中实现Harris角点检测。


一、角点特征相关概念

1.1 特征定义

什么是特征呢?为什么一副图像的某个特定区域可以作为一个特征,而其他区域不能呢?粗略的讲,特征就是有意义的图像区域,该区域具有独特特征和易于识别性。因此角点及高密度区域都是很好的特征,而大量重复的模式或低密度区域(例如图像中的蓝色天空)则不是很好的特征。边缘可以将图像分为两个区域,因此也可以看做好的特征。斑点是与周围有很大差别的像素区域,也是有意义的特征。

1.2 图像的特征

图像特征要有区分性,容易被比较。一般认为角点,斑点等是较好的图像特征。 如下图所示,蓝色框中的区域是一个平面很难被找到和跟踪。无论向哪个方向移动蓝色框,都是一样的。对于黑色框中的区域,它是一个边缘。如果沿垂直方向移动,它会改变。但是如果沿水平方向移动就不会改变。而红色框中的角点,无论你向那个方向移动,得到的结果都不同,这说明它是唯一的。 所以,我们说角点是一个好的图像特征。

角点是图像很重要的特征,对图像图形的理解和分析有很重要的作用。角点在三维场景重建运动估计,目标跟踪、目标识别、图像配准与匹配等计算机视觉领域起着非常重要的作用。在现实世界中,角点对应于物体的拐角,道路的十字路口、丁字路口等。那我们怎样找到这些角点呢?我们一起来看看

1.3 角点的定义

下图中E,F中的角我们通常称作角点(corner points),他们具有以下特征: • 轮廓之间的交点; • 对于同一场景,即使视角发生变化,通常具备稳定性质的特征; • 该点附近区域的像素点无论在梯度方向上还是其梯度幅值上有着较大变化;

二、环境搭建

2.1 部署本项目时所用环境

  • 操作系统:Windows10
  • python:3.6及以上
  • LabVIEW:2018及以上 64位版本
  • AI视觉工具包:techforce_lib_opencv_cpu-1.0.0.98.vip

2.2 LabVIEW工具包下载及安装

三、 程序实现Harris角点检测

3.1 原理

Harris角点检测的算法思想是:选取一个固定的窗口在图像上以任意方向的滑动,如果灰度都有较大的变化,那么就认为这个窗口内部存在角。如下图所示:

3.2 python实现Harris角点检测

python 复制代码
import cv2
import numpy as np 


img = cv2.imread('1.jpg') #读取图像
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)#转换成灰度图像

# 输入图像必须是 float32
gray = np.float32(gray)

# 第三个参数为角点检测的敏感度,其值必须介于3~31之间的奇数
# 最后一个参数在 0.04 到 0.06 之间
dst = cv2.cornerHarris(gray,2,3,0.04)

# 设置阈值,将角点绘制出来,阈值根据图像进行选择
img[dst>0.001*dst.max()] = [0,0,255]

cv2.imshow("harris",img)
cv2.waitKey (0)  #等待一定时间,让显示内容可以被看到
cv2.destroyAllWindows()  #关闭所有显示框
 

3.3 LabVIEW中实现Harris角点检测

在LabVIEW中实现Harris检测使用的API是:cornerHarris.vi

参数说明:

  • src:数据类型为 float32 的输入图像。
  • blockSize:角点检测中要考虑的邻域大小。
  • ksize:sobel求导使用的核大小
  • k :角点检测方程中的自由参数,取值参数为 0.04,0.06. 【程序harris_corner.vi】 【结果】

四、项目源码

项目源码下载:download.csdn.net/download/vi...


总结

以上就是今天要给大家分享的内容,希望对大家有用。如有笔误,还请各位及时指正。欢迎大家关注博主。我是virobotics(仪酷智能),我们下篇文章见~

如您想要探讨更多关于LabVIEW与人工智能技术,欢迎加入我们的技术交流群:705637299。进群请备注:LabVIEW机器视觉

如果文章对你有帮助,欢迎✌关注、👍点赞、✌收藏、👍订阅专栏

相关推荐
江畔柳前堤3 小时前
roLabelImg 详细安装教程
开发语言·人工智能·后端·云原生
阿里云大数据AI技术3 小时前
分链路差异化设计的DSP准实时数仓|钛动科技基于阿里云实时计算 Flink 版 + DLF Paimon + EMR Serverless StarRocks 的实践
人工智能·flink
陕西企来客3 小时前
2026年7月AI智能搜索曝光趋势研判
大数据·人工智能·机器学习·ai智能搜索曝光
阿里云大数据AI技术4 小时前
从算力到智能体,面向 Agentic AI 的基础设施演进
人工智能·agent
hangyuekejiGEO5 小时前
GEO技术服务选型指南
大数据·人工智能·python
阿里云大数据AI技术5 小时前
EMR Serverless Spark AI Function 的双维降本实践
人工智能·sql·spark
维基框架5 小时前
GitHub源码处理提速 一趟扫描反而更慢
人工智能·github
冬奇Lab5 小时前
代码库知识库系列(05):向量检索 vs 知识图谱——加了调用图并没有变更好
人工智能
AKAMAI5 小时前
你的源服务器可能是你做出的最昂贵决定
运维·人工智能·云计算
冬奇Lab6 小时前
【无标题】
人工智能·开源