KC10-基于LabVIEW的物联网应用程序设计 机器视觉相关设备使用与编程 机器视觉相关设备使用与编程-KC10122101-c33.docx

KC10-基于LabVIEW的物联网应用程序设计 机器视觉相关设备使用与编程 机器视觉相关设备使用与编程-KC10122101-c33.docx

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
前言 在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-29 NI 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-2 ImageBuffer 要处理影像之前,首先要获得影像,而在获得影像之前,我们需要先创建一个记忆体空间来暂存我们即将获得的影像,而这个用来暂存影像的记忆体空间我们可以称唿它为Image Buffer。那要如何创建这个记忆体空间呢?大家还记得第一章(下)的图1-37吗?没错!图中这个IMAQ Create的function就是拿来创建影像暂存的记忆体空间用的,透过这个function我们可以去定义这个记忆体空间要储存的影像类型,预设是灰阶(unsigned byte),同时作者这边会建议要给这个记忆体空间一个有意义的名字,不要用预设的untitled,这样在使用到很多Image Buffer的时候程式的可读性会比较高;而它隔壁的好邻居IMAQ Dispose这个function则是用来释放这个记忆体空间用的,大家在使用完这个影像暂存的记忆体空间后,务必要养成将它释放的好习惯,否则若哪天一不小心,就有可能会遇到记忆体不足LabVIEW当掉或是异常关闭的状况喔。 图1-37 IMAQ Create与Dispose 元件 2-2-3 获得影像 程式中要使用的影像,其来源有两种,一为用相机撷取,二为载入现存在电脑中的影像档。 首先来帮大家复习一下,在1-2-2节中,我们曾经提及如何使用NI Vision API中的Low Level Function操作相机来进行取像,还记得下面的图1-39吗? 图1-39 Low Level 取像元件程式码 步骤说明: 1. 指定开启相机名称,从「IMAQ Session」中选择对应的相机名称 2. 设定相机取像模式为「连续」,Image Buffer设为「3」 3. 开始取像 4. 任何由外部取得的影像,都需透过IMAQ建立一组记忆体空间来储存,由于取像来源是彩色相机,每一张彩色(RGB)影像需要3*8bit的空间来储存,所以「Image Type」要选择「RGB U32」 5. 进入While迴圈后,会不断将影像覆盖到记忆体区内,此时将影像接到Display Image即可在人机介面观察到影像,直到按下「Stop」或Error产生时才会跳出迴圈 6. 停止取像 7. 解除相机设定 8. 结束指定名称的相机作业 9. 清空储存影像的记忆体空间 如果是要载入电脑裡的图档来进行处理的话,我们会需要用到下图2-30中的IMAQ Load Image Dialog和IMAQ ReadFile这两个function,範例程式码如下图2-31所示。 图2-30 Load Image function 图2-31 Load Image from Image File範例程式码 现在我们成功地将影像载入程式中了,在接下来的章节中,我们将使用NI Vision API来处理之前在2-1中有练习过的範例:Spark Plug Insp

文档评论(0)

WanDocx + 关注
实名认证
内容提供者

大部分文档都有全套资料,如需打包优惠下载,请留言联系。 所有资料均来源于互联网公开下载资源,如有侵权,请联系管理员及时删除。

1亿VIP精品文档

相关文档