CN1580748A - 检测嵌入在高度织构材料中线条的方法和装置 - Google Patents
检测嵌入在高度织构材料中线条的方法和装置 Download PDFInfo
- Publication number
- CN1580748A CN1580748A CNA2004100684869A CN200410068486A CN1580748A CN 1580748 A CN1580748 A CN 1580748A CN A2004100684869 A CNA2004100684869 A CN A2004100684869A CN 200410068486 A CN200410068486 A CN 200410068486A CN 1580748 A CN1580748 A CN 1580748A
- Authority
- CN
- China
- Prior art keywords
- lines
- image
- workpiece
- determined
- constraint
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
- G06T7/0004—Industrial image inspection
- G06T7/0006—Industrial image inspection using a design-rule based approach
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/168—Segmentation; Edge detection involving transform domain methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/48—Extraction of image or video features by mapping characteristic values of the pattern into a parameter space, e.g. Hough transformation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30108—Industrial image inspection
- G06T2207/30124—Fabrics; Textile; Paper
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30108—Industrial image inspection
- G06T2207/30164—Workpiece; Machine component
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Quality & Reliability (AREA)
- Image Analysis (AREA)
- Length Measuring Devices By Optical Means (AREA)
- Image Processing (AREA)
- Investigating Materials By The Use Of Optical Means Adapted For Particular Applications (AREA)
Abstract
一种计算机图像检测系统,它可以进行编程和操作来识别一个或更多出现在工件的高度织构和/或低对比度表面的线条。在一个学习模式下,一个线条放大图像从一个工件的捕获图像中生成。在不同的实例中,该已放大图像基于一个通过相关参数的选择数据来控制的以前确定的技术。一个线性变换用于转换该已放大的图像。对已转换的数据进行分析来识别对应于将被识别线条的局部极值。生成部分程序指令以自动生成线条放大图像,来转换它,并分析该转换数据集合以识别将被检测的线条。表示一个连续线条阵列特征的线条约束用于提高线条检测的速度和可靠性。
Description
本发明的背景技术
1、技术领域
本发明涉及嵌入在高度织构和/或低对比度材料中具有公知相对方位的定位线的系统和方法。
2、相关技术的描述
精确的计算机图像检测系统可用于获得被检测物体的精确空间尺寸,也可以用于检测其他不同物质的特性。这些系统可以包括一台计算机、一照相机和光学系统及一个可多方向移动以能使照相机可以扫描正被检测的工件的特征的精确平台。一个可在商业上可用的典型的现有技术系统是图像检测仪器QUICKVISIONTM系列和可以从Mitutoyo America Corporation(MAC)得到的QVPAKTM软件,该公司位于Aurora,IL.图像检测仪器QUICK VISIONTM系列的特征和操作及QVPAKTM软件,例如,通常在2003年1月出版的《QVPAK 3D CNC图像测量仪器操作指导》和1996年9月出版的《QVPAK 3D CNC图像测量用户指导》中作了描述,每个出版的全文在这里是作参考用而引入。这种产品,作为QV-302模型的举例,例如,可以使用一个微型显微镜类型的光学系统来提供一个在不同放大率下的工件图像。
这种系统通常包括一个可编程的照明系统和一个具有不同放大率透镜的透镜旋转台。通常用不同的放大率与不同的照明设备,检测一个物体的不同方面,这里也指一个工件或一个检测工件。与所谓的“在线”和“联机”式计算机图像检测系统相比,这些系统通常特别设计为在一个特殊的操作环境下实现一个高吞吐量,对于一个检测只有微小变化的特殊部件来说,精确计算机图像检测系统,例如QUICK VISIONTM系统,对多种不同的将被检测的零件,通常设计为能够便于实现灵活的精确工业检测。
这些图像检测系统通常具有自动视频检测的能力。美国专利6,542,180,其全文在此作参考用而引入,提供了一种利用自动视频检测包括操作的图像系统,其中用于照亮工件特征的照明设备是根据许多所选择的工件特征图像区域来进行调节的。正如专利’180中所说,自动视频检测度量设备通常具有一个可允许为每一个特殊工件构造由用户定义的自动检测事件序列的编程能力。这个或者可用一个预先准备好的方式,如基于文本的编程,或者通过一个记录方式,或者通过这两种方式的结合来实现,该记录模式通过存储与用户执行的一系列检测操作相对应的一系列计算机控制指令来逐渐地“学习”检测事件序列。这种记录方式通常被称作“学习模式”或“训练模式”。
在任何一种模式中,计算机控制指令通常作为部分程序进行存储,该部分程序对于特定的工件结构是很特有的。这种产生具有可执行一系列预定的检测操作的指令的部分程序带来了很多优点,包括提高了检测的可重复性,以及可对许多兼容计算机图像检测系统和/或多次地自动执行相同部分程序的能力。另外,这种编程的性能提供了存档不同检测操作结果的能力。
如上所述,所谓的“在线”或“联机”式计算机图像检测系统的特定设计通常是为了在一个特殊的操作环境下对将被检测的特定部件或部件特征实现一个高吞吐量。欧洲出版的专利申请0,741,290号揭示了一个联机系统,系统可利用一个二维图像转换技术或一个线性检测器技术及相关操作评估纺织品材料的织物定位失真角度。然而,在EP0741290中所揭示的方法是相对专用用于辨别织物或弯曲角度。当试图定位一个有限数量的线条或其他近似线性特征时,这种方法就包括了许多不必要的、低效的、费时的和/或刚强的操作,该线性特征可叠加在高度织构或低对比度背景上,例如弯曲和织物材料。而且,EP0741290申请中没有揭示交互式的编程或评估步骤等,而它们对于帮助相对不熟练的用户适应或采用EP0741290申请来产生各自的一组计算机控制指令是有用的,这些指令可适用于许多不同种类工件中的一种相应的工件。
更进一步,这种高速在线系统通常不贯注于精确的尺寸检测等。更确切地说,这种系统主要观测流动的或可控制的传送带和流式网络等上的目标。因此,只有相当粗糙的定位和空间测量准确度的水准才由这种高速在线系统提供的。
本发明的概述
上述的计算机图像检测系统提供了如自动视频检测等优点。然而,在许多申请中,它更希望在不需要广泛的的计算机操作者干涉或计算机操作者的复杂编程情况下,能够提高计算机定位已知相对方位的线条的能力,例如,嵌入和/或叠加在高度织构和/或低对比度材料中的平行线。更进一步,与为所谓的“在线”或“联机”式计算机图像检测系统设计的解决方案相比,对于通常设计为便于实现许多不同种类零件的灵活精确工业检测的“脱机”或“近线”计算机图像检测系统来说,相对不熟练的操作者希望提高系统编程的容易度,同时提高已知相对方位的定位线,例如,嵌入和/或叠加在高度织构和/或低对比度材料中的平行线的程序的稳健性和可靠性。由于具有这些特征的高度织构和/或低对比度材料的图像有低对比度和“嘈杂”的特性,用于检测这种特性的常用计算机图像系统和方法具有缺乏精确度,且有程序复杂、操作不可靠和/或运行速度慢的特点。
因此,与提供一个用于定位嵌入和/或叠加在高度织构和/或低对比度背景上有限数量的线条的可编程精确测量操作的相对简单和通用的方法相关的、并与这种测量提供足够的稳健性相结合的特定问题,还没有通过常用的通用精确计算机图像系统或在线式系统来解决,在这点上这种系统是不完善的。因此,期望一个精确计算机图像检测系统,它可以单独或联合地能够克服前述的问题和限制。
通常,依据本发明的原理,对可检测工件识别或确定的线条通常被安排在一个表示一种特殊类型工件特征的配线或者阵列中。换句话说,在许多实例中,将被识别或确定的线条被安排在一个已知相对关系中或彼此相对方位的和/或有高度织构和/或低对比度的工件表面的一个线状特征中。
本发明提供了一种系统和方法,它可以可靠地识别嵌入在高度织构和/或低对比度材料中已知相对方位的线条。
本发明还提供一种系统和方法,它利用一个表面上产生一个二维数据集合的转换,可以可靠地识别嵌入在高度织构和/或低对比度材料中已知相对定位的线条,该数据集合中包括表面上对应于大致独立线条的局部极值,局部极值的二维方向用于定义相应的独立线条。
本发明分别地提供了系统和方法,它可以自动地识别嵌入和/或叠加在高度织构和/或低对比度材料中已知相对方位的线条。
本发明更进一步提供了系统和方法,为分析一个由图像转换提供的二维数据集合,它利用至少一个先前确定的图像增强技术和/或一个先前确定的技术能够识别嵌入和/或叠加在高度织构和/或低对比度材料中已知相对方位的线条,这种先前确定的技术可由一个有限数量的自动设置条件和/或参数所控制。
本发明分别地提供了系统和方法,它根据至少一个这些线条的始终不变数量和/或几何阵列能够识别嵌入和/或叠加在高度织构和/或低对比度材料中的线条。
本发明分别地提供了系统和方法,它根据至少一个这些线条间始终不变的或预先确定的间距能够识别嵌入和/或叠加在高度织构和/或低对比度材料中已知相对定位的线条。
本发明分别地提供了系统和方法,它根据预先确定的线条之间的关系能够识别嵌入和/或叠加在高度织构和/或低对比度材料中已知相对定位的线条。
本发明分别地提供了系统和方法,它根据以前已识别出材料的一个关系数据库能够识别嵌入和/或叠加在高度织构和/或低对比度材料中已知相对定位的线条。
在根据本发明系统和方法的许多实施例中,一个计算机图像检测系统包括一个运动系统,一台照相机,一个可以在预想的光源设备上发出光线的光源,一个提供放大倍率的变焦透镜或者可互换透镜和一个控制系统部分。
在许多实施例中,图像检测系统置于一个训练或学习模式中,从而产生部分程序用于检测一个工件上的高度织构和/或低对比度表面来识别一个或更多的表面上出现的线条。在许多实施例中,操作者生成部分程序指令来捕获一个工件上所需部分的图像。在许多实施例中,操作者生成部分程序指令来提供放大的图像技术,这些图像放大了将被识别线条的至少一个特征。在许多其他实施例中,提供给操作者一个预先确定的图像放大技术,操作者选择控制此技术的有限数量的自动设置条件和/或参数。在任何一种情况下,在许多实施例中,基于图像放大技术,一个扩大图像从已捕获的图像中产生。在许多实施例中,这个放大的图像显示给用户来评估,或者被自动评估。如果该放大图像不被接受,就利用该技术的修改或者一个不同的处理参数的值生成另外一个放大图像,直到获得一个可被接受的放大图像为止。然后生成部分程序程序指令以从其他相似的工件图像中自动生成类似的放大图像。
在许多实施例中,一旦获得一个可被接受的放大图像,该放大图像就将被转换。在许多实施例中,基于分析参数的可选值,分析转换的数据集合来识别将要被识别的线条。在许多实施例中,分析参数是从或包括一个或更多的线条约束中得出的,这些线条约束对应于一个阵列或者配线,它们是包括将被识别的线条的这种类型工件的特性。如果分析结果不被接受,转换数据集合将用一个不同值的分析参数来重新分析。于是产生部分程序指令以能将这种放大图像自动转换为已转换的数据集合,并且自动分析这些已转换的数据集合,从而能够从其他相似工件图像中识别将要被识别的线条。
在许多实施例中,依据本发明,某些图像放大操作生成通过一个线性变换而提供最大值,或在其他许多实施例中,提供最小值的图像,这些最大值或最小值稳健可靠地指出甚至杂乱或者不完全的线条,这些线条相对于背景来说具有较低的对比度。
在其他许多实施例中,依据本发明,放大操作能够生成图像,在对应于将被检测线性变换的空间中,该图像可以通过一个线性变换提供全局最大值(或最小值,如果可应用)。在许多实施例中,与多种常用的局部最大值(最小值)识别和分析技术相比,这种全局最大值(或最小值,如果可应用)可被高速、可靠地识别。
在许多实施例中,当图像检测系统被置于一个训练和学习模式中,产生部分程序用于检测一个工件的高度织构和/或低对比度表面,操作者获得想要的工件部分的图像,然后限定或者确定一个或更多的线性约束或参数等,这些线性约束或参数表现为出现在捕获图像中的将被识别的线的特征。然后产生部分程序指令以利用这些线性约束或参数等与零、一个或更多其他的操作一起,来加快和/或提高操作的稳健性,这些操作分析已转换的数据集合以能够识别在从类似工件图像中获得的全体会员图像中的线条。
在其他许多实施例中,表示为将被识别线条特征的线条约束或者参数等从一个工件的CAD文件中等进行手工地、半自动地或者自动地确定,这些将被识别的线条假定出现在一个预先的工件检测图像中。然后利用这些线条约束或参数等,与零、一个或更多其他的操作一起,产生部分程序指令来加快和/或增加操作的稳健性,这些操作分析已转换的数据集合,以识别从其他类似工件图像中获得的全体会员图像中的线条。
本发明的这些和其他特征和优点从下面根据本发明的系统和方法的不同实施例的详细描述中可以变得更加清楚。
附图说明
参考下面的附图,将详细描述本发明的系统和方法的不同实施例,其中:
图1是一个计算机图像检测系统的结构图;
图2是详细描述了图1中计算机图像检测系统中的控制系统和图像组成部分的实施例的方框图;
图3简述了一个通用精确计算机图像检测系统的编程和运行一系列检测操作的方法的具体实施例的流程图;
图4是一个实施例的流程图,它详细描述了根据本发明的一系列检测操作编程的方法;
图5表示了一个从一个高度织构和低对比度的工件上获得的训练图像的实施例,它表示了图像特征的许多实施例和依据本发明的训练操作的不同实施例;
图6是表示根据本发明的图像处理操作第一个实施例生成的处理图像的第一个实施例;
图7是表示根据本发明的图像处理操作第二个实施例生成的处理图像的第二个实施例;
图8是表示根据本发明的基于第一个实施例的从属参数从适用于图7中处理图像的操作中生成的从属图像的第一个实施例,
图9是表示根据本发明的基于第二个实施例的从属参数从适用于图7中处理图像的操作中生成的从属图像的第二个实施例,
图10是表示通过将线性转换操作的一个实施例作用于图6中所示处理的图像中获得的根据本发明的第一个数据集合的坐标图;
图11是表示通过将线性转换操作的一个实施例作用于图8中所示处理的图像中获得的根据本发明的第一个数据集合的坐标图;和
图12是表示了通过分析图1中所示的线性转换数据集合而得到的识别线条的集合。
实施例的详细描述:
图1是根据本发明的通用可编程计算机图像检测系统10的一个实施例的方框图。该计算机图像检测系统10包括一个图像测量仪器200,它可与控制系统100相连接来改变数据和控制信号。该控制系统100还与一个或多个监控器111,一个打印机112,一个操纵杆113,一个键盘114和/或一个鼠标115相连接来改变数据和控制信号。图像测量仪器200包括一个可移动的工件平台210和一个光学成像系统205,该光学成像系统205可以包括一个变焦透镜或许多可互换透镜。变焦透镜或可互换透镜通常为由光学成像系统205生成的图像提供不同的放大倍率。
操纵杆113通常可用于控制可移动平台210在X和Y方向上的移动,X和Y方向通常平行于光学成像系统205的焦平面,和光学成像系统205在Z或焦点方向上的移动方向的分量。通常地,控制Z轴的偏差是操纵杆113的把手或旋钮的旋转偏差部分。操纵杆113也可以被不同于所述的方式所代替,比如监控器111上的任何视觉图像或窗口小部件,它的目的是用作计算机图像检测系统10上的“视觉运动控制装置”,并且可以通过任何计算机输入装置,例如鼠标113等来控制。
图2详细描述了计算机图像检测系统10、图像测量仪或图像组件部分200和控制系统或图1中的控制系统部分100的一个实施例。如图2所示,控制系统部分100控制图像组件部分200。图像组件部分200包括一个光学总成部分250、光源220、230和240,和一个具有中间透明部件212的工件平台210。工件平台210被控制在沿着一个平面的X和Y轴移动,此平面通常平行于放置工件20的平台表面。光学总成部分250包括一个摄像系统260、一个可变换物镜252、一个透镜旋转盘组件280和同轴光源230。光学总成部分250被控制沿着Z轴移动,Z轴是通过利用一个可控电动机294使其和X和Y轴相垂直。
利用计算机图像检测系统10成像的工件20放置在工件平台210上。一个或多个光源220、230或240相应发出源光222、232或242用来照亮工件20。从光源220、230和/或240发出的光照亮工件20,并且被作为工件光255进行反射或传输,该工件光255经过可变换物镜252和透镜旋转盘组件280其中一个透镜286或288,并且被摄像系统260所聚集。被摄像系统260捕获的工件20的图像通过一个信号线262输出到控制系统部分100。
用于照亮工件20的光源220、230和240可以包括平台光源220、同轴光源230和表面光源240,如一个环光或可编程环光,这些光源分别通过信号线或总线221、231和241与控制系统部分100相连接。作为计算机图像检测系统10的一个主要光学组件,除了以前提到的部分,光学组件部分250还包括其它的光学元件如光圈、分光镜等,例如为了提供同轴照明或者其它期望的计算机图像检测系统的特性所需的。响应于控制通过信号线或总线281上传输的信号,控制系统部分100沿着轴284至少在第一和第二个透镜旋转盘之间旋转透镜旋转盘组件280。
工件平台210和光学组件部分250之间的距离可进行调整来改变被摄像系统260捕获的工件20的图像的焦点。特别是,在计算机图像检测系统10的不同实施例中,光学组件部分250通过利用驱动激励器、连接电缆等的可控电动机294使光学组件部分250沿着Z轴移动可在相对于工件平台210垂直的Z轴方向上移动。这里所用的术语Z轴是指为了聚焦从光学组件部分250捕获的图像所使用的轴。当使用可控电动机294时,它就通过信号线296与控制系统部分100相连接。
如图2所示,在许多实施例中,控制系统部分100包括一个控制器120、一个输入/输出接口110、一个存储器130、一个已处理图像发生电路、程序或应用软件140、一个从属图像发生电路、程序或应用软件150、一个线性变换电路、程序或应用软件160、一个转换数据分析电路、程序或应用软件170、一个工件部分程序生成电路、程序或应用软件180和一个特征提取电路、程序或应用次件190,它们通过一个或多个数据和/或控制总线和/或应用程序接口195相连接。应该明白:这些电路、程序或应用软件包括硬件有线电路、软件电路、子程序、对象、操作、应用可编程接口、管理器、应用程序或任何其他已知的或将要发展的硬件或软件设备。
在许多实施例中,存储器部分130可以存储用于操作图像系统组件部分200来捕获或是获取工件20图像的数据和/或“工具”,以便所获得的工件20的图像具有所需的图像特征。存储器部分130还可以存储用于手工或自动操作计算机图像检测系统100视频的数据和/或工具,以能对所获得的图像,无论是手动地还是自动地执行不同的检测和测量操作,并可通过输入/输出接口130输出结果。存储器部分130也可以包含一个通过输入/输出接口110定义可操作图形用户接口的数据。这种实施例通过前面提到的QUICK VISIONTM系列图像检测仪和QVPAKTM软件作为例子。
平台光源220、同轴光源230和表面光源240的信号线或总线221、231和241分别与输入/输出接口110相连接。透镜旋转盘组件280的一个控制信号线或总线281也与输入/输出接口110相连接。摄像系统260的信号线262和可控电动机294的信号线296也与输入/输出接口110相连接。除了传送图像数据,信号线262也可以传输初始化图像获取的传送控制器120的信号。
一个或更多的显示装置102,如监控器111和打印机112及一个或更多的输入装置104,如装置113-115,均可以与输入/输出接口110相连接。为了观察被摄像系统260捕获的图像和/或直接控制图像系统组件部分200,显示装置102和输入装置104可以被用于观察、产生和/或更改部分程序。在一个具有预先限定的工件程序的全自动系统中,显示装置102和/或一个或多个输入装置104可被省略。
关于特征提取电路、程序或应用软件190,如代表了工件的CAD文件的信息或前面的完全相同的工件图像,通常在计算机图像检测系统的工业程序中可以得到。在一个CAD绘图文件表示的情况下,应该明白:通过多种已知的CAD文件特征提取方法,以半自动化或者全自动的方式,可从CAD表示中人为地确定CAD绘图文件的边缘和边界线的定位。在此情况下,一组相应工件当前的检测图像中相应边缘和边界线的空间定位然后可以通过更多已知的手工、半自动化或全自动空间叠合和/或特征叠合图像处理方法所确定。这些方法包括如坐标匹配、图案匹配、模板匹配等。例如,这些方法通常可用于检测许多商业上的计算机图像检测系统的工件的边缘和边界线的位置,如前面讨论的QUICKVISIONTM系列图像检测仪和QVPAKTM软件。但是,应该明白:如果一个要被检测工件表面的电子版本不存在和/或不被用于识别或使工件图像中的线条绝缘,特征提取电路、程序或应用软件190就可省略。
控制系统部分100用于确定图像获取设备或参数和/或获取工件的一个图像,以便工件20的输入图像在包括将被检测的工件特征的利益区域内具有所需的图像特征。在许多实施例中,当用户根据本发明利用计算机图像检测系统10为工件20产生工件图像获取程序时,用户或者通过使用工件编程语言自动地、半自动的或手工地明确编码指令,或者通过通过图像获取训练顺序移动计算机图像检测系统10产生工件图像程序指令,以便工件程序指令捕获训练顺序。特别是,这些指令将使计算机图像检测系统操作工件平台210和/或摄像系统260,以便工件20的一个特定部分就在摄像系统260的观测范围内,并且将提供一个所需的放大率,一个所需的聚焦状态和一个所需的照明。为了检测工件,可以对将被捕获的一系列图像中的多幅图像重复这个过程。
在许多实施例中,为了每个期望的图像,控制系统部分100将指令摄像系统260捕获工件20的图像,并且将所捕获的图像输出给控制系统部分100。特别是,在控制器120的控制下,所捕获的图像从摄像系统260输入,通过输入/输出接口110,存储在存储器130中。控制器120也可以使所捕获的图像在其中一个显示装置102上显示。
控制系统部分100还可以用于检测这种工件检测图像中的工件特征,并且存储和/或输出检测结果。在许多实施例中,当用户根据本发明,利用计算机图像检测系统10使工件20产生至少一部分工件图像检测程序时,用户或者通过使用工件编程语言自动地、半自动的或手工地明确编码指令,或者通过通过图像获取训练顺序移动计算机图像检测系统10产生工件图像程序指令,以便工件程序指令捕获训练顺序。
特别是,这些指令将使计算机图像检测系统10对图像执行不同的检测操作。就像前面所述的,许多已知的存储在存储器部分130中的计算机图像系统“工具”可用于执行不同的前述操作。一些用于不同检测操作的视频工具的例子已公开在美国专利申请Nos.09/7/736,187,09/921,886,和美国专利申请6,542,180中,每个申请的全文在这里作参考用而引入。为了检测工件20,可以对一系列图像中的多幅图像重复这个过程。
更具体地说,在操作者输入和/或操作者操作计算机图像检测系统10中的图像测量仪器200的基础上,工件部分程序生成电路、程序和应用软件180用于生成部分程序。工件部分程序生成电路、程序和应用软件180或者可用于利用部分程序语言生成部分程序,和/或用于捕获图像测量仪器200的操作,并且当计算机图像检测系统10置于训练模式下,根据该图像测量仪器200的操作产生部分程序指令。
特征提取电路程序或应用软件190,如果能被实现的话,可用于分析工件定义文件如CAD文件等以能从工件定义文件中提取有关线性特征的几何信息。这些提取出的线性特征可被相继地用于确定和/或定义相关线性约束。这些约束包括一对线条间的间距、一对线条间的交叉角度、一线条和工件的一些其他特征的间距和/或一线条和工件的一些其他特征的角度。应该明白:特征提取电路程序或应用软件190是可选择的,因此依据本发明,在许多实施例中可以省略,尤其是在那些未确定或未使用基于几何信息的相关线条约束的实施例中。
处理图像生成电路、程序和应用软件140用于产生和/或应用一个图像处理到一个工件的高度织构和/或低对比度表面的图像来生成一个已处理图像,该工件有一个或多个嵌入或叠加在表面上的线条。在许多实施例中,操作者生成一个或多个部分程序指令以提供一个可在处理图像生成电路、程序和应用软件140中使用的图像处理技术。在许多实施例中,提供给操作者一个或多个预先确定的图像处理技术,他可以选择一个或多个预先确定的图像处理技术用于生成处理过的图像,和控制所选技术的有限数量的自动设置条件和/或参数。在任何一种情况下,根据本发明的不同的实施例,一个图像处理技术通过已处理图像生成电路、程序和应用软件140用于所捕获的图像。在控制器120的控制下,这种处理图像生成电路、程序和应用软件140可以在存储器130中存储已处理图像和/或直接将它输出给从属图像发生电路、程序或应用软件150。
根据本发明,在许多实施例中,提供给操作者一个或多个预先确定的图像处理技术,每个这种图像处理技术被一个或多个可选的图像处理参数所控制,于是这种图像处理可以被定制化,并为多种包括一个或多个嵌入和/或叠加线条的高度织构和/或低对比度工件表面提供最可靠的操作和最精确的结果。这种可选图像处理参数允许相对不太熟练的操作者改变图像处理技术的操作来生成定制的稳健操作的部分程序,而不需要操作者学习或理解相对复杂的图像处理操作。在许多实施例中,这种可选的图像处理参数在部分编程过程中可被自动、半自动地或手工进行确定。在其他许多实施例中,可用到一组缺省的图像处理参数。
根据本发明,在许多实施例中,被处理的图像通过操作捕获的象素数据值来生成,这里也称作图像数据值,以能放大要被检测的线条。例如,在许多实施例中,如果对应线条的“图像数据”倾向小于周围的高度织构和/或低对比度表面的图像数据,处理图像生成电路、程序或应用软件140就分析所捕获图像周围附近的每一个象素,并且识别该象素附近周围的最小图像数据。于是,为了生成处理图像,每一个相应的象素从各自附近给出所识别的最小图像数据。这种技术对应于一个图像处理操作,有时被称作具有与线条相对应的图像数据的象素“扩张”。
在已处理图像中,这种“扩张”操作通常扩大了将被检测线条的至少一个特征。例如,这种扩张操作增加了沿着素表示线条的象素方向上的表面宽度和连续性,并且与高度织构和/或低对比度表面环境对比可提高表示象素的线条的对比度。在许多实施例中,执行的这种图像处理技术是预先确定的图像处理技术。在其他许多实施例中,可以通过操作者选择图像处理技术。基于这里揭示的方法,这种图像处理技术的外延或选择性的许多修改,对于本领域中任何一个具有普通技术的人都是显而易见的。
在许多实施例中,当这样一种操作用作一个图像处理技术时,包围每一个相应象素的相应周围附近的尺寸和/或形状可被一个或多个尺寸参数控制,例如,附近的半径参数。应该明白:对于一个高度织构表面背景,织物的较高空间频率将通过相对较小的半径参数进行限制。其它较低的空间频率将随着半径参数相对增大进行限制。因此,当半径参数增加时,被处理图像中的视表面背景将易于出现更均匀一致和展现出一个低于在初始高度织构表面背景中出现的特征亮度的图像亮度。就像下面所详细描述的那样,在已处理图像中的视表面背景中,这种趋向于破坏或是除去不同结构和潜在的线性特征,这样就增加了寻找嵌入在和/或叠加在高度织构和/或低对比度材料的序列操作的可靠性。
同样,应该明白:在已处理图像中,这些相同的操作将通常趋向增加表面宽度,和同样提高嵌入在和/或叠加在高度织构和/或低对比度材料中的线条的一致性。进一步讲,这些线条将趋向于显示一个图像的亮度,该图像亮度是一个特征亮度,低于在最初线条出现的亮度。依据本发明的原理,对检测中的工件来说,这种较低的特征亮度将和在表面背景中出现的较低的特征亮度始终不同,使得线条将更容易地从已处理图像的背景中区分出来。
然而,应该明白:如果附近的参数半径增加太大,前述的操作将趋向于增加处理图像中的嵌入在和/或叠加在高度织构和/或低对比度材料中的线条的表面宽度太大以致线条就被合并和/或错误限定。因此,半径参数根据这些不同的权衡考虑来选择。这些考虑将在下面进行更详细的讨论。
当然,应该明白:如果由大于背景数据的图像数据定义线条,无论是由于线条较暗,和较高的值限定较暗的图像区域,还是由于线条较亮,较高的值限定较亮的图像部分,在已捕获图像的相应象素周围的相应附近,处理图像生成电路、程序或应用软件140可以识别最大而不是最小的图像数据。
正如前面所述,应该明白:在本发明许多实例中,前述的图像处理操作等可以被十分熟练的操作者进行独立的完成。然而,在其他许多实例中,一系列处理操作如前述的图像处理操作等,可以作为一个在前确定的图像处理技术提供给计算机图像系统的操作者。在这些实例中,图像处理技术被一个或更多可选的图像处理参数所控制,这样图像处理可以被定制为许多高度织构和/或低对比度工件的表面提供最可靠的操作和精确的结果,这些工件包括一个或更多嵌入和/或叠加的线条。这种可选择的图像处理参数不需要操作者去学习理解相对复杂的图像处理操作,就允许相对不熟练的操作者改变图像处理技术的操作来生成定制的稳健操作的部分程序。
在许多实例中,在控制器120的控制下,从属图像生成电路、程序或应用软件150从存储器130或直接从已处理图像生成电路、程序或应用软件140中输入处理图像。在许多实例中,一个操作者生成部分程序指令以能提供在从属图像生成电路、程序或应用软件150中使用的从属图像技术。在其它许多实例中,提供给操作者一个或更多在前确定的从属图像技术,他们选择有限数量的控制此技术的自动设置条件和/或参数。在任何一种情况下,在根据本发明不同实施例中,一个从属图像技术通过从属图像生成电路、程序或应用软件150应用于一个处理图像以能生成一个从属图像。
一旦从属图像通过从属图像生成电路、程序或应用软件150生成,在控制器120的控制下,从属图像生成电路、程序或应用软件150或者直接将从属图像输出给线性变换电路、程序或应用软件160,或者将其存储到存储器130中。
在本发明的许多实例中,从属图像生成电路、程序或应用软件150将从属图像技术用于要处理的图像来生成一个从属图像,这个图像从可能的背景表面象素中区别可能的线条象素。在许多实例中,在其中一个二进制值表示一个图像中线条的一个象素成员和其他二进制值表示了那个象素不是图像中任何线条的成员的情况下,应用一个阈值技术,于是生成一个二进制值的从属图像。因此,在这种实例中,一个从属参数如图像数据阈值,可用于定义图像数据范围内的一个点,这个点可以在图像数据间划分范围,图像数据表示一个象素很可能成为一个线条中的成员,和图像数据表示该象素很可能代表表面的高度织构和/或低对比度背景,其中线条嵌入和/或叠加在该表面上。
应该明白:其他更为常见的阈值从属图像技术可被作为选择性的应用。无论如何,这种阈值技术通常根据他们是否具有大于所选择的阈值的图像数据来用人造图像数据代不同的图像象素替。这种人造图像数据通常被选择用于极大地提高在代表图像中将被识别线条的象素和代表高度织构和/或低对比度表面背景的象素之间的对比度。然而,通常,这种人造图像数据不需要严格地限制在二进制值或者图像的极值。无论如何,和代表高度织构和/或低对比度表面背景的象素相比,这种技术趋向于进一步提高表示将被检测线条的象素的对比度特征。
在本发明许多实例中,提供给操作者一个或更多的以前确定的从属图像技术,该图像处理技术由一个或更多可选的从属图像参数所控制,于是从属图像可定制化来为许多高度织构和/或低对比度工件表面提供最可靠的操作和精确的结果,这些工件表面包括一个或更多嵌入和/或叠加的线条。在许多实例中,作为一种为不同特殊类型的工件或工件图像定制化从属图像生成技术的方法,从属图像参数包括图像数据阈值,相对不熟练的操作者可对其选择或修改。基于这里揭示的方法,对本领域中的任一普通技术人员,对于从属图像生成技术不同的修改、扩展或选择将是显而易见的。
在控制器120的控制下,线性变换电路、程序或应用软件160从存储器130或是直接从属图像生成电路、程序或应用软件150输入从属图像。于是,线性变换电路、程序或应用软件160将一个图像转换用于该从属图像上来生成一个转换数据集合,该转换数据集合可被分析以识别线条参数,如相对于一个图像参考轴的线条的角度和/或从线条到这个图像的参考原点的距离。
在许多实例中,前述的描述假定对于为了操作者评估或分析,显示被处理的图像是有用的。因此,确定已处理图像和从属图像的操作进行单独描述。然而,应该明白:更为常见的是,已处理图像的操作或者从属图像或两者都可看作为一个放大图像过程更为普通的实例。因此,应该明白:在许多实例中,作为一个更为常见的放大图像生成电路、程序或应用软件的一部分,从属图像生成电路、程序或应用软件150和已处理图像生成电路、程序或应用软件140可结合在一起并且不可分辨。在许多实例中,另一种可选择方案是:一个更为常见的放大图像生成电路、程序或应用程序中可以省略从属图像生成电路、程序或应用软件150,或者是已处理图像生成电路、程序或应用软件140,并仍可根据本发明提供一个可用的放大图像。在许多实例中,更为常见的放大图像生成电路、程序或应用程序可以显示与已处理图像生成电路、程序或应用软件140操作相对应的一个中间图像,或是只有最后的一个放大图像。
然而,在其他实例中,可存储并显示已处理图像,当从属图像没有被存储和显示时,用于线条从属确定的不同电路、程序或应用软件可包括和不能分辨的后来用于确定线条的不同的电路、程序或应用软件,如那些上面略述并下面将要详细描述的线条确定电路、程序或应用软件。无论如何,应该明白:在执行包括在线条确定电路、程序或应用软件中的线性变换技术前,与大致的背景象素相比,以前所描述的处理和从属图像技术一起组成一个处理工件图像更为常见步骤的实例来增加可能的线条象素。
在许多实例中,线性变换电路、程序或应用软件160应用Radon变换,例如,正如Peter Toft,IMM,DYU1996年的博士论文“The Radon Transform-Theory andImplementation”中揭示的,这里其全文作参考用而引入。在许多其他实例中,线性变换电路、程序或应用软件160应用了Hough变换,例如正如包括在1995年的Ramesh Jain等,McGraw Hill书中《Machine Vision》的Hough变换换,这里其全文作参考用而引入。
Radon变换和Hough变换通常是指线性变换或直线转换。正如下面详细描述的那样,对于这种变换,存在于最初图像中的线条可作为非常高的数据(或非常低的数据)蓄电池进行检测。尤其是,表示了被检测线条位置和方向特征的两个参数通过在转换空间中的相应蓄电池的两个坐标来确定。于是,图像中的线条检测就转换成检测蓄电池二维转换空间的局部最大值(或最小值)。
尤其是,基于它在从属图像中的图像数据和位置,Radon变换将从属图像中相应象素的图像数据转换为一个具有各自特征的线条数据的相应曲线,该曲线经过限定了转换的数据空间的二维阵列中的许多元素或域。尤其是,二维阵列每个元素或域存储了一个累加值,在所有所期望的从属图像的各自象素已经被转换后,该累加值表示所有经过那个元素或域的各自线条的累加线路值。因此,总的来说,这种线性变换,尤其是Radon转换,表面上生成两维数据集合,包括局部极值,即表面上对应于可能的单独线条的局部最大值和局部最小值。
尤其是,在Radon变换中,在变换空间中一个轴限定了从一个在捕获的原始图像的参考位置的原点一条直线的间距,而变换中的其他轴相对于一个参考线或轴定义了一条直线的角度。在Radon变换中,输入图像中将被检测的直线,通常由相似图像数据的象素组成并被沿着在输入图像中的X-Y平面中的各自直线阵列,将会在Radon转换空间将生成曲线,理想情况是,这些曲线全部都经过一个单个域或元素,或者更为现实的是,通过其中一个相对小的局部化的邻近域或元素。因此,如果原始图像中将被检测的直线趋向包括有比周围织构表面背景相对更高的图像数据的象素,那么对应于该直线的域或元素(或域/元素)将趋向比与转换的织构表面背景相对应的典型的域或元素有更大的累加值。
同样地,如果原始图像中将被检测的直线趋向包括比周围织构表面背景有相对较低的图像数据的象素,对应于那条直线的域或元素(或域/元素)将趋向比与转换的织构表面背景相对应的典型的域或元素有更小的累加值。
参考期望的将被识别的线条,局部极值可以说是包括“适当极性”的局部极值,该局部极值相应于将被识别的线条有一个极性,以及“相反极性”的局部极值。即,当原始图像中将被检测的线条趋向包含有比周围的织构表面背景相对较低的图像数据的象素时,相应于这些将被识别的线条的“适当极性”的局部极值就是最小值。当原始图像中将被检测的线条趋向包含有比周围的织构表面背景相对较高的图像数据的象素时,相应于这些将被识别的线条的“适当极性”的局部极值就是最大值。
正如上面所说,每一个域或元素(或域/元素)有一个与其结合的角度坐标和间距坐标。尤其是,这个局部极值的二维坐标用于定义在原始图像中相应独立线条的位置。在许多实例中,选择转换空间的参考原点和角度参考轴以便这些角度和间距的值表示了线条的角度,这些线条出现在与输入图像的轴和输入图像中从原始位置截取该线条的轴相关的输入图像中。
因此,线性变换电路、程序或应用软件160依次地选择从属图像中的每个象素,并且将特定的线性变换如Radon或Hough变换应用于该象素,并累加在相应曲线穿过的转换空间中每个域或元素中的值,曲线是通过象素的特定变换而产生的。一旦线性变换电路、程序或应用软件160选择了在从属图像中所有期望的象素,在控制器120的控制下,线性变换电路、程序或应用软件160输出转换数据集合到存储器130或直接到转换数据分析电路、程序或应用程序170。
在控制器120的控制下,转换数据分析电路、程序或应用程序170从存储器130或直接从线性变换电路、程序或应用软件160输入转换数据集合。转换数据分析电路、程序或应用程序170在相应的原始图像中将被检测的线条的转换数据空间中分析转换数据集合来识别适当极性局部极值。应该明白:一个杂乱或只有一个近似直线将不会转换为在转换空间中的一点,但是会导致一束聚点,该束聚点与对应于直线表示法将被考虑的重心的集束中心的坐标一起包括可操作的局部极值。
这种适当极性局部极值,如局部最大值或局部最小值,可以通过任何已知或后来形成的方法进行识别。例如,在许多实例中,那些存储比在转换数据集合中的背景数据非常高或低的累加值的数组元素或域被认为是累加的最大值(最小值),这些值被看作为将被检测的线条的候选者。尤其是,在许多实例中,根据一个确定的阈值,数据转换分析电路、程序或应用软件170识别那些具有一个累加值的数组元素或域,该累加值大于(小于)一个背景累加值,该背景累加值是通过一个由所确定的阈值定义的数量进行计算的。
例如,在许多实例中,一旦为转换空间确定了最大和最小累加值之间的范围,那么转换数据分析电路、程序或应用软件170就识别一个具有累加值的最大值(最小值),该累加值大于(小于)所确定范围的阈值百分数。
总的来说,保证在这种线性变换数据空间中一个局部最大值(最小值)对应于图像中所需类型的线条是一个重要的问题。然而,在如下面将更详细描述的那样,根据本发明,某些处理图像操作和/或从属图像操作导致了可被转换为提供局部最大值(最小值)的图像,这些局部最大值(最小值)稳健可靠地表示甚至杂乱或不完全的线条,这些线条相对于它们的背景来说具有较低的对比度。
尤其是,在根据本发明的许多实例中,对根据本发明的许多图像放大操作,如这里描述的处理图像数据和/或从属图像操作进行确定以便它们生成可被转换的图像,这样极性适当的全局极值,即在全部转换空间中的一个或更多的极大(小)值易于对应于将被检测的线条。应该明白:和许多局部最大值(最小值)识别和分析方法相比,这种极性适当的全局极值可被快速可靠的识别。
而且,应该明白:当彼此相对方位已知的直线将被检测时,尽管存在将被检测的线条嵌入在、组成或叠加在高度织构和/或低对比度背景上的事实,这些背景可包括如线性编织特征等,这些特征形成转换数据空间中无关的局部最大值(最小值),该局部最大值(最小值)具有的值大于与被检测线条相对应的至少一些局部极值,根据本发明的某些其他方法为尤其是为相应于将被检测的线条的特定局部极值提供更为稳健和快速的确定。
尤其是,正如下面参考图5所述,依据本发明原理的工件检测,典型的是,可知道或确定工件检测图像上的将被检测的线条的数量,并在大致的公差内可以知道或确定检测图像上的将被检测的线条间的相互间距,及在大致的公差内可以知道或确定检测图像上的将被检测的线条间的相互角度。在许多实例中,在工件的表面背景上,检测图像中的将被检测的线条间的角度及与编织图案相关的的一条参考线(或其他特征)等也可以在大致的公差内可被识别和确定。
因此,依据本发明中系统和方法的许多实例中,一旦确定了候选数组元素或域,即具有大于(小于)阈值的累加值数目的候选局部极值,转换数据分析电路、程序或应用软件170就能分析候选数组元素或域的角度和间距值来确定表面上应对应于在原始从属图像中将被检测的线条的哪一个候选数组元素或域(候选局部极值)对应于一个或更多已知的或确定的线条约束,如线条的数量、彼此的间距,和/或相对于彼此间,和/或在背景表面相对于一条参考线的角度。候选数组元素或域(候选局部极值)的选择受限于那些候选阵列中的对应于一个或更多线性约束的元素或域(候选局部极值),实际上这些元素或域最终对应于将被识别或检测的所需线条。
依据本发明,当应用直线转换如Radon或Hough转换时,由于这些转换空间的坐标轴对应于已知或已确定的间距或角度,确定候选数组元素或域是否满足已知或确定的直线约束是非常快且简单的。例如,在一个实例中,每个将被检测的线条的精确数目都是已知的并且确定在原始图像是相互平行的。因此,相应于这些将被检测线条的每一个候选数组元素或域必须是一组候选数组元素或域的一部分,这些候选数组元素或域在转换空间的“角”坐标中有相同的坐标值,并且在大致的公差范围内,该组中至少有与将被检测的线条的数目相同的许多最大值(最小值)。因此没有满足该条件的任何候选数组元素或域可被简单快速地忽略。
如果有多个满足此条件的一组候选数组元素或域,或者如果有一组比将被检测的线条的特定值有更多的数目,那么线条之间已知或确定的彼此间的间距可被用于进一步减少候选数组元素或域,直到只与那些将被检测的实际线条相对应。例如,在允许的公差范围内,在转换空间的一个特殊角度坐标中,每一组实际对应于将被检测的线条的候选数组元素或域必须用对应于已知或确定的许多将被检测的线条间的间距差异沿着“间距”坐标轴与该组中其它成员隔开。不满足该条件的任何候选数组元素或域将被忽略。典型地,在这些筛选步骤之后,在原始图像中,剩余的候选数组元素或域大致对应于实际的将被检测的线条。
在涉及到将被识别的相互平行线条的另一个实例中,依据本发明的不同的图像放大操作,趋向于确保将被识别的线条导致适当极性局部极值,在转换数据中这些适当极性局部极值是在相对的最极值的局部极值中。在这个实例中,执行一个将元素或域集合的每“列”相加的操作,这些元素或域在转换空间沿“角度”坐标轴中具有有相同坐标值。因此,对应于将被确定的相互平行的线条,转换空间中沿着“角度”坐标轴有相同坐标值相应的一组局部极值将被求和以能够沿着角度坐标轴中生成一个适当极性的一维全局极值。
因此,对应于沿着角度坐标轴中一个适当极性的一维全局极值适当极性的一维全局极值,一个实际上相应于将被确定的线条的局部极值的“选择”范围可以被约束到二维的转换空间,这个转换空间存在于角度坐标的附近。尤其是在这样的一些实例中,在所限制的选择区域内的最极端的局部极值被用于对应将被检测的线条。在其他这样的实例中,在所限制的选择范围内,此范围也对应于一个为相互平行的线条确定的线条间距约束,一些最极端的局部极值被用于对应将被检测的线条。
应该明白:这是一个所确定线条约束或相应的转换分析参数如何用于提供一个实际上对应于将被检测的线条的局部极值的限制选择范围的例子。根据其他类型线条约束或对应的转换分析参数的限制一个选择范围的方法对于这里所包括讲授的本领域的一个普通技术人员来说是显而易见的。
应该明白:尽管已详细描述了稳健地检测平行线条的例子,但类似的原理可适用于稳健地筛选对应于与将被检测的相互定位的非平行线的候选数组元素或域。更常见的是,在转换空间候选数组元素或域中生成可检测的最大值(最小值)的任何已知或确定的相互间的间距、相互间的角度和/或其他背景参考特征的角度可以被转换数据分析电路、程序或应用软件170用于筛选和/或除去不合适候选数组元素或域,并且更能稳健地识别将被检测的实际线条。
应该明白:由于这种筛选尤其简单、快速和可靠,在使用这种筛选的许多的实例中,有效地限制候选数组元素或域的数量的任何阈值或其他参数或操作可被设置或排列来确保至少所有对应于将被检测线条的转换空间最大值(最小值)可作为候选者保留。也就是说,这种阈值或操作可被适当设置,以便对应于图像外来特征的转换空间最大值(最小值)可作为候选者被包括。
这种适当的方法使线条检测错误极小或没有风险,因为依据本发明的这种方法先前描述的候选者的筛选是非常简单、快速和可靠的。因此,当对所有将被检测的实际线条提供稳健的完全检测时,相对于错误的检测,依据本发明的系统和方法的许多实例尤其稳健。另外,正如前面提到,这些系统和方法的不同实例可在一个非常有条理和简单的模式下执行并且操作速度非常快。
在许多实例中,当剩余的候选数组元素或域(例如适当极性局部极值)和已知或确定的线条约束相配,转换数据分析电路170就输出一个表示在已被识别和/或定位的原始图像中将被检测线条的信号。在许多实例中,基于它们确定好的定位,转换数据分析电路170也输出一个表示在原始工件中将被检测的线条是否根据它们所确定的位置传递一组特定检测标准的信号或信息。否则,转换数据分析电路、程序或应用软件170就输出一个错误信号或一个表示这个工件不包括满足已知或确定线条约束的线条,并且应被去除和/或进一步分析的信号。
应该面自:在其他许多实例中,上面描述的关于线性变换操作的某些步骤或操作可被去除或取代,这样线性变换操作可在一个更为简单和快速的方式下执行。例如,如果每个包括已知相对定位的将被检测线条的工件可被相对于图像帧进行设定或安排,以便相对于图像帧来说,将被检测的线条的角度通常被限制在一个预先确定的相应角度允许范围内,于是转换操作只需为那些转换空间中的元素或域执行,这些转换空间中的元素或域都在相应的角度允许范围内。当然,这也自动去除了可能在转换空间中其他位置产生的不相关的最大值(最小值),减少或根本去除了筛选未在转换适当部分的候选数组元素或域的必要。
进一步讲,应该明白:如果包括已知相对方位的将被检测线条的每个工件相对于图像帧设置或安排,以便将被检测的线条通常被限制在一个相对于图像帧允许的预先的间距范围内或图像中的参考间距原点,那么转换只需为那些在转换空间中相应的间距范围内的元素或域执行的操作。这样就大大减少了转换操作所需的时间,和进一步自动去除了可能在转换空间中其他位置产生的不相关最大值(最小值),还减少或根本去除了更广泛地筛选候选数组元素或域的必要。
应该明白:在以前的讨论中,为了筛选或限制候选数组元素或域或局部极值,已知或确定的线条约束或它们相应的转换分析参数的应用,通常是作为在转换数据范围内或二维转换空间中发生进行描述的。如果转换类型和/或转换空间维数类型选择适当,它们通常会十分有效的执行。然而,依据本发明的方法并不受如此局限。在许多实例中,如果相关线条约束的筛选或限制可更为简单地应用在其他的参数空间,一组候选局部极值就可被转化为另外的参数空间中的相应线条表示。例如,一组候选局部极值可简单地转换一组对应于原始工件图像的线条位置。然后,如果需要,约束可用于这些线条定位。因而,前面的相应于不同的线条约束的筛选或限制操作仅仅是举例,而不是起限制作用。
应该明白:在许多实例中,利用各自不同的高度专用的工件类型的参数,已处理图像生成电路、程序或应用软件140,从属图像生成电路、程序或应用软件150和转换数据分析电路、程序或应用软件170通过使用是高质量工件类型特有的不同参数在原始图像上分别操作作已处理的图像、从属图像和转换数据集合。也就是说,对于一个给定类型的工件,线条约束和专门图像特征往往是非常独特的。因此,为了利用上面所述的计算机图像检测系统10高效、可靠和稳健地检测任何工件,这些不同的参数必须被对应于那种类型工件的一个代表性图像所确定,并被合并到相应检测工件类型的计算机图像检测系统10所使用的部分程序中。
尤其是,已处理图像生成电路、程序或应用软件140,从属图像生成电路、程序或应用软件150,线性变换电路、程序或应用程序160,转换数据分析电路、程序或应用软件170和工件部分程序生成电路、程序或应用软件180在训练模式等过程中根据将被检测的特定工件和由该工件的图像测量仪器200所捕获的原始输入图像来用于确定、定义和/或调节不同的参数,这些不同的参数由处理图像生成电路、程序或应用软件140,从属图像生成电路、程序或应用软件150,转换数据分析电路、程序或应用软件170所利用。
总的来说,在确定、定义和/或调节不同参数的操作中,计算机图像检测系统10的操作者,在调节计算机图像系统200以集中在一个预期的包括将被检测的线条的工件部分上,和设置合适的照明系统后,就捕获包括被检测的线条的工件部分的一幅图像。
然后,在利用不同的线条约束或特征来筛选候选数组元素或域的那些实例中,正如上面所提出的,操作者定义一个或更多的线条约束,或者通过操作工件定义特征提取电路、程序或应用软件190来分析一个工件定义文件,或者通过利用不同的图像处理和/或检测工具来作为在捕获图像中出现的将被检测的凸版照相线条的特征,正如下面参考图5所提到的。另外,相似的操作可用于定义捕获图像的背景部分中的一个或更多特征,它们将作为为确定涉及这些特征的一个或更多线条约束的参考线条或点。
也就是说,操作者可以定义线条约束以便只定义相关或线条内的约束。另外,可代替这些线条内的约束,操作者也可定义约束,例如,线条内的约束,它定义了被识别的线条和出现在捕获图像中的工件的其他特征间的关系。然后操作者可以启动工件部分程序生成电路、程序或应用软件180生成部分程序指令,这些指令记录和/或利用这些线条内和/或线条外约束。
总的来说,操作者操作已处理图像生成电路、程序或应用软件140从一个原始捕获图像生成一个处理图像。正如上面所说的,在许多实例中,依据本发明的原理,一个缺省的图像处理操作的集合或序列可以设置在存储器部分130中,以便相对不熟练的操作者通过选择和/或调节一个或更多处理参数可操作图像处理操作的缺省序列,这些参数高效地定制了一个特殊工件的这些处理操作。
在此情况下,利用处理参数的一个起始或最初值,操作者最先调用处理图像生成电路、程序或应用软件。一旦利用处理参数的这个最初或起始值生成处理图像,操作者就显示正在生成的处理图像并确定处理参数当前值是否应被调节。正如上面所提到的,在一个实例中,处理参数定义当前利益象素附近的尺寸,这个尺寸被分析以确定最小(最大)图像数据,此图像数据用于代替处理图像中的当前利益象素的图像数据。同样,正如上面所提到的,应该明白:在许多实例中,这种的处理参数应被选择,以便将被检测的线条宽度和/或连续性将得到充分的提高。另外,在许多实例中,处理参数可被选择来抑制工件背景表面上的高空间频率线性特征。
另一方面,应该明白:处理参数不能太大,以至于处理图像中两个邻近的线条合并为另外一条,从而导致不可能将两线条区分开。还应该明白:处理图像中的放大线条与模糊线条很相似,并且这就可能为实现定位一个线条而降低了分辨率、重复性和/或精确度。实际上,根据特殊的检测需要或一个特殊工件间,处理参数的选择应该能够在这些不同因素之间提供一个预期的平衡。
应该明白:在其他许多实例中,而不是使操作者显示生成的处理图像和决定是否调节处理参数值,与通过工件定位文件特征提取电路、程序或应用软件190确定,或通过分析一个将被检测线条的凸版照相图像相同,根据不同相邻线条的线条间距,通过工件部分程序生成电路、程序或应用软件180,可自动确定处理参数数据。总的来说,基于任何两个将被检测线条间的最近间距,处理参数通常将被约束。
在一个实例中,本发明者已经确定,当应用先前描述的相邻半径作为一个处理参数值时,如果邻近半径大致是两个将被检测线条的间距的1/10到1/13时,就可以得到好的结果。然而,由于依据本发明方法的整体稳健性,和前面提到的对于特殊类型的工件检测的适当权衡,这个范围仅是举例用,并没有限制作用。一旦确定适当的处理参数数据,就调用工件部分程序生成电路、程序或应用软件180来将该数据到嵌入该工件的部分程序中。
接着,操作者启动从属图像生成电路、程序或应用软件150将适当的处理图像转换为一个可能对应于将被检测线条象素的从属图像。尤其是,正如上面所说的,在许多实例中,从属图像生成电路、程序或应用软件150应用一个图像数据阈值到处理图像中以生成二进制的从属图像。和处理图像很相似,在许多实例中,依据本发明原理的一个或更多缺省的从属确定操作可设置存储器130中,以便一个相对不熟练的操作者可以通过选择和/调整操作一个或更多从属参数,这些参数高效地定制了一个特殊工件的缺省从属确定操作。在此情况下,利用一个起始或最初值,操作者就可开始调用从属图像生成电路、程序或应用软件150。一旦利用这个起始或最初值的从属图像生成,操作者就可以显示生成的处理图像,并且确定处理参数的当前值是否需要调整。
例如,在许多实例中,正如上面所说,从属参数是一个图像数据阈值。在这种实例中,如果从属图像的当前值和一个图像数据极值太接近,那么在从属图像中一个象素不足的数量就会被识别为线条的数量,即,如果从属图像中的线条太“稀疏”了,可调整从属参数远离那个极值。相反,如果从属图像数据非常接近其他图像数据极值,这样许多象素就会被识别作为从属图像中的“线条”,以致于“线条”不可能从彼此之间和/或从背景中区分出来,更确切地说,如果在从属图像中的“线条”太“杂乱”了,可调整从属参数远离那个极值。尤其是参考图8和图9,这种考虑将在下面更详细地讨论。
应该明白:操作者可重复执行这种分析,或者通过工件部分程序生成电路、程序或应用软件180自动执行。一旦确定了从属参数的适当的值,工件部分程序生成电路、程序或应用软件180就被启动以使该值嵌入到一个或更多工件的部分程序指令中。
依据本发明的许多实例中,由于在转换空间中筛选候选数组元素或域的上述不同操作的效率,应该明白:在许多实例中,可适当设置有效限制了象素的任何从属极值等,这些象素作为对应于将被检测的线条显示在从属图像中。即,从属参数的设置要使至少实际上对应于线条的大部分象素被作为线条成员表示。尽管这个会产生一些对应于图像外来特征的象素,这也是真实的,这些图像的外来特征也作为线条成员表示。
这种保守的方法使线条检测错误极小或没有风险,因为依据本发明的系统和方法,前述的在转换空间的候选筛选是特别的简单、快速和可靠。因此,和在前的高度织构和/或低对比度的背景的检测线条的方法相比,本发明的系统和方法尤其稳健能防止错误检测,同时为所有实际将被检测的线条提供完全稳健的检测。另外,正如前面指出的,该系统和方法可在十分有条理和简单的模式下执行,并且操作速度非常快。
总的来说,操作者接下来按顺序调用线性变换电路、程序或应用软件160将从属图像转换为转换数据集合,并且调用转换数据分析电路、程序或应用软件170分析生成的转换数据集合来检测将被检测线条的位置。正如下面参考图4、10和11所描述的,在许多实例中,转换数据分析电路、程序或应用软件170根据一个变换分析参数的最初或起始值,开始分析转换数据集合。然后,根据如何使生成的线条检测结果与将被检测线条的特征更接近的匹配,操作者重复地调节转换分析参数和重新调用转换数据分析电路、程序或应用软件170,直到转换数据分析电路、程序或应用软件170精确识别只有那些实际对应于将被检测的预期线条的数组元素或域。当然,应该明白:操作者可重复执行这种分析或通过转换数据分析电路、程序或应用软件170自动执行。
应该明白:如果转换分析参数的值不能调整,那么只有预期的线条被转换数据分析电路、程序或应用软件170识别,正如上面关于从属图像生成电路、程序或应用软件150和/或已处理图像生成电路、程序或应用软件140所指出的,操作者就可以调节从属参数和/或处理参数的值。在此情况下,就像上面所提到的,考虑到新的处理和/或从属图像,操作者会重新调用线性变换电路、程序或应用软件160和转换数据分析电路、程序或应用软件170来再次调节转换分析参数的值。一旦确定了适当的转换分析参数的值,工件部分程序生成电路、程序或应用软件180就被启动而产生用于转换分析参数所确定值的一个部分程序指令。
在许多实例中,对于每个图像,控制系统部分100将一个或更多的检测操作结果输出给输入/输出接口110以能将结果输出给其中一个不同的显示设备112,该显示设备112可包括监控器111、打印机等。控制系统部分100也可以将一个或更多的检测操作结果存储在存储器130中。
在执行不同的检测操作中,许多已知的图像处理和/或特征分析或检测工具可协助使用。例如,这种工具可包括:形状或图案匹配工具,边缘和/或边界检测工具,圆形和维数测量工具等。在一个依据本发明的精确计算机图像检测系统中利用这种视频工具的例子将参考图5进行更详细的描述。
在依据本发明的系统和方法的许多实例中,图像检测操作包括利用线条参数转换和线条约束操作来定位和检测互相关联或平行的线条。一旦图像检测操作产生并被存储,生成的图像检测操作可作为部分程序中的一个步骤,来操作计算机图像检测系统10对所获得的图像执行检测和测量操作。
图3是一幅流程图,表示一个生成和利用部分程序来检测一个工件的方法的实例,该工件上有高度织构的和/或低对比度表面,该表面上高度织构和/或低对比度地嵌入、阵列或叠加了许多线条。如图3所示,操作从步骤S100开始,一直到步骤S200,其中产生了一个部分程序,它不能用于检测具有许多线条的高度织构和/或低对比度表面的工件部分。然后,在步骤S300中,运行生成的部分程序。下一步,在步骤S400中,利用该部分程序,具有高度织构和/或低对比度表面和线条数目的许多工件被检测。该操作继续到步骤S400,在该步骤中方法的操作就结束了。
图4是一幅流程图,指出为至少生成部分程序的一部分的方法的一个实例,该程序检测了具有大量嵌入、阵列或叠加在工件上的线条的高度织构和/或低对比度的工件,其中线条的相对定位是已知的。如图4所示,操作总步骤S200开始,一直到步骤S205,其中操作者将一个图像检测系统输入到一个学习模式中。然后,在步骤S210中,操作者通过控制计算图像检测系统生成部分程序的第一部分来将至少一个高度织构和/或低对比度的工件的所需部分放置到图像检测系统的一个视觉范围中,使图像检测系统集中于工件的所需部分上,并且适当地照亮工件的该部分。下一步,在步骤S215中,捕获一个高度织构和/或低对比度的工件的预期部分的输入图像,该工件在图像检测系统的视觉范围内。然后操作持续到步骤S220。
应该明白:依据本发明,高度织构和/或低对比度的工件的预期部分将有许多已知相互定位的线条。也就是说,对于每个相似的工件,那些线条相互之间将一致安排。而且,应该明白:作为步骤S210的一部分,或者通过明确地将这些数据合并到由部分加工编程语言编写的部分程序指令中,或者通过调节图像检测系统直到工件的相对位置和图像检测系统和工件上的光源生成了一个可接受的捕获图像,或利用这两种技术,操作者会定义照明设备和/或焦点和/或视图设备范围。还应该明白:这些生成可接受捕获图像的参数数据被合并为一个或更多正在生成的部分程序的部分程序指令。
在步骤S220中,捕获的输入图像输出到图像检测系统的控制系统、图像处理系统等。下一步,在步骤S225中,在许多实例中,操作者定义一个或更多线条参数或线条约束,这些线条参数或线条约束定义一个或更多捕获图像中将被检测线条间的关系和/或一个或更多捕获图像中与其他特征的关系。操作持续到步骤S230。然而,应该明白:在许多实例中,这种线条约束、线条参数和/或关系都没有使用。在这种实例中,省略了步骤S225,并且操作直接从步骤S220跳到步骤S230。
当需要使用时,这些关系可以定义,例如,一对线条间的角度,如平行线的0°和垂直线的90°,一个与所定义的原点相关的一对线条和/或所捕获图像的一对轴之间的间距,一个其中的线条和一个出现在所捕获的输入图像中工件特征一个边缘或一些其他线条或类似线条特征或一些其他类型特征之间的角度。在许多实例中,操作者将一个或更多图像处理和/或特征分析工具应用到输入图像中来确定和/或定义这些一个或更多线条参数、线条约束和/或关系。这种操作的例子将参考图5在下面进行详细的描述。另外,在其他许多实例中,除去或代替操作者定义的,这些线条参数、线条约束和/或关系可以从工件定义数据中,如一个定义工件的CAD文件提取出来。
在步骤S230中,至少一个处理参数的第一个或下一个值被选择为一个当前值。在这些包括步骤S225的实例中,该处理参数可以根据至少部分一个或更多经过定义或确定的线条参数、线条约束和/或关系,例如线条间距来确定。下面参考图5-7将详细讨论相关的考虑。下一步,在步骤S235中,处理参数的当前值用于从捕获图像中生成一个处理的图像。于是,在步骤S240中,就作出一个生成的处理图像是否被接收的确定。如果接收,操作就跳到步骤S245。否则,操作就回到步骤S230,其中处理参数的另一个值被选择为当前值。应该明白:在步骤S240中,该决定可以通过将生成的处理图像显示给操作者同意来产生。在其他许多实例中,决定可以不通过操作者的输入,由自动分析处理图像产生。相关考虑将在下面参考图6和7进行更详细的讨论。
在步骤S245中,一旦获得一个适当的处理图像,利用处理参数的当前值而生成处理图像的一个部分程序指令就能被生成或记录。于是,在步骤S250中,从属参数的第一个或下一个数据被选择为从属参数的当前值。下一步,在步骤S255中,线条从属参数的当前值用于从处理图像中生成一个从属图像。于是,在步骤S260中,就确定生成的从属图像是否可接受的决定。如果接收,操作就继续到步骤S5265。相反,操作就回到步骤S250,其中线条从属参数的另一个值作为当前值被选择。
应该明白:在许多实例中,步骤S260中的决定可以通过将从属图像显示给审查和同意的操作者来产生。在许多其他实例中,除去或代替操作者的同意,步骤S260中的决定可以自动产生。还应该明白:无论是开始或者是在当前从属图像被拒绝后,步骤S255中的选择都可以自动或通过操作者生成。相关从属图像决定的许多考虑将在下面参考图8和9进行更详细的讨论。
在步骤S265中,从属参数的一个合适的值经过确定后,就产生或记录一个部分程序指令以能从该确定的线条从属参数中的处理图像中生成从属图像。于是,在步骤S270中,一个线性变换被用到从属图像来将从属图像转换为一个转换数据集合,该数据集合经过分析来识别线条参数,如当前在原始捕获图像中的线条数量、相对或绝对角度、相对或绝对间距等。然后操作继续到步骤S275。
正如上面所述,在许多实例中,用于从属图像的线性变换可为Radon变换、Hough变换或其他任一已知或后来发展的变换,该变换允许确定至少一些表示了工件的将被确定线条的特征的线条参数。应该明白:在依据本发明的包括步骤S225的许多实例中,正如上面所述,如果希望线性变换在一个参数空间格式中提供转换数据,该参数空间格式与用于表示线条参数、线条约束和/或关系等特性的参数相对应。在许多实例中,这些参数包括线条角度和/或线条偏移和/或相对于轴和/或参考坐标系统的原点的位置。
在步骤S275中,选择一个转换分析参数,或者一个或多个转换分析参数的第一个或下一个值作为当前值。下一步,在步骤S280中,数据分析参数的当前值用于识别转换数据集合中的特殊数组元素,该转换数据集合代表了原始输入图像中的线条。于是,在步骤S285中,根据转换分析参数的当前值,来确定所识别的线条是否精确地对应于需要识别的原始输入图像中的线条。如果是,操作就继续到步骤S290。相反,操作就回到步骤S275,其中选择一个新的转换分析参数数据。尤其是如果有更多的线条需要识别,转换分析参数将调整为更具有可选择性。相反,如果实际上识别的线条比所有预期将被识别的线条更少,转换分析参数将调整为具有较小的选择性。关于线性转换操作和相关的转换分析参数的不同考虑将在下面参考图10和11进行更详细的讨论。
应该明白:通过在步骤S285中给回顾和同意的操作者显示识别线条的集合能够执行这种确定。在许多实例中,正如被显示图像中在例如图12中放大的那样,这种显示包括激昂已识别的线条叠加在原始工件图像上,以便操作者可以判断线条识别结果的可接受性。例如,在许多不包括步骤S225的线条约束决定操作的实例中,这种操作尤其有用。在包括步骤S225的不同实施例中,除了或代替操作者的分析,识别线条集合可以与手工的、半自动化的或自动化的与确定的线条参数、线条约束和/或关系相对比,或另外评估利用。
在许多实例中,操作者进入以一个学习方式执行一个对比或评估的程序步骤或操作,这些步骤或操作记录在部分程序中。在其他的许多实例中,执行这样一个对比或评估的操作设置为控制系统部分100的以前确定的和/或二次操作。在此情况下,为了采用一个特殊工件的对比或评估,只有表示了线条约束的特征,例如,线条的数目和/或它们的角度和偏移量等的可变参数需要在部分编程过程中提供。
在步骤S290中,将从属图像转换到转换数据集合和分析转换数据集合的一个或更多的部分程序指令根据所确定的转换分析参数而生成或记录。下一步在步骤S293中,为完成检测有许多嵌入、阵列或叠加在工件上的线条的高度织构和/或低对比度图像的部分程序,执行任何附加的部分程序生成操作。然后,在步骤S296中,训练模式结束。于是操作就继续到步骤S299,其中操作回到步骤S300。
在许多实例中,以前的描述假定,为了步骤S240中的评价或分析,在步骤S235中获得或显示已处理图像是十分有用的。于是,从确定和评价从属图像的步骤S255和S260,分别描述确定和分析已处理图像的操作。然而,更普遍的是,应该明白:从属图像操作也可认为是已处理图像操作的扩充。于是,应该注意到:在许多实例中,就不存储或显示已处理图像,并且可以合并和/或不区分确定从属图像和已处理图像的不同操作。
然而,在另外的实例中,已处理图像可以存储或显示,而从属图像可不存储或显示,并且用于线条从属决定的不同操作可以包括及不从后来用于线条确定的不同的操作中区分,例如上面参考步骤S270-S285所述的以及下面将进行详细描述的那些线条确定操作。因此,应该明白:包括在步骤S230-260中先前描述的处理和从属图像操作共同构成一个具有更多常用处理工件图像步骤的实例,和大致的背景象素相比,在执行包括在线条确定操作中的转换操作前,该实例能够提高可能的线条象素。
同样,应该明白:尤其在许多实例中,至少一个线条约束是已知或确定的,例如,包括步骤S225不同的实例,步骤S285可自动执行,并且步骤S275-S285可以合并和/或不区分出来。因此,应该明白:以前描述的选择转换分析参数、转换数据分析和包括步骤S275-S2850的线条结果评价的操作一起组成一个实例,该实例有一个更为常见的分析转换数据来确定或识别将被确定的线条步骤。这种相关的线性变换分层参数和线条识别考虑将在下面参考图10和11进行更详细的讨论。
还应该明白:在这些执行涉及步骤S225的线条约束操作的实例中,倘若在任何利用结果线条约束的操作之前执行这种约束确定操作,这种操作可按图4中出现的操作顺序在任何方便的点实际执行。
还应该明白:参考图3描述的实例通常作为一个例子描述,在此例子中,包括在步骤S230-S235和步骤S250-S25中的不同的图像放大操作设置为以前确定的技术和/或二次操作,并且控制这种操作的不同参数通常通过操作者或自动地选择,来完全确定这种操作。然而,就像以前描述的,在其他许多实例中,作为提供一个用于步骤S270的操作的放大图像的可选方法,一个高效熟练的操作者可独立生成部分程序指令来提供用于代替包括步骤S230-S235和S250-S255操作的技术。这种独立生成的部分程序指令通常通过这里许多实例中提到的图像放大技术产生。
图5表示了一个高度织构和/或低对比度工件的捕获输入图像300的实例,其中该工件上有许多嵌入、形成或叠加的线条。尤其是,图5表示了一个编制安全气袋的材料。利用一个放大透镜捕获图像300,这样该材料的编制线在图像中就非常明显。如图5所示,图像300包括许多较深的叠加线条301-306,它们是利用依据本发明的系统和/或方法将被检测的线条。由于编制材料的织构,叠加线301-306实际上主要由通常沿着图5中虚线所示的线条定位所分开的线条片断组成,为了方便表示这些将被检测的片断的或“杂乱”的线条,它们已经增加在图5中。在捕获图像300中,编制材料的凸起部分将相对较多的光线反射给了图像捕获装置,于是在图像300中显得较亮。这样,图像的深色部分表示了线条301-306,以及在编制材料中是“山谷”的高度织构材料的部分,因此接收到较少的光线和/或反射给图像捕获装置较少的光。于是,由于因编制材料中的线条和“山谷”之间间隔的引起的线条301-306和图像深色部分,在深色部分间就具有相对低的对比度。
由于高度织构材料也有高度规则性,正如图像300中通过线状特征307或与线状特征307邻近的织物中“山谷”及它们类似的水平对应物的放大,高度织构编制材料的线条生成线状的特征。应该明白:这种线状特征也将在转换空间中生成许多相应的最大值(最小值)。然而,还应该明白:以前描述的为生成处理图像和从属图像的操作产生了通过线性变换转换的图像以能在转换空间中相应于将被检测的线条提供一个全局最大值(或最小值,如果适用),并且与不同的局部最大值(或最小值)识别分析方法相比,这种全局最大值(或最小值,如果适用)可被高速可靠地识别。
而且,应该明白:前面描述的为确定一个或更多线条约束或参数的执行操作的许多实例中,并且就像前面描述的,这些约束用于筛选候选数组元素或域,这些背景中的线状特征可更为容易地从将被检测的线条中区分出来。更进一步,在这种实例的进一步修改中,正如下面关于线段343和353的描述,一个或更多对应于这种线状背景特征的最大值(或最小值),特别是这种最大值(最小值)的角定位坐标可提供一个参考线角度,该线角度对于稳健地筛选和/或识别将被检测的实际线条是有用的。
图5也表示了许多视频工具特征,这些特征由操作者在图像中定位,或在不同实例中利用适当的图像处理和/或分析工具自动定位。尤其是,在图5所示的实例中,与一个实例“点工具”等相关的许多点识别标记320放置在由操作者评估的并与图像300中线条301-306的位置相对应的位置上,该实例的“点工具”在多种商业计算机图像系统和软件中可用。在图5表示的实例中,这些点识别标记320在相对于一个坐标系统原点310定义的图像300中有位置,该原点位于图像300的中心。根据识别这些点识别标记320之间的距离,例如利用一个可在多种商业计算机图像系统和软件中得到的“距离工具”等,可确定相邻成对的线条301-306间的距离或线条间距331-335。
另外,通过利用一个放置在其中一该线条上的标记340的第一线条定义集合,和相对于背景线状特征307放置的标记350第二线条定义集合可以定义线条301-306,如图5中的线条304的一般角度定位。尤其是,在图5中表示的特定实例中,对线条301-306定义的其中一个线条参数、线条约束或关系是它们相对于图像300中出现的工件背景织物的一个相对固定特征的角。
因此,包含了一组定义了一条线段343的标记341和342的标记340的第一定义集合位于线条301-306其中之一上,例如图5的线条304上。同样,包含了定义了一条线段353的标记351和352的标记350的线条定义集合位于一个工件的背景表面的线状特征上,例如线状组合特征307上。根据这些标记,依据本发明的系统和方法可以确定线段343和线段353之间的一个角度。基于线段343和线段353的角的识别,例如,利用一个可在多种商业计算机图像系统和软件中得到的“角度工具”等,就可以在一个利用计算机图像系统的坐标系统中确定线条301-306的角和/或确定线段间的相对角度。在许多实例中,作为当检测形成于后来工件上的后来线条要满足的一个线条约束,依据本发明的系统和方法将处理将被检测线条间的相对角,这些工件将依据本发明的系统和方法继续分析。
同样,通过一个形成、嵌入或叠加在稍后另一件将被检测的工件上的在后线条集合,在线条301-306间定义的间距331-335定义了需要满足的线条参数、线条约束和/或关系。另外,间距331-335也可以用于确定或定义处理参数,这些处理参数用于扩大由图像300生成的处理图像中的线条的可见度。
图6和图7分别表示了处理图像400和410的两个实例,其中处理操作和前面描述的分析相似,该分析是一个捕获图像中每个象素附近并在该象素的周围附近识别最低图像数据。正如上面所述,为了确定处理图像,每个独立象素给出从其附近识别最低图像数据。对于图6和图7来说,分别使用附近的半径处理参数的两个不同数据。尤其是,在图6中,处理参数的值,也就是说,周围每个象素被分析以确定最小值(或最大值)图像数据的附近的尺寸被设为5个象素。于是,对于图像300中的每个象素来说,包括在一个有半径为在每个象素周围5倍象素间距的圆形区域中的一组象素进行分析以选择出现在5×5的窗口内有最小值(或最大值)的图像数据。相反,图7表示了当处理参数的值被设为8个像素时而获得的处理图像,于是在捕获图像300中定义一个半径为在每个象素周围有8倍象素间距的圆形区域。
如图6和7所示,在已处理图像400和410中,处理参数导致后来丧失图像300背景的图像亮度,于是出现在图像300中的织物线状特征较少被注意到。同时,线条301-306的稍微暗点儿的线段被扩展以便它们变得更为突出、宽及更为连续。例如,在图6中,相对于背景,线条301-306就更加显而易见。然而,由于处理参数数据非常小,虽然线条变得更清楚,但它们相对仍很狭窄和局部化。应该明白:处理参数的通常选择要使处理线条不能变得太宽以至于靠近或并入到彼此中。
相比较而言,与图7中,处理参数的值相对增大了。如图7所示,这就导致了在相应于将被检测的线条的象素与背景象素间的通常较低的对比度。同样,这也导致了线条301-303和线条304-306在处理图像中的趋向更加彼此靠近。换句话说,这就导致了两线条间背景图像象素,如线条301和302,使它们的图像亮度发生变化,于是,在不同的位置上,一个具有线条图像数据的桥梁在线条301和302之间形成或接近形成。于是,相对于图6中所示的结果,将被检测的线条的位置就变得不好定义。
在许多实例中,在操作中,在选择一个或更多处理参数数据的特定值后,生成一个测试处理图像,如图6所示的处理图像400,并显示给操作者(或在其他许多实例中,被自动分析)。如果操作者对所显示的图像满意,那么处理参数的数据将用于后来的操作,该操作相应于后来从相似工件中捕获的图像来生成处理图像。如果不满意,操作者上下调节处理参数的值,并生成一个新的处理图像,该图像如上面所述被再次进行分析。例如,如果最初但未被接受的附近半径处理参数的值是3,操作者就会增大近半径处理参数,例如为5,以得到图6中所示的可接受的处理图像400。相反,如果附近半径处理参数的当前值是8,例如用于生成处理图像410,操作者就会减小近半径处理参数的值并生成一个新的处理图像。
图8和9表示了依据本发明从处理图像400中生成的从属图像的两个实例。如图8和9中所示,从属图像500和510,分别为二进制图像,其中二进制图像的一个二进制图像值分配给展示了与将被检测的线条相关的特征的象素,而另一个二进制值分配给展示了与线条象素特征不同的特征象素。总的来说,如果处理图像400有8位图像数据的象素,其中值255代表了白色,于是可以通过选择一个阈值或从属数据来定义从属图像500或510,该阈值或从属数据将形成线条301-306的较暗的或接近于0值的象素与较高值的背景象素分离开。在许多实例中,通过一个单个的从属参数就可方便地确定从属图像,该单个从属参数通过沿着一个最小和最大图像值之间范围的一个点或阈值进行定义。
例如,在一个实例中,本发明者已经确定了处理图像象素的图像数据可成“柱状”到图像数据域,并且生成的柱状图通常相对于高度织构或低对比度表面背景有一个峰值,该表面背景组成了大部分图像。在许多实例中,发明者发现在此峰值的“适当极性”的一边,寻找邻近的域间的最大值变化的方位是有用的。发明者发现在许多实例中设置一个图像数据阈值是很有用的,该阈值可用作近似于该值的一个从属参数。
在下面的讨论中,任意分配给前面描述的最大值变化的方位的图像值和该图像值范围的最接近极值的图像值间的差值为一个任意指定的一个值1。尤其是,分配给最大值变化方位值为1,分配给图像数据范围的最接近极值的值为0。发明者发现,在一个实例中,设置比“1”更稍微接近于图像数据范围的最接近极值的图像数据阈值是很有用的。通过分析从属图像500可看出此原因,该从属图像500是利用一个从属参数的值为9(按照前面讨论的)而生成的。相反,从属图像510是利用一个从属参数为8的值(按照前面讨论的)而生成的。
由于,在图9所示的从属图像510中,从属参数的值8相对较少包括,仅具有最极端图像数据的象素作为线条301-306的成员被识别。相反,在图8中所示的从属图像500中,从属参数的值9相对更多包括。这就使从属图像中的线条相对杂乱。这就意味着至少一些可能背景象素已作为线条301-306的成员被识别。相应地,在不同的特定工件上或在不同的特定工件图像中,就会存在这样的风险:这种从属参数数据可将甚至更多的可能背景象素识别为线条象素,并且潜在地包括与线条象素一样多的背景象素,以致于在依据本发明的后来线条检测操作过程中线条就变得难于或不可能检测或区分。
相反,由于在图9中所示的从属图像510中,从属图像的值8相对较少包括,在从属图像500中,就更精确、专门地强调线条301-306,并且即使在一个不同的特定工件上有颜色或表面变化或在不同特定工件图像上有图像变化,也很可能正确地将它们识别出来。然而,一种权衡就是这会稍微增加风险,即在不同的特定工件上或在不同的特定工件的图像上,这种从属参数数据可以排除一些可能的线条象素,并且潜在地排除许多线条象素,以致于依据本发明的后来线条检测操作过程中,线条就变得难于或不可能检测或区分。因此,尤其在包括线条约束来帮助将候选极值的选择限制于那些与将被确定的实际的线条相对应的实例中,从属数据的选择要稍微超出显示了与相关将被检测线条的特征的象素的包括范围而不是小于该包括范围,即使这会稍微增加线条的“杂乱”性。因此,应该明白:由于根据本发明方法的总体稳健性和由于许多以前提到的适于一种特定类型工件检测的权衡,前面讨论的图像数据阈值的特殊值仅是举例用而不是起限制用。还应该明白:在本发明的许多实例中,在一个从属图像或其他形式的放大的图像中表示的线条可以相当杂乱,这种图像仍将为精确稳健地识别这种线条提供基础。
正如上面提到的,与处理图像的决定相似,在许多实例中,操作者利用一个从属参数的最初或起始数据来生成一个最初或起始从属图像。生成后,该最初或起始从属图像展示给操作者,允许操作者决定该生成的从属图像是否可接受。另一种可选择方案是,在许多其他实例中,从属图像被自动分析。如果从属图像不可接受,操作者就更改从属参数(或自动更改)的数据(或一个或更多数据),于是根据这个新的数据重新生成从属图像。一旦从属图像合适的值被确定,操作者就使一个或更多部分程序指令生成(或者它们自动生成),这些程序指令捕获相应的从属参数的值,并且使一个从属图像从随后的处理图像中生成。
图10和11是表示通过将Radon转换作用于具有许多线条的图像而获得的线性变换数据集合的坐标图。图10表示了一个Radon变换图600,在这里出现是为了与图11中所示的Radon变换图形相对比,并将进一步说明在本发明的许多实例中,应用许多从属确定操作和/或候选数组元素或域的筛选操作的值。在许多实例中,一组变换参数集合如(间距、角度)的Radon转换通过具有图像数据g(x,y)的图像定文作为线条部分,其中该线条部分的定位是对应于变换参数(间距、角度)的每个相应的值。Radon变换将映射图像空间域(x,y)到发射域(ρ,θ),这样在图像空间域的每个点在该映射域内变为正弦曲线。在许多实例中,正弦曲线在每处很方便地被赋予一个“亮度”值,或一个数值,这个值与在转换图像中相应的图像数据成比例。尤其是,在Radon变换数据空间的每个阵列队列或域中,在图10和11所示的Radon图形图像都是通过累加这些亮度值或数值计数而形成的。
图10说明了将Radon转换用于图6中所示的已处理图像400的结果。如图10所示,Radon图形600的数据阵列的一个轴代表了轴原点的象素单元的偏移量,这些轴原点用于在原始预先转换图像中定义图像位置,如图5中的点310。由Radon转换生成的数据集合的其他轴代表了相对于一个原始图像中的参考轴的方位或角度。
正如上面所述,根据输入图像中那个象素的位置和它自身的图像亮度值,Radon转换将每个预先转换的图像转换为图10中所示转换空间中的一条线。因此图10中所示的转换空间图像的亮区域代表了相对于已处理图像400中象素的许多转换线条相交的位置。总的来说,许多包括在图像400的一个线性特征的已生成线条将在一个中心数组元素或域的附近相交,该附近最好相应于那个线性特征的位置。这个会产生的,因为用于定义那些相交线条的象素在一条线上,该线条具有远离预先转换图像原点的空间,和具有相对于预先转换图像的参考轴的方位。
图10中所示的相应于将被检测线条的特征在位置601-606上几乎不能区分为较暗的区域或局部最小值。因此,根据Radon转换图像的信息,企图通过转换已处理图像400来定位线条显然是困难的。然而,应该明白:在位置601-606上的特征仍然是能够稍加区分的,并且在本发明的许多实例中,如果一个合适的线条约束(例如大致的线条角度,在图10所示的例子中,通常大致为从一个上升的垂直轴的反时针方向18度)用于筛选图10中的候选数组元素或域,即使从属图像操作没有在这种实例中执行,稳健快速地识别将被检测线条的方位仍是可能的。
与图10相对比,图11表示了Radon转换图形700,它从将Radon转换应用到图8中从属图像500而产生的。应该明白:Radon转换图形700的“亮度”值已标准化,比Radon转换图形600的“亮度”值超出一个不同的相应范围。而且,应该明白:由于可能的线条象素在从属图像800中已经赋予一个更小的二进制数据,较浅的区域701-706对应于将被检测的线条。另外,区域701-706在适当位置可与图10中所示的区域601-606的位置进行比较。还应该明白:与前面讨论的图10中的特征相比,由于从属图像500的背景区域亮度相同,并且因此包括极少或没有线状的特征,该特征改变了Radon转换图形700,图11中的最大值701-706都是显性特征。事实上,最大值701-706不仅是局部最大值(与图10中相应的局部最小值相比),而且也是Radon转换图形700的全局最大值。因此,仅根据包括在Radon转换图形700中的信息,最大值701-706就可十分容易稳健地区分出来。
因此,应该明白:在本发明的许多实例中,由于具有合适的图像处理来提高相对于可能的背景象素的线条象素,如前面描述具体的已处理的图像操作和从属确定操作,根据线条转换数据,即使没有定义或确定线条约束,或者没有依据任何定义或确定的线条约束筛选候选数组元素或域,稳健而快速的识别将被检测的线条的方位也是可行的。当然,还应该明白:在许多实例中,其中至少定义或确定一个线条约束,如线条的数目等,在一个有更多种类的工件和工件图像变化上,相关的筛选操作允许将被检测的线条有更好的稳健性、可靠性和速度。
如图11所示,当转换从属图像500以形成Radon转换图形700,并且分析Radon转换图形700时,对应于Radon转换图形700中的最大值701-706,可清楚地区分开六条线条。应该明白:最大值701-706都是Radon转换图形700中的全局最大值。于是,在许多实例中,不利用任何约束,就可以通过识别一个或更多象素集合来识别一个或更多相应的线条,这些象素集合展示了在Radon转换图形700数值中的最大“亮度”。在此情况下,可操作的转换分析参数只选择一个或更多的全局最大值,或者大于一个所定义或所确定阈值的所有最大值。
在其他许多实例中,在一个工件图像中至少有“n”个平行线条或许是已知或预先确定的。在此例子中,可操作的转换分析参数只选择“n”个全局最大值。
在其他许多实例中,在一个工件图像中至少有“n”个平行线条或许是已知或确定的。在此例子中,可操作的转换分析参数选择“n”个全局最大值,这些最大值排列在一个有关Radon转换图像的特定定位值的一个角度公差内。也就是说,这“n”个最大值将大致沿着图11中所示的垂直线排列。在许多实例中,因为“n”个排列的局部最大值或“n”个从“2n”、“3n”等的全局最大值中选出的局部最大值为一个高效稳健的标准,这些最大值不必为全局最大值。
更进一步,从图11中明显看出,最大值701-706被分为两组,每组三个,并沿着对应于线条301-306的垂直“间距”轴分开。在在对应于线条的最大值之间,每一组都有相当规则的间距。正如平行线条301-306所预期的,两组中每一组均位于已预先转换图像得原点的一侧,并且所有的最大值都以相同的角度沿着垂直轴定位。再参考图5,线条301-303通常有相同的角度和具有表示了图11中所示的转换数据的间距,并位于原点310负侧。类似地,线条304-306通常有相同的方位及图11中所示的间距,并位于原点310正侧。因此,为了更加稳健可靠地识别工件中将被检测的线条,体现这些不同线条关系的额外线条约束可在不同相关的转换分析参数中具体表示,或筛选不同的出现在Radon转换图像数据中的局部最大值候选者。
更一般地是,在生成部分程序中,操作者通过将一个或更多转换分析参数应用到所转换的数据上从转换结果中生成线条确定结果,该转换分析参数从两维阵列的数组元素或域中不同的最大值(或最小值,如果适当)中选择最重要的候选累加值计算。在许多实例中,最重要的候选累加值计算与经过变换的图像中的可能线条像素具有相同的“最大值或最小值”极性。在许多实施例中,转换分析参数包括一个适当的阈值,该阈值去除了数组元素或域,或数组元素或域的集合,它们不是全局或至少局部最大值(或最小值,如果适当)。在其他许多实例中,就像前面所述的,根据不同的线条约束,转换分析也可包括筛选剩余的全局或局部最大值(或最小值,如果适当)。
在许多实例中,如果被识别的线条集合对应于将被检测的线条的预期数目,和/或如果被识别的线条集合十分精确或非常接近地对应于所预期的线条限制,如线条间距和/或角度数据,或合适数量线条之间的关系等,操作者就确定该转换分析参数数据是合适的,并且生成一个或更多部分程序指令,该指令包括或具体体现了转换分析参数的值。否则,操作者就更改(一个或更多)转换分析参数数据,并重复转换数据集合的分析。如果操作者不能识别一个合适的转换分析参数数据,这就暗示或者从属图像是不合适生成的,或者已处理图像是不合适生成的。同样,操作者回到这些图像,并进一步修改处理参数和/或从属参数,和更正为这些数据生成的部分程序指令。然后操作者重新转换已得到的从属图像,和重新分析该已转换的数据集合。一旦操作者对所有线条检测结果满意,包括处理参数、从属参数和转换分析参数的值的部分程序就被存储并用于可靠地分析后来的工件情形。
图12表示了图5所示的原始图像,其中有六个线条叠加在该图像中,该图像对应于六个在图11中被识别的重要区域的ρ和θ值。这些叠加线条是相对于图5和12中所示的原点310而绘制的。如图12所示,通过分析图11中所绘的转换数据集合所识别的线条被紧密地排列成图5中将被识别的线条。因此,正如上面所述,利用本方法的系统和方法,根据少量的参数,例如,一个或更多处理参数、一个或更多从属参数和一个或更多转换分析参数,在高度织构和/或低对比度图像上非常精确的识别线条是可能的。
当可能知道、确定或获得一个或更多的线条约束、出现在已捕获图像中的线条间的线条参数和/或关系的情况下,在更多种类的工件和工件图像变化下,为了使线条检测结果更加快速和更为稳健,一个或更多的这种约束可结合在依据本发明的系统和方法不同的实例中。利用已捕获图像中这些参数和涉及关系或许多将被检测线条的相互定位知识,快速准确地生成一个部分程序是可能的,该部分程序将适当处理并分析一个在一个工件的高度织构和/或低对比度表面上已捕获的图像,其中有许多线条嵌入、组成或叠加在该工件表面上。
用于确定图像获取设备和执行图像检测操作可在根据本发明的不同实例中使用的其它典型的工具和方法在商业计算机图像检测系统如上面讨论的QUICKVISIONTM系列的图像检测仪器和相关的QVPAKTM软件都是很明显的。然而,应该明白:在本发明的许多实例中,任何这种工具,不论是当前可得到的还是以后发展的,同样可用于确定图像获得设备和以后执行图像检测操作。
应该明白:图4的操作实质上定义了典型的训练方法,该方法用于确定或定义一个部分程序,该程序可高速地执行以自动检测一个工件。其实,产生或“训练”该部分程序包括获得一个包括所有需要的将被检测的工件特征图像的学习,和最初学习或“训练”一组图像检测操作,此操作检测所有需要的空间中工件检测图像的集合。然后,为以后在许多其他相应工件的检测图像集合的应用,这种图像检测程序被存储。参考图3的描述,一旦训练模式完成,利用已生成的部分程序,就可执行检测多种其他相应的工件。
应该明白:在某些现有的计算机中,用最少或没有“翻新”修改现有计算机,这些计算机图像检测系统就可以使用本发明的系统和方法的许多实例,并且依据本发明的原理,还能提高这种计算机的低对比度和杂乱的线条寻找的能力、稳健性和产量。在许多实例中,依据本发明的原理,只有计算机图像检测软件方法的增加和/或修改包含在更新的修改中。
还应该明白:尤其在这里描述的应用软件的例子中,其中将被检测的工件特征都被充分地证明,并且通过固定或其他安装方法等,相应的工件也被充分定位,检测这种工件的一个完整的程序(或程序组)可被完全确定为“离线”,基于依据本发明的原理自动、半自动或手动确定检测操作,基于工件的一个电子表示如一个CAD表示,没有对实际的工件上实际执行手工训练操作。
在这种依据本发明的系统和方法的典型自动应用中,工件为一安全气袋或其中一部分。将被检测的低对比度线条和相关的检测参数,根据一个文件例,如包括在一个工件指定文件,例如一个文本文件,一个CAD文件等的维数列表、编织特征等,进行自动、半自动或手工的识别。结合许多系统和方法的实例及其他这里揭示的本发明的其他方面,已知的商业中可用的视频工具可以为支持许多参数确定操作和其他检测的操作而被选择。根据关于计算机图像检测系统的通用或特殊的经验和知识,可确定相应的可操作的工件参数,计算机图像检测系统将运行检测操作。
虽然本发明结合上述的具体实例作了描述,但是不同的可选方案、更改、变化、改进和/或实质等效,不管已知或可能或目前无法预料的,对于那些本领域中至少是普通技术的人来说都是显而易见的。因此,本发明的具体实施例,正如前面所述,其目的是说明作用而不是起限制作用。在不脱离本发明的精神和保护范围的情况下,可对其作出许多变化。因此,如所提出和可能修改的权利要求用于包含所有已知的或后来发展的可选择方案、修改、变化、改进和/或实质等效。
Claims (23)
1、一种检测工件的计算机图像检测系统的操作方法,该工件具有高度织构或低对比度表面,和至少具有一个出现该高度织构或低对比度表面上的将被确定的线条,该至少一个将被确定的线条安排在一个阵列中,该阵列表示那种类型工件的特征,该方法包括:
捕获至少一部分工件的工件图像,该工件有高度织构或低对比度表面,此表面中至少有一个将被确定的线条;
处理已捕获图像以提供一个扩大的图像,该图像扩大了至少其中一个将被确定线条的至少一个特征;
利用一个表面上生成一个二维数据集合的转换,转换已扩大图像,该集合包括表面上对应于可能独立线条的局部极值,该局部极值包括一个具有与至少一条将被确定线条相对应的极性的适当极性局部极值,该局部极值的二维坐标用于定义相应的独立线条;
根据该二维数据集合,确定至少一个将被确定的线条,该确定还至少部分根据至少一个前面已定义的对应于那种类型工件特征阵列的线条约束。
2、根据权利要求1所述的方法,其中确定至少一个将被确定的线条包括将至少一个以前已定义的线条约束用于限制下面a)和b)至少其中一个选择,a)一个在二维数据集合中至少一个适当极性局部极值的已选择集合,在该已选择集合中每个局部极值的二维坐标定义了对应将被确定的线条,和,b),一个至少一条将被确定的线条的已选择集合,该至少一个将被确定的线条的已选择集合是对应于二维数据集合中的至少一个适当极性局部极值的一个已选择的预备集合的线条子集,在该预备子集中的每个局部极值的二维坐标定义了一个对应的线条。
3、根据权利要求2所述的方法,其中至少一个预先已定义的线条约束至少包括a)和b)中的一个约束:a)一个对应于至少一个将被确定的线条数目的约束,及b)一个几何关系的约束,该约束对应于在有那种类型工件特征阵列中的至少一个将被确定线条的几何阵列。
4、根据权利要求3所述的方法,其中该几何关系约束包括一个角度定位约束,该角度定位约束至少包括了下面的其中一个:a)一个角度定位约束,该约束对应于至少一个将被检测的线条与该高度织构或低对比度表面中的一个线状特征间的一个角度关系,b)一个角度定位约束,该约束对应于至少一对将被确定线条间的一个角度关系,c)一个角度定位约束,该约束对应于至少一对大致互相平行的将被确定线条,及d)一个角度定位约束,该约束对应于一个在至少一个将被确定的线条和一个已捕获的工件图像的坐标参考系统间的角度关系。
5、根据权利要求3所述的方法,其中该几何关系约束包括一个线条间距约束,该线条间距约束至少包括下面其中的一个:a)一个线条间距约束,该约束对应于至少一个将被检测线条与该高度织构或低对比度表面中的一个线状特征间的一个线条间距,b)一个线条间距约束,该约束对应于至少一对将被确定线条间的一个线条间距,c)一个线条间距约束,该约束对应于至少一对大致互相平行的将被确定线条,及d)一个线条间距约束,该约束对应于一个在至少一个将被确定的线条和一个已捕获的工件图像的坐标系统间的一个线条间距。
6、根据权利要求3所述的方法,其中该选择至少是下面其中之一:a)至少一个二维数据集合中局部极值的已选择的集合,及b)至少一个二维数据集合中局部极值的已选择的预备集合包括至少选择一个有最大极值的适当极性局部极值,该极值作为集合成员包括在一个二维数据集合的选择范围内。
7、根据权利要求6所述的方法,其中该选择包括选择至少一个有最大极值的适当极性局部极值,并进一步包括将已选择的至少一个有最大极值的适当极性局部极值限制于到那些集合成员,该集合成员也对应于至少一个线条约束条件。
8、根据权利要求6所述的方法,该选择至少是下面其中之一:a)至少一个局部极值的已选择的集合,b)至少一个将被确定线条的已选择的集合,及c)至少一个局部极值的已选择的预备集合包括将数量约束用于限制许多集合成员的选择数量,该集合成员的数量与至少一个将被确定的线条的数量相同。
9、根据权利要求6所述的方法,其中该二维数据集合的选择范围包括下面其中之一:a)全部的二维数据集合,及b)至少部分根据至少一个线条约束确定的二维数据集合的一个限制部分。
10、根据权利要求9所述的方法,其中至少部分根据至少一个线条约束确定的二维数据集合的限制部分对应于二维数据集合中的一个一维适当极性全局极值的大致附近处。
11、根据权利要求10所述的方法,其中该二维数据集合的一维适当极性全局极值对应于许多有角度定位坐标的局部极值,该角度定位坐标至少与许多局部极值的每一个大致相同。
12、根据权利要求1所述的方法,其中处理已捕获工件图像以能提供一个已放大的图像,该放大图像放大了至少一个将被确定线条的至少一个特征,该过程至少包括下面其中之一:a)执行至少一个操作,该操作提供一个至少一些图像象素的扩充,该图像像素对应于至少一个将被确定线条象素的至少一个特征,及b)对i)和ii)至少其中一个执行至少一个操作,该操作用于增加了对应于至少一个将被确定的线条与高度织构或低对比度表面间的对比度,i)已捕获得工件图像的象素,和ii)通过至少包括一个扩充操作的操作进行处理过的象素。
13、根据权利要求1所述的方法,其中至少一个将被确定线条的至少一个已放大的特征至少包括下面其中之一: a)一个表示至少一个将被确定线条的象素的较宽的线条宽度,b)一个象素的改进连续性,它代表了沿着至少一个将被确定线条长度方向的至少一个将被确定线条的线段,及c)一个代表了至少一个将被确定线条的平均象素亮度和一个代表了高度织构或低对比度表面的平均象素亮度之间差值的增加。
14、一种检测工件的计算机图像检测系统的编程方法,该工件有高度织构或低对比度表面及目前在高度织构或低对比度表面上或中有至少一个将被确定的线条,该至少一个将被确定的线条被安排在一个阵列中,该阵列表示那种类型工件的特征,该方法包括:
捕获至少一部分工件的工件图像,该工件有高度织构或低对比度表面,此表面中至少有一个将被确定的线条;
确定至少一个图像放大过程,该过程处理已捕获的图像以提供一个被放大的图像,该图像放大了至少一个将被确定的线条的至少一个特征;
生成至少一个可操作的部分程序指令以执行已确定的图像放大过程;
利用一个表面上生成一个二维数据集合的转换,转换已扩大图像,该集合包括表面上对应于可能独立线条的局部极值,该局部极值包括一个具有与至少一条将被确定线条相对应的极性的适当极性局部极值,该局部极值的二维坐标用于定义相应的独立线条;
生成至少一个可操作的部分程序指令执行该转换过程以生成该二维数据集合;
定义至少一个对应于该阵列的线条约束,该阵列表示那种类型工件的特征;
根据二维数据集合和至少部分根据至少一个已定义的线条约束,确定一个为确定至少一个将被确定的线条的过程;
至少部分根据至少一个已定义的线条约束,生成至少一个可操作的部分程序指令以执行确定至少一个将被确定的线条的过程;
存储部分程序指令的一个集合,该集合至少包括可操作的部分程序以执行至少该已确定的图像放大过程,生成二维数据集合的转换过程,和至少部分根据至少一个已定义的线条约束确定至少一个将被确定线条的过程,该部分程序指令集合至少是可操作来确定在那种类型工件上至少一个将被确定的线条。
15、根据权利要求14所述的方法,其中:
该图像放大过程包括一个以前确定的技术,该以前确定的技术通过一个或更多可选择的参数控制;及
确定一个图像放大过程包括从一个或更多可选择的参数中选择数据来为那种类型工件充分地确定该图像放大过程。
16、根据权利要求15所述的方法,其中该确定图像放大图像包括:
通过选择为一个或更多可选择的参数选择数据,反复确定该图像放大过程;
观测一个对应于已选择的参数数据的过程结果;及
重复该选择和观测步骤的结果直到已选择的参数数据产生一个满意的结果。
17、根据权利要求14所述的方法,其中:
确定至少一个将被确定线条的过程包括一个以前的确定技术,该以前的确定技术通过一个或更多可选择的参数控制;及
为确定至少一个将被确定线条的一个确定过程包括为一个或更多可选择的参数的选择数据,来充分地确定那种类型工件的至少一个将被确定线条的确定过程。
18、根据权利要求15所述的方法,其中为确定至少一个将被确定线条的一个确定过程包括:
通过为一个或更多可选择的参数选择数据,重复确定为确定至少一个将被确定的线条的一个过程;
观测对应于已选择的参数数据的一个过程;及
重复该选择和观测步骤的结果,直到该已选择的参数数据产生一个满意的结果。
19、一种检测工件的计算机图像检测系统的操作方法,该工件有一个高度织构或低对比度表面并有两个目前在高度织构或低对比度表面上或中的将被确定的线条,该至少两个将被确定的线条被安排在一个阵列中,该阵列表示那种类型工件的特征,该方法包括:
捕获一个至少有高度织构或低对比度表面的工件图像,该表面至少具有两个将被确定的线条;
处理该已捕获的工件图像,以提供一个已放大图像,此已放大图像扩大了该两个将被确定线条的至少一个特征;
利用一个表面上生成一个二维数据集合的转换,转换已扩大图像,该集合包括表面上对应于可能独立线条的局部极值,该局部极值包括一个具有与至少两条将被确定线条相对应的极性的适当极性局部极值,该局部极值的二维坐标用于定义相应的独立线条;
分析该二维数据集合以选择至少两个适当极性局部极值,以致于已选择的至少两个局部适当极性的极值包括最大的适当极性局部极值,该局部极值也对应于安排在阵列中的线条,该阵列表示那种类型工件的特征;及
根据已选择的至少两个局部极值的二维坐标,确定至少两个将被确定线条。
20、根据权利要求19所述的方法,其中将被确定的至少两个线条的至少一个已扩大的特征包括至少一个表示了至少两个将被确定线条的象素的较宽线条宽度;一个相应象素的改进连续性,它代表了沿着至少两个将被确定线条的相应长度方向的至少两个将被确定线条的每个线条的线段,和一个代表了至少两个将被确定线条的平均象素亮度和一个代表了高度织构或低对比度表面的平均象素亮度之间差值的增加。
21、一种检测工件的计算机图像检测系统的编程方法,该工件有高度织构或低对比度表面的及目前在该高度织构或低对比度表面上或中有至少两个将被确定的线条,该至少两个将被确定的线条被安排在一个阵列中,该阵列表示那种类型工件的特征,该方法包括:
捕获工件至少一部分的工件图像,该工件有高度织构或低对比度表面,此表面上有至少两个将被确定的线条;
为处理该捕获工件图像确定一个图像放大过程,以提供一个已放大的图像,该图像放大了至少两个将被确定线条的至少一个特征;
生成至少一个可操作的部分程序指令,以执行该已确定的图像放大过程;
利用一个表面上生成一个二维数据集合的转换,转换已扩大图像,该集合包括表面上对应于可能独立线条的局部极值,该局部极值包括一个具有与至少两条将被确定线条相对应的极性的适当极性局部极值,该局部极值的二维坐标用于定义相应的独立线条;
生成至少一个可操作的部分程序指令,来执行该转换过程以生成该二维数据集合;
为分析该二维数据集合确定一个过程,以选择至少两个适当极性局部极值,以至于已选择的至少两个适当极性局部极值包括最多的适当极性局部极值,这些局部极值同样对应于安排在阵列中的线条,该阵列表示那种类型工件的特征;
产生至少一个用来执行对二维数据集合进行分析的处理过程的零件加工程序,以选择至少两个适当极性局部极值,该局部极值包括最大的适当极性局部极值,这些局部极值同样对应于安排在阵列中的线条,该阵列表示那种类型工件的特征,及
存储一个包括至少可操作的部分程序指令的部分程序指令集合,以执行至少该已确定的图像放大过程、生成该二维数据集合的转换过程,和为分析该二维数据集合来选择至少两个适当极性局部极值的过程,该局部极值包括最大的适当极性局部极值,这些局部极值同样对应于安排在阵列中的线条,该阵列表示那种类型工件的特征,根据该已选择的至少两个适当极性局部极值,该部分程序指令集合至少用于确定工件上的至少两个将被确定的线条,该局部极值包括最大的适当极性局部极值,该极值同样对应于安排在阵列中的线条,该阵列表示那种类型工件的特征。
22、根据权利要求21所述的方法,其中:
该图像放大过程包括一个以前的确定技术,该技术通过一个或更多可选择的参数控制;和
确定一个图像放大过程包括选择一个或更多可选择的参数选择数据,以能充分地确定那种类型工件的图像放大确定过程。
23、根据权利要求21所述的方法,其中;
分析该二维数据集合以选择至少两个适当极性局部极值的过程,该极值包括最多的适当极性局部极值,该极值同样对应于安排在阵列中的线条,该阵列表示那种类型工件的特征,该过程包括一个以前的确定技术,该技术通过一个或更多可选择的参数控制;和
分析该二维数据集合以选择至少两个适当极性局部极值的过程,该过程包括选择一个或更多可选择的参数,以能充分地确定那种类型工件的分析过程的二维数据集合。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/632,823 | 2003-08-04 | ||
US10/632,823 US20050031191A1 (en) | 2003-08-04 | 2003-08-04 | Methods and apparatus for inspection of lines embedded in highly textured material |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1580748A true CN1580748A (zh) | 2005-02-16 |
Family
ID=33552885
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2004100684869A Pending CN1580748A (zh) | 2003-08-04 | 2004-08-04 | 检测嵌入在高度织构材料中线条的方法和装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20050031191A1 (zh) |
EP (1) | EP1505544A3 (zh) |
JP (1) | JP2005055443A (zh) |
CN (1) | CN1580748A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103558221A (zh) * | 2013-11-04 | 2014-02-05 | 武汉理工大学 | 一种红外光学材料的均匀性检测装置和方法 |
CN113361368A (zh) * | 2021-06-01 | 2021-09-07 | 福建福昕软件开发股份有限公司 | 基于桌面软件通过函数拟合识别pdf内多类线条的方法 |
Families Citing this family (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7110036B2 (en) * | 2002-10-31 | 2006-09-19 | Mitutoyo Corporation | Systems and methods for identifying a lens used in a vision system |
JP4417121B2 (ja) * | 2004-01-19 | 2010-02-17 | 株式会社ミツトヨ | 被測定物の通り出し方法、及び表面性状測定装置 |
US7522763B2 (en) * | 2004-07-30 | 2009-04-21 | Mitutoyo Corporation | Method of measuring occluded features for high precision machine vision metrology |
US7583852B2 (en) * | 2004-10-26 | 2009-09-01 | Mitutoyo Corporation | Method of filtering an image for high precision machine vision metrology |
US7627162B2 (en) * | 2005-01-31 | 2009-12-01 | Mitutoyo Corporation | Enhanced video metrology tool |
US8126253B2 (en) | 2005-11-12 | 2012-02-28 | Cognex Technology And Investment Corporation | Automatically determining machine vision tool parameters |
US7567713B2 (en) * | 2006-02-08 | 2009-07-28 | Mitutoyo Corporation | Method utilizing intensity interpolation for measuring edge locations in a high precision machine vision inspection system |
US7570795B2 (en) * | 2006-07-18 | 2009-08-04 | Mitutoyo Corporation | Multi-region autofocus tool and mode |
US7769222B2 (en) * | 2006-10-27 | 2010-08-03 | Mitutoyo Corporation | Arc tool user interface |
US7925075B2 (en) * | 2007-05-07 | 2011-04-12 | General Electric Company | Inspection system and methods with autocompensation for edge break gauging orientation |
US20090006161A1 (en) * | 2007-06-27 | 2009-01-01 | Yen-Fu Chen | Systems and methods for managing events of event scheduling applications |
US8200520B2 (en) * | 2007-10-03 | 2012-06-12 | International Business Machines Corporation | Methods, systems, and apparatuses for automated confirmations of meetings |
US8085295B2 (en) * | 2007-10-26 | 2011-12-27 | Mitutoyo Corporation | Controllable micro light assembly |
US8135238B2 (en) * | 2008-06-05 | 2012-03-13 | Kia Sha Managment Liability Company | Free view generation in ray-space |
US8111938B2 (en) | 2008-12-23 | 2012-02-07 | Mitutoyo Corporation | System and method for fast approximate focus |
DE102009015594B4 (de) * | 2009-03-30 | 2015-07-30 | Carl Zeiss Sms Gmbh | Verfahren und Vorrichtung zur subpixelgenauen Positionsbestimmung einer Kante einer Markerstruktur in einer Vielzahl von Aufnahmepixeln aufweisenden Aufnahme der Markerstruktur |
CA2760377C (en) * | 2009-04-30 | 2016-02-23 | Wilcox Associates Inc. | An inspection method and an inspection apparatus |
US8111905B2 (en) * | 2009-10-29 | 2012-02-07 | Mitutoyo Corporation | Autofocus video tool and method for precise dimensional inspection |
US8581162B2 (en) * | 2009-12-08 | 2013-11-12 | Mitutoyo Corporation | Weighting surface fit points based on focus peak uncertainty |
CN102128595B (zh) * | 2009-12-30 | 2013-09-11 | 云林科技大学 | 雕刻刀具尺寸参数的检测方法及其装置 |
US8194251B2 (en) | 2010-08-26 | 2012-06-05 | Mitutoyo Corporation | Method for operating a dual beam chromatic point sensor system for simultaneously measuring two surface regions |
US8456637B2 (en) | 2010-08-26 | 2013-06-04 | Mitutoyo Corporation | Multiple measuring point configuration for a chromatic point sensor |
US9499926B2 (en) * | 2011-04-05 | 2016-11-22 | Elbit Vision Systems Ltd. | On-loom fabric inspection system and method |
US8924002B2 (en) * | 2011-04-22 | 2014-12-30 | I-Cut, Inc. | Adaptive registration during precision graphics cutting from multiple sheets |
CN102608928B (zh) * | 2012-01-13 | 2014-04-09 | 浙江大学 | 一种基于以太网的嵌入式视觉测控系统及其测控方法 |
CN103761524B (zh) * | 2014-01-17 | 2016-11-16 | 电子科技大学 | 一种基于图像的线性目标识别与提取方法 |
US9261351B1 (en) | 2015-03-04 | 2016-02-16 | Mitutoyo Corporation | Chromatic range sensor including high sensitivity measurement mode |
DE102015207687A1 (de) * | 2015-04-27 | 2016-10-27 | Fabryki Mebli "Forte" Sa | Verfahren und Vorrichtung zur Überprüfung der Produktqualität von zweidimensionalen Produkten |
CN104966065B (zh) * | 2015-06-23 | 2018-11-09 | 电子科技大学 | 目标识别方法及装置 |
US10467474B1 (en) * | 2016-07-11 | 2019-11-05 | National Technology & Engineering Solutions Of Sandia, Llc | Vehicle track detection in synthetic aperture radar imagery |
CN110753952A (zh) * | 2017-02-28 | 2020-02-04 | 优质视觉技术国际公司 | 3d模型到测试对象的自动对准 |
US11427940B2 (en) | 2017-11-29 | 2022-08-30 | Uster Technologies Ltd. | Methods and systems for triggered on-loom fabric inspection |
US11313671B2 (en) | 2019-05-28 | 2022-04-26 | Mitutoyo Corporation | Chromatic confocal range sensing system with enhanced spectrum light source configuration |
US12241185B2 (en) | 2019-11-04 | 2025-03-04 | Uster Technologies Ltd | Methods and systems for multiple image collection in an on-loom fabric inspection system |
US12130125B2 (en) | 2021-10-13 | 2024-10-29 | Mitutoyo Corporation | Chromatic range sensor system with spherical calibration object and method |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6151406A (en) * | 1997-10-09 | 2000-11-21 | Cognex Corporation | Method and apparatus for locating ball grid array packages from two-dimensional image data |
-
2003
- 2003-08-04 US US10/632,823 patent/US20050031191A1/en not_active Abandoned
-
2004
- 2004-08-02 EP EP04254635A patent/EP1505544A3/en not_active Withdrawn
- 2004-08-04 JP JP2004228326A patent/JP2005055443A/ja not_active Withdrawn
- 2004-08-04 CN CNA2004100684869A patent/CN1580748A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103558221A (zh) * | 2013-11-04 | 2014-02-05 | 武汉理工大学 | 一种红外光学材料的均匀性检测装置和方法 |
CN103558221B (zh) * | 2013-11-04 | 2016-01-06 | 武汉理工大学 | 一种红外光学材料的均匀性检测装置和方法 |
CN113361368A (zh) * | 2021-06-01 | 2021-09-07 | 福建福昕软件开发股份有限公司 | 基于桌面软件通过函数拟合识别pdf内多类线条的方法 |
CN113361368B (zh) * | 2021-06-01 | 2024-03-19 | 福建福昕软件开发股份有限公司 | 基于桌面软件通过函数拟合识别pdf内多类线条的方法 |
Also Published As
Publication number | Publication date |
---|---|
US20050031191A1 (en) | 2005-02-10 |
EP1505544A3 (en) | 2006-01-04 |
JP2005055443A (ja) | 2005-03-03 |
EP1505544A2 (en) | 2005-02-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1580748A (zh) | 检测嵌入在高度织构材料中线条的方法和装置 | |
JP5570945B2 (ja) | 正確な寸法検査用の自動焦点ビデオツールおよび方法 | |
US8000511B2 (en) | System for and method of focusing in automated microscope systems | |
US7394926B2 (en) | Magnified machine vision user interface | |
JP4933771B2 (ja) | 画像システムにおいてビデオツールを自動的にリカバリーするシステムおよび方法 | |
JP6239232B2 (ja) | 高性能エッジフォーカスツール | |
US7324682B2 (en) | System and method for excluding extraneous features from inspection operations performed by a machine vision inspection system | |
US8111938B2 (en) | System and method for fast approximate focus | |
JP4933785B2 (ja) | 画像検査システムのビデオツール制御方法 | |
JP6282508B2 (ja) | 凸凹表面のエッジに向けて強化されたエッジ検出ツール | |
US7580560B2 (en) | System and method for fast template matching by adaptive template decomposition | |
CN1805542B (zh) | 在视觉系统中用于编制中断操作程序的系统和方法 | |
US20060088201A1 (en) | Smear-limit based system and method for controlling vision systems for consistently accurate and high-speed inspection | |
CN1904545A (zh) | 用于高精度机器视觉测量的测量被遮蔽特征的方法 | |
JP2020187656A (ja) | 画像検査装置 | |
CN1769838A (zh) | 用于高精确机器视觉计量术的过滤图像的方法 | |
US8315457B2 (en) | System and method for performing multi-image training for pattern recognition and registration | |
JP6049052B2 (ja) | ウエハ外観検査装置及びウエハ外観検査装置における感度しきい値設定方法 | |
KR102602005B1 (ko) | 하전 입자선 장치 | |
JP2023012844A (ja) | 試料観察装置、試料観察方法、およびコンピュータシステム | |
JP2009258187A (ja) | 光学顕微鏡装置及び光学顕微鏡用データ処理装置 | |
JP2020187655A (ja) | 画像検査装置 | |
JP7248496B2 (ja) | 画像検査装置 | |
JP2022025357A (ja) | 画像処理装置、画像処理方法及びプログラム | |
Ravitla et al. | Calibration of Immunofluorescence: a standardization approach |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |