视觉检测技术及智能计算
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.3 国内外研究及应用现状和涉及的图像处理方法

1.3.1 视觉检测技术国内外研究及应用现状

视觉检测是建立在计算机视觉和图像处理基础上的一门新兴检测技术,用计算机来模拟人的视觉功能,从中提取有用的信息,通过图像处理获得被测事物的各种参数,并最终用于实际检测、测量和控制,具有高效、高精度、非接触式、获取信息丰富等优点。

根据检测任务的不同,将视觉检测分成几何尺寸测量、表面质量检测和产品完整性检测三类,依据视觉检测的特性,可以将视觉检测分为两类,即定性检测和定量检测,其中表面质量检测任务和产品完整性检测属于定性检测,物体的几何尺寸测量属于定量检测。视觉定性检测是检测物体或者产品表面是否有刮痕、破损、异物、磨损等缺陷,表面光洁度及表面亮度或纹理结构的一致性,产品的组成部件的完整性,装配有无遗漏,物体状态、姿态,物体的形状是否符合要求,尺寸结构是否完整等,而视觉的定量检测是物体的几何尺寸测量及形状检测,检测其是否在允许的公差范围内,涉及工业、农业、交通、纺织业、食品工业等[13]

在国外,从20世纪70年代早期开始,机器视觉就开始进入了实际应用,相应的视觉检测理论和技术不断成熟和推广,使得视觉检测技术成为了工业自动化检测的基本方法和主要手段。

1.表面质量检测

表面质量检测是视觉检测的一个重要应用领域,在表面质量检测应用中,Lin Hd利用视觉检测技术系统地研究了集成电路、LED发光器件表面、LCD显示屏表面缺陷的自动检测方法及系统实现[14~17],主要理论方法涉及神经网络、统计方法等。Tsai Dm在频域下利用神经网络,研究了零件表面粗糙度的评估方法[18],对木材、纺织品和TFT-LCD显示屏表面缺陷检测方法进行了深入研究,提出了方向性纹理和统计纹理特性,以及使用小波重构、ICA、Gabor滤波器和神经网络的缺陷检测方法[19]。而Rohrmus D.r提出了基于几何纹理特性的织物表面缺陷检测和分类[25],食品工业也是机器视觉表面检测方法应用的重要领域,Brosnan T系统地综述了计算机视觉在食品工业中的应用、相关理论和技术发展前景[26][27]。Aleixos N提出了一种水果表面缺陷检测和自动分级视觉检测的方法和系统[28]

2.完整性验证

结构完整性检测主要是检验产品组成部件的完整性,装配有无遗漏,尺寸结构是否完整,有无异物等。例如,PCB元件装配中结构完整性检测是机器视觉常用的应用领域[31][32],利用训练集建立物体结构的统计模型,采用多分辨率搜索的策略在图像中定位物体[33][34]。汽车工业是视觉检测技术广泛应用的重要领域,比如判断汽车车门开关状态、对汽车装配生产线上异常进行实时检测等[35][36]。操作质量检测可以验证是否根据正确的制造流程或标准对被测产品进行了准确的操作。

3.典型的视觉检测系统

国际上有名的工业视觉系统集成商有美国的NI、Honeywell、Cognex和PROIMAGE,瑞士的BOBST,德国的VMT,加拿大的Hexsight,意大利的Centro Sviluppo Materiali。英国EES系统已于1991年在荷兰Hoogovens钢铁公司投入应用,日本的DAC、TOKIMEC和Keyenc将专家系统引入智能表面检测系统中,具有自学习和分类功能。1995年瑞典将神经网络应用于表面缺陷检测系统,使信息处理从数学、模式识别等发展到将神经网络等新理论运用到带钢表面缺陷的检测中,具有很好的发展前景。1996年,美国Cognex公司研制了iS-2000自动检测系统和iLearn自学习分类器软件系统,两系统结合能提供80GOPS的运算性能,大大提高了运算执行速度和数据实时吞吐量[37]。德国Parsytec公司研发的HTS-2系统[15]采用摄像机和频闪照明装置、奔腾Ⅱ PC和现代化的图像处理算法,可以检查在1000 m/min运行速度下铝、铜等金属的表面缺陷[38]。其涉足的应用范围常见于尺寸检测、结构检测、表面检测以及系统运行状况检测等[13]。上述视觉检测系统的识别率在理想的情况下最高可以达到97.5%,正常情况下其平均识别率为89%,通常经过长时间的学习后,其识别率能够进一步提高。

4.典型的视觉检测软件平台

① VisionPro:是一款独立于硬件设备的视觉软件,具有通过拖放工具快速建立原型、易于集成、先进的机器视觉工具库、硬件灵活性、简化视觉系统与其他主控制程序的融合处理等特点,可以满足所有的视觉需求——从几何对象的定位、检验到识别和测量。

② Open eVision:Open eVision 1.0是一整套可靠、灵活和功能强大的软件工具,专用于图像处理和分析。它包含一组能与用户的应用程序集成的库、ActiveX控件和 .NET类。Open eVision 1.0拥有快速、简便的现代化软件许可系统,可帮助用户在任何平台上安装图像软件工具,部署应用程序。Open eVision 1.0包括一套由六个库组成的通用图像处理库(图像处理、彩色校准与变换、斑点分析、标准模式匹配、几何模式匹配、亚像元测量和尺寸控制)。

③ MIL:MIL软件包是一种硬件独立、有标准组件的32位图像库。它有一整套指令,针对图像的处理和特殊操作,包括斑痕分析、图像校准、口径测定、二维数据读写、测量、图案识别及光学符号识别操作。它也支持基本图形设备。MIL能够处理二值、灰度或彩色图像。它有完全透明的管理系统,沿袭虚拟数据对象操作,而非物理数据对象操作,允许独立于平台的应用。这意味着一个MIL应用程序能够在不同环境中运行于任何VESA-compatible VGA板或Matrox图像板上。MIL用系统的观念识别硬件板,单一应用程序可控制一种以上的硬件板。MIL能单独在主机上运行,但使用专用加速Matrox硬件效率会更高。

④ Common Vision Blox(CVB):是由德国Stemmer Imaging公司研发的机器视觉软件开发包,为身处工业领域的用户的图像处理需求提供方便、快捷的解决方案。CVB提供强大的功能优势:多个软件开发包灵活、有效地完成图像处理任务,集合了来自于各个部门生产商生产的最重要的图像处理部件(相机、图像采集卡、光源)的优化驱动程序,CVB支持来自于众多生产厂家的标准和特制的相机(高分辨率、高速、线扫描相机等)。

⑤ Sherlock:是基于Windows环境开发出来的专门用于检测、包装、搜索、质量控制等各种视觉检测任务的智能软件。

⑥ Halcon:是高速、高精度的机器视觉软件,主要包含BLOB分析、形态学、模式识别、测量、3维定标、双目立体视觉等性能杰出的算法,利用其开放式结构可以快速、高效开发图像系统。

⑦ HexSight:HexSight视觉软件包是一款高性能的机器视觉软件开发包,HexSight的特点是精度高,识别速度快,对环境光线等干扰不敏感,检测可靠性极高。

⑧ CKVision:是国内首款高性能机器视觉软件开发包,是创科公司开发出的新一代图像识别开发平台,该平台集成了BLOB分析、对象计数、几何匹配、灰度匹配、字符识别、条码识别、测圆、卡尺测量、外径内径测量、颜色识别、图像基本运算(二值化、比例变换、开运算、闭运算、膨胀、腐蚀、滤波)等功能,接口函数丰富,支持VB、VC等开发工具。在OCX功能表中,每个功能之间都坐标联系接口,提高了功能之间的整合性能。

在国内,对视觉检测的研究起步比较晚,但发展速度较快。国内很多研究机构对机器视觉检测技术进行了深入而富有成效的研究。机器视觉应用于一些传统和有特色的工农业领域,如钢铁表面缺陷检测分类和识别系统[2][39~41],印刷品质量检测[42],发动机活塞装配完整性检测[43][44],工件内孔加工质量检测、特征识别与分类中的应用[45][46],直线度检测、装配防遗漏[47][48]以及轴承密封圈缺陷的检测[49][50],仪表数字识别[51],陶瓷基板质量检测[52],液体药品异物检测和医药灌装生产线中产品异物的视觉检测[53][54],织物疵点检测[55][56],鸡蛋品质检测[57~59],浮球姿态测量[60],电子网板检测[61],车辆尺寸测量上[62],输送带撕裂视觉检测[64],烟草、作物病害机器视觉诊断[65][66],蔬菜中活菌总数快速检测[67]。工业、印刷、汽车行业、食品包装、纺织、农产品筛选等领域已经尝试用机器视觉解决生产实际中的问题,极大地推动了机器视觉理论的研究和应用推广,提高了工业自动化水平。

1.3.2 视觉检测涉及的图像处理方法

图像处理分析是视觉检测的基础。图像处理对获取的原始图像通过软计算来提高图像品质,为后续的图像分析和图像理解提供优质的图像数据资料,内容涉及去噪、滤波、变换、分割、增强、特征提取、分类、识别等。

1.图像增强、降噪和滤波

图像增强、降噪和滤波是提高图像质量的常用方法。图像增强就是有选择地突出图像中感兴趣的部分,衰减次要的信息,而不考虑图像降质的原因。从另一个角度看,图像增强相当于对图像进行滤波处理,主要方法包括直方图均衡化[68]、几何校正、灰度修正、图像锐化[69]、频域增强、自适应滤波[70]、模糊集、卡尔曼滤波[71]等,它们主要完成对图像的平滑处理。但是这些方法要么会降低图像信息量,要么会使图像变模糊,从而损失其中的纹理特征和边缘特征。近年来提出的基于小波变换的滤波[72~74]和基于Contourlet变换的滤波[75]可以有效地避免该问题,较好地解决了频率分辨率和时间分辨率之间的矛盾。目前使用最频繁的小波域滤波方法主要分为阈值萎缩法[76]和比例萎缩法[77]两大类。前者主要有硬阈值法、软阈值法[78]、Visu Shrink阈值方法[79]、子带自适应Visu Shrink阈值法[78]、基于Bayes准则的Bayes shrink方法[75]、自适应多阈值的图像滤波法[80]以及基于主分量的小波滤波方法[81]等。后者主要有Mihcak等人提出的LAWMLHE算法、LAWMAP算法[82]。图像降噪的主要目的就是提高图像的信噪比,突出图像的应用特征,常用方法有随尺度变化的接近最优的自适应阈值算法[83]、基于HVS视觉模型下的图像降噪的方法[84]、非下采样Contourlet域高斯尺度混合模型的图像降噪算法[85]等。虽然,以上提出的各种图像增强、降噪和滤波算法日趋完善,在一定程度上能够很好地改善图像的质量,但它们都是针对某种具体情况而设计的,不能通用,具有一定的局限性,况且这些算法的计算复杂度都比较大,尤其是各种频域的算法,不能满足高速、实时的图像处理系统的要求。

2.图像分割

图像分割是指将图像中有意义的特征或区域提取出来的过程,其目的就是将图像划分成若干互不相交的区域,使各区域具有一致性,而相邻区域间的属性特征有明显差别。传统的图像分割算法通常分为基于区域的、基于边缘的和两者相结合。基于区域分割的方法就是基于物体区域内像素间的同一性,如图像灰度值或纹理同一,把图像分割直接划分为若干子区域的图像分割方法[86]。这种分割算法主要包括区域生长[87]、分水岭变换法[88]和马尔可夫随机场[89][90]三种。

近年来,许多新理论、新方法和新工具都被应用到图像分割技术中来,因而也出现了很多结合特定理论的图像分割方法,如基于数学形态学的图像分割方法[91][92]、基于图论的图像分割方法[93][94]、基于模糊理论的图像分割方法[94]、基于免疫算法的图像分割方法[95]、基于神经网络的图像分割方法[96][97]、基于支持向量机的图像分割方法[98]、基于粒度计算理论的图像分割方法[99]、基于多尺度的图像分割方法[100][101]、基于视觉感知技术的图像分割方法[102]等。此外一些学者还将分形集合、动态规划、组合优化、偏微分方程和Markov随机场等应用于图像分割,都取得了不错的分割效果。

3.特征提取

特征提取是图像模式识别中的一个重要环节,其目的是针对待识别目标的特点提取出一组尽量精简的、最有效的特征,从而提高分类器的识别效果和效率。传统的特征提取法是将图像映射为一些数字描绘子,提取模式的不变性特征描述矢量,并基于统计方法进行目标分类。该方法的缺点是由于现实世界中多样化和高度复杂的模式,很难提供一种通用的目标不变性描述技术,从而可能在特征提取阶段丢弃模式的某些重要特征。基本缺陷特征包括直方图统计特征、小波变换特征、基于灰度共生矩阵[103]以及不变矩特征[104][105]。共生矩阵描述了二阶图像统计特性,适合于大量的纹理种类,对色调像素间的空间关系具有良好的描述关系,对于单调的灰度级变换是不变量,但是由于不考虑基元形状,因此不适合分析由大的基元组成的纹理。

图像中物体的性质不能因为图像的平移、旋转,比例尺度的改变而发生变化。矩特征对于图像的旋转、比例尺度、平移具有不变性,可以用来描述图像中区域的形状特征。HU不变矩在一定程度上反映的是图像的低阶信息,而Zernike矩能够反映图像的任意阶信息,在对噪声的敏感性、信息冗余、描述图形的能力上,Zernike矩都具有相当全面的性能。

4.缺陷分类器

用于图像分类的算法层出不穷。传统分类方法包括基于贝叶斯决策理论的分类方法和Fisher准则分类法。Sick系统[106]、CSM系统[107]、Sipar系统采用树分类器技术。Smartvis系统应用机器学习方法自动设计树分类器结构[108],HTS-2系统采用人工神经网络识别技术[108],iS-2000系统是树分类器和自学习分类器相结合的识别技术。以上分类器设计方法均采用缺陷的几何和光学统计参量作为模式特征矢量,分类器的识别精度和可辨识的缺陷类别数量完全取决于统计参量集的复杂程度,从而导致识别算法计算工作量巨大,并给分类器的结构设计工作增加了相当大的困难。

5.图像识别

图像识别的主要任务是对预处理后的图像进行图像分割和特征提取,从而对目标物体的归属做出判决,属于人工智能和模式识别的范畴。人工智能与模式识别主要研究如何用计算机实现人脑的功能,常见的方法有模板匹配、统计模式识别[109]、句法结构模式识别[110][111]和神经网络模式识别。人工神经网络由大量处理单元互连组成,是在现代神经科学的研究基础上提出的,主要模拟人脑神经系统的工作特点,具有自适应学习、自组织、容错力强等优点。一些较好的神经元网络模式是向后传播网络、高阶网络、时延和周期性网络。人工神经网络方法的引入极大地促进了模式识别和计算机视觉的发展。其主要的模型和学习算法有前向网络模型、分层网络模型、Hopfield模型[112~114]、竞争学习、波耳兹曼机及运动控制的学习模型等。此外还有基于遗传算法的神经网络模型、基于混沌理论的神经网络模型和核匹配追踪算法[115~118]