NI VISION VB
- 格式:pdf
- 大小:8.36 MB
- 文档页数:79
VBAI,先生领进门目录前言先生学习接触视觉也就一年多一点,一直使用NI的视觉产品,包括VDM和VBAI,现在虽然已经基本会使用,但是其中的许多问题依然没有研究透彻,因此文中出现解释不合理或错误的地方,也请各位看官多多包涵,多多指教,大家一起进步。
本系列讲义所需要软硬件均是从公司借用产品,在此感谢东莞康视达自动化科技有限公司提供相机、镜头、光源等硬件与样品,同时也感谢美国国家仪器(NI)东莞销售代表张晶给予软件、智能相机等支持。
第一章 VBAI概述VBAI全称叫Vision Builder for Automated Inspection,是NI推出的一款视觉检查软件产品,NI称其为用于自动检测的视觉生成器。
个人的理解是他是NI用VDM开发的一个简易的集成的视觉应用产品。
应用VBAI,基本上不需要编程,只需要选择合理的功能函数(Steps/VI),配置好参数,就可以完成许多测试。
此工具是实验室进行快速视觉效果验证的理想工具,也是生产线实现简易测试的不二测试平台。
但是也有其不足,如价格昂贵(3W多RMB),功能函数(Steps/VI)有限,对第三方硬件支持不足等。
此系列VBAI解说,以VBAI 2009 SP1为蓝本。
VBAI欢迎界面:图1-1 VBAI欢迎界面在欢迎界面中,我们可以看到四个按钮与一个下拉菜单。
第一个Configure Inspection 为创建一个新的检查或者修改已有的检查。
将鼠标放置于此按钮上,在欢迎界面中间会出现功能提示(四个按钮都有Tip提示);第二个Inspect Product为打开已有的检查并且在指定的目标上运行;第三个Help,点击后会弹出一个CHM格式的帮助文档,用于逐步指导且得到参考信息;Exit为退出VBAI。
下面的Execution Target为指定检查运行的目标。
下面有Select Network Target…、This Computer、Smart Camera Emulator、Compact VisionSystem Emulator、Embedded Vision System Emulator等四个选项,如图1-2所示。
机器视觉系列——影像处理:NI Vision VIs前言在2-2这个章节要来介绍如何使用NI Vision API来完成影像处理任务,从获取影像开始到得到我们要的结果,我们都能利用NI Vision API来完成,那NI Vision API在哪裡呢?首先我们要打开LabVIEW,然后开启一个新的Block Diagram,如果我们在安装LabVIEW的时候有安装到NI Vision Development Module,那我们就能在Block Diagram的Function选单中找到一个Vision and Motion的类别,在这个类别裡面就会有我们要使用的NI Vision API,如下图2-29所示:图2-29NI Vision API在图2-29中,作者我未来会介绍到的部分,同时也是我们平常比较常会使用到的部分有:NI-IMAQdx、Vision Utilities、Image Processing和Machine Vision。
从LabVIEW Context Help 视窗的说明内,我们可以约略得知这些类别下的function所提供的功能:1.NI-IMAQdx:建立撷取影像的系统。
2.Vision Utilities:建立影像、操作影像。
3.Image Processing:分析、过滤、处理影像。
4.Machine Vision:透过影像进行量测。
通常一个影像处理程式的撰写大致可以简略分为以下步骤:1.创建影像记忆体空间2.获得影像,并将其放入步骤1创建的记忆体空间3.进行需要的影像处理4.标示、输出影像处理的结果5.释放影像记忆体空间在接下来的章节,作者我会带领大家完成一个简单的影像处理程式,从创建影像暂存记忆体开始,到获得影像、处理影像,再到最终得到我们要的结果,各位準备好了吗?快快打开LabVIEW,我们现在就开始吧!2-2-2ImageBuffer要处理影像之前,首先要获得影像,而在获得影像之前,我们需要先创建一个记忆体空间来暂存我们即将获得的影像,而这个用来暂存影像的记忆体空间我们可以称唿它为Image Buffer。
机器视觉系列——影像处理:NI Vision小帮手2-1影像处理:NI Vision小帮手2-1-1前言在2-1这个章节,我们要来介绍NI Vision Assistant,桌面图示如下图2-1所示,为什么要介绍它呢?因为我们可以透过它撷取影像、建立影像处理流程,进行一些基本的影像处理或实验,让我们能够快速完成影像塬型的开发,它还能帮我们计算影像处理流程所花费的时间,甚至最后还能产生程式码和Excel报表!所以我们要学习影像处理的话,怎么能够不认识它呢?接下来,让我们按下桌面上的NI Vision Assistant,进入它的世界开始进行影像处理吧!图2-1NI Vision Assistant桌面图示不论我们现在使用的是NI Vision Assistant2009还是最新的NI Vision Assistant2013,一打开它所看到的画面应该会和下图2-2所示相同。
图2-2NI Vision Assistant初始画面此画面我会将其分为以下七个区块:1:NI Vision Assistant页面切换2:影像选择区3:影像处理显示区4:影像处理功能选择区5:NI Vision Assistant文字说明6:影像处理流程建立区7:NI Vision Assistant Menu选单在接下来的章节,作者我会介绍到上述区块的功能。
2-1-2获取影像在NI Vision Assistant内,我们有两种方式可以获取影像:1:使用连接在电脑上的相机撷取影像2:载入影像档要使用相机撷取影像,首先要在图2-2的区域1进行页面的切换,选择Acquire Image将页面切换到Acquire Image页面,如下图2-3所示。
图2-3Acquire Images Page在图2-3的区域2中我们可以选择已连接相机的类型,来进行影像撷取,譬如我们选择第二个选项从1394相机、GigE相机或USB相机撷取影像,则我们会在区域2的地方看到如下图2-4所示的画面。
NI Labview2014视觉开发必备软件1、NI LabVIEW2、NI vision Developmentd Module(VDM)图像处理函数库3、NI Vision builder For Automation Inspection(VBAI)基于VDM开发的一款功能强大的视觉应用软件-视觉生成器,可以使用此软件进行直接快速的验证。
也可以做一些静态的简单的视觉项目。
4、NI Vision Acquisition Software (VAS)备注:如果采用VB、VC、C#等平台开发,则只需要安装VDM即可。
如果不需要VBAI,也可以不安装。
如果不调用IMAQdx等,则VAS也可以不装。
最简单的则是安装VDM即可。
如果用labview开发则需要安装LV。
如果要使用VBAI验证,则需要安装VBAI,如果还需要驱动程序,则还要安装VAS。
VDM、VAS、VBAI都会在labview里面添加函数和控件。
当前版本的VDM和VBAI是不是都包含了VAS啊看官方的答疑:VBAI, VAS 和VDM之间有什么不同?主要软件:主要软件版本: 7.1主要软件修正版本:次要软件: Vision Builder for Automated Inspection问题: 我对NI软件中的视觉相关功能十分有兴趣,但是我不确定我应该使用什么样的软件产品Vision Builder for Automated Inspection (VBAI),,Vision Acquisition Software (VAS)以及Vision Development Module之间有什么区别?解答: 请参考Products & Services: Vision Software ,对比不同产品的各项性能的差异,或者阅读软件包装上对于产品功能的描述。
Vision Development Module(视觉开发模块)该模块可作为LabVIEW或者是文本编辑环境.NET 以及LabWindows CVI 的插件使用。
第四章图像增强很多时候,我们采集到的图像并不理想,含有许多噪声、非目标区域、杂点、未完整等等,面对这种情况,进行图像处理时,如果不对原始图像进行增强处理,那么对测量结果会的精度会产生一些影响,例如寻找边缘,如果需要拟合成线的点很离散,那么,拟合出来的线很可能会“漂”的很厉害。
因此,许多情况下,我们需要对原始图像进行增强,以达到更加理想的效果。
如图4-1所示。
图4-1 图像增强函数在图像处理中的应用在图4-1中,我们应用了一个简单的例子,寻找一条边缘。
采集图像后,我们对原始图像创建了一个ROI(Region of Interest:兴趣区域、目标区域,图中的绿色框),并对此ROI 进行滤波处理,从图中可以看到,绿色框中经过婆婆的图像与外面的图像是不一样的。
这就是图像增强的效果。
当然,例子中的原始图像效果相对较好,增强的效果显现不明显。
下面我们来看一下,图像增强函数选板具体的函数及其使用方法。
图4-2 图像增强选板增强图像中,共有六个可用函数。
利用此六个函数,我们可以在分析图像前,对图像进行预先处理,以提高图像质量。
1. Vision Assistant:Enhances image features,filters noise,extracts colors planes,and more.第一个函数为视觉助手。
在VBAI中也有一个视觉助手,不过这个视觉助手并不像NI视觉开发模块中的视觉助手功能强大,只是包含了一些图像增强的功能。
因为VBAI其它的函数选板中含有大量的分析测量函数,所以,在这个视觉助手中并没有分析测量类的函数。
利用视觉助手可以增强图像特征、过滤噪声、提取颜色平面、图像计算、形态学处理等。
因为其中的函数过多,将会在后面章节中加以详细解释,这里就一笔带过。
2. Filter Image:Prepares an image for processing so that you can extract only the information you need for processing.第二个函数为图像滤波:准备一幅图像,提取需要用于处理的信息为后面图像处理。
NI VBAI入门教程第二章配置界面VBAI配置界面基本组成打开VBAI,在欢迎界面中双击My Computer或者点击New Inspection,配置一个新的检测,进入后的界面如图2-1所示:图2-1 VBAI初始配置界面在图2-1中,主要分为四个区域,左上,为主视窗:包含图像预览区、菜单、快捷按钮等;右上,状态图视窗:观察、配置检查状态,状态图与主视窗的切换开关,即时帮助开关;左下,状态配置窗:使用步骤名与图标、快捷按钮、检查结果指示灯等;右下,检查步骤选板:包含多种检查步骤Steps、函数等。
VBAI菜单下面先介绍一下左上的内容。
菜单说明:File图2-2 菜单-File文件文件菜单从上到下依次是New新建、New from Template从模板新建、Open打开、Save保存、Save As另存为、Save As Template另存为模板、Save Image保存图片、Print Image 打印图片、Print Inspection打印检查、Inspection Properties检查属性、Switch to Inspection Interface切换到检查界面、Close关闭。
此菜单中的选项,主要用于VBAI脚本的保存、图片的保存、脚本的属性、切换界面等功能。
图2-3 菜单-Edit编辑编辑菜单从上到下依次为Edit Step编辑步骤、Cut剪切、Copy复制、Paste粘贴、Delete 删除。
本菜单中的内容,主要用于控制检查步骤。
图2-4 菜单-View查看查看菜单从上到下依次是Zoom In放大、Zoom Out缩小、Zoom 1:1原始大小、Zoom to Fit 适合视窗、Toggle Main Window View切换主视窗与状态图视窗、View Inspection State Diagram查看检查状态图、View Complete Inspection Setup查看完整检查设置(包含setup、cleanup)、View Custom Inspection Interface查看用户检查界面(需要配置用户界面后才能查看)。
第7章视觉助手3-灰度选板图7-1 灰度选板灰度选板包含了Lookup Table查找表、Filters滤波器、Gray Morphology灰度形态学、Gray Morphological Reconstruction灰度形态学重建、FFT Filter快速傅立叶滤波器、Threshold阈值、Watershed Segmentation分水岭分割、Operators运算、Conversion转换类型、Extract FFT Plane抽取快速傅立叶平面等九个函数。
1. Lookup Table查找表对一幅图像应用查找表以改善对比度与亮度。
如图7-2所示效果。
图7-2 查找表在查找表列表框中,有以下功能可用:∙Image Source—原始图像∙Equalize—均衡图像,增强动态强度由指定的灰度级间隔在整个灰度级上分配。
此函数再分配像素值以便提供一个线性的累积直方图。
∙Reverse—反转图像,反转像素值,显示原始图像的底片。
∙Logarithmic—对图像应用对数变换,以增强暗区的亮度与对比度。
∙Exponential—对图像应用指数变换,以减弱亮区亮度,提高亮区对比度。
∙Square—平方,减少暗区对比度。
类似于指数但是有更平滑的效果。
∙Square Root—平方根,减少亮区的对比度。
类似于对数但是有更平滑的效果。
∙Power X—X次方,减少暗区对比度。
∙Power 1/X—X次根,减少亮区对比度。
X:幂运算的指数,默认值为1.5。
2. Filters滤波器这里的滤波器与VBAI增强图像选板中的滤波器作用、功能、算法基本类似,请参看前面第三章中关于VBAI滤波器的介绍。
图7-3 VBAI视觉助手滤波器3. Gray Morphology灰度形态学更改图像中目标的形状。
点击函数其配置界面如图7-4所示。
图7-4 灰度形态学灰度形态学操作∙Image Source:原始图像∙Dilate:灰度膨胀操作。
NI 机器视觉系统软件产品
视觉系统开发软件视觉开发模块(Vision Development Module)
NI 公司的视觉开发模块是专为开发机器视觉和科学成像应用的工程
师及科学家而设计。
该模块包括NI Vision Builder 和IMAQ Vision 两部分。
NI Vision Builder 是一个交互式的开发环境,开发人员无需编程,即能快速完成视觉应用系统的模型建立;IMAQ Vision 是一套包含各种图像处理函数的
功能库,它将400 多种函数集成到LabVIEW 和Measurement Studio,LabWindows/CVI,Visual C++及Visual Basic 开发环境中,为图像处理提供了完整的开发功能。
NI Vision Builder 与IMAQ Vision 软件配合工作,能大大简化视觉系统的开发工作。
NI Vision Builder 能够自动产生一个在LabVIEW 环境下运行的IMAQ Vision 框图,框图包括与您在NI Vision Builder 中所进行一系列操作相同的功能。
您可将此框图集成到您的自动化或产品测试应用中,以便系统可以同时支。
第一章_NI_Vision_Assistant概述.pdfNI_Vision_Builder_AI入门教程__第二章_配置界面.docNI_Vision_Builder_AI入门教程____第四章_图像增强.docNI_Vision_Builder_AI入门教程__第五章_视觉助手(一).docNI_Vision_Builder_AI入门教程___第六章_视觉助手(2).docNI_Vision_Builder_AI入门教程___第七章_视觉助手3___灰度选板.doc第一章NI Vision Assistant概述NI公司的视觉开发模块是专为开发机器视觉和科学成像应用的工程师及科学家而设计。
该模块包括NI Vision Builder和IMAQ Vision两部分。
NI Vision Builder是一个交互式的开发环境,开发人员无需编程,即能快速完成视觉应用系统的模型建立;IMAQ Vision是一套包含各种图像处理函数的功能库,它将400多种函数集成到LabVIEW和Measurement Studio,LabWindows/CVI,Visual C++及Visual Basic开发环境中,为图像处理提供了完整的开发功能。
NI视觉开发模块供从事开发机器视觉和科学图像应用的科学家、工程师和技术人员使用。
NI视觉开发模块包括NI Vision Assistant--供需要不通过编程就实现将LabVIEW应用快速成型的直观环境;以及IMAQ视觉--拥有强大视觉处理函数的库。
与其它视觉产品不同,NI Vision Assistant和IMAQ视觉的紧密协同工作简化了视觉软件的开发。
NI Vision Assistant 可自动生成LabVIEW程序框图,该程序框图中包含NI Vision Assistant建模时一系列操作的相同功能。
您可以将程序框图集成到自动化或生产测试应用中,用于运动控制、仪器控制和数据采集等。
●高级机器视觉、图像处理功能以及显示工具。
●高速模式匹配可以定位大小方向各异的多种对象,甚至在光线不佳时也可实现。
●用于计算82个参数的颗粒分析(Blob analysis),包括对象的面积、周长和位置。
●包括用于1维和2维代码和OCR读取工具。
●用于纠正透镜变形和相机视角的图像校准功能。
●灰度、彩色和二进制图像处理及分析。
1.1 Welcome欢迎界面打开软件后出现主界面,如图1- 1所示。
其中欢迎界面,如图1- 2所示。
在欢迎界面中有四个按钮和一个下拉菜单,其中Open Image是打开图像,作用是进入图像处理界面,如图1- 3所示,在这个界面中可以进行图像的基本处理功能。
图1- 3 没有选择图片界面1.2 Acquire Image采集图像界面Acquire Image是进入采集图像界面,如图1- 4所示。
要想用这里的函数进行采集图像,需要安装NI的采集驱动,并更换相机的驱动为NI的驱动,在MAX里面正确配置相机参数,才能在这里打开。
图1- 4 Acquire Image界面Solution Wizard按钮是打开范例向导,这里包含一些视觉助手的范例。
下拉菜单,这里功能是选择导出图像处理程序的语言,默认是LabVIEW。
1.3 Open Image图像处理界面在欢迎界界面点击Open Image按钮后会提示选择图片,如果没有选择图片,进入图像处理界面后,软件如图1- 5所示。
图1- 5 没有选择图片的处理界面现在点击左下角的图像处理功能是不起作用的,提示错误,采集图像或者选择图像,如图1- 6所示。
图1- 6 提示错误现在通过菜单File->Open Image 来选择要处理的图片。
选择好图像后的界面如图1- 7所示。
图1- 7 选择好图像界面其中图像预览区是当选择多张图片时,可以在这里进行切换,从而验证处理程序在不同图像时是否满足处理需要。
处理功能区包含了Image图像、Color彩色图、Grayscale灰度图,Binary二值图,Machine Vision机器视觉,Identification识别等功能。
处理步骤区是显示不同的处理步骤,双击每一个步骤可以进行修改参数。
NI VBAI入门教程 第二章 配置界面VBAI配置界面基本组成打开VBAI,在欢迎界面中双击My Computer或者点击New Inspection,配置一个新的检测,进入后的界面如图2-1所示:图2-1 VBAI初始配置界面在图2-1中,主要分为四个区域,左上,为主视窗:包含图像预览区、菜单、快捷按钮等;右上,状态图视窗:观察、配置检查状态,状态图与主视窗的切换开关,即时帮助开关;左下,状态配置窗:使用步骤名与图标、快捷按钮、检查结果指示灯等;右下,检查步骤选板:包含多种检查步骤Steps、函数等。
VBAI菜单下面先介绍一下左上的内容。
菜单说明:File图2-2 菜单-File文件文件菜单从上到下依次是New新建、New from Template从模板新建、Open打开、Save保存、Save As另存为、Save As Template另存为模板、Save Image保存图片、Print Image 打印图片、Print Inspection打印检查、Inspection Properties检查属性、Switch to Inspection Interface切换到检查界面、Close关闭。
此菜单中的选项,主要用于VBAI脚本的保存、图片的保存、脚本的属性、切换界面等功能。
图2-3 菜单-Edit编辑编辑菜单从上到下依次为Edit Step编辑步骤、Cut剪切、Copy复制、Paste粘贴、Delete 删除。
本菜单中的内容,主要用于控制检查步骤。
图2-4 菜单-View查看查看菜单从上到下依次是Zoom In放大、Zoom Out缩小、Zoom 1:1原始大小、Zoom to Fit 适合视窗、Toggle Main Window View切换主视窗与状态图视窗、View Inspection State Diagram查看检查状态图、View Complete Inspection Setup查看完整检查设置(包含setup、cleanup)、View Custom Inspection Interface查看用户检查界面(需要配置用户界面后才能查看)。
查看菜单主要用于图像视野的操作以及界面的切换查看等。
图2-5菜单-Operate操作操作菜单有以下可用选项:Run Inspection Once运行一次检查、Run Inspection in Loop 循环运行检查、Run Inspection until Failure循环运行检查真到失败、Run Inspection Multiple Times多次运行检查、Stop Inspection停止检查、Highlight Execution高亮执行、Pause暂停、Single Step单步、Use Previous Image使用先前的图片、Use Current Image 使用当前图片、Use Next Image使用下一张图片、Select Next Image选择下一张图片、Benchmark Inspection基准点检查、Model Vision System Variations视觉系统模式变更(可利用另外一个采集或加载图片代替现有的采集与加载图片)。
操作菜单主要用于检查调试、验证以图片缓存的使用等。
图2-6 菜单-Tools工具工具菜单可以针对VBAI中的许多参数进行管理,System Resource Manager系统资源管理、Communication Device Manager通信设备管理、Variable Manager变量管理、Inspection Interface Configuration检查界面配置、Serial Communication Terminal串口通信终端、TCP Communication Terminal TCP通信终端、Modbus Local Registers Terminal MODBUS 本地寄存器终端、NI-IMAQ I/O Test Panel and Monitor NI视觉IO测试板与监视器、I/O Test Panel and Monitor IO测试板与监视器、NI-DAQmx I/O Test Panel and Monitor数据采集测试板与监视器、View Measurements查看测量、Migrate Inspection to LabVIEW 迁移检查到LabVIEW中(即生成LabVIEW代码)、Options选项。
工具菜单主要用于资源管理以及通信测试。
如果想生成LV代码,在这里也可以实现。
图2-7 菜单-Help帮助帮助菜单,提供VBAI相关的帮助:Show Context Help显示上下文帮助(即时帮助)、Online Help在线帮助、Patents专利、About NI Vision Builder AI关于NI VBAI。
以上这些内容就是整个VBAI的菜单构成。
VBAI主视窗图2-8 主视窗与快捷按钮主视窗上部的快捷按钮从左到右分别代表了(File中的)新建检查、打开检查、保存检查、(View中的)放大、缩小、原始大小、适合视窗、(Operate中的)运行一次、循环运行、循环直到失败、停止、高亮、暂停、单步、使用上一张图片、使用当前图片、使用下一张图片、选择下一张图片。
在快捷按键下面的一大片区域为图像显示区域。
图像显示的左下脚有一排图像的显示信息。
图中显示的640x480表示图像的分辨率,0.89X表示图像的缩放系数(1时为原始大小,小于1时表示缩小,大于1时表示放大,边上的滚动条会出现),90表示了鼠标指示点的灰度值(如果是彩色图像,则有90,90,90这样三组值,表示RGB三色的分量值),(263,264)表示当前鼠标所在点在图像中的X、Y坐标。
VBAI状态栏图2-9检查状态栏状态栏上方是快捷按钮,分别是运行状态一次、连续运行状态、停止连续运行状态、倒退(步骤)、前进(步骤)、编辑步骤、删除步骤、步骤覆盖(如搜索线、结果等)、Display ResultImage for this State为此状态显示结果图像。
下面一个大空白栏,是用于放置测试步骤的。
右边一个大大的布尔指示灯Inspection Status是显示当前检查结果的。
VBAI状态图视窗图2-10 状态图视窗状态图视窗相对比较简单,最左上的按钮为状态图与主视窗的切换按钮,最右上的问号按钮为即时帮助按钮。
中间一大片区域为状态图显示栏。