基于LabVIEW的图像工程实验【实验目的】1.理解图像工程中的基本概念和方法2.掌握基于LabVIEW的图像工程任务的实现方法【预习重点】1.常用的图像增强技术2.常用的灰度图像分割技术3.LabVIEW景象子模板(Vision)中相关节点的功能和使用方法【参考书】1.图象处理和分析;章毓普编著;清华大学出版社,1999年3月第1版2.数字图像处理;何东健等编著;西安电子科技大学出版社,2003年7月第1版3.数字图像处理及模式识别;沈庭芝,方子文编著;北京理工大学出版社,1998年6月第1版4.LabVIEW程序设计与应用;杨乐平等编著;电子工业出版社,2001年7月第1版5.虚拟仪器技术概论;杨乐平等编著;电子工业出版社,2003年3月第1版6.基于LabVIEW的虚拟仪器设计;刘君华等编著;电子工业出版社,2003年1月第1版【实验仪器】工业用摄像头、图像采集卡(IMAQ1407/1409)、PC机、LabVIEW应用软件(LabVIEW7Express)和NI景象处理模块(NIVisionDevelopmentModule)【实验原理】一、图像工程概述图像工程的内容非常丰富,根据抽象程度和研究方法等的不同可分为3个层次(见图1):图像处理、图像分析和图像理解。换句话说,图像工程是既有联系又有区别的图像处理、图像分析及图像理解三者的有机结合,另外还包括对他们的应用。图像处理着重强调在图像之间进行的变换。虽然人们常用图像处理泛指各种图像技术,但比较狭义的图像处理主要满足对图像进行各种加工以改善图像的视觉效果并为自动识别打基础,或对图像进行压缩编码以减少所需存储空间或传输时间、传输通路的要求。图像分析则主要是对图像中感兴趣的目标进行检测和测量,以获得他们的客观信息从而建立对图像的描述。如果说图像处理是一个从图像到图像的过程,则图像分析是一个从图像到数据的过程。这里数据可以是对目标特征测量的结果,或是基于测量的符号表示。它们描述了图像种目标的特点和性质。图像理解的重点是在图像分析的基础上,进一步研究图像中各目标的性质和它们之间的相互联系,并得出对图像内容含义的理解以及对原来客观场景的解释,从而指导和规划行动。如果说图像分析主要是以观察者为中心研究客观世界(主要间就可观察到的事物),那么图像理解在一定程度上是以客观世图1图像工程三层次示意图图像理解图像分析图像处理高层中层低层语义高低抽象程度符号目标象素操作对象小大数据量界为中心,借助知识、经验等来把握整个客观世界(包括没有直接观察到的事物)。本实验主要涉及图像处理和不想理解的部分内容。(一)数字图像基础用计算机进行图像处理的前提是图像必须以数字格式存储,我们把以数字格式存放的图像称之为数字图像。根据数字图像的特性可以将其分成不同的类型,静态图像可分为矢量(Vector)图和位图(Bitmap),位图也称为栅格图像。矢量图是用一系列绘图指令来表示一幅图,如AutoCAD中的绘图语句。这种方法的本质是用数学(更准确的说是几何学)公式描述一幅图像,图像中每一个形状都是一个完整的公式。位图是通过许多像素点表示一幅图像,每个像素具有颜色属性和位置属性。位图又可以分成线画稿(LineArt)、灰度图像(GrayScale)、索引颜色图像(IndexColor)和真彩色图像(TrueColor)。在灰度图像中,像素灰度级用8bit表示,所以每个像素都是介于黑色和白色之间的256(28=256)种灰度中的一种。灰度图像只有灰度颜色而没有彩色,从技术上来说就是具有从黑到白的256种灰度色域(Gamut)的单色图像。我们日常生活中常见的各种照片、图片、海报、广告画等均属连续形式的模拟图像,所以数字图像处理的一个先决条件就是将连续图像进行采样和量化,转换为数字图像。如图2所示,就描述了一幅黑白照片经过采样和量化被转换为灰度图像的过程。即把图像划分为若干图像元素(像素)并给出他们的地址(采样);度量每一像素的灰度,并把连续的度量结果量化为0~255之间的整数(量化)。这样,一幅照片就被转换成了一个2维数组,数组中某一特定位置的元素((x,y))与图像中某一特定位置的图像元素相对应,数组中元素的值(f(x,y))代表了其所对应的那一特定位置图像元素的灰度。(二)图像增强图像的生成、传输或变换的过程中,由于多种因素的影响,总要造成图像的降质。图像增强技术作为一大类基本的图像处理技术,其目的是采用一系列技术去改善图像的效果或将图像转换成一种更适合于人或机器进行分析处理的形式。目前常用的增强技术根据其处理所进行的空间不同,可分为基于图像域的方法和基于变换域的方法2类。基于图像域的方法是指增强操作直接作用于像素的增强方法,可表示为:yxfEHyxg,,……(1)其中f(x,y)和g(x,y)分别为增强前后的图像,而EH代表增强操作。如果EH是定义在每个(x,y)上的,则EH是点操作;如果EH是定义在(x,y)某个临域上,则EH常称为模板操作。1.灰度变换采样量化数字化图2数字图像的生成基于点操作的增强方法也叫灰度变换,常见的几类方法为:直接灰度变换、直方图处理和图像间运算。直接灰度变换是将f(x,y)中的每个像素按EH操作直接变换以得到g(x,y)的图像处理方法。图3所示,为一幅图像经几种直接灰度变换处理的过程:图3(a)中的EH操作是对图像求反,即将原图像的灰度值翻转。图3(b)中的EH操作是增强图像对比度,即通过增加原图里某两个灰度值间的动态范围来增强原图各部分的反差。图3(c)中的EH操作是动态范围压缩,即通过减小原图灰度值间的动态范围来减弱原图各部分的反差。图3(a)中的EH操作是灰度切分,即将某个灰度范围变得非常突出来突显该灰度范围内像素的分布信息。直方图表示数字图像中每一灰度值出现频数的统计。如图4所示,它能给出该图像的概貌性的描述:整幅图像的灰度范围、每个灰度级的频数、整幅图像的亮度和平均对比度等。通过值方图处理,从新调整原图中各灰度值的分布位置,而实现增强整个图像对比度(直方图均衡化)或有选择地增强某个灰度值范围内对比度(直方图规定化)的目的。图5所示,为一幅图像分别经直方图均衡化和直方图规定化处理的过程。0255255yxf,yxg,EH0255255yxf,yxg,EH0255255yxf,yxg,EH0255255yxf,yxg,EH(a)(b)(c)(d)图3利用直接灰度变换增强图像图4直方图统计直方图统计直方图均衡化直方图规定化2.空域滤波借助模板进行邻域操作的增强方法也叫空域滤波。空间滤波器的工作原理都可借助频域进行分析。它们的基本特点都是让图像在傅里叶空间某个范围内的分量受到抑制而让其它分量不受影响,从而改变输出图像的频率分布达到增强的目的。在增强中用到的空间滤波器主要有平滑(低通)滤波器和锐化(高通)滤波器两类。平滑滤波器能减弱或消除傅里叶空间的高频分量,但不影响低频分量。因为高频分量对应图相中的噪声干扰区域、边缘区域等灰度值具有较大较快变化的部分,低通滤波器将这些分量率去可减弱噪声使图像平滑。图6所示,为一幅混有椒盐噪声的原图经平滑滤波器处理的过程。锐化滤波器能减弱或消除傅里叶空间的低频分量,但不影响高频分量。因为低频分量对应图像中灰度值缓慢变化的区域,因而与图像的整体特性,如整体对比度和平均灰度有关,高通滤波器将这些分量率去可使图像锐化增强被模糊的细节。图7所示,为一幅模糊图像经锐化滤波器处理的过程。(三)灰度图像分割图6借助模板的平滑滤波过程图7借助模板的锐化滤波过程在对图像的研究和应用中,人们往往仅对一幅图像中的某些部分感兴趣。这些部分常称为目标或前景(其它部分称为背景),他们一般对应图像种特定的、具有独特性质的区域。为了辨识和分析目标,需要将这些有关区域分离出来,在此基础上才有可能对目标进行进一步利用,如进行测量和特征提取等。把图像分成各具特性的区域并提取出感兴趣目标的技术和过程称为图像分割。对图像(灰度图像)的分割常可基于像素灰度值的2个性质:不连续性和相似性。区域内部的像素一般具有灰度相似性,而在区域之间的边界上一般具有灰度不连续性。所以分割算法可据此分为利用区域间灰度不连续性的基于边界的算法和利用区域内灰度相似性的基于区域的算法。基于边界的分割方法中,边缘检测是第一步也是关键的一步。两个具有不同灰度值的相邻区域之间总存在边缘,边缘是灰度值不连续的结果,检测到这种不连续即可以确定区域的边缘。如图8所示,是一种简单的边缘检测方法。当图中的边缘强度足够高而边缘长度足够短时,既可以认为图像的灰度值在这一区域发生了跃变,因此可再此处定义一个边缘位置。基于区域的分割方法中,取域值是一种最常见的方法。如图9(a)所示,假设图像由具有单峰灰度分布的目标和背景组成,在目标或背景内部的相邻像素间的灰度值是高相关的,但在目标和背景交界处两边的像素在灰度值上有很大的区别。取域值为T,则按照(2)式的映射关系做变换,即可以将目标和背景区分开来而得到图9(b)的结果。TyxfTyxfyxg,,01,……(2)(四)几何特征测量探查线边缘探查线方向灰度灰度轮廓边缘长度边缘边缘强度检测探查线上的灰度连续性图8通过检测探查线上的灰度连续性来确定区域的边缘127,127,01,yxfyxfyxg图9通过取阈值来分理目标(a)(b)从图像中分割出目标并之后,可进一步对它进行几何特征测量和分析,在此基础上可以识别物体,也可以对物体进行分类,或对物体是否符合标准进行判别以实现质量监控。图像的几何特征尽管比较直观和简单,但在许多图像分析问题中起着十分重要的作用,可以用来完成分类、检验、定位、轨迹跟踪等任务。下面介绍如何确定目标几何特征量中位置和方向的方法。图像中的目标通常不是一个点,因此用物体的面积的中心点作为物体的位置。如图10所示,若图像中的目标队赢得像素位置坐标为(i=0,1,…,n-1;j=0,1,…m-1),这可用下式计算目标的位置坐标:10101nimjixmnx,10101nimjiymny……(3)确定目标的方向有一定的难度。如果目标是细长的,则通常可以把较长方向上的最小二阶矩轴(最小惯量轴在二维平面上的等效轴)的方向定为目标的方向。也就是说,要找到一条直线,使下式定义的E值最小:yxyxfrEdd,2……(4)式中,r是点(x,y)到直线的垂直距离。二、基于LabVIEW的图像工程实现图像工程的大部分内容都是借助于计算来实现的,借助美国国家仪器公司提供的NI景象处理模块(NIVisionDevelopmentModule),可以基于LabVIEW软件平台来实现图像工程中的大部分内容。基于LabVIEW的图像工程能够充分利用G语言编程简单、功能完善、应用灵活等突出特点,使得图像工程任务的实现变得更加简单。下面将有重点的介绍NI景象处理模块中的内容:如图11所示,在LabVIEW控制模板(Control)的景象子模板(Vision)中包含IMAQImage.ctl、ImageDisplay和ImageDisplay(Classic)节点,以及IMAQVisioncontrols和MachineVisioncontrols子模板。它们的功能如下表所式:(xi,yi)xy图10用物体的面积的中心点作为物体的位置IMAQImage.ctlImageDisplayImageDisplay(Classic)IMAQVisioncontrolsMachineVisioncontrols图11控制模板(Control)中的景象子模板(Vision)表1名称及图标功能IMAQImage.ctl描述图像的数据类型ImageDisplay*在前面板中显示图像(“3D”风格),并可以利用其中提供的ROI(Regionsofinterest)工具来选定感兴趣的区域(ROI)ImageDisplay(Classic)*在前面板中显示图像(“经典”风格),