白岩松 侯亚辉 刘明涛(河南理工大学 河南 焦作 454000)
机器视觉是指基于视觉技术的机器系统或学科。从广义上来说,机器人、图像系统、基于视觉的工业测控设备等统属于机器视觉范畴。从狭义角度来说,机器视觉更多指基于视觉的工业测控系统设备。随着加工制造业的发展,机器视觉的需求逐步上升。在一些不适合人工作业的危险工作环境,或人工视觉难以满足要求的场合,引入机器视觉技术来替代人工视觉,将大大提高生产效率;另一方面,面对国内制造业劳动力相对不足、人工成本持续高涨、高级技工严重缺乏等诸多问题的呈现,越来越多的电子制造企业开始注重高效率、快节奏的生产方式,产业自动化的发展趋势使得机器视觉技术在制造生产中占据了越来越重要的地位。
电路板缺陷相较于坏点缺陷具有一定的复杂性,所以采取了基于Halcon的匹配技术。主要涉及图像处理,模式识别等技术。分别用到了3种匹配技术,基于灰度的匹配,基于形状的匹配,基于元件的模板的匹配。基本流程是获取图像→创建模板→匹配→清除模板。创建模板时使用create_shape_model_xld(Operator)函数设定模板形状,缩放范围等,匹配时可以用find_shape_model(Operator)函数设置参数,如搜索范围等。为了满足在实际运用中的在线检测速度要求,通常采用离线制作模板在线匹配的流程。缺陷检测通常约定标准板为母板,待测板为子板。流程是创建|调用模板,模板匹配,子图矫正,残缺分析。
约定标准板为母版,其图像用来创建模板为母图;待检测板为子板,其图像为子图。缺陷检测流程如下:
3.1创建|调用模板。电路板的表面元件的形状有一定的规律,一般为四边形。基于对Halcon三种模板匹配技术分析,采用基于形状及基于元件的匹配技术检测元件缺陷。对于子图中唯一元件(如IC片)的检测,采用形状匹配技术;而对于一种元件多个实例对象(如电容片、电阻片,一个电路板里可能包含多个同样的电容或电阻)的检测采用基于组件的匹配技术,而不采用单模板检测多个同类对象的方法或者多模板技术。创建模板是一个耗时的工作,实际应用时,为了提高检测效率,在离线情况下将创建好的模板保存到文件,在线检测时调用现成的模板。
3.2模板匹配。将模板分别与母图、子图匹配,匹配结果包含:模板的位置、目标对象的位置、相似度及缩放比例等信息。模板与母图匹配等于是将模板当成目标对象,理想情况下得到的位置信息应为模板的中心坐标和0(模板相对模板旋转角度为0),由于匹配误差的存在,实际匹配结果相对理想结果有误差,但误差非常小,坐标精度为0-3,角度精度为0-7。缺陷分析时,求取的是目标对象与模板的位置差,恰好抵消部分匹配误差,提高了检测精度。
3.3子图矫正。扫描电路板的图像时,由于机械定位原因,在工作平台下母版与子板存在定位误差,导致子图相对母图位置偏移、旋转。需对子图进行位置矫正。在PCB板的设计制造阶段,设计者通常会在电路板上设置定位标志(Mark)作为后续器件焊接及电路板切割的定位标准,本实验用的电路板的定位标志为两个Mark圆,分布在电路板的对角。矫正时通过模板匹配的方法分别找到母图、子图对应的Mark圆的圆心,分布在电路板的对角。矫正时通过模板匹配的方法分别找到母图、子图对应的Mark圆的圆心坐标,两坐标间对应一个仿射变换矩阵,对子图实行仿射变换就可以将子图Mark圆与母图Mark圆圆心对准。对另一个Mark圆也进行同样的操作。两个Mark圆圆心对准,就可以消除偏移、旋转误差,从而实现子图的位置矫正。为了保护Mark模板的中心为Mark的圆心,创建模板前需采用图像处理的方法提取Mark圆,使整个模板图像恰好为Mark圆,采用的图像处理方法为图像分割与特征提取。
3.4残缺分析。设模板位置为Pt(xt,yt,anglet),目标对象位置为P0(x0,y0,angle0),则偏移量 D=(x0-xt)2+(y0-yt)2,旋转量 Ang=|angle0-anglet|≈angle0(因为anglet≈0)。根据工艺要求设定一个偏移阈值D0和一个旋转阈值Ang0。1)检测位移缺陷:当D>D0时,不合格;当D <D0时,合格;2)检测旋转缺陷:当 Ang>Ang0时,不合格;Ang<<Ang0时,合格。极性反:Ang0>1800。对于缺失元件,匹配找不到或虽然找到一个与模板最相似的物体,但其相似度通常很低,只要设置一个相似度阈值来过滤找到的对象就可以确定元件是否缺失。