专利名称:增强型边缘聚焦工具及利用该工具的聚焦方法
技术领域:
本发明一般涉及机器视觉检测系统,具体来说涉及在邻近倾斜表面的边缘聚焦机器视觉检测系统的方法。
背景技术:
精密机器视觉检测系统(或简称为“视觉系统”)可以被用来获得被检测对象的精密尺寸测量以及检测各种其它对象特性。此等系统可以包括计算机、照相机、光学系统和在多个方向上可移动以允许工件检测的精密工件台。可以表征为通用“离线”精密视觉系统的一个示例性现有技术系统是可商购获得的quick VISION 系列的基于PC的视觉系统和可商购自位于伊利诺伊州奥罗拉的美国三丰公司(MAC)的QVPAK 软件。例如,一般在2003年I月出版的QVPAK3D CNC视觉测量机用户指南和1996年9月出版的QVPAK3D CNC视觉测量机操作指南中描述QUICK VISION 系列的视觉系统和QVPAK 软件的特征和操作,这些指南中的每一个均以全文引用的方式并入本文。这种类型的系统能够使用显微镜类型的光学系统并且移动工件台以便以各种放大率提供小的或相对较大的工件的检测图像。通用精密机器视觉检测系统(例如,QUICKVIS10N 系统)也一般可编程以提供自动化视频检测。此等系统通常包括Gn特征和预定义的图像分析“视频工具”以使得“非专家”操作员可以执行操作和编程。例如,以全文引用的方式并入本文的美国专利号6,542,180教导使用自动化视频检测(包括使用各种视频工具)的视觉系统。已知使用自动聚焦方法和自动聚焦视频工具(简称为工具)以帮助聚焦机器视觉系统。例如,先前引用的QVPAK 软件包括例如自动聚焦视频工具的方法。自动聚焦在 Jan-Mark Geusebroek 和 Arnold Smeulders 合著的 “Robust Autofocusing inMicroscopy”一文中有过论述(该文载于ISIS技术报告丛书,第17卷,2000年11月),也在美国专利号5,790,710、共同转让的美国专利号7,030, 351和共同转让的美国核准前公开号20100158343中有所涉及,这些中的每一个均以全文引用的方式并入本文。在自动聚焦的一个已知方法中,照相机沿着Z轴移动穿过一系列的位置或成像高度,并且在每个位置捕获图像(被称为图像栈)。对于每个捕获的图像中的所需的感兴趣区域,聚焦度量(例如,对比度量)被计算并且与在捕获图像时照相机沿着Z轴的相应位置相关。可以实时地确定图像的聚焦度量,然后可以根据需要从系统内存丢弃图像。基于此数据的聚焦曲线,即,标绘作为Z高度的函数的对比度量值的曲线在最好的聚焦高度(简称为聚焦高度)呈现峰值。聚焦曲线可以拟合于数据以用比数据点的Z高度之间的间距更好的分辨率估算聚焦高度。用于各种已知自动聚焦工具的这种类型的自动聚焦不适用于聚焦于位于邻近倾斜表面特征的边缘,因为在图像栈的不同图像中斜面的不同部分焦聚和离焦,因此聚焦曲线具有更广泛的峰值或定义不清的峰值以使得在这些环境下自动聚焦的准确性和可重复性是有疑问的。各种方法已知用于聚焦于工件图像中的边缘特征。例如,先前引用的QVPAK 软件包括边缘聚焦工具,其寻找图像栈中最大化在工件边缘特征上的梯度的聚焦高度。然而,此边缘聚焦工具不适用于可靠地聚焦于邻近倾斜表面特征的边缘。如上所述,在图像栈的不同图像中斜面的不同部分焦聚和离焦。对于各种工件配置,这无法预测地影响各种图像中的梯度。此外,工件可能不包括超出邻近倾斜表面特征的边缘的任何材料,即,此边缘为工件的末端,或在此侧面上的工件表面可能超出实际的图像栈的范围以使得梯度可能具有无法预测的特性,此特性将导致边缘聚焦工具失效。因此,位于接近倾斜表面特征的边缘特征已经被证明难以已知的实施自动聚焦;因此,需要新的方法。本文中所用的术语“倾斜表面特征”指的是不与机器视觉检测系统的成像平面平行的表面。倾斜表面可以经常延伸超过机器视觉检测系统的聚焦深度。倾斜表面特征可以具有相对于成像平面倾斜的简单的平面形状或更复杂的弯曲形状。一种类型的倾斜表面特征可以通常被称为斜面。接近此特征边缘的聚焦操作经常不可靠并且可能容易失效,如上文概述。在近似平行于机器视觉系统的图像平面的平整表面上的自动聚焦操作倾向于提供单一不同的聚焦峰值。然而,当表面相对于图像平面(例如,沿着工件的削边)倾斜或弯曲时,可能提供不适用于可靠的聚焦操作的质量差的广泛聚焦曲线。另外,由于沿着邻近斜面的边缘反射的光照效果,故接近此边缘的常规的自动聚焦测量(例如,对比或梯度测量)可能无法预测地运行。需要一种用于在接近倾斜表面的边缘聚焦机器视觉检测系统的光学器件的改善的方法。
发明内容
提供此概要以用简化的形式介绍概念的选择,下文在具体实施方式
中进一步描述这些概念。此概要不意图识别所要求的主题的关键特征,也不意图用来帮助确定所要求的主题的范围。提供一种用于操作包括在机器视觉检测系统中的边缘聚焦工具以接近位于邻近倾斜表面特征的边缘聚焦机器视觉检测系统的光学器件的方法。在一些情况下,边缘可以是倾斜表面特征的边缘或边界。该方法包括在机器视觉检测系统的视场中定义感兴趣区域(R0I ),该ROI包括邻近倾斜表面特征的边缘;在包括边缘的Z范围上获取ROI的图像栈;基于为多个点确定最好的聚焦Z高度测量,为ROI中的多个点产生包括Z高度的点云;定义点云的最近的子集,该点云包括接近倾斜表面特征的点并且对应于倾斜表面特征的形状;定义点云的最近的子集的Z极值子集;以及在对应于Z极值子集的Z高度聚焦光学器件。在一些实施方案中,定义点云的最近的子集可以包括根据点云估算表面形状模型,表面形状模型对应于倾斜表面特征的形状;以及排除偏离表面形状模型超过关系参数的点云的点。在一些实施方案中,根据点云估算表面形状模型以及排除点云的点可以包括将RANSAC和LMS (最小中位数平方)算法中的一个应用于点云。应了解,任何其它稳健的孤立点检测和排除算法可以应用于点云。在一些实施方案中,边缘工具可以包括图形用户接口(GUI),该图形用户包括形状选择小部件,其中用户可以选择在边缘聚焦工具的操作期间根据点云估算哪种类型的表面形状模型。在一些实施方案中,表面形状模型可以包括以下形状中的一个:平面、圆锥体、圆柱体和球体。在一些实施方案中,用户在学习操作模式期间选择表面形状模型。在一些实施方案中,定义点云的最近的子集包括将表面拟合模型拟合于点云,表面拟合模型对应于倾斜表面特征的形状;以及排除偏离表面拟合模型超过最小表面形状参数的点云的点。在一些实施方案中,该方法可以进一步包括在机器视觉检测系统的用户接口中显示边缘聚焦工具的图形用户接口(⑶I),以及操作⑶I以选择ROI开始边缘聚焦工具的操作。在一些实施方案中,ROI可以包括在Z范围之外的工件的一部分。在一些实施方案中,点云的Z极值子集可以包括点云的最低的Z高度。在一些实施方案中,将光学器件聚集到对应于Z极值的Z高度可以包括移动机器视觉检测系统的工件台以使得工件处于此Z高度。在一些实施方案中,在对应于Z极值子集的Z高度聚焦光学器件可以包括在点的Z高度聚焦光学器件,其中Z高度为以下数中的一个:点云的Z极值子集的中位数、平均数和众数。在一些实施方案中,产生点云可以包括为ROI内的多个子ROI执行自动聚焦操作,每个子ROI包括ROI的像素的子集。提供一种用于操作边缘聚焦工具以接近邻近倾斜表面特征的边缘聚焦机器视觉检测系统的光学器件的方法,所述方法包括:在所述机器视觉检测系统的用户接口中显示所述边缘聚焦工具的图形用户接口即GUI ;操作所述GUI以在所述机器视觉检测系统的视场中选择感兴趣区域即ROI开始所述边缘聚焦工具的操作,所述ROI包括邻近所述倾斜表面特征的所述边缘;以及操作所述边缘聚焦工具以执行以下步骤:在包括所述边缘的Z范围上获取所述ROI的图像栈,所述ROI包括所述视场的部分,其中工件的部分在所述Z范围之外;基于为多个点确定最好的聚焦Z高度测量,为所述ROI中的所述多个点产生包括Z高度的点云;定义所述点云的最近的子集,所述点云包括接近所述倾斜表面特征的点并且对应于所述倾斜表面特征的形状;定义所述点云的所述最近的子集的Z极值子集;以及在对应于所述Z极值子集的Z高度聚焦所述光学器件。提供一种包括在机器视觉检测系统中的边缘聚焦工具,所述边缘聚焦工具包括接近邻近倾斜表面特征的边缘聚焦机器视觉检测系统的光学器件的操作,所述边缘聚焦工具包括第一操作模式,其中:所述第一操作模式包括:在所述机器视觉检测系统的视场中定义感兴趣区域即R0I,所述ROI包括邻近所述倾斜表面特征的所述边缘;在包括所述边缘的Z范围上获取所述ROI的图像栈;基于为多个点确定最好的聚焦Z高度测量,为所述ROI中的所述多个点产生包括Z高度的点云;定义所述点云的最近的子集,所述点云包括接近所述倾斜表面特征的点并且对应于所述倾斜表面特征的形状;定义所述点云的所述最近的子集的Z极值子集;以及在对应于所述Z极值子集的Z高度聚焦所述光学器件。
在结合附图参照以下详细描述更好地理解之后,将更容易地了解本发明的上述方面和许多附带的优点,其中:图1为示出通用精密机器视觉检测系统的各种典型组件的图解;图2为类似于图1的并且包括根据本发明的特征的机器视觉检测系统的控制系统部分和视觉组件部分的框图;图3示出包括与边缘聚焦工具相关联的感兴趣区域指示器的机器视觉检测系统的用户接口中的视场;图4示出工件的倾斜边缘特征的横截面图;图5示出图4所示的倾斜边缘特征的横截面图的特写图;以及图6为图示通用例程的一个实施方案的流程图,通用例程用于操作边缘聚焦工具以接近邻近倾斜表面的边缘聚焦机器视觉检测系统的光学器件。
具体实施例方式图1为根据本文所描述的方法的可用的一个示例性机器视觉检测系统10的框图。机器视觉检测系统10包括视觉测量机12,其被可操作地连接以与控制计算机系统14交换数据并控制信号。控制计算机系统14被进一步可操作地连接以与监视器或显示器16、打印机18、操纵杆22、键盘24和鼠标26交换数据并控制信号。监视器或显示器16可以显示适合于控制和/或编程机器视觉检测系统10的操作的用户接口。视觉测量机12包括可移动工件台32和光学成像系统34,光学成像系统34可以包括变焦透镜或可互换透镜。变焦透镜或可互换透镜一般为光学成像系统34所提供的图像提供各种放大率。机器视觉检测系统10 —般比得上以上所论述的QUICK VISION 系列的视觉系统和QVPAK 软件以及类似的最先进的可商购获得的精密机器视觉检测系统。在在共同转让的美国专利号7,454,053、美国专利号7,324,682、美国核准前公开号20100158343和美国核准前公开号20110103679中也描述了机器视觉检测系统10,专利中的每个以全文引用的方式并入本文。图2为类似于图1的机器视觉检测系统并且包括根据本发明的特征的机器视觉检测系统100的控制系统部分120和视觉组件部分200的框图。如下文将更详细地描述,控制系统部分120用于控制视觉组件部分200。视觉组件部分200包括光学总成部分205、光源220、230和240以及具有中央透明部分212的工件台210。工件台210沿着X轴和Y轴可控制地移动,X轴和Y轴位于大体上平行于工件台的可以定位工件20的表面的平面中。光学总成部分205包括照相机系统260、可互换物镜250,并且可以包括具有透镜286和透镜288的透镜旋转盘总成280。作为透镜旋转盘总成的替代,可以包括固定或手动可互换放大率改变透镜或变焦透镜配置等。通过使用可控电机294,光学总成部分205沿着大体上正交于X轴和Y轴的Z轴可控制地移动,可控电机294驱动致动器沿着Z轴移动光学总成部分205以改变工件20的图像的焦点。通过信号线296将可控电机294连接到输入/输出接口 130。将使用机器视觉检测系统100成像的工件20或固定多个工件20的托盘或夹具放置在工件台210上。工件台210可以被控制以相对于光学总成部分205而移动,以使得可互换物镜250在工件20上的位置之间和/或多个工件20之中移动。工件台灯220、同轴灯230和表面灯240 (例如,环形灯)中的一个或多个可以分别发射源光222、232和/或242,以照明工件或多个工件20。光源230可以沿着包括反光镜290的路径发射光232。源光被反射或透射为工件光255,并且用于成像的工件光穿过可互换物镜250和透镜旋转盘总成280并由照相机系统260收集。将照相机系统260捕获的工件20的图像在信号线262上输出到控制系统部分120。可以分别通过信号线或总线221、231和241使光源220、230和240与控制系统部分120连接。为了改变图像放大率,控制系统部分120可以通过信号线或总线281使透镜旋转盘总成280沿着轴284旋转以选择透镜旋转盘。如图2所示,在各种示例性实施方案中,控制系统部分120包括控制器125、输入/输出接口 130、内存140、工件程序产生器和执行器170以及电源部分190。这些组件中的每个以及下文所描述的额外组件可以通过一个或多个数据/控制总线和/或应用编程接口,或通过各种元件之间的直接连接互连。输入/输出接口 130包括成像控制接口 131、运动控制接口 132、照明控制接口 133和透镜控制接口 134。运动控制接口 132可以包括位置控制元件132a和速度/加速度控制元件132b,然而此等元件可以被混合和/或不可辨别的。照明控制接口 133包括机器视觉检测系统100的各种相应光源的照明控制元件133a-133n和133fl,这些照明控制元件例如控制选择、电源、开/关开关和选通脉冲定时(如适用)。内存140可以包括下文更详细描述的图像文件内存部分141、边缘聚焦内存部分140ef、可以包括一个或多个部分程序等的工件程序内存部分142,和视频工具部分143。视频工具部分143包括视频工具部分143a和其它视频工具部分(例如,143η),其为相应视频工具中的每个确定⑶1、图像处理操作等,并且在视频工具部分143中包括感兴趣区域(ROI)产生器143roi,R0I产生器143roi支持定义在各种视频工具中可操作的各种ROI的自动、半自动和/或手动操作。在本公开情况下,并且如本领域普通技术人员所知,术语视频工具一般指的是一组相对复杂的自动或编程操作,机器视觉用户可以通过相对简单的用户接口(例如,图形用户接口、可编辑参数窗口、菜单等)实施自动或编程操作,而无需建立在视频工具中包括的逐步的操作顺序或求助于广义基于文本的编程语言等。例如,视频工具可以包括一组复杂预编程的图像处理操作和计算,通过调整管理操作和计算的一些变量或参数,在特定实例中应用和定制图像处理操作和计算。除基础的操作和计算之外,视频工具包括允许用户为视频工具的特定实例调整那些参数的用户接口。例如,许多机器视觉视频工具允许用户通过使用鼠标进行简单的“手柄拖动”操作来配置图形感兴趣区域(ROI)指示器,以便定义将由视频工具的特定实例的图像处理操作分析的图像子集的位置参数。应注意,可见的用户接口特征有时被称为视频工具,其中隐式地包括基础的操作。与许多视频工具一样,本公开的边缘聚焦主题包括用户接口特征和基础的图像处理操作等,并且相关特征可以表征为包括在视频工具部分143中的3D边缘聚焦工具143ef3D的特征。3D边缘聚焦工具143ef3D提供可以用于接近邻近倾斜表面特征的边缘聚焦机器视觉检测系统100的成像部分200的操作。具体来说,3D边缘聚焦工具143ef3D可以用于确定Z高度以聚焦机器视觉检测系统100的光学器件,从而执行边缘检测操作来确定邻近倾斜表面特征的边缘的位置。在一个实施方案中,3D边缘聚焦工具143ef3D可以包括表面形状选择部分143efss,其为一种类型的表面形状模型提供选项以根据特定形状(例如,平面、圆锥体、球体或圆柱体),根据与倾斜表面特征相关联的数据进行估算。3D边缘聚焦工具参数可以在学习模式操作期间被确定并存储在部分程序中,如下文更详细地描述。在一些实施方案中,由3D边缘聚焦工具143ef3D确定的聚焦Z高度,和/或与邻近边缘的倾斜表面相关的形状数据可以由边缘聚焦内存部分140ef存储以供将来使用。视频工具部分143也可以包括梯度边缘聚焦工具143efGRAD,其根据查找在边缘上提供最强梯度的聚焦高度的已知自动聚焦方法进行操作。简言之,边缘梯度聚焦工具143efGRAD可以包括以下操作:在机器视觉检测系统的视场中定义包括边缘特征的感兴趣区域(ROI);在包括边缘的Z范围上获取ROI的图像栈;为图像栈确定边缘上的一组图像强度梯度;以及在图像栈中提供最强梯度的Z高度聚焦光学器件。视频工具部分143也可以包括常规的表面自动聚焦视频工具143af,其例如可以为平行于视觉系统的图像平面的近似平坦的表面提供自动聚焦操作。在一个实施方案中,3D边缘聚焦工具143ef3D可以结合某些已知自动聚焦工具(例如,梯度边缘聚焦工具或表面自动聚焦工具)或操作(例如,感兴趣区域对比计算、聚焦曲线数据确定和存储、聚焦曲线峰值查找等)被链接或以其它方式起作用。例如,在一个实施方案中,可以包括本文中公开的3D边缘聚焦工具操作作为多模式自动聚焦工具中的聚焦模式,多模式自动聚焦工具包括与梯度边缘聚焦工具或表面自动聚焦工具可相比拟的模式。在一些实施方案中,3D边缘聚焦工具143ef3D和梯度边缘聚焦工具143efGRAD可以是单独的工具,但是在一些实施方案中,3D边缘聚焦工具143ef3D和梯度边缘聚焦工具143efGRAD可以是单一边缘聚焦工具的两个模式。在3D边缘聚焦工具143ef3D和梯度边缘聚焦工具143efGRAD是单一边缘聚焦工具的两个模式的一些实施方案中,边缘工具可以基于下文进一步描述的学习模式操作自动地选择特定模式。工件台灯220、同轴灯230和230’和表面灯240的信号线或总线221、231和241分别与输入/输出接口 130连接。照相机系统260的信号线262和可控电机294的信号线296与输入/输出接口 130连接。除携带图像数据之外,信号线262可以携带来自启动图像获取的控制器125的信号。—个或多个显不设备136 (例如,图1的显不器16)和一个或多个输入设备138(例如,图1的操纵杆22、键盘24和鼠标26)也可以与输入/输出接口 130连接。显示设备136和输入设备138可以用于显示可以包括各种图形用户接口(⑶I)特征的用户接口,⑶I特征可用于执行检测操作,和/或建立和/或修改部分程序,以查看照相机系统260捕获的图像和/或直接控制视觉系统组件部分200。显示设备136可以显示与3D边缘聚焦工具143ef3D相关联的用户接口特征,如下文更详细地描述。在各种示例性实施方案中,当用户利用机器视觉检测系统100为工件20建立部分程序时,用户通过以学习模式操作机器视觉检测系统100产生部分程序指令,以提供所需的图像获取训练序列。例如,训练序列可以包括在视场(FOV)中定位代表性的工件的特定工件特征、设置亮度级、聚焦或自动聚焦、获取图像以及提供应用于图像的检测训练序列(例如,使用在此工件特征上的一个视频工具的实例)。学习模式操作以使得序列被捕获或记录并转换为相应部分程序指令。在执行部分程序时,这些指令将使机器视觉检测系统复制训练图像获取和检测操作,以在匹配建立部分程序时使用的代表性的工件的运行模式工件或多个工件上自动地检测此特定工件特征(即,在相应位置的相应特征)。图3示出包括与3D边缘聚焦视频工具143ef3D相关联的感兴趣区域指示器ROIin的机器视觉检测系统100的用户接口中的成像视场300。在用于确定工件20的倾斜表面特征BSF的边缘25的位置的操作的各种实施方案中,工件20的倾斜表面特征BSF位于机器视觉检测系统100的视场300中。如图3所示,边缘25是表面SurfA与表面SurfB之间的边缘。在一些应用或实施方案中,表面SurfB可以是空白(例如,超出工件20的极限)。表面SurfA具有比表面SurfB更大的Z高度,如参照图4和图5进一步详细地所示。3D边缘聚焦工具143ef3D被配置成使用与3D边缘聚焦视频工具143ef3D相关联的用户接口结合感兴趣区域产生器143roi来定义感兴趣区域ROI,并且用感兴趣区域指示器ROIin显示。感兴趣区域ROI可以由用户接口中的感兴趣区域指不器ROIin指不。感兴趣区域ROI可以一般在视觉系统的学习模式期间通过用户选择图标而被配置和对准,图标代表用户接口的工具栏上的3D边缘聚焦工具143ef3D,因此感兴趣区域指示器ROIin看起来在用户接口中的工件图像上覆盖。然后,用户可以拖动在首先实施感兴趣区域工具时出现的调整大小和/或旋转手柄(未示出)(例如,这发生在已知可商购获得的机器视觉检测系统视频工具中)。或者,用户可以编辑数值大小和位置参数。用户将感兴趣区域指示器ROIin配置在所需的位置以使得感兴趣区域指示器ROIin包括边缘25,并且通过使用调整大小或类似操作对感兴趣区域指示器ROIin调整大小以包括倾斜表面特征BSF的一部分。为了论述,我们定义近似平行于边缘25延伸的边缘方向,在图3中标示为ED。我们也定义垂直于边缘方向ED的法线方向ND。在许多应用中,倾斜表面特征BSF近似沿着法线方向ND朝着表面SurfB向下倾斜。在各种实施方案中,3D边缘聚焦工具可以包括位于感兴趣区域指示器ROIin中的扫描方向指示器SDI。在一些此等实施方案中,在学习模式期间,用户可以调整感兴趣区域指示器ROIin的对准以使得扫描方向指示器SDI大体上沿着方向ND延伸并且穿过边缘25。在一些实施方案中,3D边缘聚焦工具143ef3D可以使用从此对准配置导出的相关联参数以最优化下文进一步描述的表面形状模型估算和边缘选择操作,或设置用于确保自动聚焦结果的稳健性等的极限。3D边缘聚焦工具143ef3D的操作通过为ROI内的多个子ROI执行自动聚焦操作而产生点云,点云包括具有定义坐标(Xi, Yi, Zi)的一组点i,每个子ROI包括ROI的像素的子集。在图3所示的实施方案中,组点对应于感兴趣区域ROI内的多个子ROI SROIn (由图3中的虚线定义),子ROI SROIn可以或不可以显示在感兴趣区域指示器ROIin中。更具体地说,可以根据标题为“Mult1-Region Autofocus Tool and Mode”的共同转让的美国专利号7,570, 795和/或颁予给Campbell的美国核准前公开号2011/0133054中的操作来执行此等操作,专利以全文引用的方式并入本文。如图3所示,边缘25为标称直的并且倾斜表面特征BSF为标称平坦的。然而,应了解,3D边缘聚焦视频工具143ef3D也可以用于聚焦于邻近倾斜表面特征的边缘,其中边缘为弯曲的,例如,具有圆锥、球形或圆柱形状的倾斜表面特征。一般而言,根据本文概述和要求的原理,3D边缘聚焦工具143ef3D的操作可以应用于倾斜表面特征的常见形状。在一些实施方案中,用户可以在学习操作模式期间选择表面形状的类型。在图3所示的实施方案中,边缘聚焦工具的用户接口包括形状选择小部件SHAPESW,其可以在3D边缘聚焦模式或工具被选择和/或可操作时出现。用户可以在学习模式期间操作形状选择小部件SHAPESW,以在边缘聚焦工具的操作期间例如通过点击形状选择小部件部分平面、圆柱体或圆锥体来选择根据点云估算哪个表面形状模型。应了解,这些形状选择选项仅为示例性的并且不具有限制性。应了解,在其它实施方案中,形状选择可以是基于文本的菜单选择,或能够符合多种表面的一般的高阶形状可以用作默认值或仅用作选项。如先前概述,在一些实施方案中,3D边缘聚焦工具143ef3D和梯度边缘聚焦工具143efGRAD可以是单一边缘聚焦工具(例如,由工具栏上的单一图标选择的边缘工具)的两个模式。在图3所示的实施方案中,视频工具的用户接口包括选择小部件SW,其可以在视频工具首先实施在用户接口中时出现。用户可以在学习模式期间操作模式选择小部件SW以(例如)通过点击3D选择小部件部分SW3D或梯度选择小部件部分SWGRAD选择哪个操作模
式由边缘工具使用。图4示出垂直于边缘方向ED (沿着方向ND)的倾斜表面特征BSF (先前在图3中所示)的横截面图400。在已定义感兴趣区域ROI后,3D边缘聚焦工具143ef3D被配置为在包括边缘25和倾斜表面特征BSF的至少一部分的Z范围ZR上获取ROI的图像栈。如图4所示,沿着表面SurfB的点位于此范围之外。然而,在一些情况下,工件可以不具有超出类似于边缘25的边缘的表面(例如,SurfB),并且此工件也可以由3D边缘聚焦工具143ef3D处理。3D边缘聚焦工具143ef3D被配置为基于为多个点确定最好的聚焦Z高度测量,为ROI中的多个点产生包括Z高度的点云,如参照图5进一步详细地所示。可以根据本领域中已知的方法(例如,利用对比度量的自动聚焦方法)产生点云。应了解,对于包括表面SurfB的ROI中的点,产生此等点的坐标可能失效或提供错误的结果,因为表面SurfB位于Z范围ZR之外,因此表面SurfB在Z范围ZR上在图像栈中提供没有聚焦的图像。先前已知的自动聚焦工具可能在此等情况下频繁地失效。然而,本文中公开的3D边缘聚焦工具方法在此等情况下稳健地操作,这是这些方法的一个优点,尤其是对于此等情况帮助相对非技术用户写入稳健的部分程序。图5示出图4所示的工件20的边缘25和倾斜表面特征BSF的横截面图的特写图。具体来说,图5示出由3D边缘聚焦工具143ef3D产生的点云PC的代表点。图5示出在垂直于ED-ND平面的平面中观察的点云PC中的点的一个子集。应理解,在沿着ROI中的边缘方向ED的不同位置产生点的几个此等子集。在一些实施方案中,3D边缘聚焦工具143ef3D包括被配置成根据点云PC估算表面形状模型SS的操作,表面形状模型SS对应于倾斜表面特征BSF的形状。在图5所示的实施方案中,表面形状模型SS为平面。在替代实施方案中,表面形状模型SS可以具有对应于圆锥体、圆柱体或球体的形状的几何形状。在表面曲率是小的一些实施方案(例如,圆锥体、圆柱体或球体)中,平面可以是足够的一阶近似以便确定Z高度来聚焦机器视觉检测系统的光学器件。根据此等点云估算形状的各种方法为本领域普通技术人员已知并且不需要在这里详细地加以描述。根据本文公开的点云PC估算表面形状模型的方法仅为示例性的并且不具有限制性。3D边缘聚焦工具143ef3D的操作被配置成定义点云的最近的子集,点云包括接近倾斜表面特征的点并且对应于倾斜表面特征的形状,以及被配置成定义点云PC的最近的子集的Z极值子集ZES。图5示出Z极值子集ZES的一个此点ZESn,在此情况下点ZESn为具有图5所示的点PC的子集中的最小Z高度的点。应理解,在沿着ROI中的边缘方向ED的不同位置产生的点的其它子集将提供Z极值子集ZES的类似的“最小Z高度”点ZESn。在一些实施方案中,点云的Z极值子集ZES可以包括点云PC的最低Z高度。例如,Z极值子集ZES可以包括具有5个或10个最低Z高度或甚至单个最低Z高度的点。在其它实施方案中,点云的Z极值子集ZES可以包括点云PC的最高Z高度。例如,“内部”倾斜表面特征可以位于孔的底部并且下表面可以在聚焦范围内,并且用户可能需要使用3D边缘聚焦工具143ef3D聚焦于上表面。3D边缘聚焦工具143ef3D被配置成在对应于Z极值子集ZES的Z高度Zzes聚焦成像部分200。在一些实施方案中,Z高度Zzes可以是Z极值子集ZES的中位数或在其它实施方案中是平均数。在一些实施方案中,将成像部分200聚焦到Z高度Zzes包括移动机器视觉检测系统的工件台以使得工件台在Z高度Zzes成像工件。当已将成像部分200聚焦到Z高度Zzes时,机器视觉检测系统100可以有效地和可靠地执行边缘检测操作以确定边缘25的位置,或执行需要对应于边缘25的聚焦高度的任何其它检测操作以获得最优性能。在一些实施方案中,定义点云的最近的子集包括:根据点云PC估算表面形状模型SS以使得表面形状模型对应于倾斜表面特征的形状,以及排除偏离表面形状模型超过为3D边缘聚焦工具143ef3D建立的关系参数的点云的点。排除此等点(一般被视为孤立点)改善了 Z极值子集的质量。在一些实施方案中,关系参数可以由用户指定,或在其它实施方案中,关系参数可以用运行脚本指定。在一些实施方案中,关系参数可以是指定数量乘以用于成像的光学系统的景深。在其它实施方案中,可以例如基于点云点或点云点的子集相对于最初估算的表面形状模型的标准偏差或中位数偏差来自动地确定关系参数。例如,点PCOL1偏离表面形状模型SS沿着Z方向的距离DEV,距离DEV足够大以从点云PC的最近的子集丢弃点PCOL115如可能在紧密接近边缘25测量Z高度时预期,点PCOL2明显地偏离表面形状模型SS,边缘25包括在Z范围ZR之外的工件表面的一部分。点PCOL3大大地偏离表面形状模型SS,因为点PCOL3位于表面SurfA上。尽管已准确地测量点PCOL3,但是点PCOL3不对应于倾斜表面特征BSF,而是点云PC最初包括此点,因为选择包括表面SurfA的一部分的感兴趣区域。各种稳健的孤立点拒绝法(例如,众所周知的RANSAC或LMS算法)可以用于丢弃点(例如,PcolpPcol2和pcol3),这些点可以被视为点云pc的孤立点并且应从点云pc的最近的子集被排除。移除孤立点改善了估算接近边缘25处的Z高度的聚焦Z高度Zzes的稳健性。如先前概述,在一些实施方案中,3D边缘聚焦工具143ef3D和梯度边缘聚焦工具143efGRAD可以是单一边缘聚焦工具的两个模式。在一些实施方案中,边缘聚焦工具可以自动地挑选模式选择。例如,在一个此实施方案中,在学习模式期间,可以为边缘聚焦工具ROI产生点云,而不考虑是否ROI包括倾斜表面,并且可以根据点云估算表面形状模型。如果使表面形状模型或表面形状模型沿着方向的正切倾斜超出相对于平行于X-Y平面的参考平面的最小预定角度Θ (例如,5度),那么对应于3D边缘聚焦工具143ef3D的模式可以被选择并记录为多模式边缘聚焦工具的此实例的操作参数。如果使表面形状模型或接近邻近倾斜边缘特征的边缘的表面形状模型的正切倾斜小于最小角度Θ,那么可以使用梯度边缘聚焦工具143efGRAD。基于本公开应了解,可以使用自动边缘聚焦模式选择的其它方法,且此实例仅为示例性的而不具有限制性。图6为示出通用例程的一个实施方案的流程图,通用例程用于操作边缘聚焦工具(例如,3D边缘聚焦工具143ef3D)以接近邻近倾斜表面特征(例如,倾斜表面特征BSF)的边缘(例如,边缘25)聚焦机器视觉检测系统的光学器件。在方框610,在机器视觉检测系统的视场中定义感兴趣区域(ROI),ROI包括邻近倾斜表面特征的边缘。一些实施方案可以进一步包括以下步骤:在机器视觉检测系统的用户接口中显示边缘聚焦工具的图形用户接口(⑶I),以及操作⑶I以选择ROI开始边缘聚焦工具的操作。在方框620,在包括边缘的Z范围(例如,Z范围ZR)上获取ROI的图像栈。在方框630,基于为多个点确定最好的聚焦Z高度测量,为ROI中的多个点产生包括Z高度的点云(例如,点云PC)。在一些实施方案中,产生点云包括为ROI内的多个子ROI执行自动聚焦操作,每个子ROI包括ROI的像素的子集。在方框640,定义点云的最近的子集,点云包括接近倾斜表面特征的点并且对应于倾斜表面特征的形状。在一些实施方案中,定义点云的最近的子集包括根据点云估算表面形状模型,表面形状模型对应于倾斜表面特征的形状;以及排除偏离表面形状模型超过最小表面形状参数的点云的点。在一些实施方案中,根据不同点云估算表面形状模型以及排除点云的点包括将RANSAC和LMS算法中的一个应用于点云。在一些实施方案中,边缘工具包括图形用户接口(⑶I),图形用户接口包括形状选择小部件,其中用户可以选择在边缘聚焦工具的操作期间根据点云估算哪种类型的表面形状模型。在一些实施方案中,表面形状模型可以包括以下形状中的一个:平面、圆锥体、圆柱体和球体。在一些实施方案中,用户在学习操作模式期间选择表面形状模型,或更具体地说,表面形状模型的类型。在方框650,定义点云的最近的子集的Z极值子集(例如,Z极值子集ZES)。在方框660,在对应于Z极值子集的Z高度(例如,Z高度Zzes)聚焦光学器件。尽管已对本发明的优选实施方案进行说明和描述,但是基于本公开,但是所说明和描述的特征的布置以及操作顺序中的许多变化对本领域技术人员来说是显而易见的。因此,应了解,在不脱离本发明的精神和范围的情况下可以在本发明中进行各种变化。
权利要求
1.一种用于操作包括在机器视觉检测系统中的边缘聚焦工具以接近邻近工件的倾斜表面特征的边缘聚焦所述机器视觉检测系统的光学器件的方法,所述方法包括: 在所述机器视觉检测系统的视场中定义感兴趣区域即ROI,所述ROI包括邻近所述倾斜表面特征的所述边缘; 在包括所述边缘的Z范围上获取所述ROI的图像栈; 基于为多个点确定最好的聚焦Z高度测量,为所述ROI中的所述多个点产生包括Z高度的点云; 定义所述点云的最近的子集,所述点云包括接近所述倾斜表面特征的点并且对应于所述倾斜表面特征的形状; 定义所述点云的所述最近的子集的Z极值子集;以及 在对应于所述Z极值子集的Z高度聚焦所述光学器件。
2.如权利要求1所述的方法,其中定义所述点云的最近的子集包括: 根据所述点云估算表面形状模型,所述表面形状模型对应于所述倾斜表面特征的所述形状;以及 排除偏离所述表面形状模型超过关系参数的所述点云的点。
3.如权利要求2所述的方法,其中根据所述点云估算表面形状模型以及排除所述点云的点可以包括将RANSAC和LMS算法中的一个应用于所述点云。
4.如权利要求2所述的方法,其中所述边缘工具包括图形用户接口即GUI,所述图形用户接口包括形状选择小部件,其中用户可以选择在所述边缘聚焦工具的操作期间根据所述点云估算哪种类型的表面形状模型。
5.如权利要求2所述的方法,其中所述表面形状模型包括以下形状中的一个:平面、圆锥体、圆柱体和球体。
6.如权利要求5所述的方法,其中用户在学习操作模式期间选择所述表面形状模型。
7.如权利要求1所述的方法,其中定义所述点云的最近的子集包括: 将表面拟合模型拟合于所述点云,所述表面拟合模型对应于所述倾斜表面特征的所述形状;以及 排除偏离所述表面拟合模型超过最小表面形状参数的所述点云的点。
8.如权利要求1所述的方法,其进一步包括: 在所述机器视觉检测系统的用户接口中显示所述边缘聚焦工具的图形用户接口即GUI ;以及 操作所述GUI以选择所述ROI开始所述边缘聚焦工具的操作。
9.如权利要求1所述的方法,其中所述ROI的部分包括在所述Z范围之外的所述工件的部分。
10.如权利要求1所述的方法,其中所述点云的所述Z极值子集包括所述点云的最低Z高度。
11.如权利要求1所述的方法,其中将所述光学器件聚焦到对应于所述Z极值的所述Z高度包括移动所述机器视觉检测系统的工件台以使得所述工件处于此Z高度。
12.如权利要求1所述的方法,其中在对应于所述Z极值子集的Z高度聚焦所述光学器件包括在点的Z高度聚焦所述光学器件,其中Z高度为以下数中的一个:所述点云的所述Z极值子集的中位数、平均数和众数。
13.如权利要求1所述的方法,其中产生点云包括为所述ROI内的多个子ROI执行自动聚焦操作,每个子ROI包括所述ROI的像素的子集。
14.一种用于操作边缘聚焦工具以接近邻近倾斜表面特征的边缘聚焦机器视觉检测系统的光学器件的方法,所述方法包括: 在所述机器视觉检测系统的用户接口中显示所述边缘聚焦工具的图形用户接口即GUI ; 操作所述GUI以在所述机器视觉检测系统的视场中选择感兴趣区域即ROI开始所述边缘聚焦工具的操作,所述ROI包括邻近所述倾斜表面特征的所述边缘;以及操作所述边缘聚焦工具以执行以下步骤: 在包括所述边缘的Z范围上获取所述ROI的图像栈,所述ROI包括所述视场的部分,其中工件的部分在所述Z范围之外; 基于为多个点确定最好的聚焦Z高度测量,为所述ROI中的所述多个点产生包括Z高度的点云; 定义所述点云的最近的子集,所述点云包括接近所述倾斜表面特征的点并且对应于所述倾斜表面特征的形状; 定义所述点云的所述最近的子集的Z极值子集;以及 在对应于所述Z极值子集的Z高度聚焦所述光学器件。
15.一种包括在机器视觉检测系统中的边缘聚焦工具,所述边缘聚焦工具包括接近邻近倾斜表面特征的边缘聚焦机器视觉检测系统的光学器件的操作,所述边缘聚焦工具包括第一操作模式,其中: 所述第一操作模式包括: 在所述机器视觉检测系统的视场中定义感兴趣区域即R0I,所述ROI包括邻近所述倾斜表面特征的所述边缘; 在包括所述边缘的Z范围上获取所述ROI的图像栈; 基于为多个点确定最好的聚焦Z高度测量,为所述ROI中的所述多个点产生包括Z高度的点云; 定义所述点云的最近的子集,所述点云包括接近所述倾斜表面特征的点并且对应于所述倾斜表面特征的形状; 定义所述点云的所述最近的子集的Z极值子集;以及 在对应于所述Z极值子集的Z高度聚焦所述光学器件。
16.如权利要求15所述的边缘聚焦工具,所述边缘聚焦工具还包括第二操作模式,其中: 所述第二操作模式包括: 在所述机器视觉检测系统的视场中定义包括边缘的感兴趣区域即ROI ; 在包括所述边缘的Z范围上获取所述ROI的图像栈; 为所述图像栈确定所述边缘上的一组图像强度梯度;以及 在所述图像栈中提供最高梯度的Z高度聚焦所述光学器件。
17.如权利要求16所述的边缘聚焦工具,其中所述边缘聚焦工具包括小部件,所述小部件包括在所述边缘聚焦工具的用户接口中,且在所述机器视觉检测系统的学习模式期间可以使用所述小部件以选择所述第一操作模式和所述第二操作模式中的哪个操作模式将由所述边缘聚焦工具的实例执行。
18.如权利要求16所述的边缘聚焦工具,其中所述边缘聚焦工具包括在所述机器视觉检测系统的学习模式期间执行的自动操作以选择所述第一操作模式和所述第二操作模式中的哪个操作模式将由所述边缘聚 焦工具的实例执行。
全文摘要
本发明涉及一种增强型边缘聚焦工具及利用该工具的聚焦方法。该方法是用于操作边缘聚焦工具以接近邻近倾斜表面特征的边缘聚焦机器视觉检测系统的光学器件的方法。所述方法包括在机器视觉检测系统的视场中定义包括边缘的感兴趣区域(ROI);在包括边缘的Z范围上获取ROI的图像栈;基于为多个点确定最好的聚焦Z高度测量,为ROI中的多个点产生包括Z高度的点云;定义所述点云的最近的子集,所述点云包括接近倾斜表面特征的点并且对应于倾斜表面特征的形状;定义所述点云的最近的子集的Z极值子集;以及在对应于Z极值子集的Z高度聚焦光学器件。
文档编号G01B11/24GK103175469SQ201210568168
公开日2013年6月26日 申请日期2012年12月24日 优先权日2011年12月23日
发明者丁玉华, S·R·坎贝尔, M·L·德兰尼, R·K·布林尔 申请人:株式会社三丰