• 1.34 MB
  • 43页

毕业设计--基于MATLAB的圆度误差评定方法

  • 43页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
'陕西理工学院毕业设计基于MATLAB的圆度误差评定方法熊小平(陕理工机械工程学院测控技术与仪器专业07级3班陕西汉中723003)指导老师:景敏[摘要]:本文主要研究了基于数字图像处理技术进行的接触测量轴类零件的圆度的方法,首先对CCD摄像机采集到的图像进行边缘检测,最后运用极点拟合法进行圆度误差的评定,该方法具有很好的实用性,可以实现在线非接触测量。通过实验证明,使用极点拟合评定圆度误差,不仅可以提高测量精度,并且避免了圆度误差评价的非线性求解问题,运算简单,速度快,也可应用于实际圆度测量数据的处理。[关键词]:圆度误差MATLAB数字图像处理 陕西理工学院毕业设计Based-ontheMATLABroundnesserrorevaluationXiongXiaoping(Grade07,Class3,MajorMeasuringTechnology&Instrumentation,MechanicalEngineeringInstituteDept.ShaanxiUniversityofTechnology,Hanzhong723003,Shaanxi)Tutor:JingMinAbstract:Thispapermainlyresearchesthattheuntouchedmeasuringroundnessmethodofshaftpartsbasedondigitalimageprocess.Atfirst,imagescollectedbyCCDcamerawereprocessed.Thentheedgesofprocessedimagesweredetected.Finally,thetoleranceofroundnesswasassessedbyapicesfittingmethod.Theapicesfittingmethodhastheadvantageofrealtimecapabilities,anditcanrealizedonlineuntouchedmeasurementTheresultofexperimentsprovedthatitnotonlycanimprovethemeasurementaccuracybutalsocanavoidnonlinearsolvingproblemtoassesstoleranceofroundnessbyapicesfittingmethod.Itcanalsobeprovedthatthemethodhavetheadvantageofsimplecalculationandhighspeed.Sothemethodcanbeusedtoprocesstheroundnessmeasurementdatainpractice.Keywords:roundnesserrerMATLABdigitalimageprocsssing 陕西理工学院毕业设计目录前言11绪论21.1选题的目的及研究意义21.2圆度误差的定义21.3目前圆度误差测量在国内外的研究现状21.3.1圆度误差的接触检测21.3.2圆度误差的非接触检测31.4MATLAB软件的语言概述51.4.1MATLAB的主要特点51.4.2MATLAB的主要应用领域52数字图像处理技术及其相关运用72.1数字图像处理的基本概念72.1.1数字图像处理技术的发展与现状72.1.2数字图像处理的主要特点72.2数字图像的增强处理82.2.1像素值及其统计特征82.2.2灰度变换102.3边缘检测技术142.3.1Robert算子边缘检测142.3.2Log算子边缘检测152.3.3Canny算子边缘检测153圆度误差的评定223.1基于光学分度头和千分表评定圆度误差223.1.1试验原理223.1.2读数原理223.1.3试验步骤233.1.4数据处理与评定233.2基于MATLAB数字图像处理圆度误差253.2.1测量原理253.2.2获取原始图像253.2.3图像进行轮廓边缘提取263.2.4轮廓取极点曲线拟合27II 陕西理工学院毕业设计3.2.5评定结果313.3误差分析313.3.1基于光度头测量的误差分析313.3.2基于MATLAB测量的误差分析323.4两种测量方法的比较32致 谢34总结35参考文献36附录一37附录二38附录三39II 陕西理工学院毕业设计前言本次毕业设计的课题是基于matlab的利用数字图像处理圆度误差的评定。设计到的主要领域有:matlab软件编程、数字图像处理技术、误差理论及误差处理。本次毕业设计的主要任务是对一个圆端面提取数字图像之后,利用matlab程序对图像进行相应的预处理,然后通过编程、取点等方法实现圆度误差的分析并最终对其进行评定。数字图像处理时利用计算机或数学系统对数字图像进行转换、加工、分析和处理,以改善其视觉效果,满足实际的需要。或达到需要的目的。近些年来随着数字技术的发展,数字图像技术也取得了非常大的进步,并成功运用于工业、农业、通信、国防军事、生物医学等日常生活的方方面面。数字图像处理的方法和技术涉及数学、物理学、信号处理、控制论、模式识别、人工智能、生物医学、神经心理学、计算机科学与技术等众多科学,是一门兼具交叉性与开放性的学科。利用数字图像处理技术对形位误差处理比传统的方法更方便、准确而且可以实现在线的无损检测,提高了结果的可信性。本次毕业设计主要包括了以下三个方面的内容:1绪论部分主要介绍了数字图像处理技术的发展前景、现状、应用领域等;matlab软件的特点;圆度误差的基本概念和目前的研究现状。2介绍数字了数字图像处理技术的相关运用,并结合本次毕业设计相做了相关的实例分析,说明数字图像处理技术的对图像处理的特点。3最后分别利用光学分度头和数字千分表与数字图像处理技术对同一零件的圆度误差完成测定,并最终确定数字图像处理技术在圆度误差检测中的可行性。最终确定了数字图像处理技术可以在圆度误差中运用,并可以推广于直线度、平行度、垂直度等各种行为误差处理检测。当然,由于是初次完成毕业设计论文的编写,有些地方存在着不妥和错误,希望老师能够批评指正。第39页共39页 陕西理工学院毕业设计1绪论1.1选题的目的及研究意义技术的进步,工业生产水平的提高、微型计算机技术的日趋发展和计算机的普及应用,特别是坐标测量机日益广泛应用于生产、科研等各个领域,使检测手段发生了质的变化。因此随着机械产品质量要求的日益严格,机械零件几何要素的形位公差也日益提高。由于对机械产品几何参数互换性要求的日臻完善,形位公差在机械工业中应用非常普遍。如何高效准确的测量机械零件的形位误差一直是机械零件测量工作人员的难题,随着MATLAB软件功能的日益完善,其拥有600多个工程中要用的数学运算函数,函数中所使用的算法都是科研和工程计算中的最新研究成果,而且经过了各种优化及容错处理,因此使用起来可靠性非常高。我们在进行优化计算时,只需按要求构造正确的函数模型,然后调用MATLAB的优化函数即可得到满意的结果。求解结果的可视化通过调用MATLAB的插值函数和可视化函数即可方便地实现。本课题正是基于MATLAB软件的强大功能作为工具平台来实现机械零件的快速精确测量,这种测量方法、这种实现理念必将会为以后的测量方法的多样性的优化起到了非常好的积极意义1.2圆度误差的定义圆度误差是形位误差的一种,ISOR1101对圆度误差定义为:圆的形状偏离几何圆的程度。其表示方法是将实际圆夹在二同心几何圆之间,当二几何圆的间隙为最小时,用该二几何圆半径之差来表示实际圆的圆度误差。圆度误差的大小对精密机器和仪器的性能有重要影响,它是零件几何精度的重要指标,能否准确地测量和评定圆度误差值对保证和提高机械产品的质量至关重要。机械零件回转表面正截面轮廓的圆度误差对机器和仪器的功能有直接的影响,因此,在设计机器和仪器时要根据零件的功能要求给定适宜的公差。而完工零件的圆度误差是否在控制的公差之内,则要通过测量加以判定。对回转体零件的典型截面进行圆度误差测量评定是检验该类零件加工质量的重要指标之一。目前,测量圆度误差时常使用的方法有:比较检验法,特征参数测量法和坐标测量法等。其中有些方法可简便快速地得到工件的圆度误差值;有些方法则只判断工件是否合格,而不需得到圆度值;随着对加工精度要求的不断提高,有时还须通过某些测量方法获得工件的精确轮廓图形然后再分析评定它的误差值。目前,计算参照圆的计算方法在国际上常用的有4种方法:最小二乘圆(LSC)方法;最大内切圆(MIC)方法;最小外接圆(MCC)方法和最小区域圆(MZC)方法。然而随着现代科技的发展,各种各样的测定评定方法相继出现,使得圆度误差的分析评定甚至是定义都在更新当中。1.3目前圆度误差测量在国内外的研究现状圆度误差检测技术在近10年以来有较大的改进,从传统的手工检测发展到目前微机自动化等检测,从接触检测发展到非接触视觉检测。在圆度误差的评定理论方面,国内的许多专家学者的研究水平与国际基本相当。但是在实际测量仪、在线测量系统的研制和运用等方面,就综合水平和整体实力来看,与先进国家相比仍有比较大的差距。1.3.1圆度误差的接触检测目前的圆度误差测量大都是接触测量。接触测量包括专用的圆度测量仪器和使用传感器采集数据的微机圆度测量系统这两大类。(1)圆度误差测量仪器的发展现状在圆度误差的检测方面,目前圆度仪仍为圆度误差测量的最有效的手段和工具。圆度仪有转轴式和转台式两种形式。转轴式适用于测量大的零件,测量时,被测零件固定不动,测头与零件接触并旋转。转台式适用于测量小零件,是将被测零件装在旋转的回转台上,测头固定不动。在测量圆度时,传感器的测头始终与零件表面接触,它是通过测头与实际被测圆轮廓接触,实际被测圆轮廓的半径变化量可通过测头反映出来,此变化量由传感器接收,并转换成电信号输送到电气系统,经放大器、滤波器、运算器输送到微机系统,实现数据的自动处理、打印以及显示结果。圆度仪可以保证很高的采样精度和评定精度,并配有专用的微机,工作效率高,不失为一种理想的测量圆度误差的仪器。但是圆度仪的价格昂贵,成本高,对操作环境和条件要求严格,通常仅限于第39页共39页 陕西理工学院毕业设计在计量室中使用,不能用于车间现场;而且,圆度仪作为一种高精度的仪器,频繁的用于一般普通零件的测量,在经济上也不合理;另外,由于圆度仪的规格所限,只能用于中小零件的圆度误差的测量。在生产实践中,两点法测量圆度是另一种比较实用的方法。两点法就是采用生产中普遍使用的游标卡尺、千分尺、光学比较仪等测量孔、轴类零件直径的方法。在检测时零件的轴线应垂直于测量表面,同时固定轴向位置,以保持测量时千分表测头位于同一测量界面内。在被测零件回转一周过程中,以指示器读数的最大差值之半作为半个截面的圆度误差。然后,沿轴线方向间断的移动,重复上述步骤,测量若干截面,取其中最大的误差值作为零件的圆度误差。两点法其实并不符合圆度误差的定义,仅为一种近似测量方法,但因测量简便,所以在生产中常用会使用。对于中小型精密零件的测量,三坐标测量机也是一种精确有效地测量仪器。测量时在被测截面轮廓上选定若干测量点,一一测出他们的坐标。然后进行数据处理,求解圆度误差。但是在测量轴类零件的圆度误差时,存在不便获取采样数据,对大型、长轴类零件存在着难于安装的问题;同时,三坐标测量机成本较高,不适合车间现场检测。(2)圆度误差在线接触检测的现状下面所述的圆度测量仪器都是适于离线检测圆度。由于生产自动化程度提高,对产品质量要求也更加严格,零件圆度误差的在线检测显得愈来愈重要。在机械加工过程中,在线测量在加工系统中存在着各种各样的影响因素,比离线测量要复杂的多,因此,尺寸和形状误差的确定使得在线测量技术发展的相当缓慢。目前,在线测量系统一般包括机械装置(传感器)、接口、微机:系统三部分。如下图1所示:图1.1圆度误差在线微机测量系统这种以单片机为核心的测量系统,使得在线测量精确易行。但是,由于现场环境恶劣,受震动、灰尘、潮湿、有害气体及电磁干扰等诸多因素的影响,测量系统的抗震以及抗干扰问题、计算机系统的实时性及传感器接触测量限制等问题尚未得到圆满的解决。(3)圆度误差接触检测特点对于大型、长轴类零件,目前仍缺乏普遍的圆度误差检测手段,对于一般精度等级的零件,也缺乏一种经济合理的车间现场检测手段。将圆度误差接触检测的各种方法特点简单归纳:一、圆度仪和三坐标测量机测量精度高。但存在设备昂贵,装夹零件部方便,不易对大型、长轴类零件进行测量,不易于现场操作和在线100%检测,效率低等不足。二、传统的圆度误差检测法如千分尺测直径法,操作方便,设备简单。但是存在适应环境能力差,抗干扰能力差等不足;且只能接触测量,不能满足对精密零件非接触测量的要求。1.3.2圆度误差的非接触检测目前,圆度误差的非接触测量主要是基于计算机视觉的测量。近些年来,随着计算机的硬件性能的不断提高和视觉理论研究的不断深入,计算机视觉技术应用于零件圆度检测也成了必然趋势。最近几年,国内外关于计算机视觉圆度检测的文章已有报道,但是大都只限于零件端面圆轮廓或者是圆孔的圆度误差检测。对于圆轴的圆度误差视觉检测,目前已有学者在研究,但只是初步阶段。(1)圆形截面的圆度误差视觉检测第39页共39页 陕西理工学院毕业设计图1.2圆形截面的圆度误差视觉检测原理圆形截面的圆度误差视觉检测的原理如图1.2所示。目前的圆度视觉检测系统大都是通过对圆形截面获取圆孔进行检测的。如上图所示,这类系统检测过程包括五个部分:一、获取图像,一般是通过CCD或者数码照相机摄取圆形截面的正投影图像;二、图像预处理,对摄取的图像滤波去噪,图像增强处理;三、圆轮廓提取,对预处理后的图像提取图像边缘或是跟踪圆轮廓得到圆轮廓的图像像素;四、圆度误差计算,对获取的圆轮廓像素进行圆度误差计算;五、显示结果,在显示终端显示圆度误差的计算结果。在这类圆度检测系统中,圆度误差计算方法是从所测的圆轮廓点数据中建立一个参照基圆,然后计算实际测得的点与参照基圆之间的偏差最小和最大差值。根据圆度误差的定义为:实际测量点到参照圆的最大峰谷距离。目前,最小二乘圆是最常用的计算圆度误差方法。该方法计算简单且容易实现,但其计算的偏差相对偏大。(2)圆轴的圆度误差视觉检测圆轴的圆度误差检测方法与圆截面的圆度误差检测方法是不一样的。因为圆轴是要检测的是整个轴各个截面的圆度误差,不能获取轴的整个横截面圆轮廓图像。圆轴的圆度误差检测原理如图1.3所示:图1.3圆轴圆度误差视觉检测圆轴的圆度误差视觉检测原理是通过CCD摄取圆轴侧面正投影图像,计算侧面图像整个截面的直径,然后旋转圆轴一定的角度,在摄取其侧面正投影图像并计算其整个截面直径,这样通过摄取多个侧面的图像,计算各侧面整个截面的直径,按直径法(两点法)计算各截面的圆度误差。由于用直径法检测圆度存在圆心漂移问题,目前采用图1.4所示原理来解决第39页共39页 陕西理工学院毕业设计图1.4圆轴横截面的圆心漂移检测图1.4中LD为半导体激光器,发出一束光通过柱状棱镜放大,把束光转变成光平面正投影到杆径上,光平面与杆正交产生一个椭圆弧。CCD摄取到圆弧图像,图像信号就由采集卡转换成数字信号存储到帧存储器中,再由计算机通过坐标转换计算出圆弧中心的三维世界坐标。通过摄取多个圆弧图像,计算多个截面圆心的三维世界坐标,最后估算出整个圆轴的中心偏移。(3)圆度误差非接触检测特点目前的圆度误差非接触检测方法主要是基于计算机视觉技术。相比传统的圆度误差检测技术,圆度误差视觉检测技术还处在初步阶段,应用对象还只限于圆形截面的圆度检测,技术实施还不完善。而且,通用的圆度检测视觉系统还不存在,都只是对具体应用对象制定具体的视觉系统。虽然非接触圆度误差检测还不成熟,但它具有以下优点:①视觉检测系统柔性高,可以通过组合不同模块,适应不同的应用;②视觉检测速度快,精度高,收环境影响小;③视觉检测适合在线100%检测,容易与整个生产系统集成;④适用于精密零件的无损检测;⑤视觉检测系统成本低;目前,国际市场竞争力大大提高,计算机质量集成系统的应用已成必然,在线无接触精密圆度检测系统将是发展方向。发展通用的在线圆度检测系统,研究大型、长轴零件的圆度检测方法,升入研究视觉的圆度检测技术,将是圆度误差检测研究的重点。1.4MATLAB软件的语言概述MATLAB(MatrixLaboratory)是MathWorks公司开发的,目前国际上最流行、应用最广泛的科学与工程计算软件,专门以矩阵的形式处理数据。它将高性能的数值计算和可视化集成在一起,并提供了大量的内置函数,从而被广泛应用于科学计算、控制系统、信息处理等领域的分析、仿真和设计工作,而且利用MATLAB产品的开放式结构,可以非常容易的对MATLAB的功能进行扩充,从而在不断深化对问题认识的同时,不断完善MATLAB产品以提高产品自身的竞争能力。由于它具有强大的计算和绘画功能、大量稳定可靠的算法库和简洁高效的编程语言,以成为数学计算工具方面事实上的标准。在欧美等高校,MATLB已经成为线性代数、自动控制理论、概率论及树立统计、数字信号处理、时间序列分析、动态系统仿真等高级课程的基本教学工具,是攻读学位的大学生必须掌握的基本技能。1.4.1MATLAB的主要特点(1)功能强大。MATLAB的数值运算要素不是单个数据,而是矩阵,每个变量代表一个矩阵,矩阵有N个元素,每个元素都可看作复数,所有的运算包括加、减、乘、除、函数运算等都对矩阵和复数有效;另外,通过MATLAB的符号工具箱,可以解决在数学、应用科学和工程计算领域中常常遇到的符号计算问题。而且MATLAB有功能丰富的工具箱,使其适用于不同领域。(2)人机界面友好,编程效率高。MATLAB的语言规则与笔算式相似,其矩阵的行列数无需定义。由于MATLAB的命令表达方式与标准的数学表达式非常相近,因此,易写易读并易于在科技人员之间交流。(3)强大而智能化的作图功能。MATLAB可以方便地将工程计算的结果可视化,使原始数据的关系更加清晰明了,并揭示了数据间的内在联系。MATLAB能根据输入数据自动确定最佳坐标;规定多种坐标系;设置不同颜色、线型、视角等,并能绘制三维坐标中的曲线和曲面。(4)适合于面向强有力的个人矩阵(向量)的高级程序设计语言(4)可扩展性强。1.4.2MATLAB的主要应用领域(1)科学计算与数据分析;(2)信号处理与通信;(3)自动控制;(4)实时仿真与建模;第39页共39页 陕西理工学院毕业设计(5)图像及其可视化法;(6)算法开发;(7)独立应用开发等第39页共39页 陕西理工学院毕业设计2数字图像处理技术及其相关运用2.1数字图像处理的基本概念所谓数字图像处理就是利用计算机对图像信息进行加工以满足人的视觉心理或者应用需求的行为。具体来说就是把利用计算机对图像进行去除噪声、增强、复原、分割、提取特征等的理论、方法和技术称为数字图像处理(DigitalImageProcessing)。一般,图像处理是用计算机和实时硬件实现的,因此也称之为计算机图像处理(ComputerImageProcessing)。利用计算机进行图像处理的目的是产生更适合人观察和识别的图像,图像处理中关键的一步就是对含有大量各式各样景物信息的图像进行分解,分解的最终结果是图像被分解成一些具有某种特征的最小成分:成为图像的基圆。相对于整幅图像来说,这种基圆更容易被快速处理。数字图像处理一般都用计算机处理或者实时的硬件处理,其优点是处理精度高,处理内容丰富,可进行复杂的非线性处理,有灵活的交通能力,一般来说只改变软件就可以处理内容。不足之处在于处理速度上,特备是进行复杂的处理。数字图像处理主要包括以下内容:几何处理、算术处理、图像增强、图像复原、图像重建、图像编码、图像识别、图像理解。数字图像处理技术的发展涉及信息科学、计算机科学、数学、物理学以及生物学等学科。因此数理以及相关的学科对图像处理科学的发展有越来越大的影响。近年来,数字图像处理技术日趋成熟,它广泛应用于空间探测、遥感、生物医学、人工智能、以及工业检测等许多领域。并促使这些学科产生了新的发展。2.1.1数字图像处理技术的发展与现状20世纪20年代,数字图像处理最早的应用之一是在报纸业。当时纽约-伦敦海底电缆传输数字压缩化的新闻图片。就当时的技术水平看,如果不压缩,传递时间要一个多星期,压缩后减少到3个小时。此后,随着计算机技术的发展使得图像处理技术得以发展和不段的成熟起来。20世纪60年代初期,第一台可以执行有意义的图像处理任务的大型计算机出现,在太空计划的推动下开始这项技术的研究。重要标志是1964年美国喷气推进实验室(JPL)正式使用数字计算机对“旅行者7号”太空船送回的四千多张月球照片进行了处理,以校正航天器上各种类型的图像畸变。20世纪60年代末到70年代,数字图象处理形成一个比较完整的理论与技术体系,从而构成了一门独立的技术,开始运用于医学图像、地球遥感监测和天文学等领域。轴向断层技术是图像处理在医学诊断领域最重要的应用之一。计算机断层的基本方法是根据人的头部截面投影,经计算机处理来重建截面图像,成为图像重建。1979年CT的发明使得这项无损伤诊断技术获得了诺贝尔奖。到20世纪后期,数字图像处理有了突飞猛进的发展,自1986年以来,小波理论与变换方法迅速发展,他克服了傅里叶分析不能用于局部分析风方面的不足之处。到目前为止,图像处理在图像通讯、办公自动化系统、地理信息系统、医疗设备、卫星照片传输及分析和工业自动化领域的运用越来越多。进入21世纪,随着计算机技术的飞速发展和相关理论的不断完善,数字图像处理技术在许多领域受到了广泛的重视,并取得了重大的开拓性的成就。如航天航空,生物医学工程、工业检测、机器人视觉、公安司法、军事指导文化艺术等。当前这门技术成为了一门引人注目、前景远大的新型学科。2.1.2数字图像处理的主要特点(1)处理精度高,再现性好。利用计算机进行图像处理,其实质是对图像数据进行各种运算。由于计算机技术的飞速发展,计算精度和计算的正确性勿庸置疑;另外,对同一图像用相同的方法处理多次,也可得到完全相同的效果,具有良好的再现性。(2)处理的多样性。由于图像处理是通过运行程序进行的,因此,设计不同的图像处理程序,可以实现各种不同的处理目的。(3)图像数据量庞大。图像中包含有丰富的信息,可以通过图像处理技术获取图像中包含的有用的信息,但是,数字图像的数据量巨大。一幅数字图像是由图像矩阵中的像素(Pixel)组成的,通常每个像素用红、绿、蓝三种颜色表示,每种颜色用8bit表示灰度级。则一幅1024×1024不经压缩的真彩色图像,数据量达24MB(即1024×1024×8bit×3=24(Mb)。X射线照片一般用64~第39页共39页 陕西理工学院毕业设计256Kb的数据量,一幅遥感图像为3240×2340×8=30Mb。如此庞大的数据量给存储、传输和处理都带来巨大的困难。如果精度及分辨率再提高,所需处理时间将大幅度增加。(4)处理费时。由于图像数据量大,因此处理比较费时。特别是处理结果与中心像素邻域有关的处理过程花费时间更多。(5)图像处理技术综合性强。数字图像处理涉及的技术领域相当广泛,如通信技术、计算机技术、电子技术、电视技术等,当然,数学、物理学等领域更是数字图像处理的基础。总之,数字图像处理一般是给人观察和评定的,因此受人的主观因素影响较大。由于人的视觉系统很复杂,受环境条件、视觉性能、人的情趣爱好以及知识状况影响很大,作为图像质量的评价还有待进一步深入的研究。另一方面,计算机视觉是模仿人的视觉,人的感知机理必然对计算机视觉的研究产生影响。2.2数字图像的增强处理图像增强(imageenhancement)将原来不清晰的图像变得清晰或强调某些关注的特征,抑制非关注的特征,使之改善图像质量、丰富信息量,加强图像判读和识别效果的图像处理方法。增强图象中的有用信息,它可以是一个失真的过程,其目的是要改善图像的视觉效果,针对给定图像的应用场合,有目的地强调图像的整体或局部特性,将原来不清晰的图像变得清晰或强调某些感兴趣的特征,扩大图像中不同物体特征之间的差别,抑制不感兴趣的特征,使之改善图像质量、丰富信息量,加强图像判读和识别效果,满足某些特殊分析的需要。图像增强可分成两大类:频率域法和空间域法。前者把图像看成一种二维信号,对其进行基于二维傅里叶变换的信号增强。采用低通滤波(即只让低频信号通过)法,可去掉图中的噪声;后者则采用高通滤波法,可增强边缘等高频信号,使模糊的图片变得清晰。具有代表性的空间域算法有局部求平均值法和中值滤波(取局部邻域中的中间像素值)法等,它们可用于去除或减弱噪声。在图像增强过程中,不分析图像降质的原因,处理后的图像不一定逼近原始图像。总体而之,图像增强的方法主要包括直方图修改、灰度变换方法、图像滤波、图像锐化和图像彩色增强。目前尚无统一的衡量图像增强的通用标准,在图像增强的方法使用上,可以使用一种增强方法,也可以多种方法综合使用,只要达到需要的效果即可。在图像的形成、传输或者变换的过程中,由于多种因素的影响,通常实际得到图像含有一定的噪声。而噪声的存在势必影响图像的效果,同时还会影响到下一步的处理。对噪声的处理方法之一就是图像圆滑处理。该方法将会很好的抑制噪声,同时尽量使图像信息不失真。2.2.1像素值及其统计特征设变量r代表图像中像素灰度级,把像素灰度级归一化处理,那么0≤r≤1,其中r=0表示黑,r=1表示白。对于一幅给定的图像来说,每个像素在[0,1]的灰度等级是随机的。用概率密度函数P(r)来表示图像的灰度等级分布。如果用x轴表示灰度等级r,y轴表示概率P(r)。则针对一个像素可以在坐标系里面描述灰度等级的分布情况。如图所示:第39页共39页 陕西理工学院毕业设计(a)(b)图2.1像素的灰度分布特征从图像灰度级的分布可以看出一幅图像的灰度分布特性。从图(a)可以看出,大部分像素集中在低灰度等级的区域上,图像呈现暗的特性。而(b)中的图像则相反,大部分图像集中在高灰度等级上,图像呈现在亮的特性。为了有利于数字图像处理,必须引入离散形式。在离散形式下,用r1代表离散灰度级,用p(r1)代表p(r),并且有下式成立:P(r)=n1/n(2.1)这里0≤r≤1.式中n1为图像中出现r1这种灰度的像素值,n是图像中像素总数。而n1/n就是概率论中所说的频数。在直角坐标系中,r1与pr(1)关系图形成为直方图。Matlab图像处理工具箱提供了一些返回图像数据信息和统计特性的函数。(1)像素选择Pixval函数显示鼠标在图像上选择像素点的值,也可以显示两个像素值之间的欧几里得的几何距离。Pixval函数显示鼠标选择或者坐标值提供的像素值。根据不同的图像类型,其调用格式有:P=Impixel(I)P=Impixel(X,map)P=Impixel(RGB)(2)图像轮廓线Imcontour用于绘制图像的轮廓线。其调用格式如下:Imcontour(I,n)Imcontour(I,v)Imcontour(x,y………..)Imcontour(I,n)绘制灰度图像I的轮廓线,自动设置坐标轴,使方向和外形与图像相匹配。n是图形相同间隔轮廓的个数。Imcontour(I,v)绘制图像I中由向量v指定的数据值轮廓线Imcontour(x,y...)中x,y表示x轴和y轴的范围。(3)图像直方图对图像灰度分布进行分析的重要手段就是建立灰度直方图,利用图像灰度直方图,可以直观的看出图像中的像素亮度分布情况,通过直方图均衡化、归一化的处理等,可对图像的质量进行调整。本设计将以灰度图像为主要研究对象。由于彩色图像可以分解为红(R)、绿(G)、蓝(B)三个单色图像,因此灰度图像的直方图和彩色图像的直方图在就单色图像领域来说具有相同的概念。简单的说,直方图就是反映一幅图像中各个灰度出现的次数和概率;从图形上说,它是一个二维图,横坐标表示图像中各个像素点的灰度级,纵坐标为各个灰度级上图像像素点出现的个数或出现的频率。Imhist函数用于绘制图像的直方图举例:绘制图像的轮廓图和直方图。I=imread("bag.png");subplot(221);imshow(I);title("原始图像");subplot(223);imcontour(I);title("图像的轮廓");subplot(222)imhist(I,64);title("图像的直方图")回车运行如下:第39页共39页 陕西理工学院毕业设计图2.2提取图像的轮廓图与直方图2.2.2灰度变换在图像的采集、传输或者变换过程中,由于多种因素的影响,如光学系统的失真、系统的噪声、曝光不足或者过量等,都容易引起图像的降质,降低了图像的视觉效果,或者在机器的视觉中提高了错误率,这一般需要对图像进行增强。图像增强是数字图像处理的基本内容,其目的是对图像进行加工处理,按照特定的需求改善整幅图像的视觉效果或者增强图像中的某些特定信息,以得到比原来的图像更好或者更有用的图像,也就是突出了感兴趣的信息,同时抑制了不感兴趣的图像信息的方法。图像增强处理主要有两个用途,一是为了满足人眼的视觉需求,此时,人是衡量图像增强效果的判断着,存在着一定的主观性;二十为了满足机器视觉的需求,此时并不一定要求满足人眼的视觉效果,而应该机器对图像的感知能力好坏来判断图像增强的效果。图像增强在技术上来说可以分为两大类:空间域图像增强和频域图像增强。空间域图像增强是指直接对图像的像素进行处理,也就是改变原始图像中像素的灰度值,因此空间域实际上就是指图像自身。频域增强时通过修改图像的傅里叶变换系数,如低通滤波,然后进行傅里叶反变换得到增强图像的一类方法。(1)线性灰度变换假定原图像f(x)的灰度范围为,进过线性变换后,输出的图像灰度范围为,则该线性变换的可用下式表示:(2.2)此关系可以可以用下图表示:第39页共39页 陕西理工学院毕业设计图22.3线性变换如果数字图像的灰度范围为[0,M],但是大部分像素的灰度值落在内,只有很少部分像素的灰度值不在该区间内,用上式一般不能得到好的视觉效果,为了改善增强的效果,可用式(2.3)进行增强。(2.3)该方法将灰度值小于a的像素的灰度值全部映射为c,将灰度值大于b的像素的灰度值全部映射为d。很明显,图像的增强损失了灰度值小于a和大于b的信息,但是由于这些损失的信息在原始图像中所占的像素数目非常小,因此在实际应用中,针对某些特殊的图像,主要合适的选择,这样的损失是可以接受的。如果不想损失这部分信息,可以保持它们的灰度值不变,用式(2.4)进行增强。(2.4)(2)分段线性灰度变换在数字图像增强处理中,又是为了突出某些感兴趣的目标或者灰度区间,相对抑制那些不感兴趣的目标或灰度区间,通常采用分段线性灰度变换的方法。假定数字图像的灰度范围为0~M,感兴趣的灰度区间为[a,b],为了对该区间的信息进行增强,抑制其他区间的图像信息,可以采用1.4所示的分段线性灰度变换。其公式如下:=第39页共39页 陕西理工学院毕业设计图2.4非线性变换上式可以看出,变换对灰度区间进行了扩展,对区间和进行了压缩。对于分段线性从变换,通过调整折线拐点的位置以及控制分段直线的斜率,可以实现对任意灰度区间的扩展和压缩。分段线性变换在数字图像增强找用途广泛。当然灰度变换还有更为复杂的非线性变换,有时需要显示的图像灰度值动态范围太大,超出了显示设备的动态范围,用非线性变换的函数可以压缩图像的灰度空间,完成图像的显示。最常用的有对数变换和指数变换。Matlab图像处理工具箱提供了imadjust函数,可以实现图像的灰度变换,其语法格式如下:J=imadjust(I,low-in;high-in],[low-out;high-out])newmap=imadjust(map,[low-inhigh-in],[low-outhigh-out],gamma)RGB2=imadjust(RGB1,...)说明:其作用是将灰度图像I的灰度级映射到图像J中,使原来在区间low-in与high-in之间的灰度级对应到新的区间low-out与high-out之间。原图像中低于low-in的值对应于low-out,高于high-in的值对应于high-out。上述灰度级指的是除以灰度值以后的、在区间内的相对灰度级。Gamma=1表示线性映射;Gamma小于1表示弱映射,图像变亮;Gamma大于1表示强映射,图像变暗。举例对原图像进行线性灰度变换其程序如下:I=imread("ball.jpg");M=rgb2gray(I);J=imadjust(M,[0.10.5],[]);figure(1),imshow(I);title("原始图像")figure(2),imshow(M);title("灰度变换后的图像")figure(3),imshow(J);title("线性变换后的图像")回车运行结果如下:第39页共39页 陕西理工学院毕业设计第39页共39页 陕西理工学院毕业设计2.3边缘检测技术图像的边缘信息是重要的图像特征信息,因此边缘检测的方法是图像分析与识别领域中的一个十分引人关注的课题。所谓边缘,是指其周围像素灰度有变化的那些像素的集合。图像中目标的边缘是有灰度的不联系性反映的,边缘的种类可以粗略的分为两种:一是阶跃性边缘,它两边的像素的灰度值有显著的不同;二是屋顶状边缘,它位于灰度值从增加到减少的变化的转折点。图像的边缘检测是通过梯度算子来描述的,主要有Robert算子,Laplacian算子、Log算子和Canny算子等。下面分别就这些微分算子做简要介绍。2.3.1Robert算子边缘检测边缘,是指周围像素灰度有阶跃变化的那些像素的集合,图像的边缘对应着图像灰度的不连续性。显然图像的边缘很少是从一个灰度跳到另一个灰度这样的理想状况。真实图像的边缘通常是具有有限的宽度呈现出陡峭的斜坡状。边缘的锐利程度有图像灰度的梯度决定。梯度式用一个向量微分指出灰度变化的最快的方向数量:(2.6)梯度的大小和方向由:(2.7)(2.8)因此最简单的边缘检测算子是用图像的垂直和水平差分来逼近梯度算子:(2.9)第39页共39页 陕西理工学院毕业设计因此想寻找边缘的时候,最简单的方法是对每一像素计算出式(2.6)的向量,然后求出它的绝对值,然后进行阈值操作就可以了。利用这种思想就得到了Robert算子:R(i,j)=(2.10)2.3.2Log算子边缘检测拉普拉斯算子是一种二阶边缘检测算子,它是一个线性的位移不变的算子。定义为:(2.11)像经过二阶微分以后,在边缘处产生一个陡峭的零交叉,根据这个交叉判断边缘。由于拉普拉斯是一种微分算子,它的应用强调图像中灰度的突变及降低灰度慢变换的区域。这将产生一幅把图像中的浅灰色边线和突变点叠加到暗景中的图像。将原始图像和拉普拉斯图像叠加在一起的简单方法可以保护拉普拉斯锐化处理的效果,同时又能复原背景信息。Log滤波器由一个中心负区域(半径为),然后由一个正区域(总的半径为最小值得)围绕着它。在使用中先使用Log板做卷积,然后寻找那些零交叉像素:如果一个像素处置小于,而且其他周围的各个邻接8个像素都是大于(是一个正数),那么这个像素就是零交叉点。Log算子有一个线性变化条件:沿着平行于“Open”边缘的灰度变化是局部线性的。当这个条件满足的时候,Log算子的性能比较好;当这个条件不满足的时候,则检测的结果性能比较一般。但是对一些小尺度边缘、边缘角落和T形边缘来说这些边缘来说,它对噪声比较敏感,它检测出的是梯度图像具有局部最大值和最小值的点,但实际上边缘只是那些梯度为局部最大的点。所以说Log算子多算了一些点。为了处理更多范围的灰度变化,Marr和Hilderth使用了四个不同尺寸的高斯函数,称为不同的通道。将这四个不同尺度的Log器同时作用于图像,然后在空间符合假设的基础上综合处理得到结论,空间符合假设指的是:导致图像上灰度变化的原因是空间局部性。所以零交叉点出现在几个不同的通道中,那么这个点就是边缘点。Log算子的优点有:(Ⅰ)和其他的算子一样,Log也是先对边缘作出假设,然后在这个假设下寻找边缘像素。但是Log算子对边缘的假设条件最少,因此它的应用范围最广;(Ⅱ)其他一些算子的检测得到的边缘是不连续的也是不规则的居多,还需要连接这些边缘,但是Log算子的结果没有这个缺点。(Ⅲ)可以通过一个参数(也就是高斯函数标准差)来调整Log算子的结果。但是到底如何选择这个参数当时并没有结论。于是W.H.Luncher和M.P.Beddoes对参数选择做了深入的讨论,并研究了高斯噪声下的Log算子的性能。由于前面得到的是一个连续的滤波器,因此还需要抽样和对系数进行量化。2.3.3Canny算子边缘检测1986年John在IEEE上发表了划时代意义的文章AComputationalApproachtoEdgeDetection。这篇文章承前启后,作者对过去的一些方法和应用做了小结,在此基础上提出了边缘检测的三条准则—这就是著名的Canny准则(Canny‘sCriteria),并在此基础上得到了这样一个很不错的使用算法。Canny算子用于寻找图像梯度的局部极大值。一个阈值的判断往往是不够的,由于噪声影响,边缘信号的响应只有差不多一半是大于这个阈值的,也就是说边缘是时断的,因此把这种现象叫做斑纹现象。如果把阈值降低,就会发现一些错误的“边缘”。为了解决这个问题,Canny提出了双阈值法,第39页共39页 陕西理工学院毕业设计这是一种对噪声的估计实用的方法。假设边缘信号的响应是比较少的而且是比较大的值而噪声的响应是很多的但是值相对较少,那么阈值就可以通过滤波后的图像的统计累计直方图得到(实践数据表明取阈值为这个累计直方图的0.8,后来matlab中设定的是0.7处取得的响应值比较好)。Canny准则的目的就在于:在对信号和滤波器做出一定假设的条件下利用数值计算方法求出最优滤波器算子和边缘检测的应用,他发现尽管这些应用出现在不同的领域,但是它们都有一些共同的要求:(Ⅰ)好的检测结果,或者说对边缘的错误检测率要尽可能的低,就是在图像上边缘出现的地方检测结果中不应该没有;另一方面,也不要出现虚假的边缘。这是显然的,所使用边缘检测做更深入的工作的系统,它的性能都依赖于边缘检测的误差。(Ⅱ)对边缘检测的定位要准确,也就是我们标记处的边缘位置要和图像上的真正边缘的中心位置充分接近。在实践中我们发现仅仅满足这两条的算子并不好,有的算子会对一个边缘产生多个响应。也就是说图像上本来只有一个边缘点的,可是检测出来就会出现多个边缘点。于是在添加一个要求:(Ⅲ)对同一边缘要有底的响应次数。这就是Canny三准则。事实上,在Canny之前就有人提出了类似的要求,但是Canny是第一个明确提出这三条并完整解决这个问题的。更重要的是Canny给出了这三条准则的数学表达式(以一维为例),这就使得寻找给定条件下最优算子的工作转化为一个泛函数优化问题。从而为寻找给定条件小最优滤波器开辟了新的也更有效地道路。假设滤波器的有限冲击响应法f(x),,假设要检测边缘的曲线为,并且我们假设它边缘就在x=0处,噪声为n(x).1好的检测结果(GoodDetection)就是要把边缘但是没有检测出来的和布什边缘确检测出来时边缘的这种概率降到最低。由于这两个概率都随着信噪比提高而单调的下降,所以这第一个准则就等价于求f(x)使得检测后的图像在边缘点的信噪比最大化。经过f(x)滤波后,边缘点处的图像信号的响应是:(2.12)而噪声的响应的平方根是:(2.13)这里是单位长度上噪声振幅的均方。于是Canny第一个准则的数学表达式就是:(2.14)2好的定位准则(GoodLocalization):设检测出的边缘位置在x0(记住:实际的边缘在x=0),则有(1)(2.15)(2)(2.16)第39页共39页 陕西理工学院毕业设计于是就有:(2.17)即:(2.18)从而:(2.19)这里E(x)表示的是x的期望。因为越小,定位越准确,所以定位准确的数学表达式定义为:(2.20)我们的目标是求一个函数f(x),使的下面这个式子达到最大值(2.21)(3)在理想情况下,我们用滤波器对噪声响应的两个峰值间的距离来近似滤波器对一个边缘点响应的长度。因为输出信号中相邻两个极大值点的距离是相邻两个零交叉点距离的2倍,而Rice给出了高斯噪声在函数滤波后输出信号中相邻两个零交叉点的距离:(2.22)其中:(2.23)(2.24)所以噪声在f(x)滤波后两个相邻极大值点的距离为:(2.25)这里的W是滤波器f(x)的半宽度。第39页共39页 陕西理工学院毕业设计所以在2W长的区域里出现最大值的个数的期望为:(2.26)显然,主要我们固定了k,就固定了2W区域中出现最大值的个数。这就是第三个准则。我们注意到如果f(x)满足这个准则,那么由式(2.26)也满足这个准则。假设W与w成比例,也就是说,对给定的k,第三个准则的结果与f(x)的空间尺度无关。有了这三个准则的数学表达式,寻找最优滤波器的问题就转化为泛函数的约束优化问题了。但是仅仅有这一个阈值是不够的,由于噪声的影响边缘信号响应只有差不多一半是大于这个阈值的,由此造成斑纹(Steaking)想象,也就是说边缘是断的的不连续的。如果我们把这个阈值降低,我们往往会发现错误的“边缘”。为了解决这个问题,Canny提出了一种反阈值方法。前面利用累计统计直方图得到一个高阈值,然后再取一个低阈值(matlab6.5中使用的是)。如果图像信号的响应大于高阈值,那么它一定是边缘;如果低于低阈值,那么它一定不是边缘;如果在低阈值和高阈值之间,我们就看它的8个邻接像素有没有大于高阈值的边缘。下面将分别以Robert算子、Log算子以及Canny算子做出他们的轮廓提取图。其程序如下:I=imread("kids.jpg");imagesc(I,[0255]);subplot(2,3,1),imshow(I);title("原图");L=rgb2gray(I);subplot(2,3,2);imshow(L);title("灰度图像");I1=imadjust(L,[30/255130/255],[]);J=medfilt2(I1);subplot(2,3,3),imshow(J);title("中值滤波后的图像");level=graythresh(J);BW=im2bw(J,0.5);subplot(2,3,4),imshow(BW);title("二值化图像");BW1=edge(BW,"Robert");subplot(2,3,5),imshow(BW1);title("Robert算子边缘检测")运行之后的图像如下所示:第39页共39页 陕西理工学院毕业设计于此同时只要将上面程序中的两处“Robert”改成“Log”就可以运行处在Log算子条件下的图像。如下:第39页共39页 陕西理工学院毕业设计最后我们采用Canny算子对原图像依然进行灰度处理、中值滤波、二值化处理和边缘检测的图像分析比对。(3)总结第39页共39页 陕西理工学院毕业设计由处理后的图像比对可知,对相同的原始图像进行处理,用Canny算子检测出的图像相对边缘清晰、表现出了良好的检测性能,因此在对圆截面求圆度误差提取轮廓图时采用Canny算子。第39页共39页 陕西理工学院毕业设计3圆度误差的评定3.1基于光学分度头和千分表评定圆度误差3.1.1试验原理本实验采用的是本校801#实验室的光学分度头对直径为20mm的轴形零件进行圆度误差评定。光学分度头用于检测零件的中心角和加工中的分度。一般是以工件的旋转中心为测量基准,分度头是通过旋转一定的角度以分度头卡爪夹持工件来测量其最大直径。通过分度头角度的变化量来显示零件直径的变化值,这里需要配合使用一个数字显示的千分表,通过千分表的数值来测定零件直径的变化值最终通过作图来完成圆度误差的评定。试验原理图如下:图3.1光度头检测示意图1分度座2读数装置3光源4拨杆5夹头6指示表7被测工件8尾座3.1.2读数原理仪器的主要技术参数:玻璃刻度盘的刻度值为:1°分值分划板的刻度值为:5′秒值分划板的刻度值为:5″顶尖中心高为:130mm两顶尖的最大距离:710mm图3.2光学分度头的读数示意图上图所示,在目镜视野中,右边细长刻线,刻度值为1°,满刻度为360°,中间短亮线的刻度值为5′,满刻度为60′(1°),左边分度值为5″,满刻度为300″(5′),测量时通过旋转手轮将度值刻线调到邻近的分值刻线亮隙之间,即可读数。上图中(a)读数为354°14′,图(b)的读数为354°8′5″。第39页共39页 陕西理工学院毕业设计3.1.3试验步骤(1)将零件顶在光学分度的两顶尖间,指示表引向工件,并使表头与工件径向最高点接触;(2)将分度头主轴上的外活动度盘转到0°,再将指示表调零;(3)根据对测点的要求进行分度,在一周内,分度头每转过一定的角度,从指示表上读取相应的数值并同时完成记录;(4)进行数据处理并做出相应的误差评定。3.1.4数据处理与评定根据实际情况,将圆周等分为12个测量点,取零件每隔30°,即(360°/12)。有指示表在被测零件的轮廓上测取相应的直径值。分别选取三个不同的截面测量。实验数据记录如下:表3.1用分度头测量圆直径变化表(一)序号角度/(°)直径值(mm)直径变化量(μm)1019.946-6423020.0323236019.975-2549020.02727512019.998-2615020.03333718019.986-14821020.04242924020.016161027019.968-321130019.964-361233019.958-42表3.2用分度头测量圆直径变化表(二)序号角度/(°)直径值(mm)直径变化量(μm)1019.055-4523020.0666636019.981-1949020.02222512020.04040615019.996-4718019.986-14821020.08080924020.052521027020.039391130019.071-291233019.052-48表3.3用分度头测量圆直径变化表(三)第39页共39页 陕西理工学院毕业设计序号角度/(°)直径值(mm)直径变化量(μm)1019.071-2923020.0121236019.980-2049020.01414512020.05151615020.01414718020.05151821020.105105924020.0099101127030019.08519.063-15-321233019.046-54对以上三组数据利用平均法对数据进行处理表3.4分度头测量的平均直径变化值序号角度/(°)平均直径变化量(μm)10-4623037360-214901951203061501471802582107992402610270-311300-3212330-48根据以上的数据处理,现在采用autoCAD作图法来求被测零件的圆度误差。选取适当大小的半径画一个基圆,根据平均半径变化量(μm)在-24_39.5之间,因此选定半径为50μm的一个基圆较为合适。(1)以O为中心,按上图对各个角度所对应的测点的示值标出其的对应值;(2)依次连接各个测点的末端A、B、C、D、E、F、G、H、I、J、K、L。就可以得到被测轮廓的半径变化折线图;(3)根据符合最小条件的最小区域的判断准则:两同心圆与误差曲线至少有内、外相交的四点接触,即A、B、F、H四点;(4)利用autoCAD两点即可确定一个圆并比较标定的半径距离,在B、H之间确定一个大圆,在A、F之间确定一个小圆,两圆之间的区域即为最小包容区域;第39页共39页 陕西理工学院毕业设计图3.3最小包容区域的取点轮廓图(5)经autoCAD数据标注查询的半径差距离为38.20μm。3.2基于MATLAB数字图像处理圆度误差3.2.1测量原理Matlab提出的测量方法和原理如下:首先通过数码相机(CCD)获取被测零件的二值数字图像,然后由MATLAB图像处理软件对二值数字图像进行以下处理和检测:(1)轮廓边缘提取;(2)采用取极点拟合法,将所提取的轮廓上的有限像素点拟合成连续曲线,实现像素目标定位;(3)根据所拟合的曲线,按取极点拟合法确定用于圆度误差评定的两个同心圆的半径值;(4)按国家标准规定,进行圆度误差的测量与评定,输出测量结果。从以上分析可知,圆度误差的测量与评定的关键问题主要有:一是如何精确地获得(测量出)被测实际轮廓,二是如何确定包容实际被测轮廓且半径差最小的两个同心圆的半径。3.2.2获取原始图像用型号为CannonIXUS110ix的数码相机作为扫描仪获取被测零件的数字图像。在扫描前,应对扫描仪的参数和模式进行合理的设定和选择。照明方式上,为使所获取的数字图像具有高清晰度的轮廓边缘,应选择光照比较柔和的亮光条件下(亮光条件下防止照片曝光)方式进行扫描拍照。在光学分辨率的选择上,为提高测量精度,应采用较高的光学分辨率。在图像模式的选择上,为减少因扫描后对数字图像进行模式转换而产生的测量误差,可直接选择“二值图像”模式进行。应注意的是,二值图像的阈值设定,将对数字图像的质量产生较大的影响,经多次试验,拍照时要保证被测端面与相机的镜头保持比较好的同轴度,尽量不要出现偏转。否则会影响最终的结果,因为图片提取的准确性是保证最终结果可信性的前提。经过多张照片的遴选,选择如下照片作为实验所用:第39页共39页 陕西理工学院毕业设计图3.4扫描获取的原图像由于图片背景以及采集图像的过程中不可避免的出现图像曝光等采集误差,势必会对后期MATLAB处理造成比较大的误差,因此采用图片处理软件photoshop对图像处理如下:图3.5曝光处理之后的图像3.2.3图像进行轮廓边缘提取数字图像的边缘检测是图像分割、目标区域的识别、区域形状提取等图像分析领域中十分重要的基础。边缘检测技术在基于数字图像的测量方法中,具有非常重要的意义。在数字图像中,两个具有不同灰度值的相邻区域之间总存在边缘,边缘是灰度值不连续的结果。边缘检测的基本思想首先是利用边缘增强算子,突出图像中的局部边缘,然后定义像素的“边缘强度”,通过设置阀值的方法提取边缘点集。采用软件对数字图像进行轮廓边缘检测,以精确地获取(测量出)被测实际轮廓。在Matlab图像处理软件中,可用edge函数来检测灰度图像的边缘,edge函数所提供的常用检测算子有Robert算子、Log算子和Canny算子。本次实验所采用的是Canny算子。用Canny算子求出原图像的轮廓图程序与结果如下:I=imread("yuan.jpg");L=rgb2gray(im2double(I));level=graythresh(L);BW=im2bw(L,level);第39页共39页 陕西理工学院毕业设计J=medfilt2(BW);h=ones(5,5)/25;K=imfilter(BW,h);BW1=edge(J,"canny");BW2=bwperim(BW1,8);imshow(BW2);title("边缘提取图像")图3.6轮廓边缘提取图像3.2.4轮廓取极点曲线拟合采用取极点曲线拟合法,将所提取的轮廓上的有限像素点拟合成连续曲线,实现像素目标定位。在数字图像中,像素是组成图像的基本单位,其几何尺寸由图像提取设备的光学分辨率所确定,它直接影响到数字图像检测的精度。虽然,目前扫描仪的光学分辨率已达到3200DPI~6400DPI,更专业的甚至更高,但同时用于几何量的精密检测技术的精度也不断提高,目前不能完全满足要求。因此,近年来,在数字图像处理领域,已成功地研究出各种亚像素算法,利用软件处理技术将图像中特征目标的定位精度提高到亚像素级别,从而使图像检测的精度超越了扫描仪光学分辨率的限制,达到亚像素级别。一般常用的亚像素算法的精度可达到0.1—0.5个像素。常用的亚像素算法有:矩方法、形心和灰度重心法、灰度矩边缘定位法以及曲线拟合法等。本文在MATLAB软件中,采用极点曲线拟合的方法,将经过边缘检测所提取的轮廓上的有限像素点拟合成连续曲线,实现了轮廓目标的准确像素定位。对提取出来的轮廓图在MATLAB中实现取极点拟合第39页共39页 陕西理工学院毕业设计[x,y,r]=impixel(BW1)(1)(2)(3)图3.7轮廓取极大点(1)x=123233124y=23612711(2)x=122233137y=10128235(3)x=12210122y=10116236对在轮廓圆上取得的最大点进行拟合圆,并得到在该条件下拟合圆的最大半径的像素值,拟合圆如下图所示:第39页共39页 陕西理工学院毕业设计(1)(2)(3)图3.8拟合最大轮廓圆从而可以得到拟合最大圆的半径为R=113.48个像素值。下面使用同样的取点方法取得轮廓图极小值点:第39页共39页 陕西理工学院毕业设计图3.9轮廓取极小点x=[20205191]y=[16948209]x=[77192208]y=[2020953]x=[2202238]y=[7017250]从而对取得的极小值点进行拟合,同时得到了在最小拟合条件下的拟合圆,对最小拟合圆取其半径的特征值如下:图3.10拟合最小轮廓圆从拟合图中可以得到最小拟合圆的半径的特针值为R=110.81像素值。综上可得,对于拟合出最大最小圆,可得二者的像素距绝对值之差即为圆度误差。即第39页共39页 陕西理工学院毕业设计R113.48-R110.81=R2.67像素距值。3.2.5评定结果像素(Pixel)是由Picture(图像)和Element(元素)这两个单词的字母所组成的,是用来计算数码影像的一种单位,我们若把影像放大数倍,会发现这些连续色调其实是由许多色彩相近的小方点所组成,这些小方点就是构成影像的最小单位像素(Pixel)。这种最小的图形的单元能在屏幕上显示通常是单个的染色点,越高位的像素,其拥有的色板也就越丰富,越能表达颜色的真实感。像素是衡量数码相机的重要指标,指的就是数码相机的分辨率。分辨率(resolution)用于度量单位图像内数据量多少的一个参数,就是屏幕图像的精密度,是指显示器所能显示的点数的多少。由于屏幕上的点、线和面都是由点组成的,显示器可显示的点数越多,画面就越精细,同样的屏幕区域内能显示的信息也越多,所以分辨率是个非常重要的性能指标之一。可以把整个图像想象成是一个大型的棋盘,而分辨率的表示方式就是所有经线和纬线交叉点的数目,通常表示成每英寸像素(Pixelperinch,PPI)和每英寸点(Dotperinch,DPI)。对于所选定的图3.6的轮廓图的像素尺寸参数特征可以导入到photoshop中,选择以像素/厘米为单位测量出它的特征值如下:图3.11轮廓圆的特针值从图像大小特征值中可以很明显的看到,该图像的分辨率为1047.24像素/厘米。所以很显然拟合圆的半径的变化范围距离为像素点之间的间距,即它的像素距为像素/微米。又因为从4.2.4中得到半径的像素值为2.67个像素距。因此可以得到一个像素距的距离为L:L=1/1047.24=0.0009584(cm)=9.548(μm)所以半径值的距离为R=9.548×2.67=25.49(μm),因此在该测定范围条件下的圆度误差值为25.49微米。3.3误差分析任何测量总是不可避免地存在误差,为了提高测量精度,必须尽可能消除或减少误差,因此有必要对整个实验过程中误差产生原因、发现与消除或者减小他们的主要方法以及测量结果的评定等方法,做进一步的分析。3.3.1基于光度头测量的误差分析(1)测头安装误差第39页共39页 陕西理工学院毕业设计当测头的位置不通过被测工件的轴线而偏离距离为时,则相应的偏离角为:若被测表面半径有增量时,测头的实际位移为AB,其测量误差为:。因为,ABR,∠ABOθ,则=ABcos∠ABO≈ABcos,所以。由于角很小,用弧度值代,得。因此,测头安装误差很关键,尤其在测小直径时必须注意测头位置。通常应使θ≤10°,e/R≤0.15,此时≤2%。(1)测点数对测量误差的影响  由于在轮廊上实测有限数量的点来代替被测实际轮廊的全貌,在原理上就存在了误差。为了减少此误差,应合理选择测点数。用计算机对圆度谐波进行模拟,利用数值积分可以求出对应于一定谐波时各种测点的不确定度,随着测点数增加,测量不确定度下降。(3)偏心e引起的测量误差由于测量时的回转中心与最小二乘圆的圆心不重合,存在偏e误差。因此在光度头的调试安装之前一定要实现其对心安装。(4)量仪的回转精度引起的误差回转轴线在回转过程中,对轴线平均位置的相对位移即为回转误差运动。误差运动使回转轴在每一瞬时发生轴向窜动和径向跳动,使被测工件在一周内的采样点不全在一个横截面内,从而使各采样点间的相关性降低。但是,由于轴向窜动一般很小,而实际工件被测表面是平滑的,测头在被测表面采样时,也不可能是纯粹的点接触,而是小面积接触,因此轴向窜动对测量精度的影响相对较小。(5)数据处理引起的误差由于本次测量的是一个圆的端面的圆度误差而在数据测量过程中采用的是根据取三段截面径向的变化量的平均值作为最后的误差轮廓线的取样点,这样也会引起一定的误差。3.3.2基于MATLAB测量的误差分析(1)图像采集过程中的误差在图像的采集过程中如何保证相机的镜头与被测件在定位端面的同轴性是保证图像采集效果的重要前提,如果发生了比较大的偏向差,那么误差就显得很大,最好是在扫描仪的试验台上来采集,这样既保证同轴性,也可以合理的设置相关采集参数如阈值、焦距等。本次毕业设计所采用的数码相机的像素为500万,这个像素对于家庭或者普通爱好者来说,已经不错了,但是对于基于高精度微米级别的亚像素要求的扫描图像处理来说,这样的分辨率还是会造成比较大的误差的。(2)MATLAB对原图像进行边缘提取的过程中存在着像素误差,由于本身的分辨率不是很高,照片放大一些就会出现模糊的“马赛克”,可以看到在边缘处会有像素点距显得很长,也就是说会有图像拉伸甚至扭转变形,因此也会影响到最终的误差效果。(3)边缘取点拟合过程中的误差。在提取轮廓图时需要拟合出最大同心圆和最小同心圆,由于本次取点采用的是将轮廓图放大然后取轮廓像素伸长最大的像素点,同样拟合最小轮廓圆也是采用图像放大后取像素点距最小的轮廓部分,这种取点方式在理论上无法保证最好的精度。当然在这个过程中,像素也可能会出现图像的扭曲与变形误差。3.4两种测量方法的比较第39页共39页 陕西理工学院毕业设计用两种方法计算出的轴类工件的圆度误差,比较可知基于MATLAB软件算法误差相对较小。计算圆度误差国际通用的方法是最小区域法,但是他的计算过程很复杂,计算量也大,传统的算法流程都是测量、作图、计算。用圆度仪等实验的办法测量因此对实验设备条件也有相关的要求,但是用MATLAB算法操作比较简单,只要有一台安装了MATLAB软件的计算机,相关的程序代码和比较好的图像采集设备,就可以完成了。更多的时候程序是可以以工具包的形式存入供直接调用,显得方便简洁,最主要的优越性是对于大量重复性的测量可以实现快速无损检测。通过本次毕业设计,我不仅对以前所学的相关知识有更深的了解,还学到了许多关于数字图像处理这门学科领域的新知识,使我受益匪浅。第39页共39页 陕西理工学院毕业设计致 谢在这次毕业设计即将结束之际,要感谢我们的指导老师景敏老师。  在这次的毕业设计中,我发现自己还有那么多知识不了解觉的自己相关知识懂的还很少,看着自己的毕业设计课题我努力回想自己大学学习的课程找相关的知识,发现自己确实比较迷茫,因此我就通过上网、去图书馆找相关的书籍,很感谢学校能给我这次提供这样的机会。在这段时间内,我和同学在一起互相照应互相勉励,在这里我感谢和我一起查资料探讨问题的同学。在这段时间里我们的老师也为我们毕业生忙了好多,在这里我要感谢他们。我要感谢景老师,为我指点迷津、开拓思路、精心点拨、热诚鼓励。景老师一丝不苟的作风,严谨求实的作风,深深的感染和激励着我,使我有信心完成这次毕业设计。在这里还要感谢做实验时的牛文莉老师,她和蔼可亲、悉心指导帮我完成本次毕业设计的实验,非常感谢。于此,我在这里向这次毕业设计过程中帮助过我的景敏老师、我的组员以及在此期间付出心血的老师和同学之意崇高的敬意和由衷的感谢!第39页共39页 陕西理工学院毕业设计总结毕业设计在大学的最后一个学期已经画上了句号,回首当时从拿到任务书开始写开题报告的迷惑,到中期各项都没有进展的纠结,到后期在老师的指导下完成,感觉真的是一个非常有意义的过程。毕业设计是对我们前面学习的一个检测,同时也是对自己能力的一种提高,在这个过程中主要还是一种学习的过程,我学习到了圆度误差评定的各种方法以及最优算法,实现了MATLAB的数字图像处理的基本处理方法。当然,这里比较遗憾的是没有实现全部过程中的MATLAB程序代码处理,处理的结果误差与光度头测量评定的结果的优越性体现的不是很明显,或许已经有了全程序代码的处理方法了,但是我会在以后的工作和学习中去探所最优的求解过程。在设计过程中,我通过查阅大量有关资料,与同学交流经验和自学,并向老师请教等方式,使自己学到了不少知识。在整个设计开发过程中我懂得了许多东西,也培养了我独立工作的能力,树立了对自己工作能力的信心,相信会对今后的学习工作生活有非常重要的影响。而且大大提高了动手的能力,使我充分体会到了在创造过程中的探索的艰难和成功的喜悦。第39页共39页 陕西理工学院毕业设计参考文献[1].武晋.几何量精密测量技术[M].哈尔滨:哈尔滨工业大学出版社,2002.[2].刘刚.MATLAB数字图像处理[M].北京:机械工业出版社2010.5[3].周剑平.基于MATLAB的圆度评定方法.计量与测试技术[J].2005年第第2期.[4]郑阿奇曹戈赵阳.MATLAB实用教程[M].北京:电子工业出版社.2004.[5].李岩花国梁廖念钊.精密测量技术[M].北京:中国计量出版社.2001.[6].傅师伟.圆度误差测量的一种新方法.计测技术[J].2004.[7].费业泰.误差理论与数据处理(第五版).北京:机械工业出版社2004.6[8].甘永立.几何量公差与检测(第八版)[M].上海科学技术出版社.2008.6[9].章毓晋.图像处理分析[M].北京:清华大学出版社.1999.[10].张德丰.MATLAB数字图像处理[M].北京:机械工业出版社.2009.[11].朱志刚.数字图像处理[M].北京:电子工业出版社.2001.[12].L.A.Spacek.“EdgeDetectionandmotiondetection.”ImageVisualComput.1986.[13]D.Demigny.“OnOpticalLinearFilteringforEdgeDetection.”IEEETrans.ImageProcessing.2002[14].HankyuMoon,RamaChellappaandAzrielRosenfeld.“OpticalEdge-BaseShapeDetection.”IEEETrans.OnImageProcessing.Nov.2002[15].SUNYu-qin.CHENRen-sheng.Solvingmaximuminscribedcircle.Apr.2003.第39页共39页 陕西理工学院毕业设计附录一边缘检测算子的运用程序I=imread("原图像");imagesc(I,[0255]);subplot(2,3,1),imshow(I);title("原图");L=rgb2gray(I);subplot(2,3,2);imshow(L);title("灰度图像");I1=imadjust(L,[30/255130/255],[]);J=medfilt2(I1);subplot(2,3,3),imshow(J);title("中值滤波后的图像");level=graythresh(J);BW=im2bw(J,0.5);subplot(2,3,4),imshow(BW);title("二值化图像");BW1=edge(BW,"Robert");subplot(2,3,5);imshow(BW1);title("Robert算子边缘检测")第39页共39页 陕西理工学院毕业设计附录二提取图像的直方图程序:I=imread("源图像");subplot(221);imshow(I);title("原始图像");subplot(223);imcontour(I);title("图像的轮廓");subplot(222)imhist(I,64);title("图像的直方图")第39页共39页 陕西理工学院毕业设计附录三提取图像轮廓程序:I=imread("yuan.jpg");L=rgb2gray(im2double(I));level=graythresh(L);BW=im2bw(L,level);J=medfilt2(BW);h=ones(5,5)/25;K=imfilter(BW,h);BW1=edge(J,"canny");BW2=bwperim(BW1,8);imshow(BW2);title("边缘提取图像")第39页共39页'