文章目录

  • 前言
  • 一、图像滤波与增强
  • 二、图像灰度处理
  • 三、阈值处理与设定
  • 四、二值化处理
  • 五、边缘提取
  • 六、角点检测
    • 1.使用cornerMinEigenVal算子
    • 2.使用cornerHarris算子
  • 七、源码下载
  • 总结

前言

今天我们一起来使用LabVIEW AI视觉工具包快速实现图像的滤波与增强;图像灰度处理;阈值处理与设定;二值化处理;边缘提取与特征提取等基本操作。工具包的安装与下载方法可见之前的两篇博客。

一、图像滤波与增强

有时候我们想要处理的图像中噪音太多,影响到我们的识别判断,我们就需要对图像进行模糊处理,使图像变得平滑。而LabVIEW AI视觉工具包提供给我们filter 2d算子可以对图像进行2D卷积,我们可以使用自定义的卷积核来对图像进行卷积操作。该算子输入输出如下所示:

图像内核是一个小矩阵,在Photoshop或Gimp中找到的效果都可以实现,例如模糊,锐化,轮廓或浮雕。它们还用于机器学习中的“特征提取”,这是一种用于确定图像最重要部分的技术。在这种情况下,该过程更普遍地称为“卷积”,调用filter 2d算子配合不同卷积核实现图像滤波和增强的程序如下:

在前面板选择不同的卷积核可以实现不同的效果:

不同卷积核效果如下:
1.模糊(blur)

2.索贝尔(sobel),仅显示特定方向上相邻像素值的差异,从上往下,从暗处到亮处增强显示

3.浮雕(emboss),通过强调像素的差在给定方向的Givens深度的错觉,从左上往右下,从暗处到亮处增强显示:

4.大纲(outline),一个轮廓内核(也称为“边缘”的内核)用于突出显示的像素值大的差异,轮廓的增强显示

5.锐化(sharpen),该锐化内核强调在相邻的像素值的差异。这使图像看起来更生动

6.拉普拉斯算子(laplacian operator),可以用于边缘检测,对于检测图像中的模糊也非常有用。

7.分身(identity)就是原图

二、图像灰度处理

之前我们说过,LabVIEW默认使用BGR读取图像,所以我们将图片转化为灰度图使用cvtColor算子,参数选择:BGR2GRAY,如下图所示:

程序结果如下:

我们可以看到程序中使用了calHist用以绘制图片通道直方图,并以波形图显示出来;calHist函数参数具体如下:


波形图显示控件:前面板右键–>Graph–>Waveform Graph;

直接读取原图显示程序如下:

程序结果如下:

三、阈值处理与设定

如下程序通过设定阈值,实现将其他颜色全部过滤,只保留红蓝绿三种颜色:

程序结果如下:

threshold算子参数分析:

四、二值化处理

将图片先转化为灰度图,再进行二值化,程序如下:

设置阈值和最大值,二值化之后的程序结果如下:

五、边缘提取

如下程序为使用findContours实现边缘提取:

程序实现效果如下:

六、角点检测

1.使用cornerMinEigenVal算子

角点检测程序如下:

程序结果如下:

2.使用cornerHarris算子

角点检测程序如下:

程序结果如下:

七、源码下载

链接:https://pan.baidu.com/s/1Ua00IwcLGFoFtXAWKDGW_w
提取码:8888

总结

具体源码详细请见下载链接。
更多关于LabVIEW与人工智能技术,可添加技术交流群进一步探讨。
qq群号:705637299

手把手教你使用LabVIEW人工智能视觉工具包快速实现传统Opencv算子的调用(含源码)相关推荐

  1. 【YOLOv5】手把手教你使用LabVIEW ONNX Runtime部署 TensorRT加速,实现YOLOv5实时物体识别(含源码)

    文章目录 前言 一.TensorRT简介 二.准备工作 三.YOLOv5模型的获取 1.下载源码 2.安装模块 3.下载预训练模型 4.转换为onnx模型 四.LabVIEW使用TensorRT加速Y ...

  2. 仪酷LabVIEW AI视觉工具包及开放神经网络交互工具包常见问题解答

    前言 哈喽,各位朋友,好久不见~ 之前给大家分享了基于LabVIEW开发的AI视觉工具包及开放神经网络交互工具包,不少朋友私信说在安装和使用过程中会遇到一些问题,今天我们就集中回复一下大家问到最多的问 ...

  3. 用python画皇冠_【推荐】手把手教你如何用Python画一棵漂亮樱花树含源码

    最近给大家整理了一下,挑了一些我觉得不错的代码分享给大家手把手教你如何用Python画一棵漂亮樱花树含源码. 动态生成樱花 效果图(这个是动态的): import turtle as T import ...

  4. 【YOLOv5】LabVIEW+YOLOv5快速实现实时物体识别(Object Detection)含源码

    文章目录 前言 一.关于YOLOv5 二.YOLOv5模型的获取 1.下载源码 2.安装模块 3.下载预训练模型 4.转换为onnx模型 三.LabVIEW调用YOLOv5模型实现实时物体识别(yol ...

  5. LabVIEW AI视觉工具包(非NI Vision)下载与安装教程

    文章目录 前言 一.安装VIPM 二.机器视觉工具包的安装 1.CPU用户 2.GPU用户 前言 上一篇博客LabVIEW图形化的AI视觉开发平台(非NI Vision),大幅降低人工智能开发门槛给大 ...

  6. 手把手教你使用LabVIEW OpenCV DNN实现手写数字识别(含源码)

    文章目录 前言 一.OpenCV DNN模块 1.OpenCV DNN简介 2.LabVIEW中DNN模块函数 二.TensorFlow pb文件的生成和调用 1.TensorFlow2 Keras模 ...

  7. 手把手教你使用LabVIEW OpenCV dnn实现图像分类(含源码)

    文章目录 前言 一.什么是图像分类? 1.图像分类的概念 2.MobileNet简介 二.使用python实现图像分类(py_to_py_ssd_mobilenet.py) 1.获取预训练模型 2.使 ...

  8. Android性能优化:手把手教你如何让App更快、更稳、更省(含内存、布局优化等)...

    2019独角兽企业重金招聘Python工程师标准>>> 前言 在 Android开发中,性能优化策略十分重要 因为其决定了应用程序的开发质量:可用性.流畅性.稳定性等,是提高用户留存 ...

  9. 百度飞桨PP-YOLOE ONNX 在LabVIEW中的部署推理(含源码)

    文章目录 前言 一.什么是PP-YOLO 二.环境搭建 1.部署本项目时所用环境 2.LabVIEW工具包下载及安装 三.模型的获取与转化 1.安装paddle 2.安装依赖的库 3.安装pycoco ...

最新文章

  1. php 正则中文匹配
  2. mysql递归sql_SQL如何实现MYSQL的递归查询,SQL实现MYSQL递归
  3. ncurse界面编程多线程示例
  4. 【python进阶】_文件和目录操作
  5. 我爱我家:我为什么选择AppCan?
  6. Camparable与Comparator之区别
  7. python魔法函数和装饰器_python魔法方法、构造函数、序列与映射、迭代器、生成器...
  8. Linux操作系统RedHat6.5安装
  9. Stoer-Wagner无向图全局最小割(hduoj 3691 Nubulsa Expo)
  10. win10连接计算机,win10怎么连接局域网打印机
  11. html浏览xsd,那点你不知道的XHtml(Xml+Html)语法知识(DTD、XSD)
  12. linux netcdf编译,Linux下安装Netcdf
  13. 基于JAVA中文网络小说平台系统计算机毕业设计源码+系统+数据库+lw文档+部署
  14. 图形算法:圆形生成算法
  15. [论文解读]Going out on a limb: Joint Extraction of Entity Mentions and Relations without...
  16. Ubuntu各个版本下载
  17. 普通计算机怎么算根号_根号一个数字怎么算出来?
  18. IOS AVPlayer无法播放H265编码格式的MP4视频
  19. APP软件上传安卓苹果应用商店上架APP应用市场
  20. 医疗讲座直播运营方案怎么做

热门文章

  1. 计蒜客NOIP模拟赛 数三角形
  2. js判断是否是手机访问网页
  3. 社群SOP:一个工具让社群运营事半功倍
  4. Error building SqlSession.The error may exist in cn/library/mapper/UserMapper.xml(Mybatis搭建测试中的错误解决)
  5. 华为OD机试 - 航天器(Python) | 机试题+算法思路+考点+代码解析 【2023】
  6. 将阿拉伯数字转成中文字
  7. MYSQL查询一年中12个月的数据,补全12个月.
  8. 风行python_python随笔
  9. Jmeter系列之《3.badboy脚本开发技术详解》
  10. java 抖音开放平台 code token等