logo资料库

Labview_图像处理.pdf

第1页 / 共113页
第2页 / 共113页
第3页 / 共113页
第4页 / 共113页
第5页 / 共113页
第6页 / 共113页
第7页 / 共113页
第8页 / 共113页
资料共113页,剩余部分请下载后查看
LabVIEW 10.210.210.210.2 利用 LabVIEW LabVIEW LabVIEW 进行图像采集与处理 利用 LabVIEW 进行图像处理是一个非常重要的应用。在许多行业中采用图像的采 集和识别来进行判断、控制,使操作更加精确,具有可信度、人性化、智能化。 本节将讲解利用 LabVIEW 进行图像采集和处理的实例。 10.2.1 10.2.1 10.2.1 10.2.1 图像处理介绍 图像处理也可以称作视觉处理。LabVIEW 提供了多种图像处理的方法。其中 NI 公司的视觉采集软件提供的驱动和函数,既能够从数千种连接到 NI 帧接收器上 的不同相机上采集图像,也能够从连接在 PC、PXI 系统或笔记本计算机上标准端 口的 IEEE 1394 和千兆位以太网视觉相机采集图像。 LabVIEW 中的视觉开发模块作为强大的机器视觉处理库,配有各类函数,其中包 括:边缘检测、颗粒分析、光学字符识别和验证、一维和二维代码支持、几何与 模式匹配、颜色工具。该模块可与 NI 公司的所有软件、C++、Microsoft Visual Basic、Microsoft .NET 相互调用,为用户提供了相当便利的操作。用户可通 过视觉开发模块的同步功能,实现与运动或数据采集测量的同步。 NI 公司提供的图像处理软件包 Vision 8.5.1 Acquisition Software ,是专门 为 LabVIEW 8.5 服务的。它可以在 LabVIEW 8.5 中完成各种关于图像处理、视觉 运行的控制。 10.2.2 10.2.2 10.2.2 10.2.2 实例内容说明 本实例主要完成通过 USB 摄像头采集图像,并经过一些运算对图像进行数据分 析。在实例中用采集到的图片作样本,让系统认识一个像素,然后开始自动查找 图像中的相同像素,查找时还要对图片进行翻转,以全面找到相同的像素,最后 再标注出这些点的中心位置和点数。 Vision 10.2.3 10.2.3 Vision 10.2.3 Vision 10.2.3 Vision 安装与介绍 本例主要通过 Vision 8.5.1 Acquisition Software 软件包来实现。Vision 8. 5.1 Acquisition Software 软件包是一种专门的图像处理软件,需要单独安装。 此软件一般可以通过供应商购买,也可以通过 NI 公司网站下载。 Vision 1111.Vision Vision Vision 安装 Vision 8.5.1 Acquisition Software 安装步骤如下: (1)把光盘放入计算机光驱,系统会自动识别,并显示出安装自检界面,如图1 0-34 所示。
(2)当安装程序自检完成后,“Next”按钮显示为可操作状态。此时单击“Nex t”按钮进入下一个界面,选择安装路径,如图 10-35 所示。 图 10-34 安装自检 图 10-35 选择安装路径 (3)一般此路径就是 LabVIEW 软件安装的默认路径。如果在安装 LabVIEW 软件 时没有改动路径,则不需要修改此路径。单击“Next”按钮,进入下一步选择安 装驱动的界面,如图 10-36 所示。 (4)在驱动选择界面中,可以选择要安装的驱动类型。这里可以看到有 4 种驱 动可安装。当不需要某种驱动时,在其选项上打叉即可。当选择完要安装的驱动 后,单击“Next”按钮,进入下一步的安装确认界面,如图 10-37 所示。 图 10-36 驱动选择 图 10-37 信息确认 (5)对显示的信息确认无误后,单击“Next”按钮开始安装,如图 10-38 所示。 (6)当安装完上面的所有软件包后,系统会显示安装完成界面,并提示是否选 择激活此软件。根据自己的需要选择后,单击“Next”按钮进入下一步骤。最后 安装完成的界面如图 10-39 所示。
图 10-38 正在安装 图 10-39 安装完成 Vision 2222.Vision Vision Vision 介绍 Vision 是一个图像处理的工具包,当安装完成后,启动 LabVIEW 软件,可以在 前面板与后面板上看到相应的控件和函数。 (1)前面板控件 安装完 Vision 后,前面板中会自动出现一个 Vision 选项列表,打开它后可以看 到有三个显示控件,如图 10-40 所示。 — IMAQ Image.ctl:对图像进行分析和处理时用到的一些控件,可用于对图像的类型。图 像处理的方式、不同的形态算子,以及颜色的类型的选择等。 — Image Display 用于设置图片显示方式,包括放大、移动、选择等。 — Image Display(Classic)也用于对图像显示的设置。它只是设置以经典的方式显示图像。 (2)后面板函数 在后面板中,打开函数选板,可以看到“视觉与运动”下拉列表。打开此列表将 显示 Vision 安装后所有的函数,其中包括运动控制方面的函数,如图 10-41 所 示。
图 10-40 Vision 显示控件 图 10-41 “视觉与运动”函数 在后面板的函数选板中,可以看到有 5 大类的“视觉与运动”函数。它们主要是 一些图像采集和图像处理的函数。 — NI-IMAQ 列表:是图像采集函数列表,主要用于通过 NI 的系列图像采集板卡来获得图像 。 其中包括任务的建立、设备的初始化以及硬件参数的设定等函数,如图 10-42 所示。 — Vision Utilities 列表:是视觉应用函数列表,用于对图像进行一些初步的整体操作。它包 括的函数节点如图 10-43 所示。 其中,Image Management 是图像管理模块,包括建立和清除图像任务,获取图 像的各类信息,图像的类型转换等函数节点,如图 10-44 所示。Files 是图像文 件模块,完成对图像文件的读写,以及图像附加信息的读写操作,如图 10-45 所示。
图 10-42 NI-IMAQ 函数列表 图 10-43 Vision Utilities 函数列表 图 10-44 Image Management 函数列表 图 10-45 Files 函数列 表 External Display 是图像的外部显示模块,如选中某一光标区域等。Pixel Man ipulation 是图像像素处理模块。此模块中的函数节点对图像的像素直接进行操 作,包括图像上的点、线、面像素值的获取和设定,以及在图像中插入文本。Ov erlay 是图像覆盖模块,可以对图像上的某一点、线、面(多边形、矩形和圆) 进行覆盖。此种覆盖为非破坏性的覆盖,即不破坏原有的图像,覆盖信息可以另 外和图像一起保存。Color Utilities 是颜色应用模块,用于彩色图像中色彩的 提取,图像中某点、线、面中色彩的设定或获取,以及不同色彩模型的转换。 10.2.4 10.2.4 10.2.4 10.2.4 图像采集
要处理图像,必须先要获取一张图像。获取图像是通过调用 Vision 中的 IMAQ USB 函数来实现的。它的最大优势在于可以自动识别 USB 摄像头,并读取数据。 选择“函数”|“Vision and Motion”|“IMAQ USB”命令,打开 IMAQ USB 函数 下拉列表,如图 10-46 所示。 在进行图像采集时,先要用 IMAQ Create 函数创建一个图像任务,此函数的接线 如图 10-47 所示。 图 10-46 图像采集函数 图 10-47 IMAQ Create 函数图标 这里通过此函数对图像的名称和类型大小等进行定义,否则后面的工作没有办法 进行。然后再通过一个 USB 启动函数来调用 USB 摄像头设备。此函数是 NI 公司 自己研发专门读取 USB 设备的函数,其内部通过调用 ImaqDirectShowDll.dll 文件来实现。 打开 USB 设备后,就要从此设备上获取数据,所以用了一个 IMAQ USB Grab Acq uire 函数来实现。整个图像采集程序框图如图 10-48 所示。 10.2.5 10.2.5 10.2.5 10.2.5 图像处理过程 此处的图像处理包括对图像进行采样,找出与采样点相同的图像。为了找出各种 角度放置的采样点,在查找的同时对图像进行了 360°的翻转,这样可以找出图 像上所有相同点。 1111.整体设计 在本实例设计中,对一张图片先设置好要查找的内容,然后开始自动查找,最后 对找出的内容进行标记和显示。
由于软件的运行比较复杂,数据的采集又是实时的,要求处理速度比较快,所以 要对其进行整体设计,合理安排控件的调用和执行顺序。本程序中采用了一个大 循环,保持程序的持续运行。在内部再调用一个顺序结构来控制程序的执行顺序 , 这样可以保证程序按编程者的思路进行。具体的工作流程图如图 10-49 所示。 图 10-48 图像采集 图 10-49 整个程序 流程图 2222.设置查找像素 读取了图像数据后,还要设置查找的像素。这里通过一个光标选择函数来实现。 先用函数 IMAQ Setup Learn Pattern 2 来设置需要记录的各项,然后再用 IMAQ Extract 函数进行光标设置。这样就记录了此光标区域的图像数据。它的程序 框图如图 10-50 所示。 图 10-50 设置查找像素
这里用一个条件结构来控制是否进入记录像素的程序。也就是当选择了要记录的 像素后,才进入此分支程序。在这一分支程序中,又利用了一个顺序结构,这样 提高了程序运行的效率。它的程序如图 10-51 所示。 图 10-51 复位记录按钮 3333.开始查找 当设置完以上要查找的像素后,就可以在需要的图片中查找此像素。为了查找有 用的像素,在选择了“开始查找”后,要先读取上面标记的像素,再进行查找。 此处程序的设计中,也是先运行一个条件结构,再运行顺序结构,按顺序执行程 序。读取光标选择像素的程序如图 10-52 所示。 图 10-52 读取选择的像素 当读取像素后,利用顺序结构在第二帧的图像中继续查找。在这一帧中放置了一 个循环,并限制循环次数为 4。此时先用一个 IMAQ Rotate 对图像进行翻转,每 次翻转 90°。这样就可以在循环 4 次时翻转一周,对图像上各个角度的像素进 行查找。再把图像送到 IMAQ Match Pattern 2 函数,对其进行查找。通过此函 数直接输出找到的像素信息的数组。为了对找到的信息进行处理,又用一个 For 循环对此数据和簇进行拆分。这里的 For 循环次数直接由数组大小来控制。把数
分享到:
收藏