labview IMAQ模块介绍
基于Labview的图像获取

基于Labview的图像获取本文详细陈述了基于Labview软件平台下,以常见的USB接口摄像头为图像获取设备,设计开发的图像实时获取并简单处理储存的虚拟仪器软件系统。
通过运用功能强大的视觉运动模块IMAQ,以图像化的程序语言完成图像获取与存储的编写。
完整的图像获取软件通过调用动态链接库(DLL),进而驱动USB接口摄像头进行所需的图像获取过程,同时将获取的的图像进行简单的处理并存储在相应的文件中。
另外,我们可以通过labview的前面板实时观察图像获取的情况并展示。
该图像获取软件系统克服了通用性差、开发时间长等缺点,具有可靠性强、灵活性高、开发门槛低、优秀的性价比等诸多优点。
关键词:Labview平台;USB摄像头;IMAQ;图像获取目录中文摘要 (I)英文摘要............................................................................................................................... I I 第一章引言....................................................................................... 错误!未定义书签。
第二章图像获取数据基本函数介绍 (3)2.1 调用库函数节点函数(call liabrary function node) (3)2.2 IMAQ Vision中子VI基本介绍 (3)2.2.1 IMAQ USB Grab Setup.vi (3)2.2.2 IMAQ Create.vi (3)2.2.3 IMAQ Dispose.vi. (4)2.2.4 IMAQ USB Stop.vi (4)2.2.5 IMAQ USB Close.vi (4)2.2.6 IMAQ USB Enumerate Cameras.vi (4)2.2.7 IMQA USB Init.vi (4)2.2.8 IMAQ USB PropertyPage.vi (4)2.2.9 IMAQ A VI Get Filter Names.vi (5)2.2.10 IMAQ A VI Create.vi (5)2.2.11 IMAQ USB Grab Acquire.vi (5)2.2.12 IMAQ Add.vi (5)2.3 LabVIEW中的程序结构介绍 (5)2.3.1 While循环 (5)2.3.2 For循环 (6)2.3.3 位移寄存器 (6)2.3.4 条件结构(Case结构) (6)2.3.5 平铺式顺序结构 (6)2.3.6 事件结构 (7)第三章图像获取程序中子VI的介绍 (8)3.1 InitCam.vi (8)3.2 InitA VI.vi (9)3.3 SaveA VI.vi (10)3.4 ReadDataCam.vi (11)第四章图像获取主VI的介绍 (13)4.1 检测USB摄像头的接入 (13)4.1.1 While循环语句 (13)4.1.2 Case结构语句 (13)4.2 程序运行部分 (13)4.2.1 事件结构的内容介绍 (14)4.2.2 图像获取过程介绍 (14)4.2.3图像获取结束 (17)4.3 关闭USB摄像头 (17)第五章最终获取的图像介绍 (18)5.1 前面板 (18)5.2 获取的图像 (18)参考文献 (23)4第一章引言Labview(Laboratory Virtual Instrument Engineering Workbench)是美国国家仪器公司(National Instruments Corporation)开发的实验室虚拟仪器集成环境。
labviewIMAQ模块介绍

IMAQ模块介绍fhinali编写IMAQ模块介绍一.LabVIEW机器视觉前面板上的模块有以下几类(如图1所示)1.IMAQ Image.ctl2.Image Display control3.IMAQ Vision controls4.Machine Vision controls图11 IMAQ Vision controls对图像进行分析和处理所用到的一些控件,包括图像的类型,图像处理的方式和不同的形态算子以及颜色的类型的选择等等。
如图2IMAQ 模块介绍 fhinali 编写图21.1 Image Type用于图片类型的选择,可以选择的类别有8bits ,16bits ,Float ,Complex ,RGB 和HSL 。
一般用在从文件中读取图片时类型的选择。
1.2 ROI DescriptorROI 区域的描述。
ROI 是Region Of Interesting 的简称,中文应该翻译为目标区域。
一般用在一个大图中取一块特定形状的区域,以便后续的处理和分析。
ROI 为一簇数据,包括一个整数数组和一个簇组成的数组。
整数数组内有4个元素,为图形最小外接矩形的四条边的坐标。
簇数组中的簇由轮廓类型(整数),ROI 类型(整数)和图形坐标点(为数组,根据ROI 类型的不同,数组的定义也不同)1.3Optional Rectangle选择的矩形区域,为四个元素的数组,代表矩形的四条边的坐标。
1.4Color Mode色彩模式,彩色图形的显示和处理模式,包括RGB,HSL,HSV,HIS 四种。
1.5Threshold Range阀值范围,为一包含两个数组元素的簇,常用于灰度或色彩图像阀值处理模块中。
1.6 Convolution Kernel二维浮点数组成的数组,用于构造一些算法的算子。
1.7 Morphology Operation形态算法的选择。
可以选择不同的数据处理方式。
1.8 Structuring Element结构元素,为二维的整数数组。
imaq

IMAQ VISIONIMAQ Vision是LabVIEW内置的视觉开发工具包,其中包括IMAQ Vision和Vision Builder 两个组件。
IMAQ Vision是一个功能强大的函数库,提供了在LabVIEW平台上开发机器视觉系统所需要的各种子程序,例如图像采集、系统校准、图像处理、几何量测量等。
Vision Builder 是一个交互式的机器视觉系统开发环境,可以在系统软件设计的每一步看到输出的中间结果,并可以随时进行修改。
设计完成后能够自动生成LabVIEW程序代码。
NI 的IMAQ Vision 软件包为图像处理提供了完整的功能。
它将400多种功能集成到LabVIEW 和Measurement Studio(LabWindows/CVI,Visual C++及Visual Basic)开发环境中。
此外,IMAQ Vision Builder 可用于快速浏览、建立模型及测试应用,且无需编程。
NI的OCR 软件为LabVIEW 与BridgeVIEW 开发者提供了字符识别功能,可用于工业检验中读取字母。
通过交互式、可配置的软件或强大的程序库创建应用与数据采集和运动控制设备集成NI-IMAQ 驱动软件使配置和维护更简单可从LabVIEW、LabWindows/CVI、C、C++和Visual Basic中调用超过200个函数具有可配置、可编程、实时和嵌入式机器视觉的功能这个最新版本的图像软件扩充了NI的简单易用的机器视觉和图像处理工具的功能,使得流行的编程语言也能用来作图像处理。
通过IMAQ Vision 6.0,工程师们可以用Measurement Studio非常容易的创建完整的视觉检测应用程序来迅速并可靠的完成有关测量任务. Measurement Studio是一个提供各种测量工具的软件包。
所提供的工具包括数据采集,数据分析,数据图形化等. Measurement Studio支持Microsoft Visual Basic, Visual C++和ANSI标准C 语言National Instruments视觉软件产品具有机器视觉应用的众多优势。
【免费】LABVIEW-IMAQ模块中文说明书

IMAQ模块介绍一.LabVIEW机器视觉前面板上的模块有以下几类(如图1所示)1.IMAQ Image.ctl2.Image Display control3.IMAQ Vision controls4.Machine Vision controls图11 IMAQ Vision controls对图像进行分析和处理所用到的一些控件,包括图像的类型,图像处理的方式和不同的形态算子以及颜色的类型的选择等等。
如图2图21.1 Image Type用于图片类型的选择,可以选择的类别有8bits ,16bits ,Float ,Complex ,RGB 和HSL 。
一般用在从文件中读取图片时类型的选择。
1.2 ROI DescriptorROI 区域的描述。
ROI 是Region Of Interesting 的简称,中文应该翻译为目标区域。
一般用在一个大图中取一块特定形状的区域,以便后续的处理和分析。
ROI 为一簇数据,包括一个整数数组和一个簇组成的数组。
整数数组内有4个元素,为图形最小外接矩形的四条边的坐标。
簇数组中的簇由轮廓类型(整数),ROI 类型(整数)和图形坐标点(为数组,根据ROI 类型的不同,数组的定义也不同)1.3Optional Rectangle选择的矩形区域,为四个元素的数组,代表矩形的四条边的坐标。
1.4Color Mode色彩模式,彩色图形的显示和处理模式,包括RGB,HSL,HSV,HIS 四种。
1.5Threshold Range阀值范围,为一包含两个数组元素的簇,常用于灰度或色彩图像阀值处理模块中。
1.6 Convolution Kernel二维浮点数组成的数组,用于构造一些算法的算子。
1.7 Morphology Operation形态算法的选择。
可以选择不同的数据处理方式。
1.8 Structuring Element结构元素,为二维的整数数组。
2 Machine Vision controls机器视觉中用到的一些控件,只要是对图像画面进行选择的一些工具,包括点,线和面的选择以及坐标系的设定。
imaq arraytoimage的用法

imaq arraytoimage的用法IMAQ ArrayToImage函数是LabVIEW图像处理工具包中的一个函数,用于将图像数据从数组格式转换为图像格式。
它主要用于将一维或二维数组表示的图像转换为NI Vision库可以处理的图像类型。
在本文中,我将详细介绍IMAQ ArrayToImage函数的用法,并分步回答您关于该函数的问题。
首先,让我们来了解一下IMAQ ArrayToImage函数的基本语法和参数:IMAQ ArrayToImage(Array, Width, Height, Pixel Type)Array:要转换的数组,可以是一维或二维数组。
Width:图像宽度,单位为像素。
Height:图像高度,单位为像素。
Pixel Type:图像像素类型,例如8位灰度图像、24位RGB图像等。
接下来,我将详细介绍IMAQ ArrayToImage函数的用法,并回答您的问题:第一步:导入NI Vision库在LabVIEW中,首先需要导入NI Vision库,以便使用其中的图像处理函数。
您可以通过从“Functions”面板的“Vision and Motion”目录中拖放NI Vision 库中的函数模块来导入该库。
首先,您需要创建一个一维或二维的数组来表示图像。
可以使用LabVIEW的Array函数来创建一个数组,并填充它的元素。
数组的元素类型和维度应与您要转换的图像相匹配。
第三步:设置图像宽度和高度在调用IMAQ ArrayToImage函数之前,您需要确保已经准确设置了图像的宽度和高度。
这两个参数应与数组的维度匹配,以便正确地转换图像。
第四步:设置图像像素类型根据您要转换的图像的像素类型,您需要设置“Pixel Type”参数。
根据具体情况,您可以选择8位灰度图像、24位RGB图像等。
第五步:调用IMAQ ArrayToImage函数在对数组、宽度、高度和像素类型参数进行适当设置后,您可以调用IMAQ ArrayToImage函数,以便将数组转换为图像。
【免费】LABVIEW-IMAQ模块中文说明书

IMAQ模块介绍 fhinali编写IMAQ模块介绍一.LabVIEW机器视觉前面板上的模块有以下几类(如图1所示)1. IMAQ Image.ctl2.Image Display control3.IMAQ Vision controls4.Machine Vision controls图11 IMAQ Vision controls对图像进行分析和处理所用到的一些控件,包括图像的类型,图像处理的方式和不同的形态算子以及颜色的类型的选择等等。
如图2 IMAQ模块介绍 fhinali编写图21.1 Image Type用于图片类型的选择,可以选择的类别有8bits,16bits,Float,Complex,RGB和HSL。
一般用在从文件中读取图片时类型的选择。
1.2 ROI DescriptorROI区域的描述。
ROI是Region Of Interesting的简称,中文应该翻译为目标区域。
一般用在一个大图中取一块特定形状的区域,以便后续的处理和分析。
ROI为一簇数据,包括一个整数数组和一个簇组成的数组。
整数数组内有4个元素,为图形最小外接矩形的四条边的坐标。
簇数组中的簇由轮廓类型(整数),ROI类型(整数)和图形坐标点(为数组,根据ROI类型的不同,数组的定义也不同)1.3Optional Rectangle选择的矩形区域,为四个元素的数组,代表矩形的四条边的坐标。
1.4Color Mode色彩模式,彩色图形的显示和处理模式,包括RGB,HSL,HSV,HIS四种。
1.5Threshold Range阀值范围,为一包含两个数组元素的簇,常用于灰度或色彩图像阀值处理模块中。
1.6 Convolution Kernel二维浮点数组成的数组,用于构造一些算法的算子。
1.7 Morphology Operation形态算法的选择。
可以选择不同的数据处理方式。
1.8 Structuring Element结构元素,为二维的整数数组。
labview的imaq例子

labview的imaq例子
LabVIEW的IMAQ(Image Acquisition)模块是用于图像处理和分析的模块之一,主要用于图像采集、处理和分析。
在LabVIEW中,可以通过IMAQ模块来实现各种图像处理和分析的应用。
以下是几个IMAQ 的例子:
1. 图像处理例子:通过IMAQ模块对图像进行处理,比如调整亮度、对比度、增强图像细节等。
2. 图像分析例子:通过IMAQ模块对图像进行分析,比如检测图像中的目标、计算图像的特征等。
3. 视觉检测例子:通过IMAQ模块实现视觉检测应用,比如检测物体的位置、大小、形状等。
4. 工业检测例子:通过IMAQ模块实现工业检测应用,比如检测产品的质量、缺陷等。
在LabVIEW中,可以通过打开Examples菜单来查看各种示例程序,其中包括IMAQ模块的示例程序。
可以选择适合自己的应用示例,并进行相应的修改和调整。
Labview中NI-IMAQdx模块说明

NI-IMAQdx模块说明IMAQdx Snap VI:配置,启动,获取和取消配置单元采集。
在便于编程的应用场合中使用低速或单捕获是必不可少的部分。
如果你调用这个VI之前调用IMAQdx Open Camera VI,IMAQdx Snap VI默认情况下,使用cam0。
如果图像类型与摄像头的视频格式不匹配,该VI将其转换到一个合适的图像类型格式。
Session In:指定您想重新设置的摄像机的名称。
默认值是cam0Session Out:是一个独特的参考相机,与Session In相同IMAQdx Configure Grab VI:配置和开始采集图像.调用IMAQdx Grab VI在缓冲区高速循环采集图像并复制图像。
若在调用IMAQdx Open Camera VI之前调用此VI,则IMAQdx Configure Grab VI默认情况下使用cam0。
调用IMAQdx Unconfigure Acquisition VI取消获取图像的配置。
Session In:指定您想重新设置的摄像机的名称。
默认值是cam0Session Out:是一个独特的参考相机,与Session In相同IMAQdx Grab VI:获取输出图像的当前帧。
在调用IMAQdx Configure Grab VI之后才调用此VI。
如果图像类型与摄像头的视频格式不匹配,该VI将其转换到一个合适的图像类型格式。
Session In:是一个独特的摄像头.可以通过调用IMAQdx Open Camera VI来得到Session Out:是一个独特的参考相机,与Session In相同Wait for Next Buffer?(Yes):若值为“Yes”,驱动程序将等待下一个可用的缓冲区;若值为“No”,将不会等待下一个可用的缓冲区,而是返回到最后采集的缓冲区。
Buffer Number Out:是实际获得的缓冲区的返回值。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
IMAQ模块介绍fhinali编写IMAQ模块介绍一.LabVIEW机器视觉前面板上的模块有以下几类(如图1所示)1.IMAQ Image.ctl2.Image Display control3.IMAQ Vision controls4.Machine Vision controls图11 IMAQ Vision controls对图像进行分析和处理所用到的一些控件,包括图像的类型,图像处理的方式和不同的形态算子以及颜色的类型的选择等等。
如图2IMAQ 模块介绍 fhinali 编写图21.1 Image Type用于图片类型的选择,可以选择的类别有8bits ,16bits ,Float ,Complex ,RGB 和HSL 。
一般用在从文件中读取图片时类型的选择。
1.2 ROI DescriptorROI 区域的描述。
ROI 是Region Of Interesting 的简称,中文应该翻译为目标区域。
一般用在一个大图中取一块特定形状的区域,以便后续的处理和分析。
ROI 为一簇数据,包括一个整数数组和一个簇组成的数组。
整数数组内有4个元素,为图形最小外接矩形的四条边的坐标。
簇数组中的簇由轮廓类型(整数),ROI 类型(整数)和图形坐标点(为数组,根据ROI 类型的不同,数组的定义也不同)1.3Optional Rectangle选择的矩形区域,为四个元素的数组,代表矩形的四条边的坐标。
1.4Color Mode色彩模式,彩色图形的显示和处理模式,包括RGB,HSL,HSV,HIS 四种。
1.5Threshold Range阀值范围,为一包含两个数组元素的簇,常用于灰度或色彩图像阀值处理模块中。
1.6 Convolution Kernel二维浮点数组成的数组,用于构造一些算法的算子。
1.7 Morphology Operation形态算法的选择。
可以选择不同的数据处理方式。
1.8 Structuring Element结构元素,为二维的整数数组。
Edited by Foxit ReaderCopyright(C) by Foxit Software Company,2005-2008For Evaluation Only.2 Machine Vision controls机器视觉中用到的一些控件,只要是对图像画面进行选择的一些工具,包括点,线和面的选择以及坐标系的设定。
如图3所示2.1 Point点的选择,包括两个元素的簇,分别为横坐标和纵坐标。
2.2 Line线的选择,包括四个元素的簇,分别为起点和终点的横坐标和纵坐标。
2.3 Rectangle面的选择,包括五个元素的簇,分别为对角线两点横坐标和纵坐标,以及矩形选择的角度。
2.4 Circle环形面,包括六个元素的簇,分别为圆心坐标,内外半径的长度以及起始角和终止角。
图3二以上都是程序前面板上所用到的控件,而LabVIEW强大的图像处理功能都是通过其程序面板上的功能节点来实现的。
主要的节点可以分为以下四大类,如图41 Image Acquisition2 Vision Utilities3 Image Processing4 Machine Vision图41 Image Acquisition图像采集功能模块,主要是通过NI的系列图像采集板卡来获得图像。
节点包括任务的建立,设备的初始化以及硬件参数的设定等功能节点。
如图5图52 Vision Utilities视觉应用模块,用来对图像进行一些初步的整体操作。
如图6IMAQ 模块介绍 fhinali 编写图62.1 Image Management图像管理模块,包括建立和清除图像任务,获取图像的各类信息,图像的类型转换等功能节点。
如图72.1.1Create 创建一个图像任务 2.1.2Dispose 清除图像任务2.1.3Get Image Size 获得图像的大小信息 2.1.4Set Image Size 设置图像的大小2.1.5Get Image Info 获得图像信息,包括图像的大小,名称,分辨率等 2.1.6Copy 拷贝图像2.1.7Image to Image 一个图像映射到另一个图像上2.1.8Get Offset 针对于mask 而言。
获得Mask 在图像中的偏移量。
2.1.9Set Offset 针对于mask 而言。
设定Mask 在图像中的偏移量。
2.1.10Cast Image 图像类型的转换。
2.1.11 Is Vision Info Present 判断图像中是否存在图像信息。
Edited by Foxit ReaderCopyright(C) by Foxit Software Company,2005-2008For Evaluation Only.图72.2Files图像文件模块,完成对图像文件的读写,以及图像附加信息的读写操作。
图82.2.1Read File读取图像文件2.2.2Write File保存图像文件2.2.3Get File Info获得图像信息,包括图像的类型,分辨率大小2.2.4Write BMP File保存为BMP图像文件2.2.5Write JPEG File保存为JPEG图像文件2.2.5Write PNG File保存为PNG图像文件2.2.5Write TIFF File保存为TIFF图像文件2.2.6Read Image And Vision Info 读取图像及其附加信息。
2.2.7Write Image And Vision Info 保存图像及其附加信息。
2.3External Display图像的外部显示。
具体功能还不太清楚。
如图9所示图92.4Region of InterestROI模块,主要完成ROI和Mask之间的转化,ROI区域的设定以及在不同坐标系下的转换。
10如图图102.4.1ROIToMask2.4.2MaskToROI以上两者Mask和ROI之间的相互转换。
在一些图像的分析模块中,除了要求输入图片外,还要一个Mask,即只对图片中的Mask区域进行分析,这就要求把自己选择的ROI转换为Mask。
2.4.3Group ROIs把多个ROI数组转换为一个ROI区域。
其中转换后的ROI区域包含原ROI 数组的所有区域。
2.4.4Ungroup ROIs为2.4.3Group ROIs的逆运算,即把一个ROI区域转换为ROI数组,数组中的每个ROI都是一个图形轮廓。
2.4.5 TransformROI把ROI区域从一个坐标系转换为另一种坐标系中。
2.4.6 ROI Conversion ROI和各种点、线、面等各类图形之间的转换。
2.5Image Manipulation11图像处理模块。
包括图像的放大和缩小,平移以及旋转。
如图图112.5.1 Resample重新定义图像的大小,使用此模块可以放大或缩小图像。
2.5.2 Expand 通过调整整幅或一部分图片的分辨率,来放大图片。
2.5.3 Extract 通过调整整幅或一部分图片的分辨率,来缩小图片。
2.5.4 Interlace 分别提取一幅图像的奇偶像素,分成两幅图片。
2.5.5 Symmetry 得到一幅图像的对称图像2.5.6 Rotate得到一幅图像的旋转图像2.5.7 Shift 得到一幅图像的平移图像2.5.8 Unwrap 将环形的图片展开成矩形2.5.9 Clipboard To Image将剪贴的数据拷贝到图像2.5.10 Image To Clipboard 将图像拷贝到剪贴板2.5.11 3DView将图像进行三维变换2.6Pixel Manipulation图像像素处理模块。
对图像的像素直接进行操作,包括图像上点,线,面像素值的获取和设定,以及在图像中插入文本。
如图12图122.6.1 Get pixel value获得图像中某一点的像素值,仅限于灰度图像。
2.6.2 GetRowCol获得图像中某一行或者列的像素值,仅限于灰度图像2.6.3 GetPixelLine获得图像中某一条直线的像素值,仅限于灰度图像2.6.4 ImageToArray将图像转化为数组2.6.5 SetPixelValue 设置图像中某一点的像素值。
2.6.6 SetRowCol 设置图像中某一行或者列的像素值2.6.7 SetPixelLine 设置图像中某一条直线上点的像素值2.6.8 ArrayToImage 将数组转化为图像2.6.9 FillImage将图像中的某块区域用像素值填充2.6.10 Draw 在图像中绘制几何图形2.6.11 Draw Text在图像中添加文字2.7Overlay图像覆盖模块。
可以对图像上的某一点,线,面(多边形,矩形和圆)进行覆盖。
此种覆盖为非破坏性的覆盖,即不破坏原有的图像,覆盖信息可以另外和图像一起保存。
如图13IMAQ 模块介绍 fhinali 编写图132.7.1 Overlay Points 在图像中覆盖一点或是一组点 2.7.2 Overlay Line 在图像中覆盖一条线2.7.3 Overlay Multiple Lines 在图像中覆盖多条直线或多边形 2.7.4 Overlay Rectangle 在图像中覆盖一矩形 2.7.5 Overlay Oval 在图像中覆盖一椭圆 2.7.6 Overlay Arc 在图像中覆盖一弧形 2.7.7 Overlay Bitmap 在图像中覆盖一位图 2.7.8 Overlay Text 在图像中覆盖文字 2.7.9 Clear Overlay 在图像中清除覆盖 2.7.10 Copy Overlay 在图像中拷贝覆盖 2.7.11 Overlay ROI 在图像中覆盖ROI 区域 2.7.12 Merge Overlay 合并图像中的覆盖2.7.13 Read Image And Vision Info 读取图像以及图像信息 2.7.14 Write Image And Vision Info 写入图像以及图像信息上述读写图像及信息的模块,是将图像中的覆盖信息一块读取/保存的2.8Calibration 校准模块。
校准由于相机镜头的光学畸变而或拍摄角度引起图像变化。
也包含像素坐标系和实际坐标系之间的转换节点。
如图14Edited by Foxit ReaderCopyright(C) by Foxit Software Company,2005-2008For Evaluation Only.图142.8.1 Learn Calibration Template对校准模块进行学习2.8.2 Set Simple Calibration 对校准的设置2.8.3 Set Calibration Info 设置图像校准的信息2.8.4 Get Calibration Info 获得图像校准中的信息2.8.5 Convert Real World to Pixel 将实际坐标系转化为图像像素坐标系2.8.6 Convert Pixel to Real World 将图像像素坐标系转化为实际坐标系2.8.7 Correct Calibrated Image对图像进行校准2.8.8和2.8.9与2.7.13和2.7.14模块相同。