首页> 中国专利> 用于高精度机器视觉测量的测量被遮蔽特征的方法

用于高精度机器视觉测量的测量被遮蔽特征的方法

摘要

一种在机器视觉测量中测量被遮蔽特征的方法。所述方法允许对被无关对象(例如平板显示屏掩模的覆盖栅格)部分遮蔽的高精度测量。该方法首先粗略定位待测特征的边缘点。在一个实施例中,通过使用形态滤波器删除无关对象(例如遮蔽栅格),然后在滤波后的图像上进行边缘检测,粗略边缘定位操作被执行。一旦粗略边缘位置被确定,则该方法回到原始的未经改变的图像,并且对于每个粗略定位的边缘点,在原始的未经改变的图像中的该点的近邻中进行边缘检查。然后这些细化后的边缘点位置被用于拟合高度精密的测量特征。

著录项

  • 公开/公告号CN1904545A

    专利类型发明专利

  • 公开/公告日2007-01-31

    原文格式PDF

  • 申请/专利权人 株式会社米姿托约;

    申请/专利号CN200510087674.0

  • 发明设计人 安娜·泰萨多;

    申请日2005-07-29

  • 分类号

  • 代理机构中国国际贸易促进委员会专利商标事务所;

  • 代理人马浩

  • 地址 日本神奈川

  • 入库时间 2023-12-17 18:12:30

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2011-04-13

    授权

    授权

  • 2007-08-15

    实质审查的生效

    实质审查的生效

  • 2007-01-31

    公开

    公开

说明书

技术领域

本发明一般地涉及机器视觉检查系统,尤其涉及一种测量被遮蔽特征的方法。

背景技术

精密机器视觉检查系统可用于获得所检查的对象的精确尺寸测量以及检查各种其他对象特性。这种系统可包括计算机、用户接口、照明系统、照相机和光学系统以及精密台,该精密台可在多个方向上移动以允许操作者将照相机定位为对工件的各种特征成像。用户接口,除了其他以外,一般包括可放置在检查图像上的各种视频工具。通过这种方式,机器视觉检查系统的用户可在拥有很少或者没有图像处理知识的同时,定位和操作视频工具以执行对各种控制和检查操作有用的图像处理操作。属于通用“离线”精密视觉系统类型的、具有这种特征的一种典型的现有技术系统,是商业上可获得的QUICK VISIONTM系列视觉检查机和可从位于Aurora,IL的Mitutoyo美国公司(MAC)获得的QVPAKTM软件。QUICK VISIONTM系列视觉检查机以及QVPAKTM软件的特征和操作,包括用户接口和各种视频工具,一般在诸如2003年1月发表的QVPAK 3D CNC视觉测量机用户指南和1996年9月发表的QVPAK 3D CNC视觉测量机操作指南中描述,这里通过引用将每个指南都全部包含进来。正如像QV-302 Pro模型所例示的,此产品使用显微镜型光学系统来提供工件的各种放大倍率的图像,并且包括所有上述特征。

这种通用“离线”精密视觉系统的特征在于其多功能性,并且它们向用户或自动程序提供迅速更改其配置和成像参数的能力,以便在各种类型的对象或检查工件上或者单个工件的不同方面上执行很多种检查任务。

通用精密机器视觉检查系统,例如QUICK VISIONTM系统,一般也是可编程并且可操作的,以提供自动视觉检查。一般希望这种系统包括简化这种系统的编程和操作的特征和工具,以使得操作和编程不难由“非专业”操作者执行。

自动视频检查测量仪器一般具有编程能力,这种能力允许对于每个特定工件配置,自动检查事件序列由用户定义。编程能力还通常提供存储和/或输出各种检查操作的结果的能力。这种编程或者可以按预有准备的方式实现,例如基于文本的编程,或者可通过记录模式来实现,这种记录模式通过存储对应于用户执行的检查操作序列的机器控制指令序列来逐渐“学习”检查事件序列来实现,或者可通过两种方法的组合来实现。这种记录模式通常被称为“学习模式”、“培训模式”或“教授模式”。

在这些技术中,机器控制指令一般是作为部分程序来存储的,这种部分程序对于对特定工件配置是特定的。用操作“运行模式”期间自动执行预定的检查操作序列的指令来产生部分程序的能力提供了几个好处,包括增强的检查可重复性,以及在多个兼容的机器视觉检查系统上和/或在多个时刻自动执行相同的部分程序的能力。

在机器视觉系统中,有时出现“遮蔽”型问题,即前景对象干扰背景对象的查看或检查。遮蔽问题一般还未被用于工件的检查和测量的通用机器视觉系统针对解决。以前没有容易编程的选择。一般地,用户必须用人为判断来仔细确定工具的尺寸以及放置工具,以避免遮蔽对象和/或阴影。在这种情况下,当检查具有像边缘特征这样的紧靠待查特征的前景和背景特征的图像时,各种工件之间的构造的最细微的变化或者照明和阴影,将导致被仔细定位和训练的工具出现故障或提供错误的结果。

可选择地,各种定制设计的区域或边界“生长”和“连接”过程已被用于“重建”背景对象特征。但是,这种方法实现起来较为耗时,并且需要相当多的知识。此外,这种方法实际上产生人造特征,而不会实际增加图像中可获得的“真实”信息。因此,这种方法引入了特定检查操作可能主要根据人造特征、而不是已知为真实和有效的原图像部分来返回结果的危险。

还可选择的是,各种定制设计的图像滤波过程已被专家设计来去除不需要的被遮蔽的图像特征。但是,这种滤波过程也滤掉了所需的图像特征,这在某种程序上改变了它的特性。在许多情况下这是不合需要的,尤其是对于用于检查工件的各种精密测量操作来说。例如,用于去除不需要的图像特征的某些方法应用形态滤波器,例如关闭和开放,来“删除”不需要的图像特征,然后用标准边缘检查工具在滤波后的图像上测量所需的特征。关闭和开放滤波器对于去除不需要的图像特征是有效的,但是关闭和开放滤波器也修改了边缘的位置。因此检测到的边缘点缺乏所需的精确度。所有前述方法都为质量控制和检查操作提供了拙劣基础,尤其是在用于为相对不熟练的操作者提供可靠操作和相对简单的编程环境的通用机器视觉检查系统中。

本发明针对一种克服上述和其他缺点的系统和方法。更具体地,本发明针对一种测量被遮蔽特征的方法。

发明内容

本发明针对一种用于高精度机器视觉测量的测量被遮蔽特征的方法。根据本发明的一方面内容,该方法首先粗略定位一个待测特征的边缘点。在一个实施例中,通过使用形态滤波器从原图像中删除无关对象(例如遮蔽栅格),然后在滤波后的图像上进行边缘检测,从而粗略边缘定位操作被执行。一旦在滤波后的图像中大致边缘位置被确定,则该方法回到原始的未经改变的图像,并且对于每个大致定位的边缘点在原始的未经改变的图像中的相同点或全等点的附近进行边缘检查。原始图像中的这些细化后的边缘点位置是可能存在的最逼真和精确的点测量,并且被用于拟合高度精密的测量和检查的特征。此方法的优点包括,它较快,对于滤波器选择相对不敏感,与使用滤波后的图像的测量相比更精确,并且对用户更友好,因为它可操作并且鲁棒,使用与先前已知的系统中所利用的那些相同的用户参数和/或输入。

根据本发明的另一方面,一种学习/训练/教授模式被利用(这里学习模式、训练或培训模式和教授模式的说法可互换使用)。在一个实施例中,学习/训练/教授模式以图像采集以及使用与已知系统的那些类似的机器视觉系统控制和图像处理工具开始。例如,通过在要定位和/或检查的工件特征周围定位一个框工具或其他边缘检测工具,用户可定义感兴趣的区域。但是,对于在无关特征避免模式中操作的边缘工具,形态滤波器的参数,例如其形状、大小和它被反复应用(以提供滤波后的图像)的次数,是通过默认、自动分析或用户输入设置的。然后该滤波器被应用到输入图像,至少应用到感兴趣的区域中,以获得滤波后的图像。然后例如通过利用用于检测边缘点的工具中指定的一条扫描线(或几条扫描线),在滤波后的图像上的ROI中“初步”边缘检测被执行。然后诸如形态滤波器的参数和检测到的边缘点(或者在几条扫描线的情况下几个边缘点)的位置这样的各种参数被保存。然后根据先前检测到的边缘点的位置,边缘检测工具的操作被稍加修改。然后对于每个检测到的边缘点,一条新的扫描线被确定,这条新的扫描线与原扫描线遵循相同的方向和扫描线放置,但是其中心大致在检测到的边缘点的位置。如果扫描线的长度先前被设置为大于工具的正确操作所需的值,那么此时由于已经知道边缘点将会大致在扫描线的中心处的像素处被找到,因此如果需要的话扫描线长度也可被缩短。使用较短的扫描线的目标是通过把候选边缘位置缩小到仅为原输入图像中大致已知的边缘位置周围的小片邻近像素,来提供一种排除无关特征或边缘的手段。虽然并非严格必要,但在某些情况下,此操作可简化以下操作和/或增大边缘检测可靠性。如果边缘检测成功,则得到的描述原图像中特定边缘的特征的边缘检测参数被保存,以管理边缘检测工具其后用于检查类似工件上的相应边缘的自动操作。虽然并非严格必要,但是描述滤波后的图像中的边缘的类似参数也可被保存,以管理边缘检测工具其后用于滤波后的图像的自动操作。在某些情况下,在后来的自动操作期间,此操作可加速、简化边缘检测和/或增大边缘检测的可靠性。

根据本发明的另一方面内容,在学习/训练/教授模式被执行之后,运行模式(一般为高速自动模式)被利用。在一个实施例中,运行模式从图像采集和编程的工具和参数的使用开始相应边缘的检查。教授模式中定义和使用的滤波器被应用到采集到的图像以获得滤波后的图像。然后一般通过使用学习/训练/教授模式期间学习到的用于滤波后的图像的边缘检测参数,在滤波后的图像上进行边缘检测,边缘点被检测。对于每个检测到的边缘点,与学习/训练/教授模式中的操作类似,一条修改后的扫描线被定义,这条扫描线沿着与原扫描线相同的方向和扫描线放置,但其中心为先前确定的边缘点,并且一般较短。然后通过利用新扫描线和学习/训练/教授模式期间学习到的用于该边缘的边缘检测参数,在原输入图像上进行边缘检测。然后原图像中检测到的边缘点的位置被用于分析和/或检查相应的被遮蔽特征。

将要意识到本发明的方法提供了由用户进行的简单操作,因为如果有定制操作的话,那么在很少定制操作的情况下,标准化类型的视频工具就可被利用。换句话说,用户不需要利用用于实现定制操作的脚本语言来避免遮蔽特征。相反,系统允许使用即使不熟练用户也能在最少的培训后使用的预编程的图标等。还应该理解,某些现有机器视觉检查系统可采用根据本发明的方法的各种实施例,只要对这种现有机器进行最少或无“改进”修改。在各种典型实施例中,只有根据本发明的原理的机器视觉检查软件方法的添加和修改是改进修改中所需的。

附图说明

通过结合附图参考以下详细说明,前述方面和本发明的许多附带优点将更容易被意识到,因为它们将被更好地理解。

图1是一个典型通用机器视觉和检查系统的图;

图2是一个典型工件和要检查的特征的图,该特征包括一个平板显示屏掩模的一个遮蔽栅格;

图3是图2的典型工件和特征的图,示出该特征的选中的边缘部分;

图4A是图3的典型工件和特征的一个放大的部分的图,进一步示出用于检测该特征的一个边缘点的一个线工具;

图4B是在一个形态滤波器被应用到工件图像后,图4A的放大的部分;

图5A是图4A的线工具上获得的图像强度值以及相关梯度的图;

图5B是图4B的线工具上获得的图像强度值以及相关梯度的图;

图6是形态滤波后图3的典型工件和特征以及叠加的用于边缘位置的GUI部件表示框、弧和指向工具的典型实施例的图;

图7是图6的典型工件和特征的一个放大的部分的图,它包括框工具;

图8是图7的放大的部分的图,进一步示出图7所示的框工具的操作;

图9是图解用于编程和运行通用精密机器视觉系统的部分程序的一个例程的一个典型实施例的流程图;

图10是图解用于检查带被遮蔽特征的工件的一个例程的一个典型实施例的流程图;

图11是一个GUI框工具部件和一个控件的一个典型实施例的图,该GUI框工具部件和控件可用于选择一个掩模模式和用于测量被遮蔽特征的操作;

图12是一个GUI工具条窗口的一个典型实施例的图,该窗口包括一个掩模模式按钮或用于测量被遮蔽特征的部件;

图13是图解用于执行学习/训练/教授模式的一个例程的一个典型实施例的流程图,其中一个掩模模式可被选择用于测量被遮蔽特征;

图14A-14C是图解用于在学习/训练/教授模式中执行操作以检测被遮蔽特征的一个特定例程的一个典型实施例的流程图;以及

图15A和15B是图解用于在运行模式中执行操作以检测被遮蔽特征的一个例程的一个典型实施例流程图。

具体实施方式

图1是根据本发明的一个通用可编程机器视觉检查系统10的一个典型实施例的框图。机器视觉检查系统10包括一个视觉测量机器200,该视觉测量机器被可操作地连接到与一个控制系统100交换数据和控制信号。控制系统100进一步被可操作地连接到与一个监视器111、一个打印机112、一个操纵杆113、一个键盘114和/或一个鼠标115中的一个或多个交换数据和控制信号。视觉测量机器200包括一个可移动工件台210和一个光学成像系统205,该光学成像系统可包括一个变焦透镜或多个可互换的透镜。变焦透镜或可互换的透镜一般为光学成像系统205提供的图像提供各种放大倍率。

操纵杆113一般可用于控制可移动工件台210在X和Y方向上的运动,其中X和Y方向一般平等于光学成像系统205的焦平面,以及可移动光学成像系统205在Z或聚焦方向上的运动方向分量。控制Z轴的偏转常常是操作杆113的手柄或把手的旋转偏转分量。除所示出的形式之外,操作杆113可以其他形式来提供,例如监视器111上的任何可视表示或窗口部件,这种可视表示或窗口部件是用来充当机器视觉检查系统10的“虚拟运动控制设备”的,并且可通过诸如鼠标115等的任何计算机输入设备来控制。所述控制系统100和视觉测量机器200在2004年3月25日提交的共同未决和公共转让的美国专利申请序列号No.10/808,948中更详细描述,这里通过引用将该申请全部包含进来。

图2是一个通用机器视觉检查系统的一个显示区域300的一部分的图,它示出一个典型工件和要检查的特征,该特征包括一个平板显示屏掩模的覆盖栅格。如图2所示,显示区域300是标准640×480照相机像素格式的,并且被平板显示屏掩模的一个重复栅格图案304所覆盖。栅格304下还有一个背景层302,该背景层可包括一个衬底、一个带图案的膜或其他表面,并且一般还包括不是测量过程的焦点的图像信息。工件上要检查的对象包括轨迹320和330,这将在以下更详细描述。正如也将在以下更详细描述的,栅格图案304使检查过程复杂化,因为栅格本身内在地具有强烈的交错的边缘特征,这使得轨迹320和330的边缘部分的确定和估值复杂化。

图3是一个显示区域300A的图,示出了图2的典型工件和特征,说明了特征的选中的边缘部分。如图3所示,为了说明,显示区域300A中的轨迹320和330被人为加亮,以便更好地强调轨迹320和330及它们的边缘。背景层302通过栅格304的开放部分可见。将要意识到虽然这里讨论了栅格类型的对象304,但是本发明的方法也可应用到任何类型的其它前景或背景对象。一个栅格部分304A被显示为位于背景层302的一部分之上,而另一个栅格部分304A被显示为位于轨迹320的一部分之上。一系列大椭圆形340被显示为一般地环绕轨道320和330的边缘部分。大椭圆形340包括较小的圆圈342,这些较小的圆圈强调轨迹320和330的边缘部分中其边缘透过遮蔽栅格304实际可见的部分。一个圆圈350也被显示为环绕轨迹330的圆形末端。圆圈350包括较小的圆圈352,这些较小的圆圈352环绕和强调轨迹330的边缘部分中边缘透过遮蔽栅格304实际可见的部分,并且可用于诸如确定边缘位置的操作(例如作为对弧半径或轨迹330的圆形末端部分的直径的确定的一部分)。

在一个实施例中,轨迹320任何一侧的两个大椭圆形340中的图像信息可用于确定轨迹320的边缘之间的间隔(即宽度)的操作。较小的圆圈342示出执行此过程的有效数据的典型区域。将要理解虽然较小的圆圈示出可利用的有效数据区域,但是其他有效数据区域也可能存在于大椭圆形340内。正如下文将更详细讨论的那样,常常不希望试图重建轨迹的不可见部分的位置,相反,最好从可得到的有效数据区域中获得精确测量。换句话说,对于测量操作,不希望试图重建整个对象的可视表示,因为对任何缺少的部分的外推在某些情况下可能包括关于对象边缘的某些误差。

图4A是一个显示区域300C的图,它示出图3的典型工件和特征的一个放大的部分,并且进一步图示一个线工具,该线工具可直接用于确定工件图像中的边缘点的位置,或者可成为一个框型边缘工具的操作基础,正如下文进一步描述的那样。图4B是在一个形态滤波器被应用到工件图像以后,图4A的放大的部分的图。如图4B所示,在典型区域300C’中,栅格304已被形态滤波器有效地去除,正如以下将更详细描述的那样。在各种实施例中,显示区域300C’可以被显示给用户,也可以不被显示给用户。在任何情况下,显示区域300C’的图与图14A的图300C一起,对于图解本发明的方法的不同方面都是有用的。

在视觉系统的操作的一种手动测量模式或训练模式期间,图4A中所示的未经更改的工件通常将被显示给用户。在图300C中,带一个选择器612的一个“遮蔽特征避免”线工具610被显示为位于一个有效边缘部分650之上,该有效边缘部分位于轨迹330的左边缘处。在操作中,用户选择线工具610,并且将它拖动过显示屏,以便将选择器612放置在离原始的未经更改的图像的一个有效边缘部分650处的轨迹330的期望边缘尽可能近的位置。然后下文更详细描述的一个形态滤波器被手动、半自动或自动定义,并被应用以去除栅格模式304,并且产生图4B所示的滤波后的图像。

正如图4B所例示的那样,其中在图4B中线工具610和选择器612被显示在图4A的全等位置(即在图4A所示的具有相同图像坐标的位置),希望形态滤波器被确定或选择,以使得由于滤波引起的所需的边缘的位移限于至多几个像素。例如,在各种实施例中,使用已知的滤波技术,预期到由于滤波引起的边缘位移在4-5像素或更少的数量级是合理的。滤波后的图像中的边缘位置的位移取决于几个因素,例如:滤波器中采用的掩模大小、滤波器相对于待测边缘的方向等。当待测边缘相对于滤波器被旋转并且在滤波器中我们使用一个3×3掩模时,位移将在4或5个像素或更少的数量级上,这对于许多应用来说是足够好的。在图4A和4B中所示的情况下,一个3×3掩模被使用,所需的边缘具有与滤波器掩模类似的方向,即它们具有几乎平行的边界,在此例中产生小于1像素的边缘位移。特别地,一个用掩模区域中的最大像素强度替代3×3掩模区域中每个像素的扩张操作被反复多次应用到图4A的图像,反复次数足以去除栅格304。一般地,充足的反复次数取决于遮蔽对象特征的最大尺寸,例如栅格304的栅条沿滤波器方向的尺寸。在图4A和4B所示的示例中,栅条为10-15像素宽。但是由于其方向,其沿简单3×3滤波器掩模方向的最大尺寸比其标称宽度大得多。因此,反复27次的3×3滤波器被应用到图4A的图像以去除栅格304。不论反复次数是多少,随后反复相同次数的侵蚀操作被应用,以便将滤波后的图像中的边缘大致恢复到其原位置,其中侵蚀操作用掩模区域中的最小像素强度替代3×3掩模区域中的每个像素。当然,如果遮蔽特征普遍比要检查的被遮蔽特征更亮,即具有更高的图像强度。则上述扩张和侵蚀操作将被以相反的顺序来执行,以去除较亮的遮蔽特征。

滤波操作之后,线工具610可按其普通操作模式在图4B所示的滤波后的图像上操作,以粗略,即大致定位电路轨迹330的所需边缘。此时所需边缘定位只是近似的,因为正如先前所注意到的那样,滤波过程往往更改电路轨迹320和330的边缘位置,更改的程度相对于精密测量操作来说是相当大的。从而,根据本发明的方法的下一步骤,一旦粗略边缘位置被确定,方法就返回图4A所示的原始的未经更改的图像,并且对于粗略的边缘点,调整边缘工具610的操作参数,以有效地将选择器重定位在所确定的“滤波后”的边缘点的位置处,并且有效地缩短线工具610的扫描线的长度,以使得边缘检测限于粗略定位的边缘点的近邻。否则,对于此部分过程,线工具610根据其普通边缘检测过程在图4A所示的原始图像上操作,正如下文更详细描述的那样。上述操作集合的好处是参考图5A和5B来描述的。

在操作中,一般线工具610随后用各种操作沿着其长度扫描数据点(例如像素)。正如以下将参考图14-15更详细描述的那样,扫描数据点以确定边缘位置在本发明的方法中既用于在图像的滤波后的版本上执行的粗略边缘定位,随后又用在原始图像数据被估值以便对边缘点更精确定位时。正如先前所略述的,用于原始图像数据中的更精密的边缘定位的扫描线的长度可被限制,用于在粗略定位的边缘点的近邻中的边缘检测,从而最终所用的扫描线一般被处理为短于那些用于工具普通操作以及滤波后的图像中的粗略边缘定位的长度。

图5A是显示在图4A中的线工具610的长度获得的图像强度(灰度)值725的曲线图700的图。图5B是显示图4B中的线工具610上获得的滤波后的图像强度(灰度)值725’的曲线图700’的图。分别从强度值725和725’导出的梯度值726和726’也分别在图5A和5B中示出供参考。如图5B所示,线工具610上数据点沿水平轴被称为从0-50的像素点。从数据点0开始,图像强度值最初表明相对较暗的区域,直到大约数据点23,其后是相对较亮的区域,真到数据点50。

为了确定图像中的边缘的位置,许多算法通过定位强度数据内的最大梯度来查找边缘位置。如果沿强度数据有多个梯度(例如,正如当栅格304尚未被从显示区域中去除时常发生的那样,正如图5A中所示的那样,以及正如由于在本发明的方法的较后部分中执行的更精密的边缘定位中执行的估值而常发生的那样),则选择器612的位置可帮助算法确定哪个梯度对应于所需的边缘。一个指示(例如工具610的取向或方向)也可被提供来帮助算法确定其是否应该寻找上升或下降缘。在图5B中,最大梯度判据清楚指示边缘点大致位于数据点23处。应该意识到与图4A中的栅格边缘和其他阴影相关的图5A所示的图像强度变化(边缘)的复杂集合,不出现在图5B所示的滤波后的图像强度值中。从而,滤波后的图像中的所需边缘的检测即简单又可靠。通过参考线工具610的方向,也指示了一个上升缘,正如其箭头所指示的那样。

现在返回图5A,允许滤波后的图像中正负4-5像素的潜在边缘位移,并且假定希望在边缘位置的每一侧包括约4-5个像素,以便使用最大梯度技术用良好的精确度可靠地标识边缘位置,我们可将图4A中的“扫描线”的长度限制为23号像素处的确定的“滤波后”的边缘位置附近沿扫描线大约正负10像素。从而,只有对应于大约13-33号像素的数据需要在原始图像中被采集和分析,并且线工具610的参数被相应修改以控制其操作。似乎在13-33号像素之间标识了两个潜在的上升缘,正如像素13处和像素23处的最大梯度数据所指示的那样。但是,由于我们可假定在滤波后和原始图像之间边缘位置不应该变化多于正负4-5像素,因此我们可排除像素13处的边缘,并且确定边缘位置靠近像素23。

应该意识到,通过查找内插的最大梯度位置,使用已知曲线拟合技术、或者在环绕最大梯度值的梯度曲线下标识区域质心的已知质心查找技术等,边缘位置(最大梯度位置)实际上是按亚像素精度级别来查找的。此外,在训练模式中,靠近像素23的各种特性被确定和存储,以促进随后在运行模式中对类似部分上的所需边缘的更可靠的选择和确定。这种特性可包括边缘周围的总谷-峰强度变化,例如局部最小像素20和局部最大像素26之间(或其某个比例);边缘位置处的标称强度值;和/或这两个值之间的比率,等等。

图6是一个显示区域300D的图,它显示了形态滤波后图3的要检查的典型工件和各种特征,以及GUI部件表示框、弧和指向工具的典型实施例,其用于以与图4B所示的类似的方式叠加在滤波后的图像上的边缘定位,这些实施例都可用于根据本发明的系统和方法的各种实施例中。如图6所示,显示区域300D包括框工具部件810A和810B、一个线工具部件820和一个弧工具部件830。在各种典型实施例中,这些视频工具810-830被用户放置在原始图像上,以预定的默认设置用于滤波后的图像上,以及最后用于未滤波的原始图像上。在各种典型实施例中,这些设置被用户调整或重新定义,但是不必为了使用工具而被重新定义。在各种典型实施例中,工具是以其他预定的可选择设置来采用的。边缘检测工具GUI部件的各种操作特性一般在QVPAK 3D CNC视觉测量机器用户指南和QVPAK 3D CNC视觉测量机器操作指南中描述,先前通过引用将这些指南包含了进来。

在各种典型实施例中,框工具部件810A和810B被显示为框,并且侧边带箭头,中间有一个选择器。在各种典型实施例中,框工具部件810A和810B被操作者确定大小、定位和旋转,直到该框指示或定义感兴趣的区域,箭头指示要确定和检查的边缘。在各种典型实施例中,框工具部件810A和810B一般沿感兴趣的边缘使用一个或多个常规边缘梯度,并且边缘是根据手动或训练操作模式期间选择器的位置以及沿各种扫描线的边缘梯度的局部大小来确定的,如上所述。在这些各种典型实施例中,箭头方向定义了将与边缘梯度相关联的参考方向或极性。应该意识到由框工具部件810A和810B的边界指示的感兴趣的区域的范围完全可在需要时调整和旋转。线工具部件820正如先前对图4A和4B的线工具610所描述的那样操作,而弧工具部件830确定定义图像特征的曲线(例如半径)的边缘点。

在根据本发明的避免无关和遮蔽特征的操作的“掩模模式”中,弧工具部件830和框工具部件810A和810B都包括与线工具部件610(或820)类似的操作,因为在框工具的整个感兴趣区域中使用的所需的边缘特性是根据一条初始扫描线来确定的,该初始扫描线与选择器的位置符合,正如对于线工具610那样,如上所述。从而,在学习/训练/教授模式中,用户必须沿着一个有效边缘部分定位选择器,该有效边缘部分例如是先前参考图4A所描述的有效边缘部分650。于是正如以下将参考图8更详细描述的那样,在一种手动测量模式,或运行模式中,框工具部件810A和810B和弧工具部件830的操作由多条扫描线的使用组成,好像每条扫描线是一个线工具(例如线工具610)的实例一样,并且所有扫描线的可操作边缘屏蔽参数(除最大梯度标准以外)是学习/训练/教授模式期间沿着对应于选择器的单条扫描线确定的那些。

图7是一个显示区域300E的图,其显示了图6的显示区域的一个放大的部分,进一步示出框工具部件810A和810B。如图7所示,框工具部件810A和810B包括对应于线工具610的取向箭头的取向箭头912A和912B。选择器914A和914B按与线工具610的选择器部分612类似的方式操作,并且分别管理各自的一条初始扫描线的操作,该初始扫描线是用于确定各框工具的整个感兴趣的区域中使用的各种边缘参数的,如上所述。或者,框工具部件可包括允许用户“请求”一个或多个附加选择器并且将其放置在沿有效边缘部分的附加位置处的特征。然后根据与多个选择器相关的多条扫描线确定的边缘参数可被求平均,或者适当地组合。这种求平均将使得学习到的边缘参数不那么易受沿感兴趣的区域的边缘的潜在的局部变化的影响。从而这种框工具的操作很可能更鲁棒。

图8是图7的显示区域300E的图,进一步示出使用多条扫描线但有效避免或掩蔽遮蔽栅格304的效果的框工具810A和810B的操作。对于这种扫描线的各种考虑可包括间隔、次要扫描线资格(例如一条扫描线中的连续像素的数目)以及其他因素。在一个实施例中,扫描线的间隔既可以作为可定制的默认值被编程,或者也可在每个实例中确定,在某些情况下是用诸如用户利用一个子菜单来更改间隔这样的机制来确定的。

在显示区域300E中,因为有效数据区域如此之少,因此希望有相对靠近分布(例如每一或二行像素)的扫描线。根据本发明标识有效边缘的位置的扫描线是带箭头的那些。根据本发明不标识有效边缘的扫描线是带“X’s”的那些。如前所述,除了充分匹配滤波后的图像中的边缘位置和符合最大梯度标准等以外,沿任何扫描线的任何候选边缘必须也匹配在训练或学习模式期间沿初始扫描线对于已知有效边缘确定的边缘参数,该初始扫描线与训练或学习模式时的选择器一致。这有效地消除了任何与遮蔽特征、阴影等相关的边缘。

图9是示出一个例程1100的一个典型实施例的流程图,该例程是用于创建和使用一个部分程序来检查具有感兴趣的区域的工件的。在块1110处,一个部分程序被创建,该部分程序可用于检查具有感兴趣的区域的那部分工件。在块1120处,创建出的部分程序被运行。在块1130处,与第一工件类似的多个工件被用部分程序检查。

图10是示出根据本发明的一个例程1200的一个典型实施例的流程图,该例程是用于检查被一个无关特征遮蔽的一个工件特征的。在块1210处,一幅图像被采集,该图像既包括要检查的被遮蔽的工件特征,也包括无关的遮蔽特征(例如栅格)。在块1220处,滤波器(例如形态滤波器)被利用来删除无关特征(例如栅格),然后在滤波后的图像上边缘检查被执行,以便粗略定位工件特征的边缘点。在一个实施例中,所使用的形态滤波器可以是带一个3×3方形掩模或一个5×5圆盘型掩模的关闭或开放。通过使用这种类型的滤波器配置,该方法可以以相对迅速的方式执行。在块1230处,对于每个粗略定位的边缘点,通过返回原始的未滤波的图像并且在粗略定位的边缘点的近邻中进行边缘检测,来提高边缘位置的精确度。在块1240处,细化的边缘点被利用来拟合、检查和/或定位工件特征。正如下文将更详细讨论的那样,将要意识到图10的例程1200既可用于训练模式中也可用于运行模式中。

应该注意,与某些已知的系统形比,本发明更易使用,在所述已知的系统中,用户需要预先在用户所识别的被遮蔽特征边缘点上选择性地仔细放置多个点工具等。应该意识到根据本发明,在各种实施例中,一个一般框工具和/或其他这种高效的多点工具,一般可被放置在一个包括被遮蔽特征(例如工件特征)和遮蔽特征(例如栅格)的区域中。从而允许用户以其正常方式采用这种更高效的多点工具,不必特别考虑可能出现的遮蔽特征。

图11示出在机器操作的一种训练模式或手动模式中,一个框工具GUI部件1510的一个典型实施例,以及一个控制部件1520的一个典型实施例,该控制部件可用于选择一种掩模模式,该掩模模式根据本发明在与边缘检测相关的操作期间有效避免遮蔽特征边缘。正如下文将更详细讨论的那样,“掩模模式”可与本发明的方法相关,因为当掩模模式被选中时,利用上述各种操作测量被遮蔽特征的方法被利用。在各种典型实施例中,控制部件1520包括一个开按钮1522和一个关按钮1524。当开按钮1522被用鼠标点击或用其他方式促动时,它启动自动操作,使得如图10的例程1200所示的那样的一种用于测量被遮蔽特征的方法被执行。其他工具可被提供类似的控制部件1520。当然控制部件1520可用许多其他形式来表现,可被划分,或者被包括在更复杂的多功能部件中,或者直接包括在一个视频工具表示中,等等。部件1520的本质方面是它可用于激活或停止根据本发明的一种用于测量被遮蔽特征的操作模式,如例程1200所示的那样。

在各种典型实施例中,可提供一种与被遮蔽特征的测量有关的示例模式。在这种实施例中,控制部件1520可用鼠标来点击,或者用其他方式来促动,以启动自动操作,这些自动操作提供一种学习或训练模式示例,该示例显示用于估值的滤波后的图像,和/或预览或模仿可比的运行模式操作的结果,等等,例如下文将更详细描述的那样。这种示例可被机器操作者评估,以确认或拒绝其功效和有关编程参数或指令。

在各种其他典型实施例中,在这样一个操作内,其中用于测量被遮蔽特征的模式目前已经在操作中或延续在操作中,控制部件1520可用鼠标来点击,或者用其他方式来促动,例如接受对被遮蔽特征操作的完全定义或训练的测量的设置,或者回避训练模式示例,或者接受由作为训练模式示例的结果提供的估值图像所指示结果,以便继续前进到其他训练模式操作。换句话说,控制部件1520的操作可取决于是否有更高级别或背景命令在起作用,该更高级别或背景命令已经根据本发明设置所述机器在测量被遮蔽特征的模式。例如,当无关特征覆盖包括要检查的多个特征或区域(例如重复性的栅格模式304等)的图像的大部分或全部时,这种模式可能是适当的。应该意识到,在各种实施例中,先前描述的工具和部件的各种方面可以单独实现或按各种组合实现。此外,应该意识到,在各种典型实施例中,其他形式的各种GUI部件和控制是显而易见的。因此,前述实施例只是用来例示的,而不是限制的。

图12示出一个图形用户界面工具条窗口1600的一个典型实施例,该窗口包括一个掩模模式选择器1610,该选择器可用于选择一种根据本发明用于测量被遮蔽特征的模式。工具条窗口1600的其余部分与以上讨论的QVPAKTM软件中提供的类似。在一个实施例中,用于选择测量被遮蔽特征的模式的掩模模式选择器1610可被拖到一幅图像上,用于一种全局掩模模式,或拖到一个个别工具上,用于一种特定工具掩模模式。在一个实施例中,这些工具可具有反映它们何时处于掩模模式中的窗口部件。在第二实施例中,掩模模式选择器1610可保持在工具条1600上,并且提供一个开关功能。当掩模模式选择器1610被打开时,一个视频工具被拖下工具条1600并且处于一种掩模模式中,并且可被提供一个指示其处于掩模模式的可视特征。在一个实施例中,用户界面能够支持一种测量被遮蔽特征模式的半自动方法,在这种情况下,当掩模模式被激活时,工具可询问用户,以选择半自动技术,或者显示几个选项的结果的示例,供用户从中选择。

图13是示出一个例程1700的一个典型实施例的流程图,该例程参考一个掩模模式部件执行学习模式操作。在块1710处,进入学习/训练/教授模式。在块1712处,提供一个或多个可用于在掩模模式期间测量被遮蔽特征的操作。在块1714处,提供一个掩模模式激活/停止部件(如图11和12中所述),该部件可用于在感兴趣的区域中设置所述模式。

在块1720处,图像被采集。在块1722处,工具被设置用于训练。在判决块1724处,确定掩模模式是否已被选择。如果掩模模式尚未被选择,则例程继续到块1740,在这里在无被遮蔽特征测量方法的情况下工具被训练。如果掩模模式已被选择,则例程继续到块1730,在这里一个被遮蔽特征学习/训练/教授模式被执行,正如下文将参考图14更详细描述的那样。

从块1730或1740处,例程继续到块1742,在这里被训练的工具操作的结果被显示。在判决块1744处,确定被训练的工具的当前结果是否可接受(例如预期的边缘是否被找到,其位置是否大致像预期的那样,等等)。如果当前结果不可接受,则例程返回块1722。如果当前结果可接受,则例程继续到判决块1746。

在判决块1746处,确定是否更多训练操作将被执行。如果附加训练操作将要被执行,则例程返回块1720。如果附加训练操作不会被执行,则例程继续到块1748,在这里部分程序被保存和/或学习模式被退出。

图14A-14C是示出例程2000的一个典型实施例的流程图,该例程在图14A-14C中分别被标示为部分2000A-2000C,用于在学习/训练/教授模式中执行被遮蔽特征的确定。在一个实施例中,例程2000在图13的块1730处被执行。如图14A所示,在块2014处,在图像IMG0和被拖入确定感兴趣的区域(ROI)的GUI中工具内,用户选择待测特征的边界中的一个点P0。在块2016处,扫描线SL0被用点P0和感兴趣的区域确定。扫描线SL0的长度由变量SL0_LENGTH表示。

在块2018处,用户选择供形态滤波器F0所用的参数,包括关闭和开放和掩模类型和尺寸。一般地,“关闭”被用于暗背景上的亮特征,而“开放”被用于亮背景上的暗特征。在一个实施例中,掩模类型可被选择为3×3方形或5×5圆盘形。在判决块2020处,确定用户是否已经选择一个用于确定反复次数的自动选项。如果用户确实选择了自动选项,则例程继续到块2022,在这里用户输入栅格的尺寸D0,根据该尺寸反复次数N0被自动确定。如果用户未选择自动选项,则例程继续到块2024,在这里用户输入反复次数N0,以应用到滤波器F0。然后例程继续到点A,该点在图14B中被继续。

在图14B中,例程从点A继续到块2030,在这里,滤波器F0被反复N0次应用到感兴趣的区域中的图像IMG0。这产生了滤波后的图像IMG1。在块2032处,用滤波后的图像IMG1中的扫描线SL0执行边缘检测。在判决块2034处,确定一个边缘点是否被检测到。如果没有边缘点被检测到,则例程继续到块2036,在这里边缘检测过程被停止,并且例程继续到点C,该点返回到图14A中的块2014,在这里用户选择边界中的另一个点P0,以便尝试重试边缘检测过程。如果在判决块204处一个边缘点被检测到,则例程继续到块2038,在这里边缘检测参数EDP0被得到,包括TH、THR和THS,之后例程继续到点B,该点在图14C中被继续。对于边缘检测参数,对于边缘阈值,它可以是静态的(其中在运行时阈值不被更新)或者动态的(其中在运行时阈值被更新)。阈值TH是静态图像强度阈值,它用于边缘的第一本地化或屏蔽。阈值THS是边缘强度阈值,即边缘上图像强度的变化,它被用作边缘的进一步本地化或屏蔽。阈值THR是动态阈值,即基于TH和THS的比率,它可用于在运行时更新TH和THS阈值,以补偿图像中的整体强度变化,这种变化例如是由于照明或工件加工变化而引起的。

值得注意的是,块2032至2038的过程被应用到滤波后的图像,而不是原始输入图像。从而该方法可被可靠和迅速地执行。正如先前概述并且下文将更详细描述的,通过利用此方法来获得边缘点的粗略位置,然后在原始图像数据上只在边缘点已被粗略确定为存在的位置中执行更精确的边缘定位过程,本发明的方法可被迅速执行,并且具有高精确性和可靠性。

如图14C所示,例程从点B继续到块2050,在这里一条新的扫描线SL1被确定,该扫描线与原始扫描线SL0具有相同的方向和放置,但是更短。使用更短的扫描线的目标是分析潜在边缘点的较小的邻近区域。在一个特定实施例中,最初长度为21像素的一条短扫描线可被使用。在块2052处,利用扫描线SL1和原始图像IMG0,边缘检测被执行。在块2054处,确定一个边缘点是否被检测到。如果边缘点尚未被检测到,则例程继续到块2056,在这里边缘检测过程被停止,并且例程继续到点C,该点返回图14A的块2014,在这里用户可选择边界中的另一个点以重新开始边缘检测过程。如果在块2054处一个边缘点被检测到,则例程继续到块2058,在这里边缘检测参数EDP1被得到,包括TH、THR和THS。

将要理解块2050处确定的扫描线SL1的长度是关键的,因为它是确定潜在边缘点是被保留还是丢弃的过程的一部分。在一个实施例中,长度确定可以作为一个常数完成,或者初始常数长度可通过对扫描线的分析来修改。例如,如果它是一个上升缘,则扫描线应该具有暗像素,随后是亮像素。如果它不是,则不遵循此模式的像素应该被丢弃。在另一个实施例中,对于每个潜在边缘点的一个2维分析可被执行,以确定边缘点是被保留还是被丢弃。

图15A和15B是示出一个例程2100的一个典型实施例的流程图,该例程是用于执行一个被遮蔽特征运行模式的。如图15A所示,在块2110处,图像IMG0被读取/采集。在块2112处,工具在GUI中被拖动,感兴趣的区域ROI被确定,并且扫描线SLi被确定(i=1,n)。在块2114上,滤波器F0(该滤波器是在图14A的学习模式期间选择的)被应用到感兴趣的区域ROI上的输入图像IMG0,以便获得滤波后的图像IMG1。应该注意,滤波器F0及其参数,包括滤波器类型和反复次数,是在图14A和14B的学习模式期间确定的。在块2116处,在扫描线SLi上的滤波后的图像IMG1上,利用图14A和14B的学习模式期间确定的边缘检测参数EDP0,边缘检测被执行。在块2118处,边缘点EdgePtsk被检测(k=1,m,其中m≤n)。然后例程继续到点C,该点在图15B中被继续。

如图15B所示,例程从点C继续到块2130,在这里对于每个点EdgePtsk,一条扫描线SL’k被确定,其方向和取向与扫描线SLk相同,但是更短,并且其中心位于边缘点EdgePtsk处。从而,扫描线SL’k的长度一般小于扫描线SLk的长度。在块2132处,利用图14C的学习模式期间确定的边缘检测参数EDP1,边缘检测被应用在扫描线SL’k上的原始图像IMG0上。在块2134处,边缘点EdgePtskk被检测(kk=1,mn,其中mn<m)。在块2136处,边缘点EdgePtskk,被用于拟合待测特征(例如线、圆圈、弧等)。在块2138处,界外边缘点被去除。界外点去除过程的一个示例如下:

1.被检测的数据点被用于拟合特征(线、圆圈、...)

2.每个数据点相对于拟合的误差被计算。每个点的误差可定义为每个数据点和被拟合的特征之间的最小距离

3.最大误差被确定(max_error)

4.如果max_error>OUTLIER_THRESHOLD,则对应于max_error的点是一个界外点。此点被去除,并且在没有此点的情况下算法(步骤1至步骤4)再次开始。算法反复,直到再没有点被去除(即直到max_error小于OUTLIER_THRESHOLD)。

OUTLIER_THRESHOLD的值是很重要的,因为它代表了界外点去除强度。OUTLIER_THRESHOLD值越小,越多点可能被去除。有不同方法来确定OUTLIER_THRESHOLD。一种常见方式是确定所有数据点的误差的高斯分布特性(见以上步骤2),然后将分布的标准偏差乘以所需的数,并且将界外点限设置为在分布的平均加减此值处。一个常用值是2倍标准偏差,以使如果一个数据点的误差高于所有数据点中95.45%的误差,则它被视为界外点。

将要意识到,块2130处确定的扫描线的长度在各种实施例中是很重要的,因为它是限制潜在边缘点的过程的一部分。在一个实施例中,工具上的不同扫描线可被提供不同长度(某些扫描线将放置得离栅格较近,因此应该较短,以避免具有对应于栅格的边缘)。长度确定可作为一个常数完成,或者初始常数长度可通过对扫描线的分析来修改。例如,如果它是一个上升缘,则扫描线应该具有暗像素,其后是亮像素。如果它不是,则在扫描线末端不遵循此模式的像素应该被丢弃。在块2134处,在一个实施例中,几个标准可被利用来确定一个潜在边缘点是否将被保留。这些标准之一是使用边缘检测参数EDP1(一个边缘点不会被检测,如果它不满足EDP1的强度THS的话)。另一个可利用的标准是对扫描线的邻近像素或2维邻近区域的分析。在另一个实施例中,一个鲁棒性标准可被添加到工具中,以定义一个潜在边缘点作为一个好的边缘点被保留的“接受强度”。

将要意识到,本发明的方法提供了由用户进行的简单操作,因为标准化类型的视频工具可被利用,而不是要求定制的操作。换句话说,用户不需要利用用于实现定制的操作的脚本语言。相反,系统允许使用预编程的图标等,即使不熟练的用户也能在经过最小限度的训练的情况下使用这种预编程的图标。此外,正如上文所注意到的,感兴趣的区域能够包围被遮蔽的和遮蔽的特征。从而,用户不需要将个别点工具放置在所有所需的被遮蔽特征区域上。

应该意识到,某些现有的机器视觉检查系统可在对这种现有机器做出最小限度的修改或无“翻新”修改的情况下,采用根据本发明的系统和方法的各种实施例。在各种实施例中,只有增加机器视觉检查软件方法和/或根据本发明的原理的修改被包括在翻新修改中。

虽然已结合上述典型实施例描述了本发明,但是各种替换、修改、变化、改进和/或实质等价,不论是已知的还是目前未预料到的或者目前可能未预料到的,都可能变得对那些至少具有本领域普通技术的人员显而易见。因此,以上所阐述的本发明的典型实施例,是用来例示的,而不是限制的。可在不脱离本发明的精神和范围的情况下做出各种改变。因此,所提交的或者可能修改的权利要求书是用来包含所有已知的或后来开发的替换、修改、变化、改进和/或实质等价的。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号