资源描述
题目: 基于数字图像处理技术的零件几何尺寸测量院(系) 信息科学与工程学院 专 业 电子信息工程 届 别 学 号 姓 名 指导老师 年 4 月目 录摘 要 2ABSTRACT3第一章 绪 论 411 引 言 412 数字图像处理的方法概要 413 数字图像处理的应用领域 614 数字图像处理在工业检测中的意义 715 数字图像处理在工业检测研究的难点 816 课题设计的相关背景 917 课题设计的主要内容 10第二章 数字图像处理概述 1121 数字图像处理的研究内容 1122 数字图像处理系统 122.2.1 数字图像处理系统硬件 122.2.2 数字图像处理软件系统 1323 数字图像处理相关学科 152.3.1 计算机视觉 162.3.2 模式识别 162.3.3 图像理解 17第三章 零件几何尺寸检测系统的设计 1831 数字图像处理检测系统的组成 1832 零件几何尺寸测量系统的组成 203.2.1 零件几何尺寸检测系统的硬件 203.2.2 零件几何尺寸测量系统的软件 213.3 零件几何尺寸测量系统的工作原理 .21第四章 图像处理过程的实现 2241 图像预处理 224.1.1 锐化增强 234.1.2 滤波去噪 2342 图像分割 2343 系统标定 2544 零件边缘检测 254.4.1 图像边缘检测的基本步骤 254.4.2 边缘检测的基本算子及其性能比较 264.4.3 形态学膨胀 2845 零件参数计算 294.5.1 方形零件几何参数测量 294.5.2 圆环形零件几何参数测量 2946 零件裂纹探测 32第五章 测量结果与误差分析 3251 测量结果 3252 误差分析 34结语 34参考文献 35附录 1.36附录 2.391摘 要数字图像处理是一种通过计算机采用一定的算法对图形图像进行处理的技术,因其处理迅速准确,近年来已在生产生活的各个领域得到了广泛运用。而MATLAB 强大的矩阵运算和图形展示功能,使图像处理变得更加的简单和直观。本文利用数字图像处理技术和 MATLAB 平台实现对零件几何尺寸的非接触式测量。采用 1000 万像素 USB 数码照相机获得零件图像,对图像采用大津法寻找到最优阈值将图像二值化,运用边缘检测算子找到零件的边沿轮廓,并运用形态学运算修整边缘,最后对边缘数据采用最小二乘法拟合求出零件的几何尺寸。另外对零件表面是否存在裂纹进行探测。关键词:数字图像处理 ,MATLAB , 尺寸测量 2ABSTRACTDigital Image Processing is a graphics and image processing technology based on computer algorithm. In recent years, it has been widely used in various fields of production and life for its quick and accurate processing. Specifically, MATLAB s powerful matrix calculation and graphical display capabilities make image processing become more simple and intuitive .In this paper, Digital Image Processing technology and MATLAB platform are used to achieve non-contact measurement of parts geometric size. The image of parts is obtained by a 10 million-pixel USB digital camera. During processing, firstly, using the Otsu method to find the optimal threshold to get binary image, Secondly, using edge detection operator to find the edge contour of the parts, meanwhile, using the morphological operations to trim the edge. Finally, using the edge data to calculate parts geometric size through least-squares method. In addition, detect whether there exists crack on parts surface.keywords: Digital Image Processing, MATLAB, size detection3第一章 绪 论11 引 言数字图像处理(Digital Image Processing)又称为计算机图像处理,它是指将图像信号转换成数字信号并利用计算机对其进行处理的过程。数字图像处理最早出现于 20 世纪 50 年代,当时的电子计算机已经发展到一定水平,人们开始利用计算机来处理图形和图像信息。数字图像处理作为一门学科大约形成于 20 世纪 60 年代初期。早期的图像处理的目的是改善图像的质量,它以人为对象,以改善人的视觉效果为目的。图像处理中,输入的是质量低的图像,输出的是改善质量后的图像,常用的图像处理方法有图像增强、复原、编码、压缩等。数字图像处理技术首次获得实际成功应用的是美国喷气推进实验室(JPL) ,他们对航天探测器徘徊者 7 号在 1964 年发回的几千张月球照片使用了图像处理技术,如几何校正、灰度变换、去除噪声等。该技术的另一个巨大成就来自于医学方面。1972 年英国 EMT 公司工程师 Housfield 发明了用于头颅诊断的 X 射线计算机断层摄影装置,也就是我们通常所说的 CT(Computer Topography) 。此外,数字图像处理技术在许多应用领域受到广泛重视并取得了重大的开拓性成就,这些领域包括航空航天、生物医学工程、工业检测、机器人视觉、公安司法、军事制导、文化艺术等,使其迅速发展成为一门引人注目、前景远大的新型学科。12 数字图像处理的方法概要图像处理的方法多种多样,般可分为图像变换、图像增强和复原、图像分割、图像压缩编码、图像描述和图像识别等几类:(1) 图像变换 由于图像阵列很大,直接在空间域中进行处理,涉及的计算量很大。利用4正交变换如傅里叶变换、余弦变换等的性质和特点,将图像变换到频率域中进行处理,不仅可减少计算量,而且可获得更有效的处理,如傅里叶变换可在邻域中进行数字滤波处理。目前新兴的小波交换研究在时域和频域中都具有良好的局部化特性,它在图像处理中也有着广泛而有效的应用。此类别主要研究各种变换模型和处理方法(2) 图像增强和复原 图像增强和复原的目的都是为了提高图像的质量。 图像增强。利用各种数学方法和变换手段提高图像中目标与非目标,如背景的对比度与清晰度,达到突出目标,有效地表示和提示图像,以利于人或机器进行分析处理的目的。此类别主要研究各种增强模型和处理方法。 图像复原。在景物成像过程中,由于成像设备与物体的相对运动、介质散射、系统畸变如成像系统的变焦、成像器材的固有缺陷、噪声干扰等因素会造成图像质量降低,称之为“退化” ,典型现象是图像模糊。使退化的图像恢复本来面目,真实反映原景物图像的处理,称为图像复原。此类别主要研究各种校正模型和处理方法。 图像增强不考虑图像降质的原因,突出图像中所感兴趣的部分。如强化图像高频分量,可使图像中物体轮廓清晰,细节明显;强化低频分量,可减少图像中噪声影响。图像复原则要求对图像降质的原因有一定的了解,一般而言,应根据降质过程建立“降质模型”再采用某种滤波方法,恢复或重建原来的图像。(3) 图像压缩编码 把数字化的图像数据按一定规则进行排列或运算的过程称为图像编码。由于图像的数据量很大,存储要占很大的空间,传输也要花费不少时间,为此利用图像本身的内在特性如像素灰度值之间的相关性,按某种特殊方式编码,以压缩总的信息量,称之为图像压缩编码。此类别主要研究各种高效压缩编码方法。压缩可以在不失真的前提下获得,也可以在允许的失真条件下进行。编码是压5缩技术中最重要的方法,它在图像处理技术中是发展最早且比较成熟的技术。(4) 图像分割 图像分割是数字图像处理中的关键技术之。图像分割是将图像中有意义的特征部分提取出来,其有意义的特征有图像中的边缘、区域等,这是进一步进行图像识别、分析和理解的基础。虽然目前已研究出不少边缘提取、区域分割的方法,但还没有一种普遍适用于各种图像的有效方法。因此,对图像分割的研究还在不断深入之中,是目前图像处理中研究的热点之一。(5) 图像描述 图像描述是图像识别和理解的必要前提。作为最简单的二值图像可采用其几何特性来描述物体的特征,一般图像的描述方法采用二维形状描述,它有边界描述和区域描述两大类。对于特殊的纹理图像可采用二维纹理特征描述。随着图像处理研究的深入发展,已经开始进行三维物体描述的研究,提出了体积描述、表面描述、广义圆柱体描述等方法。13 数字图像处理的应用领域图像信息是人类主要的信息来源之一,图像处理的应用领域也涉及到人们工作生活中的方方面面。主要应用可归纳为以下几个方面:(1) 医用图像处理医学上不论是基础研究还是临床应用,都是图像处理种类极多的领域。例如生物医学的显微图像的处理分析,如红白细胞和细菌,染色体分析;临床诊断中 X 光图像的鉴别、超声波图像 B 超的分析、眼底照片的分析等都是医疗辅助诊断的重要手段,尤其是计算机层析成像技术 CT,可以获得人体剖面图,为肌体病变特别是肿瘤的诊断带来了革命性的变化。近年来出现的核磁共振 CT,使人体免受各种硬射线的伤害,而且图像更为清晰。(2) 遥感图像的处理飞机或人造卫星传送来的遥感图像,由于各种原因图像质量不是很好,必须在成像、存储、传输、判读过程中进行各种数字处理与分析如辐射校正、几何畸变校正、多光谱统计信息分类等,并将其变为可视的资源信息或气象信息,6如大气预报中的卫星云图。目前遥感技术已在资源调查、灾害监测、农业规划、城市规划、环境保护等方面得到了广泛的应用。 (3) 文字的识别与图纸的判读文字与图纸是科技信息的主要传输手段。文字与图纸在图像处理中都是以最简单的二值图像形式出现的。文字识别的应用包括手写体文字的识别、图文混合中文字的识别等,如邮政编码的自动识别,计算机光笔输入、经扫描仪扫描的文字材料都是以图像文件的形式保存,如何将其转变成文本文件等等。目前此类应用技术已比较成熟,如 OCR 软件等。图纸的判读则涉及到各种逻辑图和机械设计图的自动读取问题,其中也包括图纸上的文字识别问题即图文混合下的文字识别。 (4) 工业领域的应用产品外观检测与筛选,表面缺陷的自动检测,组装与流水线上的自动化,工业材料的质量检验。 (5) 农业上的应用包括农产品色度的检测如鉴别水果成熟度,农牧产品、作物的表面形状和特征参数的测定。 (6) 其他指纹识别、影视中的特效等。14 数字图像处理在工业检测中的意义数字图像处理技术在工业检测中的意义尤其突出,主要可以体现在以下两个方面:(1) 数字图像处理技术是种智能化的高科技检测手段,大大提高了检测精度和工业生产的效率,同时也减少了生产成本和风险,是工厂生产方式科学化的表现。(2) 由于工业零件和各种元器件的形状规则大小不一、表面特征复杂,用数字图像处理技术对其进行检测具有很大的理论研究价值。它的研究技术和实现方法为数字图像处理技术在其他领域的研究提供了重要的理论基础,具有很大的参考性和借鉴性。7在包括汽车制造、制药、电子、包装、印刷、烟草、日化、建材,制币、翩卡等在内的几乎所有的现代工业自动化生产中,涉及到各种各样的检验生产监视和零件识别应用,可用于电子产品零部件安装质量的检验,如电路板组件中器件的漏缺或错装、元件方向错误、元件移位的检测、以及 IC 封装(标识字符和引脚)的质量检验、产品封装质量(包括标签文字说明正误)的检验,还有机械零件尺寸、圆孔或粒子直径和面积的测量和计算等。经过适当的改造转换,还可以应用于药品、纺织品、印刷品和陶瓷产品等领域的产品质量检验。通常这种带有高度重复性和智能性的工作只能用人的肉眼来完成,但有些时候,如微小的尺寸要做到精确快速测量、形状匹配、颜色识别等,人们根本无法用肉眼连续稳定地进行,其他物理传感器也难以有用武之地。由于人的生理原因,无法避免疲劳、疾病等原因引起的误差和错误,导致效率低下,不利于生产。这种智能型的数字图像处理系统可完成靠人的视觉检测难以胜任的大规模的测试工作,提高生产效率,最大化厂家的生产利润,同时还具有检测速度快、精度高、可靠性强、无接触无损、性价比高和功能扩展容易等优点。数字图像处理技术提供各种高速度、高精度、体积小、灵活易用的标准和非标准自动识别检测系统,能在高速状态下准确地识别与定位生产线上的元器件,检测生产线上产品的外形及表面缺陷,以及控制和检测生产过程中的一些参数。该系统本身可以确定检测结果,并将处理过程中的信息传送给工厂网络中的其它设备。15 数字图像处理在工业检测研究的难点(1) 引导知识广泛工业上待检测物体的特征复杂,包括其灰度、颜色分量、纹理等信息。要对物体进行识别和分割必须理解和掌握大量的相关知识。除此之外,还要求掌握物体间的联系。数字图像处理技术涉及了数学、神经生物学、计算机科学、模式识别等学科,研究数字图像处理,必须掌握丰富的理论知识。同时,还需要根据人类的视觉原理建立相应的视觉模式体系。视觉机理复杂深奥,物体通过人眼进入大脑,进行识别几乎是瞬间可得的,而要以此为根据建立完善的视觉体系模式,却是非常困难的。8(2) 环境因素的多义性在进行图像信息采集的过程中,会由于多种因素的干扰而影响后续处理,如:物体的形状、颜色、空气中各种杂质、光源角度、照相机角度,以及空间关系的变化都会对成像有一定程度的影响,从而降低了最后识别的精确度。因此,数字图像处理检测系统对环境的要求也很高,要求检测场地最好做到无尘无污染、光源分布均匀、成像装置无偏移等。(3) 图像的多义性三维场景被投影为二维图像,深度和不可见部分的信息被丢失,因而会出现不同形状的三维物体投影在图像平面上产生相同图像的问题。另外,在不同角度获取同物体的图像也会有很大的差异。(4) 海量的数据信息数字图像处理技术处理的对象是图形图像、灰度图像、彩色图像、深度图像,它们的信息量都十分巨大,巨大的数据量需要很大的存贮空间,同时不易实现快速处理。但在工业生产环境中要求实时地检测和结果输出,这就需要配置对图像处理能力较强的计算机,尽量减少待处理图像的信息量,设计复杂度较低的算法。16 课题设计的相关背景随着科学技术的发展和人民生活水平的提高,数字摄像机的出现和数字图像处理技术的发展,在日新月异的数字化时代中,越来越引起人们的广泛关注,数字图像处理已经成为必备的基础知识。近几十年来由于计算机技术的蓬勃发展,图像处理技术也得到了空前的发展和应用。目前,图像处理技术已经广泛应用于工业、军事、医学、交通、农业、天气预报、银行、超市、重要部门的监控报警系统、可视电话、网络传输等等领域,成为各个学科学习和研究对象。随着图像处理技术的广泛应用,学习和掌握这门科学显得格外重要,图像处理已经成为信息技术相关领域的核心课程。在目前应用的许多场合中,数字图像处理系统把待识别的物体看作是由简单的点、直线和平面的组合。数字图像处理的研究工作就是把物体的复杂特性转化为简单的元素组合,利用科学的、数学的理论基础对其进行描述,找到它9们的组成规律,从而实现对该物体的识别、定位或者是其它目的的应用。数字图像处理系统还可以处理和识别更广泛的图像,例如遥感图像、医学图像等,这些图像需要利用其颜色、亮度、纹理等特征,其处理和识别的难度相对较大。在现代工业领域中,研究能代替人类进行生产和检测的智能化系统是主要方向。使用数字图像处理自动检测系统对物体进行识别和检测,无需接触,只要得到其二维图像,便可以实现对其三维性状的研究。通过提取到的待检测物体的形状、大小、颜色、纹理以及轮廓等特征,就可以进行更高层信息的处理。这样的系统不仅具有高效率、低风险的特点,还可以降低生产成本,提高劳动生产率,提高工厂的自动化程度。17 课题设计的主要内容本设计的主要目的是用数字图像处理的方法来测量零件的几何尺寸、探测裂纹。通过图像采集设备采集到元器件的数字图像,并将其输入计算机,使用MATLAB 图像处理软件对图像中的元器件进行目标识别、图像分割、特征提取和尺寸测量。该系统将取代人工手动测量的老方法,减少工作人员不必要的劳动量,提高生产效率。本设计的主要工作内容包括测量系统的设计、图像预处理、图像分割及特征提取、几何尺寸测量及裂纹探测四个方面。(1) 测量系统的设计测量系统分为基础硬件配置和系统软件两部分。该系统的基础硬件配置为高分辨率 CCD 数码相机、一台普通的 PC 机。要求能满足实时的图像采集,并且能保证所采集图像的质量和清晰度。软件系统为目前使用的 Windows XP 操作系统和自己编程设计的 MATLAB 图像处理软件。(2) 图像预处理在对图像中的元器件进行分割和自动识别之前,需要对图像进行预处理,排除或减弱图像中的各种噪声干扰因素,如:杂质灰尘、光照不均等因素:突出图像中的有用特征,如:颜色特征和图像的对比度等,从而提高后续图像分割的精度和准确性。10(3) 图像分割及特征提取本设计采用了最优阈值分割的图像分割算法和边缘检测算子的特征提取算法,并结合数学形态学方法,把图像分割成各自具有特性的区域并提取出感兴趣的目标,在此基础上才有可能进一步对目标进行测量和对图像进行利用,同时对零件表面存在的裂纹进行探测和显示预警。本设计采用分层次分步骤的算法,对图像中零件进行图像处理。第一步:根据图像中零件亮度的特点,直接使用阈值化的方法对图像进行分割。第二步:用边缘算子检测法提取零件的边沿轮廓,同时用数学形态学进行修正处理,桥接细微间隙,使边沿轮廓完整清晰。(4) 几何尺寸测量及裂纹探测将零件的边沿轮廓提取好之后,采用连通区域标记的算法对图像中的零件几何尺寸进行测量,同时在二值化图像中即可观察到裂纹的存在。对于圆环形零件,采用最小二乘法拟合圆来实现其内外径、同心度等几何参数的测量,在拟合时,若存在裂纹,则将返回异常的连通区域值,由此可判断裂纹的存在。第二章 数字图像处理概述21 数字图像处理的研究内容“图”是物体透射光或反射光的分布, “像”是人的视觉系统对图的接收在大脑中形成的印象或认识。图像是两者的结合。图像处理就是对图像信息进行加工处理,以满足人的视觉心理和实际应用的需要。简单的说,依靠计算机对图像进行各种目的的处理就称之为数字图像处理。总的来说,数字图像处理包括以下几项研究内容:(1) 点运算 点运算主要是针对图像的像素进行加、减、乘、除等运算。图像的点运算11可以有效的改变图像的直方图分布,这对于提高图像的分辨率以及图像均衡都是非 常有益的。(2) 几何处理 几何处理主要包括图像的坐标转换、图像的移动、缩小、放大、旋转、多个图像的配准以及图像扭曲校正等。几何处理是最常见的图像处理手段,几乎所有的图像处理软件都提供了最基本的图像缩放功能。(3) 图像增强和复原 图像增强和复原的目的是为了提高图像的质量,去除噪声、提高图像的清晰 度等。图像增强主要是突出图像中感兴趣的目标部分,如强化图像高频分量,课 使图像中的物体轮廓清晰,细节明显;而强化图像低频分量,可减少图像中噪声 的影响等。(4) 图像时域频域变换 图像变换就是通过时域和频域的变换找到其中的特征,再加以变换的过程。傅立叶变换是最基础的图像变换。在傅立叶变换基础上又有离散余弦变换、沃尔 什哈达玛变换和小波变换等。 (5) 图像形态学处理 图像形态学是数学形态学的延伸,是一门独立的研究科学。利用图像学处理 技术,可以实现图像的腐蚀、细化、和分割等效果。一般图像分割有两种情况,一是图像边缘检测,二是区域分割。边缘检测是最常用的方法,主要是通过边缘 检测算子、模板和曲面拟合来达到图像分割的目的。 (6) 图像的编码 图像编码研究属于信息论中信源编码的范畴,其主要的宗旨是利用图像信号的统计特性及人类视觉特性对图像进行高效编码,从而达到压缩的目的。图像12编码是数字图像处理中一个经典的研究范畴,有60多年的历史,目前,已经制定了多种编码标准,如 H.261,JEPG,MEPG等。 (7) 图像分析和理解 图像分析和理解是图像处理技术的发展和深入,也是人工智能和模式识别的 一个分支。在图像分析和理解中主要有图像的描述和图像的分类识别。图像分类 识别属于模式识别(当今的模式识别方法有3种:统计识别法,句法结构模式识别法,和模糊识别法)的范畴,其主要内容是图像经过某些预处理(增强、复原、压缩)后,进行图像分割和特征提取,从而进行分类判别。22 数字图像处理系统2.2.1 数字图像处理系统硬件早期的数字图像处理系统为了提高处理速度、增加容量都采用大型机。随着 计算机性价比(性能价格比)日新月异的提高,以小型机为主的微型图像处理系 统得到发展。主机为PC机,配置以图像采集卡及显示设备就构成了最基本的微型 图像处理系统。目前,国产的CA540、VP32、FGCT11010N8、CA-CPE-3000等图像板均已研制成功并已商品化。微型图像处理系统成本低、应用灵活、便于推广。特别是微型计算机的性能逐年提高,使得微型图像处理系统的性能也不断升级,加之软件配置丰富,使其更具实用意义。(1) 显示卡 显示卡是记忆和保存图像的地方,通常,存储的图像要随时显示在显示器上。 PC机多采用800600或1024768个像素点。通常在图像处理装置中,灰度值红(R)、绿(G)、蓝(B)各占8位(bit),共计24位,可以表示1670万种颜色,这种显示卡称为真彩色显示卡。 (2) 计算机 图像处理的主要特点是数据量大、运算时间长,因而对系统硬件配置要求13较高。目前,配置奔腾P4 2.4G以上CPU、512MB内存、80G以上硬盘的PC机已属常见,计算速度大幅度提高,可与几年前的大型机媲美。为了加快图像的显示和处理速度,用于图像处理的PC机配置应尽可能高一些。(3) 图像存贮装置 图像数据量庞大,发展早期其存储成为疑难问题。到目前为止,除了大容量磁盘可供存储图像数据之外,MO、CD、DVD等光学存储装置以及SAN、 NAS等网络存储系统,为存储海量图像数据提供了极好的支持。 2.2.2 数字图像处理软件系统微型图像处理系统既包含硬件设备,也需要一定的软件环境支持。目前,图 像处理系统平台多为 Microsoft Windows 或 X-Windows,开发的主流工具有Microsoft公司的VC+、MathWorks公司的MATLAB(矩阵实验室) 、ACDSystems公 司 的 ACDSee等 , 本 设 计 采 用 MathWorks公司的MATLAB软件平台,因为其强大的数值运算功能和完备的图形处理功能,使图像处理变得更加的简单和直观。2.2.2.1 MATLAB软件概述20世纪70年代,美国新墨西哥大学计算机科学系主任Cleve Moler为了减轻学生编程的负担,用FORTRAN编写了最早的MATLAB。1984年由Little、Moler、Steve Bangert合作成立了的MathWorks公司正式把MATLAB推向市场。到20世纪90年代,MATLAB已成为国际控制界的标准计算软件。MATLAB是主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。 MATLAB 产品族可以用来进行以下各种工作: 数值分析 14 数值和符号计算 工程与科学绘图 控制系统的设计与仿真 数字图像处理技术 数字信号处理技术 通讯系统设计与仿真 财务与金融工程 管理与调度优化计算(运筹学) MATLAB 的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。附加的工具箱(单独提供的专用MATLAB 函数集)扩展了MATLAB 环境,以解决这些应用领域内特定类型的问题。2.2.2.2 MATLAB系统结构MATLAB系统由MATAB开发环境、MATLAB数学函数库、MATLAB语言、MATLAB图形处理系统和MATLAB应用程序接口(API)五大部分构成: (1) MATLAB开发环境MATLAB开发环境是一套方便用户使用的MATLAB函数和文件工具集,其中许多工具是图形化用户接口。它是一个集成的用户工作空间,允许用户输入输出数据,并提供了M文件的集成编译和调试环境,包括MATLAB桌面、命令窗口、M文件编辑调试器、MATLAB工作空间和在线帮助文档。 (2) MATLAB数学函数库MATLAB数学函数库包括了大量的计算算法。从基本算法如加法、正弦,到复杂算法如矩阵求逆、快速傅里叶变换等。 (3) MATLAB语言MATLAB语言是一种高级的基于矩阵/数组的语言,它有程序流控制、函数、数据结构、输入/输出和面向对象编程等特色。 (4) MATLAB图形处理系统图形处理系统使得MATLAB能方便的图形化显示向量和矩阵,而且能对图形添加标注和打印。它包括强大的二维三维图形函数、图像处理和动画显示等函15数。 (5) MATLAB应用程序接口MATLAB应用程序接口(API)是一个使MATLAB语言能与C、Fortran等其它高级编程语言进行交互的函数库。该函数库的函数通过调用动态链接库(DLL)实现与MATLAB文件的数据交换,其主要功能包括在MATLAB中调用C和Fortran程序,以及在MATLAB与其它应用程序间建立客户、服务器关系。2.2.2.3 MATLAB特点优势同其他图形处理软件相比,MATLAB软件具有如下四个方面的特点优势:(1) 高效的数值计算及符号计算功能,能使用户从繁杂的数学运算分析中解脱出来; (2) 具有完备的图形处理功能,实现计算结果和编程的可视化; (3) 友好的用户界面及接近数学表达式的自然化语言,使学者易于学习和掌握; (4) 功能丰富的应用工具箱(如信号处理工具箱、通信工具箱等) ,为用户提供了大量方便实用的处理工具。23 数字图像处理相关学科数字图像处理的理论已经非常完善,到如今已经发展成为一门与多门学科交叉的学科。下面就简单介绍一下与之相关的理论学科:计算机视觉、模式识别和图像理解。2.3.1 计算机视觉计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,用电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取“信息”的人工智能系统。这里的信息指Shannon定义的,可以用来帮助做一个“决定”的信息。因为感知可以看作是从感官信号中提取信息,16所以计算机视觉也可以看作是研究如何使人工系统从图像或多维数据中“感知”的科学。计算机视觉就是用各种成像系统代替视觉器官作为输入敏感手段,由计算机来代替大脑完成处理和解释。计算机视觉的最终研究目标就是使计算机能像人那样通过视觉观察和理解世界,具有自主适应环境的能力。这是一个要经过长期的努力才能达到的目标。因此,在实现最终目标以前,人们努力的中期目标是建立一种视觉系统,这个系统能依据视觉敏感和反馈,在某种程度上,智能地完成一定的任务。例如,计算机视觉的一个重要应用领域就是自主车辆的视觉导航,目前还没有条件实现像人那样能识别和理解任何环境,完成自主导航的系统。因此,目前人们努力的研究目标是实现在高速公路上具有道路跟踪能力,可避免与前方车辆碰撞的视觉辅助驾驶系统。这里要指出的一点是在计算机视觉系统中计算机起代替人脑的作用,但并不意味着计算机必须按人类视觉的方法完成视觉信息的处理。计算机视觉可以而且应该根据计算机系统的特点来进行视觉信息的处理。但是,人类视觉系统是迄今为止,人们所知道的功能最强大和完善的视觉系统。因此,用计算机信息处理的方法研究人类视觉的机理,建立人类视觉的计算理论,也是一个非常重要和令人感兴趣的研究领域。2.3.2 模式识别什么是模式呢?广义地说,存在于时间和空间中可观察的事物,如果我们可以区别它们是否相同或是否相似,都可以称之为模式。模式识别就是根据观察到的事物的模式对事物进行分类的过程。模式识别技术根据从图像抽取的特征、统计特性或结构信息,把图像分成各种类别。例如,文字识别、指纹识别和人脸识别、目标检测和遥感分析等。数字图像处理中模式识别技术经常用于对图像中某些部分或区域进行分割、识别和分类。模式识别主要根据一定的度量来对物体进行描述和分析。为了提供有效的模式描述,还需要用预处理来消除噪声和多余的信息。然后从中提取一组数值17的和,或者是非数值的特征度量,以及这些特征之间的关系,以此来表示模式。这个过程叫做模式分析或模式描述。为了确定有一组好的特征度量以及它们之间的关系用于模式表示,必须对所研究的模式进行仔细分析,全面利用有关模式的统计特征和结构特征的知识。有许多数学方法被用来解决模式识别的问题,这些方法基本上可分成两大类,即统计模式识别方法和结构(句法)模式识别方法,与此相应的模式识别系统都由两个过程所组成,即设计和实现。设计是指用一定数量的样本(叫做训练集或学习集)进行分类器的设计。实现是指用所设计的分类器对待识别的样本进行分类决策。在图像识别技术中,模式识别占有核心的地位。所有的图像处理技术都是为更好地进行模式识别而做准备。模式识别是图像识别的实质性阶段。2.3.3 图像理解图像理解是在图像处理的基础上,结合人工智能与专家系统而发展起来的一门新兴学科。图像理解是研究用计算机系统解释图像,实现类似人类视觉系统理解外部世界的一门学科。给定一幅图像,图像理解程序不仅描述图像本身,而且描述和解释图像所代表的景物,以便对图像代表的内容做出决定。图像理解除了需要复杂的图像处理以外还需要具有关于景物成像的物理规律的知识以及与景物内容有关的知识。其中又包括人工智能、人工神经网络和神经物理学等。18图2-1 图像理解系统关系图图像理解是一个总称,是一个由许多模块组成的系统。每个模块相互联系,在系统中都有着很重要的作用。其中,图像预处理、图像分割属于图像处理;图像特征提取和图像分类属于图像的模式识别;而句法分析涉及的内容则是从图像分割到图像结构分析这一过程。整个系统运行得到的结果就是对图像的描述和解释。图像理解涉及到了获取图像的方法、装置和具体应用的实现,这就形成了所谓的计算机视觉,是简易的计算机视觉系统。第三章 零件几何尺寸检测系统的设计31 数字图像处理检测系统的组成数字图像处理自动检测系统在工业检测中正在逐步取代传统的检测系统,开始替代人进行生产和工作。人工检测不仅工作效率不高,检测精度很难达到标准,还很容易因为人的疲劳等因素造成检测失误。数字图像处理检测系统可以应用于工业检测领域中的尺寸测量、特征检测、图形图像及字符识别、工件定位等各个方面。数字图像处理检测系统按照功能模块来分类,主要包含以下几个部分:图像信息获取模块、图像信息处理模块、系统控制模块和人机交互19模块系统各部分之间的逻辑关系如图3-1所示。图3-1 数字图像处理检测系统组成模块图像信息获取模块通过图像采集设备获得待检测物体的二维信息,并以数字图像的形式传送到图像信息处理模块,由图像信息处理模块对其进行分析和数字图像处理。系统控制模块处于整个检测系统的核心位置,控制待检测物体的图像信息采集,并控制图像信息处理模块对所采集的信息进行图像处理,得到所需要的检测结果,完成检测任务。人机交互模块则需要直接和控制核心相互通信,以便操作者对检测系统进行实时参数设置或者发出各种操作指令。典型的数字图像处理检测系统一般包括图像采集系统(CCD摄像机、数码相机、扫描仪、图像采集卡)、具有图像处理功能的计算机、图像输出设备(打印机、视频拷贝机)等,见图3-2。图3-2 数字图像处理检测系统的组成图像采集系统负责将对象的可视化图像和特征转换为能被计算机处理的一系列数据信息。由于机器视觉系统强调速度和精度,因此图像采集系统需要及时、准确地提供清晰图像。图像采集系统般由光源、镜头、摄像机、图像采集卡等组成。图像的处理部分包括图像处理硬件和图像处理软件,也就是具有专业图像20处理功能的计算机。图像分析和处理的结果由输出设备进行输出显示。32 零件几何尺寸测量系统的组成基于数字图像处理技术的零件几何尺寸测量系统由硬件和软件两部分组成。3.2.1 零件几何尺寸检测系统的硬件为了采集图像,我们搭建了一个仿照工业生产中常用图像获取装置的平台,包括:光源、图像获取设备(CCD数码相机)、计算机及其外围设备。数码相机将要识别的对象以图像的形式记录下来,将采集好的数字图像输入计算机,以便计算机对其进行各种处理。光照系统为图像采集提供合适的照明,减少干扰,使图像的效果达到最好,便于图像的处理和分析。将图像数字化后,由专业的图像处理软件来处理图像,如进行图像预处理、特征提取和目标识别等。最后由显示器输出零件的几何尺寸。实验中的零件几何尺寸检测系统结构图如图3-3所示:图3-3 零件几何尺寸检测系统硬件工作图本设计中零件几何尺寸检测系统的功能强、性价比高、且易于扩展。该系统主要由四个部分组成:白炽灯光源,Sony 1000万像素的CCD数码相机,PC处理器为Intel 酷睿2双核T6系列的计算机,2G内存,NVIDIA GeForce GT240M的图形显示卡,14寸液晶显示器。213.2.2 零件几何尺寸测量系统的软件零件几何尺寸测量系统的软件由操作系统和专业图像处理应用软件构成。(1) 操作系统操作系统选用Windows XP系列。(2) 专业图像处理应用软件该专业应用软件的主要功能是实现了图像的实时抓取,以及数字的图像处理,并完成了零件几何尺寸测量的功能。开发测量所需的专业图像处理软件,选择适合已有软件平台以及高效便捷的图像处理软件的开发编程语言。零件几何尺寸测量系统的开发选用的是MATLAB R2009a,该工具有开放的设计理念,将数值计算和图形可视化功能完美结合,并且是一种语法简洁的高级语言,可以避免许多开发中不必要的程序错误。同时,MATLAB R2009a不仅具有许多常用的图像处理函数,如:图像的读写、彩色图像与灰度图像的转换、直方图均衡化计算、图像的形态学运算等等,还在以往的基础上进一步优化了原有的函数,在很大程度上节省了开发的时问,也提高了程序的计算机效率。3.3 零件几何尺寸测量系统的工作原理在零件几何尺寸测量系统的工作流程中,主要可以分为图像采集、图像预处理、图像分割(二值化) 、系统标定、零件边缘检测和参数计算六个步骤。图3-4 零件几何尺寸检测系统软件流程图(1) 图像采集将待测量尺寸的零件置放在工作台上,调整好CCD数码相机的位置和角度,图像采集图像预处理(增强、去噪)图像分割(二值化)系统标定零 件 边 缘 检 测参数计算22调节相机镜头的摄像范围并且固定好摄像机到工作台的相应高度,就可以进行图像的采集了。采集的数字图像输入计算机,由编制好的专业图像处理软件对其进行分析和处理。(2) 图像预处理采用预处理方法将采集到的图像进行适当的处理。对其进行色度拉伸和去相关处理,增强图像中彩色信息。采用锐化的方法突出其颜色信息变化强烈的部分,例如边缘和纹理区域;选用合理的滤波方法尽可能去除成像过程中产生的噪声,提高测量精度。(3) 图像分割将图像中感兴趣的部分分割出来,便于后续的图像处理。常用的分割方法有按轮廓分割和按区域分割两种方法。(4) 系统标定在固定的工作台成像环境中对数码相机进行标定,将机器视觉中用于数字图像处理的像素值与零件的实际尺寸联系起来。(5) 零件边缘检测将零件的边缘轮廓,如内外径等检测出来并标记,便于对零件参数进行计算。 (6) 参数计算使用连通区域统计的算法对零件的几何参数特征进行检测和计算,并通过显示器显示结果。第四章 图像处理过程的实现41 图像预处理由于光学镜头的原因和噪声等因素,采集到的零件图像精度会受到一定的影响。为了便于后续的图像处理和提取其几何特征,对采集到的图像先进行锐化23增强和滤波去噪的预处理。4.1.1 锐化增强本设计中采用对图像的空域滤波来实现图像增强。空域滤波是在图像中借助模板进行邻域操作来完成的,这种运算通常称作卷积。卷积时,根据不同的需要选择模板,在待处理图像中逐像素进行处理,输出的像素的值是邻域内像素的加权和,输出的像素代替原图像中该点的像素值。这样的模板称为卷积核,又称为滤波器。(4-1)aa15)1(在本设计中使用了一个3*3的钝化对比度增强滤波器,该滤波器形如系数为负的拉普拉斯算子,系数中使用了a作为参数。a用来控制滤波器的形状,范围通常在0.11.0之间,实验中取值02。该滤波器的模板计算公式如(4-1)所示,将其作用于图像中,使得图像中的边缘和内部的细节都变得更加清晰。4.1.2 滤波去噪图像中的噪声大多是不规则分布的一小点一小点的,故运用中值滤波法能较好的去除掉这些噪声点。中值滤波是一种非线性滤波方法,它在去除图像噪声时,能够较好地保持图像轮廓的清晰。设g(x,y)表示原始图像在(x,y)处的灰度值,选用NxN矩形窗口(一般N的值为3或5),G(X,Y)表示滤波后的图像在(X,Y)处的灰度值,则中值滤波的输出可以表达为:G(x,Y)=Medg(x+n,y+m);(1-N)/2n,m(N一7)/2 (4-2)其中Med表示对窗口求中值。对于中值滤波,MATLAB有它自带的函数medfilt2,简便快捷。42 图像分割图像分割的方法依照分割时所依据的图像特性不同,大致可分为阈值方法、24边界分割方法和区域提取方法三大类。而阈值法是一种简单有效的图像分割方法,此方法是用一个或几个阈值将图像的灰度级分为几个级别,同属于一个级别的像素点认为是同一个物体。在本设计系统中,零件图像是在灯箱中采用背光源成像的,所以只有一个目标与背景,而且目标与背景的灰度分布都比较均匀,顾可以选用某一阈值Th,把图像的像素分成小于Th的像素群(背景)和大于Th的像素群(目标)两部分。设F(x,y)表示对图像二值化的输出,即:(4-ThyxFyx),(01),(3)此处图像二值化将目标点的灰度值置为1,背景点的灰度值置为0。阈值Th的计算方法一般有双蜂法、大津法、P-参数法、均匀性度量法、类间最大距离法和最大熵法等。本设计选用自适应的大津阈值法来获得最优分割阈值。大津阈值法又叫最大类见方差法,它是按图像的灰度特性,将图像分成背景和目标两部分。背景和目标之间的类间方差越大, 说明构成图像的两部分的差别越大,当部分目标被错分为背景或部分背景被错分为目标都会导致两部分的差别变小。因此,使类间方差最大的分割意味着错分概率最小。对于图像I(x,y),前景(即目标)和背景的分割阈值记作T,属于前景的像素点数占整幅图像的比例记为 ,其平均灰度为 ;背景像素点数占整幅图像的比例00为 ,其平均灰度为 。图像的总平均灰度记为 ,类间方差记为 。11 g假设图像的背景较暗,并且图像的大小为 ,图像中像素的灰度值小于NM阈值T的像素个数记作 ,像素灰度大于阈值T的像素个数记作 ,则有:0N1= / (4-4)= / (4-5)1N+ = (4-6)0M+ = 1 (4-7)= * + * (4-8)01(4-9)22)()(g25将式(4-8)代入式(4-9),得到等价公式:(4-10)21010)(g采用遍历的方法即可得到使类间方差最大的阈值T。用MATLAB实现大津阈值分割的程序流程图如右图4-1所示。43 系统标定在机器视觉中对所获得的图像进行处理都是基于像素的,因此要想得到零件的实际尺寸,需要对数码相机进行标定,使图像像素值和实际尺寸联系起来。所以要测量零件的实际尺寸,只要先标定出该系统环境下像素与实际尺寸之间的比例关系K值,并且计算出零件在由数码相机所获得的数字图像中所占的像素数,就可以得到零件的实际尺寸。即:L=M(1/K)其中L为零件的实际尺寸M为零件图像所占的像素数,K为像素值和实际尺寸的比例系数。在本文实验中,采用一标准量块,在相同的图像采集环境下,不改变测量参数,对测量系统的测量比 进行标定,0/LK其中 为该量块的计算机图像尺寸,以像素点个数表示, 为该量块的标准尺L 0寸,单位是毫米。经测量计算,本实验系统的K值为9.43个/mm。待测零件的图像进入到标定好的测量系统,可以测得零件的图像尺寸为M(像素数),则该零件的测量尺寸为 。/LMK44 零件边缘检测4.4.1 图像边缘检测的基本步骤边缘检测是一种定位二维或三维图像中对象的边缘的系统。它通过输入端开 始扫描图像,获取每一个像素值的出现概率计算类间方差结 束类 间 方 差 大 于 初 始 最 大 值NY按 步 进 像 素 逐 个 分 割 图 像分别计算背景和目标像素点数占整幅图像的比例值及其平均灰度值设 定 类 间 方 差 初 始 最 大 值获取最佳分割阈值图 4-1 大津阈值分割流程图26接收表示该图像的各元素值的数据元素集,该数据集被存储在存储装置中,处理器确定该图像中的对象的边缘。该处理器计算所述数据元素的至少一阶和/或二阶导数,并且计算该图像的等照度线曲率,所述曲率由 标识。该处理器还确定校正因数 ,该校正因数 对于由对象的曲率和/或所述数据的模糊造成的边缘错位进行校正。该校正因数 取决于所述等照度线曲率 。然后,该处理器确定取决于所计算出的导数和所述等照度线曲率的算子的过零点。该系统的输出端提供对于该图像中的边缘位置的指示。基本步骤如下:(1) 滤波。边缘检测主要基于导数计算,但容易受噪声影响,滤波过程可以改善与噪声有关的边缘检测器的性能,但滤波器在降低噪声的同时也导致了边缘强度的一定损失。(2) 增强。增强算法将领域中灰度有显著变化的点突出显示。一般通过计算梯度幅值完成。 (3) 检测。最简单的边缘检测判据是梯度幅值阈值,但在有些图像中梯度幅值较大的并不是边缘点。(4) 定位。精确确定边缘的位置和方位。4.4.2 边缘检测的基本算子及其性能比较边缘检测的基本算法有很多,有梯度算子、方向算子、Laplace算子和Canny算子等等。几种常用的边缘检测方法有Roberts算子、Sobel算子、Prewitt算子、Canny算子等。4.4.2.1 Roberts算子Roberts算子采用对角线方向相邻两像素之差近似梯度幅值检测边缘, 是一种局部差分算子。其模板形式为2*2的滤波器, 可以表示为:(4-101D012D11)Roberts算子检测水平和垂直边缘的效果好于斜向边缘, 定位精度高, 但对噪声很敏感。274.4.2.2 Sobel算子Sobel算子对数字图像中的每个像素,考察它上下左右邻点灰度的加权差,并通过增加与之接近的邻点所占的权重来实现某种程度的平滑效果。据此,该算子的卷积模板可以表示为:(4-102xS 120yS12) Sobel算子对噪声具有平滑作用,能提供较为精确的边缘方向信息,但边缘定位精度不够高。4.4.2.3 Prewitt算子Prewitt算子是一种一阶微分算子的边缘检测,利用像素点上下、左右邻点的灰度差在边缘处达到极值检测边缘,去掉部分伪边缘,对噪声具有平滑作用。其原理是在图像空间利用两个方向的模板与图像进行邻域卷积,这两个方向模板一个检测水平边缘,一个检测垂直边缘,表示如下:(4-10xP10yP13) Prewitt算子对噪声具有平滑作用,但边缘定位精度不够高。其模板与Sobel算子类似,但更为简单,所以在噪声抑制方面的效果不如Sobel算子好。4.4.2.4 Canny算子Canny算子较上述几种算子更为高级复杂,边缘提取的精度较高。(4-14)其中是方差。首先用正态分布的高斯函数G(i,j)对图像I(i,j)进行平滑处理: 2),(jiejiG, jiIjijiS28(4-15) *代表卷积。然后使用一阶有限差分计算偏导数的两个阵列P与Q:(4-16)进而得到梯度的幅值和方位角:(4-17)对幅值和方位角进行非极大值抑制,可以细化幅值图像中的屋脊带,即只保留幅值局部变化最大的点。最后用双阈值法检测和连接边缘,即取高低两个阈值作用在幅值图Ni,j, , 得到两个边缘图,高阈值和低阈值边缘图。21T连接高阈值边缘图,出现断点时,在低阈值边缘图中的8邻点域搜寻边缘点。这样,即可确定图像中阶跃边缘的位置。Canny算子提供了一种最优的边缘检测器,通过参数来控制算法的性能,根据不同的图像或不同的边缘提取目的,可以选择不同的参数,以达到最佳效果。因此,本设计选用Canny算子进行边缘检测。4.4.3 形态学膨胀用Canny算子检测图像边缘,从而可以提取连续而完整的轮廓,然后用形态学的二值膨胀消除双边缘之间的间隙,使得边缘在宽度上更接近原始目标。一般来说,集合A被集合B膨胀可以通过将A中的各个像素(x,y)用B的复制来代替,就是将B的中心代替原来的(x,y) ,这等价于用A的副本来代替B中的像素(u,v) 。膨胀又被称为明克夫斯基加法。因为膨胀是利用结构元素对图像补集进行填充,因而它表示对图像外部作滤波处理,这样作用的输出图像2/)1,1,1,(, jiSjijiSjiji22, jiQjiPjiM)/(arctn
展开阅读全文