手把手教你使用LabVIEW人工智能视觉工具包快速实现图像读取与采集

文章目录

前言

今天我们一起来使用LabVIEW AI视觉工具包快速实现图像的读取与颜色空间转换、从摄像头采集图像。工具包的安装与下载方法可见之前的两篇博客。

一、工具包位置

已经安装好的工具包位于程序框图-函数选板-Addons-VIRobotics-opencv_yiku,内容包括:Mat类型(矩阵)的操作、摄像头采集、图片文件读写、基本算子、视频生成、神经网络调用等功能。

手把手教你使用LabVIEW人工智能视觉工具包快速实现图像读取与采集

; 二、图像采集与色彩空间转换

1.文件读写

(1)程序框图面板右键:File I/O,拖出拆分路径和拼接路径函数到程序框图面板待用;

手把手教你使用LabVIEW人工智能视觉工具包快速实现图像读取与采集

(2)程序框图面板右键:File I/O –>File Constants,拖出当前路径函数到程序框图面板待用;

手把手教你使用LabVIEW人工智能视觉工具包快速实现图像读取与采集

; 2.实现图片读取

(1)在程序框图面板空白处右键–>在函数选板–>Addons–>VIRobotics–>opencv_yiku-imgcodes中找到要使用的imread函数,拖出;

手把手教你使用LabVIEW人工智能视觉工具包快速实现图像读取与采集
(2)imread函数读取指定路径的图片(jpg/png/bmp格式),返回Mat对象,具体输入输出如下所示:
手把手教你使用LabVIEW人工智能视觉工具包快速实现图像读取与采集
(3)程序框图面板右键:Application Control–>Property Node,将属性节点拖出,用来获取Mat对象中的各种参数(本例中是图片),并放到图片控件中;
手把手教你使用LabVIEW人工智能视觉工具包快速实现图像读取与采集
(4)释放Mat资源;
手把手教你使用LabVIEW人工智能视觉工具包快速实现图像读取与采集
(5)按照下图所示连接,将待读取的图片与此vi置于同一路径下并运行;
手把手教你使用LabVIEW人工智能视觉工具包快速实现图像读取与采集
(6)读取图片如下图所示(左侧为原图,右侧为读取出来的图片),我们发现读取的图片颜色和原图不一样;
手把手教你使用LabVIEW人工智能视觉工具包快速实现图像读取与采集

3.使用算子cvtColor实现颜色空间转换

(1)因为LabVIEW中的图像排列顺序是RGB,opencv中的图像排列顺序是BGR,所以读取出来的图片颜色和原图不一样;
(2)使用算子cvtColor进行颜色空间转换,程序框图面板右键: Addons–>VIRobotics–>opencv_yiku–>imgproc: cvtColor ,拖出;

手把手教你使用LabVIEW人工智能视觉工具包快速实现图像读取与采集
(3)算子cvtColor的输入与输出如下图所示:

手把手教你使用LabVIEW人工智能视觉工具包快速实现图像读取与采集
(4) LabVIEW中算子(cvtColor)的使用方式一:输入的dst端不接输入,运行函数后输出的图片会替换掉原来的图片(src out和dst out的值一致),程序及结果如下图所示:
手把手教你使用LabVIEW人工智能视觉工具包快速实现图像读取与采集
手把手教你使用LabVIEW人工智能视觉工具包快速实现图像读取与采集

(5) LabVIEW中算子(cvtColor)的使用方式二:输入的dst端接一个Create_Mat,即新建一个mat对象,运行函数后,dst的内容不会影响src的内容;程序及结果如下图所示:

手把手教你使用LabVIEW人工智能视觉工具包快速实现图像读取与采集
手把手教你使用LabVIEW人工智能视觉工具包快速实现图像读取与采集
手把手教你使用LabVIEW人工智能视觉工具包快速实现图像读取与采集

; 三、从摄像头采集图像

1.Camera类

(1)新建一个vi,在程序框图面板右键:Addons–>VIRobotics –> opencv_yiku: Camera。找到摄像头初始化函数new_Cap,函数右上角输出Cap,是使用摄像头前的必备动作,将其拖至面板空白处备用;

手把手教你使用LabVIEW人工智能视觉工具包快速实现图像读取与采集

(2)在程序框图面板右键:Addons–>VIRobotics –> opencv_yiku: Camera。找到startCaptura,将其拖至面板空白处,使用该函数若只填写camerID时,请保障摄像头正常。只要连接有preference,则有多个本地摄像头时,优先使用分配到该ID的摄像头,若该摄像头不存在,则使用其它摄像头。

手把手教你使用LabVIEW人工智能视觉工具包快速实现图像读取与采集

(3)在程序框图面板右键:Addons–>VIRobotics –> opencv_yiku: Camera。找到获取图像函数readImage,接在打开摄像头之后,用以获取摄像头拍摄的图像。 Mat输出图像(矩阵);

手把手教你使用LabVIEW人工智能视觉工具包快速实现图像读取与采集

(4)在程序框图面板右键:Addons–>VIRobotics –> opencv_yiku: Camera。找到停止拍摄函数stopCapture,接到程序最后,释放摄像头资源,若不操作,可能会造成下一次使用不便。

手把手教你使用LabVIEW人工智能视觉工具包快速实现图像读取与采集

; 2.属性节点

(1)程序框图面板右键:Application Control : Property Node,拖出,接至startCaptura之后

手把手教你使用LabVIEW人工智能视觉工具包快速实现图像读取与采集
(2)根据摄像头实际支持的分辨率设置宽高。属性的箭头在右侧表示读取,只需右键选择Change To Write即可修改为写入。
手把手教你使用LabVIEW人工智能视觉工具包快速实现图像读取与采集

3.实现摄像头采集图像

整体程序如下,使用循环采集图像,点击stop按钮,循环结束,整个程序结束并释放资源。

手把手教你使用LabVIEW人工智能视觉工具包快速实现图像读取与采集

; 四、源码下载

链接:https://pan.baidu.com/s/1TEihgoG5bIFz1SRCIab-mQ
提取码:8888

总结

更多关于LabVIEW与人工智能技术,可添加技术交流群进一步探讨。
qq群号:705637299

Original: https://blog.csdn.net/virobotics/article/details/123663532
Author: virobotics
Title: 手把手教你使用LabVIEW人工智能视觉工具包快速实现图像读取与采集

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/632591/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球