NIVisionforLabVIEW学习基础.doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《NIVisionforLabVIEW学习基础.doc》由会员分享,可在线阅读,更多相关《NIVisionforLabVIEW学习基础.doc(84页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、+NI Vision for LabVIEW基础(目录) 2010-01-21 16:52:08标签:LabView 机器视觉 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http:/ 目录NI VISION简介4NI Vision 控件模板4NI Vision 函数模板4如何创建NI Vision应用8准备测量图像10建立图像系统10校准图像系统11创建图像11采集或读取图像15显示图像16加入校准信息19分析图像19改善图像20进行灰度和彩色测量25定义关注区25测量灰度统计数据32测量彩色统计数据33进行颗粒分析38创建二值图像
2、38改善二值图像39进行颗粒测量41完成机器视觉任务42检测物体定位43设置搜索区域47查找测量点48将像素坐标转换成现实坐标66进行测量66辨别被测部件69检查图像的缺陷73显示结果74校准图像77透视和非线性畸变校准78Simple Calibration86Save Calibration Information88Attach Calibration Information89在LabVIEW 实时模块中使用NI Vision90Overview90Real-Time System Components90Software Installation91Image Display92De
3、terminism in Real-Time Applications95Image Files100Deployment101Troubleshooting101NI Vision for LabVIEW 基础(一):NI Vision 简介 2010-01-21 16:57:08标签:LabView 机器视觉 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http:/ NI Vision 控件模板Vision控件模板位于LabVIEW控件模板的最顶层,由一下元素组成:IMAQ Image.ctl该控件是一个类型定义,用于声明图象类型
4、的数据。在VI的前面板中使用该控件代表图象类型数据。例如,使用该控件作为一个子程序的输入或输出,使调用成成可以将一幅图像传送给子程序。 图像显示(Image Display)该控件用于在LabVIEW 中直接显示图像。也可以利用该控件创建关注区域 (ROIs)。 图像显示控件提供标准和3D版两种外观。 IMAQ 视觉控件(IMAQ Vision controls)这里的控件用于将NI Vision的程序控件直接加入入用户自己的程序中获得相应的功能。机器视觉控件(Machine Vision controls)这里的控件用于将NI Vision的机器视觉控件直接加入到用户自己的程序中以获得相应的
5、功能。NI Vision 函数模板NI Vision for LabVIEW 由三个主要的函数模板组成:常用视觉程序(Vision Utilities), 图像处理(Image Processing), 和机器视觉(Machine Vision)。 本节介绍这些模板以及它们的子模板。常用视觉程序(Vision Utilities)常用视觉函数用于在NI Vision中处理和显示图像。Image Management管理图像程序组。利用这些程序可以建立和释放图像,设置和读取图像的属性例如尺寸和偏移量,复制图象。也可以使用一些高级的Vis来定义图像的边框区域以及访问图像数据的指针。 Files一组
6、使用不同格式读、写图像文件,并从文件中获得所包含的图像的信息的程序模块。External Display用于在外部窗口显示图像的程序模块组。使用这些程序模块可以完成以下任务: 读取和设置窗口属性,如尺寸、位置、缩放系数 为图像窗口设置调色板 建立及使用图像浏览器 在图像窗口上为选中的关注区域建立和使用不同的交互式绘图工具。 检测画图事件获得图像窗口上有关关注区域的信息。 Region of Interest管理关注区域的程序组。使用这些程序可以通过编程来定义关注区,以及定义关注区和图像掩码和关注区之间的相互转换。 Image Manipulation修改图像颗粒内容的程序模块组。利用这些程序模
7、块可以实现图像的重新采样、提取部分图像,以及图像的旋转、平移、打包。该子模板还包括了图像与剪贴板之间相互拷贝的程序模块。 Pixel Manipulation读取和修改图像中单独像素的程序模块组。利用这些程序模块可以读取和设置图像中的像素,或者图像中的一行或一列;向图像中的地像素填充特定的值;实现图像和2维LabView矩阵之间的相互转换。 Overlay一组不改变图像的像素值的情况将图形覆盖在在图像显示环境上的程序模块。利用这些程序模块可以使检测程序将检测结果覆盖在被检测图像上。 Calibration空间校准图像的程序模块组,用于排除相机景深和镜头畸变,以获得精确的真实的测量结果。利用这些
8、程序建立简单的校准,或者让NI Vision从网格图像中自动学习校准数据。还可以利用这些程序模块将像素坐标转换成真实坐标以便于测量。 Color Utilities访问彩色图像数据的程序模块组。利用这些程序可以从图像中提取调色板,用新的数据替换彩色图像的调色板,在彩色图像与2D矩阵之间转换,读取和设置彩色图像的像素值,将像素值从一个彩色颗粒转换到另外一个彩色颗粒。 Vision RT为LabVIEW实时模块使用NIVision提供的函数组。利用这些程序模块可以在实时系统中将图像显示到视频输出中;控制发送到网络上的图像的压缩设置,以及实时系统中处理程序的时间区段。 图像处理(Image Proc
9、essing)NI Vision 中的分析、滤波和图像处理函数。Processing处理灰度和二值图像的程序模块。利用这些函数可以使用不同的阈值将灰度图像转换成二值图像。也可以利用这些程序使用预定义或自定义的查找表变换图像,进行分界变换,修改图像的对比度,图像反向。Filters滤波器,用于增强图像中的信息。利用这些程序可以实现虚像平滑、去除噪声、高光或强化图像中的边沿。可以利用预定义的卷积内核,也可以使用自定义的卷积内核。Morphology形态学组,进行图像形态学运算的程序模块。其中一部分程序完成基本的形态学运算,如灰度和二值图像上的膨胀和腐蚀。另一部分程序用于改进二值图像的质量,微粒补孔
10、、去除边框颗粒、去除小颗粒、基于颗粒的形状特征去除不希望的颗粒。该子模板中的其它组用于分割接触颗粒、查找颗粒轮廓、检测圆形颗粒。 Analysis分子组,用于分析灰度和二值图像内容的程序模块。这些程序用于计算灰度图象的直方图和灰度统计信息,提取图像中任意维度上的像素信息和统计信息,以及检测和测量二值图像中的颗粒。 Color Processing彩色处理组,分析和处理彩色图像的程序分组。这些程序用于计算彩色图像的直方图;为彩色图像应用查找表;改变彩色图像的亮度、对比度、伽马信息,以及阈值。其中的一部分使用彩色匹配处理比较不同图像或不同区域的彩色信息。 Operators图像基本算数和逻辑运算程
11、序模块组。其中一部分用于图像与图像或常数的加、减、乘、除。该子模板的另一部分进行逻辑运算-如AND/NAND, OR/NOR, XOR/XNOR以及图像之间或常数的像素比较。另外,这个子模板中的一个程序允许利用掩码操作选择图像中的一个区域。 Frequency Domain图像频域分析处理程序模块组。使用这些程序可以使用二维快速付利叶变换(FFT)将图像从空域转换到频域,以及利用反FFT将频域变换到空域。这些程序模块还可以提取复数图像的幅度,相位,实部和虚部。另外,这些程序模块还可以将复数图像变换成复数二维矩阵,或相反。该子模板中的程序模块也可以进行一些基本复数图像间以及复数图像与常数间的算术
12、运算-如加、减、乘、除 运算。最后,其中的一些程序模块可以进行频域的滤波。 机器视觉(Machine Vision)机器视觉函数是一些高级程序模块,用于简化常用的机器视觉任务。Select Region of Interest选择关注区程序模块组,用于选择关注区、在图像窗口上画特殊的关注区,以及使用非常少的编程返回关注区信息。 Coordinate System坐标系统分组,用于发现与图像中物体相关的坐标系统。利用这些程序模块发现坐标系统,即可以用于边沿检测也可以用于模式匹配。还可以利用这个坐标系统从其他机器视觉程序中进行测量。 Count and Measure Objects计数和测量物体
13、组,该程序模块可以通过阈值将图像分割成孤立的对象,然后查找并测量这些对象的特性。该程序模块还可以在测量时忽略未知的对象。 Measure Intensities测量强度程序模块组,用于测量一个点上的像素密度或者一个线或一个矩形区域内的像素密度统计。Measure Distances测量距离程序组,两条纵向边沿之间的最小和最大水平距离,或者两条横向边沿之间的最大和最小垂直距离。 Locate Edges边沿查找程序组,查找垂直、水平、和圆形边沿。 Find PatternsA VI that learns and searches for a pattern in an image. Searc
14、hing and Matching搜索和匹配程序组。用于在灰度和彩色图像中建立和搜索模式。该子模板包括一个可以在二值图像中搜索制定形状对象的程序。 Caliper卡尺,一组用于在图像的不同断面查找边沿的程序模块。使用这些程序可以沿着一条线、矩形区域(耙子)中的一组平行线、圆形区域(同心耙)中的一组平行同心线,或者圆形区域(轮子)中的一组辐射线查找边沿。还可以适用这里的程序查找图像中满足一定条件的对边。 Analytic Geometry分析几何程序组,用于对在图像中一个点集中做分析几何运算。这些程序适用于图像中线、圆、椭圆的点集;计算一个点集代表的多边形的面积;测量点之间的距离;计算点所代表的
15、线之间的夹角。该子模板中的程序还可以实现诸如查找两条线的交点以及查找两条线夹角的等分线等运算。 OCR光学字符识别程序组,用于光学字符识别和图像的区域检验。 Classification分类程序组。根据形状或用户定义的特征向量对二值对象进行分类。Instrument Readers设备读取程序组。用于快速开发需要从7段代码显示、计量仪表、指针、一维条码、二维条码中读取信息的程序开发。 Inspection检测程序组。将图像与一个标准模板对比。 快速视觉(Vision Express)Vision Express Vis用于快速开发常用的图像采集和处理应用。Vision Acquisition视
16、觉获取,是一个Express VI,可以方便的配置用于获取来自模拟、数字、相机连线、IEEE 1394以及GigE版本相机的图像。 说明:必须安装NI Vision Acquisition Software才能访问Vision Acquisition Express VI。Vision Assistant视觉助手。利用NI Vision Assistant可以在LabVIEW 环境中完成一些常用的图像处理任务。如何创建NI Vision应用下面的图说明了利用NI Vision建立应用程序的步骤。第一个图描述设计NI Vision程序的一般步骤。第一个图中最后一步的第2,3项,在第二个图中扩充。
17、可以使用最后一步的项目组合来建立NI Vision应用。关于每个项目的详细内容,参阅图中项目相应的章节窗体顶端NI Vision for LabVIEW 基础(二):准备测量图像 2010-04-29 21:21:55标签:Vision LabVIEW 图像 基础 本节介绍如何建立图像系统,采集和显示图像,分析图像,以及为进一步处理准备图像。建立图像系统 在开始获取、分析、处理图像之前,必须先建立图像系统。建立图像系统的方法取决于图像环境以及分析和处理的需要。图像系统应该产生足够高的质量以能够从图像中获取信息。搭建图像系统的完整步骤如下。根据给定的颗粒限制以及被检测物体的尺寸,确定设备类型。参
18、考NI Vision概念手册中第三章,系统设置与校准 。确保相机传感器足够大以满足对最低分辨率的要求。 确保镜头景深足够高以保证焦点内的所有物体都不会因为镜头而畸变。还要确保镜头的焦距满足需要。 确保光照能够提供被检测物体与背景之间有足够的对比度,一便从图像中获取信息。 将相机摆放在与被测物体垂直的位置。如果相机获取的物体的图像带有角度,就会产生透视误差。即便可以通过软件补偿这些误差,National Instruments 还是建议采用垂直的角度以获得最精确的结果。 选择一个满足需要的图像采集设备。National Instruments 提供了许多图像获取设备,例如模拟的彩色和单色设备以及
19、数字设备。更多有关NI图像采集设备的详细信息,请访问: 。 为图像采集设备配置驱动程序软件。如果拥有一台NI图像采集设备,可以通过Measurement& Automation Explorer (MAX)配置NI-IMAQ 或NI-IMAQdx驱动程序。 在桌面上双击Measurement & Automation 图标打开MAX 。详细信息参见Measurement & Automation Explorer Help。校准图像系统 建立图像系统后,可以校准系统,为像素坐标指定实际的坐标,补偿图像系统中固有的角度和非线性误差。像机与被测物体不垂直发生透视误差。非线性失真可能来自像机镜头畸变
20、。透视误差和镜头畸变导致出现扭曲的图像。这种失真替代了图像中的信息,但并不一定是破坏映像中的信息。 如果仅仅希望为像素坐标指定实际的坐标使用简单校准。如果需要补偿透视误差和非线性镜头扭曲使用透视和非线性扭曲校准。创建图像 使用IMAQ Create程序建立一个引用图像。建立图像时,要制订下列图像数据类型之一:Grayscale (U8, default)8-位无符号 Grayscale (U16)16-位无符号Grayscale (I16)16-位有符号Grayscale (SGL)浮点 Complex (CSG)64-位复数 RGB (U32)32-位 RGB HSL (U32)32-位HS
21、L RGB (U64)64-位RGB 如果需要可以多次执行IMAQ Create建立多个图像,但所创建的每个图像都需要唯一的名称。通过分析预期的应用程序确定所需的图像个数。依据是程序的不同的处理阶段及是否需要为每个处理阶段后保持原始图像。说明 如果打算在图像上使用滤波或颗粒分析程序,必须保证图像有合适的边沿尺寸。默认的边沿尺寸为三个像素。当创建图像时,NI Vision建立了一个内部的图像结构以保存图像的属性,如名称和边沿尺寸。然而,此时没有为图像像素分配内存。NI Vision程序在图像尺寸修改时自动分配一定量的内存。例如,采集和重取样程序改变图像尺寸所以它们会为图像像素分配适当的内存。IM
22、AQ Create的输出是一个图像结构的引用。 可将该引用作为输入提供给所有NI Vison函数的子程序。开发期间,可能需要在运行时验证图像的内容。使用LabVIEW图像探针可以在运行期间察看图像的内容。要建立探针,右击图像连接线,选择Probe即可。许多属于NI Vision库的程序都需要一个或多个图像引用。所需的图像引用的数量取决图像处理函数和希望使用图像的类型。分析图象的NI Vision模块不修改只需要一个图像引用输入的内容。处理图像内容的模块可能要求一个引用作为源图像和一个目标图像,或者模块有一个可选的目标图像。如果不能提供源图像,模块会修改源图像。在应用程序的最后,利用IMAQ D
23、ispose模块释放所创建的图像。 输入输出合并 根据模块完成的功能类型的不同,输入输出可能会产生不同的合并。可以利用这种灵活性决定要处理那个图像以及在哪里保存结果图像。如果没有膜表图像连线,那么使用源图像并传递给目的输出。下面的图描述了NI Vision中一些模块的接线板。 图象分析 下面的连线板仅用于分析图像的模块,所以既不改变图像尺寸也不改变内容。 这种操作的例子包括颗粒分析和直方图计算。图像遮罩 下面的连线板介绍了图像遮罩。 Image Mask 输入端表明处理和分析是依赖与另外一个图像的内容:Image Mask。仅当Image Mask中对应的像素不为空时Image中的像素才被处理
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- nivisionforlabview 学习 基础
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内