您好,欢迎访问三七文档
研究生课程论文机器视觉应用实验报告提交日期:学号学院机械与汽车工程学院课程编号课程名称机器视觉应用学位类别工程硕士任课教师教师评语:成绩评定:分任课教师签名:年月日《机器视觉应用实验报告》姓名学号院系专业仪器仪表工程指导教师华南理工大学实验报告课程名称:机器视觉应用机械与汽车工程学院系仪器仪表工程专业姓名廖帆实验名称机器视觉应用实验日期指导老师一、实验目的自行搭建机器视觉测量系统,采集标定板、工件图像,利用图像处理软件进行标定、工件尺寸测量、工件缺陷检测。主要目的有:1、根据被测工件,搭建机器视觉测量系统,选择成像系统软件,进行图像采集等实验。掌握常规机器视觉测量原理、实验平台搭建、图像采集步骤;2、掌握成像系统软件常用操作,能够对图像进行简单处理,并编写简单相关程序尺寸测量、缺陷检测判定;3、对测量结果进行误差分析,进一步加深理解机器视觉测量过程中的关键因素。二、实验原理机器视觉主要是利用机器实现代替人眼来做测量和判断等目的,因此机器视觉可以看作是使用计算机及相关设备对生物视觉的一种模拟。该实验就是通过对选取的工件进行图像采集和图像分析处理以获得所需物体的尺寸、缺陷等信息,一个典型的机器视觉系统包括:相机(包括COMS相机和CCD相机)、光源、镜头、图像获取单元(图像采集卡等)、显示器、图像处理软件、通讯设备、输入输出单元等。本次实验借助HALCON机器视觉软件,它是德国MVtec公司开发的一套完善的标准的机器视觉算法包,拥有应用广泛的机器视觉集成开发环境,在欧洲以及日本的工业界已经是公认具有最佳效能的MachineVision软件。它源自学术界,是一套图像处理库,由一千多个各自独立的函数,以及底层的数据管理核心构成。其中包含了各类滤波、色彩分析以及几何、数学变换、形态学计算分析、校正、分类、辨识、形状搜索等等基本的几何以及图像计算功能。HALCON支持Windows,Linux和MacOSX操作环境,函数库可以用C,C++,C#,VisualBasic和Delphi等多种普通编程语言开发,为工业检测上提供了高速、高精度、强有力的方法。本实验包括对被测工件进行圆孔中心尺寸测量、工件螺母焊接位置缺陷检测。本次实验基于HALCON平台,工件圆孔中心尺寸测量涉及ROI、特征提取(圆)、外接圆形算法,在传统边缘检测方法里,基于一阶导数的边缘检测算子有Robert算子、Sobel算子、Prewitt算子、canny算子等;工件螺母焊接正反位置缺陷检测涉及阈值处理、特征提取。三、实验器材光源:背光源,面光源硬件:MER-500-7UM相机、相机架、标定板(48×48mm)、计算机,焦距12mm、最大光圈1.4的镜头一个软件:DahengMER-SeriesViewer(x64)驱动、HALCON工件:OK件、缺陷件地点:暗室四、实验内容1.实验内容:(1)根据所检测的内容分析所需的光源;(2)根据工件尺寸、光源等搭建视觉系统平台(3)标定板制作;(4)采集标定板和工件图像;(5)本次实验利用HALCON软件进行相机标定;(6)利用HALCON软件对工件进行缺陷判定,并测量中心圆孔的尺寸2.待测对象描述:本实验的试验工件为冲压件,缺陷检测为工件的螺母是否焊反,即参照OK件检测工件的螺母位置是否焊反。工件如图所示:图4.13、初步拟定方案通过阅读图像,可知道,若是OK件,从指定面可观察到两个焊接的螺母,若是缺陷件,即螺母焊反的工件,在指定面观察的话没有焊接螺母,因此拟采用阈值法对所采集到的图像进行处理。至于中心圆孔的尺寸测量可以将工件放置在背光源之上,背面打光即可获得质量较好的图像。五、实验步骤1.相机选择:工件尺寸为80mm*116mm,要求最小误差为0.5mm,现在假设将最小的理论像素值定为0.05mm,计算相机分辨率的公式为:所以相机分辨率要大于1600*2320。大恒MER-500-7UM相机分辨率为1944*2592,所以该相机可以满足要求。2.镜头选择:拍摄最小工作距离定为80mm,CMOS传感器尺寸为2.9mm*2.9mm*2.9mm。所以焦距大于4.87即可,而我所采用的镜头焦距为12mm,因此镜头满足要求。3.根据现场环境及工件尺寸大小,选择合适的机架安放地点和支架的高度。4.利用扳手等工具,将三脚架、相机和镜头组装好。其中尽量保持相机——镜头的中心线与测量平面(底面)垂直;5.启动计算机,打开大恒图像采集软件。通过USB线将相机与计算机连接。6.在测量平面上放置白色背景(白纸),将标定板放在白色背景上,调整标定板的位置,使得标定板完全落在相机视场内部,转动相机的对焦环,使图像清晰,可局部放大观察对焦是否满足要求。在图像采集软件的界面中操作,保存所得图像到计算机中。7.改变标定板的位置,重复步骤4,直至完成16次标定板图像采集工作,采集得到标定板图像如图5.1所示。图5.18.保持相机物距不变,放置好待测工件,打开背光源,得到工件图像。实验装置如图5.2所示图5.29.利用HALCON软件编写工件的冲压件圆孔检测流程如图5.3所示。图5.310.重新搭建实验平台进行工件缺陷检测,搭建试验平台如图5.4所示。图5.411在搭建好实验平台之后,先采集OK件的图像,作为匹配标准,之后采集缺陷件的图像。12利用HALCON软件编写工件冲压件的缺陷检测流程如图5.5所示。图5.513整理实验器材六、数据记录1.标定板制作(30*30mm)1)打开HALCON软件,输入gen_caltab(),填入对应参数。2)将生成的.ps文件转换成为pdf格式,并彩印出。3)将彩印出的标定纸粘贴至一定厚度的平板上固定,制成标定板。2.摄像机标定利用拍摄到的标定板图像进行标定。1)打开HALCON软件;2)点击“助手”—“打开新的Calibration”创建新的Calibration,加载描述文件(注意文件路径不含中文字符),设置标定板厚度是2.46mm,单个像元的宽和高都是2.2um,焦距12um,如图6.2.1所示;图6.2.1图6.2.23)加载标定板图像,如图6.2.2所示,(注意文件路径不能够包含中文字符,默认为软件图片所在文件夹)只要“状态”中没有出现“错误”字样,说明该标定板图片可以使用。如果出现了“错误”提示,将对应的图片移除即可;4)点击“标定”,得到对应相机的内外参数,如图6.2.3所示;图6.2.35)点击图6.2.3中的“代码生成”,并插入代码。3.圆孔尺寸测量1)加载工件标准工件原始图像,将图像直接拖入HELCON图形窗口。2)进行亚像素边缘提取,结果如图6.3.1所示。edges_sub_pix(Image00,Edges,'canny',1,20,40)3)对获得图像进行轮廓连接处理,结果如图6.3.2所示。union_adjacent_contours_xld(Edges,UnionContours,10,1,'attr_keep')4)选取需要的圆孔轮廓,结果如图6.3.3所示。sort_contours_xld(UnionContours,SortedContours,'upper_left','true','row')select_obj(SortedContours,ObjectSelected,3)5)求取轮廓的最小闭合圆。smallest_circle_xld(ObjectSelected,Row,Column,Radius)6)将相机坐标系转换为世界坐标系,获取圆心等参数的世界坐标系坐标,结果如图6.3.4所示。对应算子为:contour_to_world_plane_xld(ObjectSelected,ContoursTrans,CameraParameters,CameraPose,'mm')图6.3.1图6.3.2图6.3.3图6.3.44.冲压件螺母焊接正反的判断1)加载工件原始图像,将图像直接拖入HELCON图形窗口。2)提取感兴趣区域ROI,点击“编辑ROI:ROI”—“绘制感兴趣区域”—“插入代码”,如图6.4.1所示。对应算子为:gen_circle(ROI_0,312.7,364.643,200.81)gen_circle(ROI_0,312.7,364.643,200.81)gen_circle(TMP_Region,1236.1,2257.21,180.291)union2(ROI_0,TMP_Region,ROI_0)reduce_domain(Image1,ROI_0,ImageReduced)3)对ROI图像进行阈值处理,结果如图6.4.2所示。对应算子为:threshold(ImageReduced,Regions,53,237)4)对上述的结果滤除其它噪声。对应算子为:dilation_circle(Regions,RegionDilation,3.5)connection(RegionDilation,ConnectedRegions)select_shape(ConnectedRegions,SelectedRegions,'area','and',8000,99999)5)统计当前图像中获得的螺母数,作为后续判断的依据。对应算子为:count_obj(SelectedRegions,Number)6)对结果进行匹配判断,并显示结果。结果如图6.4.3所示。6.4.3a)是螺母没有焊反的判断结果,6.4.3b)是螺母焊反的判断结果。对应算子为:dev_clear_window()dev_display(Image1)wait_seconds(1)dev_display(SelectedRegions)if(Number=2)disp_message(WindowHandle,'螺母没有焊反','window',10,10,'black','true')elsedisp_message(WindowHandle,'螺母焊反','window',10,10,'black','true')endifwait_seconds(3)图6.4.1图6.4.2a)b)图6.4.3七、误差分析:(1)图像采集时,工件未放置于相机的成像中心,图像产生畸变;(2)采用的面光源光强不均匀、且亮度不够;(3)编写的算法中参数选取采用的是近似选取,无法达到的完美的效果,因此必然存在一定的偏差;(4)工件轮廓磨损生锈,分辨率不高,导致边缘提取的精度不高;(5)标定板有细微折痕,影响标定;(6)没有夹具,导致光源位置无法固定,工件打光会受到影响。八、实验结论通过实验可以知道,HALCON作为一门商业化的图像处理软件,它十分容易上手,而且将各种图像处理代码封装等级很高,用户只需修改其中参数就可以达到自己想要的效果。作为工程应用,HALCON确实很优秀,但是如果是要从事于图像处理软件开发,则应该透过现象看本质,即汲取HALCON的优点,结合实际需要开发出自己的图像处理软件。除此之外,这门课程的学时是32学时,在前面都是学习理论知识,在完成理论学习之后,再相应地进行实验可以将所学的应用到实验当中,从方案的确定到实验顺利完成,这其中每一步都是理论与实际的结合,可以让我们初步掌握机器视觉的应用。也让我明白机器视觉是一门系统性、实用性很强的学科,要想学好机器视觉,必须能够静下心来、全心全意的投入进去,这是一个漫长的时间旅程。本次实验中,自己较好地完成了实验的要求,达到了实验的目的,实现了工件的检测要求,初步了解和掌握了机器视觉的操作流程与软件后续处理的方法。机器视觉应用课程考核题1.请阐述机器视觉中通过物体在平面图像上的坐标获得物体空间三维位置的原理。(10分)答:机器视觉中通过物体在平面图象上的坐标获取物体空间三维位置的方法主要有双目立体视觉测量以及结构光三维视觉测量。其中双目立体视觉是基于视差,根据三角法原理进行三维信息的获取,即由两个摄像机的图像平面(或者是单个摄像机在不同位置的图像平面)和被测物体之间构成一个三角形。两格摄像机之间的位置关系是已知的,因此便可以获取两摄像机公共视场内
本文标题:机器视觉实验报告
链接地址:https://www.777doc.com/doc-3950056 .html