CN109285138B - 用于机器视觉分析的分布式处理系统及方法 - Google Patents

用于机器视觉分析的分布式处理系统及方法 Download PDF

Info

Publication number
CN109285138B
CN109285138B CN201810796939.1A CN201810796939A CN109285138B CN 109285138 B CN109285138 B CN 109285138B CN 201810796939 A CN201810796939 A CN 201810796939A CN 109285138 B CN109285138 B CN 109285138B
Authority
CN
China
Prior art keywords
machine vision
machine
digital image
algorithm
algorithms
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.)
Active
Application number
CN201810796939.1A
Other languages
English (en)
Other versions
CN109285138A (zh
Inventor
N·奥斯滕多普
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sight Machine Inc
Original Assignee
Sight Machine Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sight Machine Inc filed Critical Sight Machine Inc
Publication of CN109285138A publication Critical patent/CN109285138A/zh
Application granted granted Critical
Publication of CN109285138B publication Critical patent/CN109285138B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0004Industrial image inspection
    • G06T7/001Industrial image inspection using an image reference approach
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0004Industrial image inspection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30108Industrial image inspection
    • G06T2207/30164Workpiece; Machine component

Landscapes

  • Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)
  • General Factory Administration (AREA)

Abstract

用于指定待在工作机上执行的机器视觉分析的部分的计算机实现方法。获得用于分析产品的数字图像的一组机器视觉算法。确定总时间估计,该总时间估计代表利用整组机器视觉算法分析所述数字图像的处理时间。如果总时间估计大于阈值,则获得对于一组机器视觉算法的两个以上算法中的每一个的算法时间估计。基于所述算法时间估计来计算与所述两个以上算法中的每一个相关联的排序。基于与两个以上算法中的每一个相关联的排序来选择待在工作机上执行的指定算法。然后,可以利用指定算法在工作机上分析数字图像。

Description

用于机器视觉分析的分布式处理系统及方法
本申请是申请号为201380023836.7、申请日为2013年5月8日、发明名称为“用于机器视觉分析的分布式处理系统及方法”的发明专利申请的分案申请。
相关申请的交叉引用
本申请在35U.S.C.119(e)下要求递交于2012年5月9日、在先的共同未决美国临时专利申请No.61/644,932以及递交于2013年3月14日的美国实用新型专利申请No.13/830,781的权益,这两个申请的全文通过引用方式合并于本公开中。
技术领域
本申请总地涉及机器视觉领域,更具体地涉及用于在多个处理器间分布机器视觉分析的系统和方法。
背景技术
机器视觉常用于工业背景下的产品检验。在典型的机器视觉实现方式中,利用数字照相机或光传感器来捕获产品的数字图像或视频。通过分析数字图像或视频,能够测量产品的关键特征,并且能够检验产品缺陷。
在一些工业应用中,机器视觉用来检验生产线上的零件。为了跟得上生产,机器视觉处理速度应当至少像制造生产速度那样快。然而,在一些情况下,机器视觉处理计算成本高且要花费大量的时间来进行。结果,机器视觉分析不能跟得上生产的速度。在该情况下,生产容量会受到机器视觉分析限制,这通常是不期望发生的。
对于该问题的一种解决方案是提高执行机器视觉分析的计算机处理器的处理速度。然而,该方法不过太现实,因为更快的处理器通常伴随着更高的成本。另外,在通过购买更快的、更昂贵的处理器所获得的处理速度量上的利润率极小。该方法在解决动态变化的机器视觉处理负荷或生产速度方面也未必是可度量的。
另一解决方案是限制通过处理器执行的机器视觉分析的量以减少分析时间。然而,该方法也不可实现,或者甚至可能在方案中要求详细分析高分辨率图像以执行产品的检验。
本文所描述的方法和系统能够用来提高机器视觉系统的处理容量,而不具有上述方法的缺陷。
发明概述
一个示例性实施方案包括用于指定待在工作机上执行的机器视觉分析的部分的计算机实现方法。获得用于分析产品的数字图像的一组机器视觉算法。确定总时间估计,该总时间估计代表利用整组机器视觉算法分析数字图像的处理时间。如果所述总时间估计大于阈值,则获得对于一组机器视觉算法中的两个以上算法中的每一个的算法时间估计。算法时间估计代表利用相应的机器视觉算法分析数字图像的处理时间。基于算法时间估计来计算与两个以上算法中的每一个相关联的排序。选择待在工作机上执行的指定算法。该选择基于与两个以上算法中的每一个相关联的排序。指定算法包括两个以上算法中的一个。在一些情况下,利用指定算法在工作机上分析数字图像。
在一些实施方案中,基于与两个以上算法中的每一个相关联的排序和总时间估计与阈值之间的差值来选择第二指定算法。第二指定算法包括两个以上算法中的一个。
在一些实施方案中,确定第二总时间估计。第二总时间估计代表通过在工作机上执行的指定算法分析数字图像的处理时间。如果第二总时间估计大于阈值,则基于两个以上算法的排序来选择第二指定算法。第二指定算法包括两个以上算法中的一个。在一些情况下,利用第二指定算法在第二工作机上分析数字图像。
在一个示例性实施方案中,数字图像发送到控制器,数字图像是利用图像获取设备捕获的。利用一组机器视觉算法中的第一机器视觉算法在控制器处分析数字图像以计算第一结果。将处理请求发送到工作机以执行指定算法。利用指定算法在工作机处分析数字图像以计算第二结果且发送到控制器。基于第一结果和第二结果来计算测量并存储。在一些情况下,在控制器处使用第一机器视觉算法的分析和在所述工作机处第二机器视觉算法的分析至少部分地并行发生。
在一些情况下,基于测量来计算质量度量,其中质量度量与产品的质量有关。质量度量显示在用户接口上。
在一个示例性实施方案中,数字图像在第一数据网络上发送到归档服务器。数字图像存储在归档服务器上且在第一数据网络上发送到工作机。利用指定算法在工作机上分析数字图像以获得以下中的一个或多个:分析的数字图像以及测量。分析的数字图像或测量发送到控制器。
在一些实施方案中,一组机器视觉算法中的一个或多个机器视觉算法是流水线算法,其中流水线算法包括至少第一机器视觉算法和第二机器视觉算法,其中所述第二机器视觉算法的输出取决于第一机器视觉算法的输出。在一些实施方案中,一个或多个机器视觉算法是一组机器视觉算法。
附图说明
图1示出了示例性的机器视觉系统。
图2示出了示例性的用于检验车辆的机器视觉系统。
图3示出了位于生产设施中的示例性系统的部分。
图4示出了具有多个工作机的示例性的机器视觉系统。
图5示出了在检验站捕获的数字图像。
图6示出了在多个检验站捕获的数字图像的分析结果。
图7示出了显示机器视觉分析结果的示例性的图形用户接口。
图8示出了用于选择待由工作机执行的机器视觉分析算法的示例性过程。
图9A示出了一组机器视觉算法。
图9B示出了一组机器视觉算法的示例性排序。
图10示出了利用机器视觉系统与工作机来分析图像的示例性过程。
图11示出了示例性的计算机系统。
发明详述
大多数制造设施采用了设计成减少产品缺陷和耗费大的产品故障的某种形式的外形质量检验。一般而言,质量检验包括测量和监控可构成产品的某部分的零件的关键特征。在小型制造设施中,质量检验可通过特殊训练的雇员来进行,诸如质量工程师或专家,他们在生产的各个阶段检验零件。在较大型的设施中,由于所需检验数量导致人检不可实现或不可行。
如之前所论述的,机器视觉可用于在制造产品时检验所制造产品的零件或部件。可以在生产线上的检验站处利用数字照相机来实现机器视觉。通常地,检验站与自动生产系统物理地、电子地集成。通常通过可编程逻辑控制器(PLC)、计算机系统或其他电子控制装置在本地控制自动生产系统。
本文所描述的机器视觉系统通过对零件的已捕获的一个或多个数字图像执行多个机器视觉算法而在生产线上检验零件的质量。每个机器视觉算法通常包括在高分辨率数字图像上执行的一组复合操作的多次迭代。另外,可能利用同一数字图像执行多种机器视觉检验。
在示例性的机器视觉系统中使用的数字照相机构造成生成特别适合于详细分析的高分辨率图像。在一些情况下,高分辨率图像是具有多于百万图像像素(兆像素图像)的数字图像。每个高分辨率数字图像构成了较大的数据集(例如为两维像素阵列的形式)。较大的数据集和复合计算的组合导致了计算上集中且相对耗时的处理负荷。因此,执行机器视觉分析所需的时间对检验系统的总等待时间影响很大。事实上,机器视觉分析所需的时间通常比例如数字照相机获取和发送数字图像所需的时间高多个数量级。
传统的机器视觉实现方式利用单个处理单元或CPU来执行图像处理操作。在该情况下,机器视觉分析的总等待时间受到本地处理器的能力约束。单个处理器实现方式通常不可度量以适应大量的计算上昂贵的图像处理操作。另外,如之前所提到的,传统的机器视觉实现方式可能不足够快以满足生产线的时间要求。
本文所描述的系统和技术克服了传统机器视觉实现方式的一些固有的处理局限性且减少了机器视觉分析的等待时间。
1.分布式处理的机器视觉系统
图1示出了示例性的机器视觉系统。图1的机器视觉系统100使用由一个或多个数据网络连接的多个计算设备来执行用于数字图像的机器视觉分析的分布式处理。如下面更详细描述的,机器视觉系统100能够用于分布多个机器视觉算法的处理从而满足规定的时间标准。
如图1所示,多个检验站112A-C构造成在检验设施110处查看示例性的产品118。每个检验站112A-C构造成利用诸如照相机或成像传感器的图像获取设备来获取产品118的至少一部分的数字图像。在该实施例中,示出了多个检验站。然而,在其他实现方式中,可以仅使用一个检验站。
通过检验站112A-C捕获的图像经由数据网络151发送到控制器120,还经由数据网络152发送到归档服务器130以便存储。控制器120构造成对捕获的图像执行一个或多个机器视觉算法且基于产品118的图像来计算一个或多个测量。控制器120还构造成对在规定时间标准内执行一个或多个机器视觉算法所需的处理能力进行评估。如下文结合过程1100更详细描述的,控制器120还构造成利用工作机150来执行一些或全部的机器视觉算法。
如图1所示,机器视觉系统100还包括工作机150,其分别通过数据网络156和155与控制器120和归档服务器130连接。工作机150构造成作为附加的处理单元操作以执行控制器120所指定的机器视觉算法。归档服务器130构造成临时存储数字图像以便工作机150使用。归档服务器130还可构造成在数据库中存储数字图像以便归档或后续处理。
图2示出了用于检验车辆产品的机器视觉系统的示例性的实现方式。图2所示的机器视觉系统200包括用于监控在生产设施210处制造的车辆218的质量的多个数字照相机检验站212A-C。在该实施例中,车辆218接近最终生产阶段。如图2所示,车辆218在生产线214上从右向左进展。
检验站212A-C中的每一个都包括数字照相机和图像获取软件,图像获取软件适于捕获车辆218的部分的数字图像。在该实施例中,数字照相机包括CCD(电荷耦合器件)数字传感器和光学组件(透镜、灯具等),用于在数字传感器表面上生成车辆218的部分的光学图像。当通过外部信号触发时,单个图像或视频图像序列由数字照相机捕获且临时存储在本地计算机存储器中。
虽然数字照相机特别适用于该情形,其他类型的图像获取设备,包括红外传感器、平板扫描仪、光学阵列、激光扫描仪等,可用于捕获数字图像。在该实施例中,数字图像包括对应于数字照相机传感器的光学输入的多维值阵列。根据图像获取设备的类型,数字图像还可以包括数据值的任意位图阵列。此处提及的数字图像不一定包括能够轻易地可视化为图形图像的数据。
机器视觉系统200能够用于通过分析在一个或多个检验站212A-C处捕获的信息来校验产品满足质量标准。具体地,机器视觉系统200构造成利用数字照相机设备来检验附着到车辆218上的多个徽章。
在该实施例中,生产设施210用来生产配备有不同的可选装备的各种车辆。任选装备的特定组合,也称为微调级,接收一组不同的车辆徽章。在一些情况下,在生产线214上连续地制造具有不同微调级的车辆。在一些情况下,由于操作员错误,所安装的车辆徽章与微调级不对应。如果车辆带着错误的徽章被装运到零售商处,则可能要花费制造商几百美元来将车辆返回到生产设施以校正缺陷。该系统可配置为校验安装了正确的车辆徽章。该验证基于检验站212A-C所获取的徽章图像与多个模板的比较以判定是否可能匹配。
参考图2,多个检验站212A-C构造成捕获正在制造的车辆218的不同部分的图像。在图5和图6中给出了示例性的数字图像。每个检验站212A、212B和212C包括数字照相机和适于经由数据网络251来捕获图像以及发送图像到控制器220的图像获取软件。第一数据网络251通常是工业协议网络,诸如OPC、Modbus、ProfiNet等。第一数据网络还可以是专用的导管通信,诸如通用串行总线(USB)、IEEE 802(以太网)、IEEE 1394(防火墙)或其他高速数据通信标准。
参考图2,控制器220在机器视觉系统200中起到多方面作用。一般地,控制器220(1)与自动系统接口以操作多个检验站;(2)从检验站212A-C收集数字图像;(3)判定是否将机器视觉分析的部分卸载给工作机250,如果是,则判定卸载哪些部分;(3)对收集的数字图像执行机器视觉分析算法序列以获得质量测量,任选地发送请求到工作机250以执行分析的部分;以及(5)将数字图像和计算的质量测量发送到归档服务器230。虽然机器视觉系统200描绘了位于生产设施210处的单个控制器220,可以在同一生产设施210中使用多于一个的控制器,或者可以在不同生产设施处使用多个控制器。
图2中所描绘的控制器220通常是专用计算机系统,其具有计算机处理器和用于存储实施下面所描述的功能的计算机指令的非暂态计算机可读存储器。在许多情况下,控制器220是工业级计算机系统,其配置为能够操作延长的时间段,而不会停机或重启。在一些情况下,控制器220包括用来分析大量数字图像数据的一个或多个专门的数字信号处理器(DSP)。
参考图2,在典型的实现中,以规则的循环速度,也称为生产循环,生产出车辆218。为避免造成车辆218生产的延时,检验站212A-C必须在生产循环的定时要求内操作。
可以利用自动控制器、计算机系统或其他电子控制设备来管理生产循环的定时,自动控制器诸如为(PLC)。如图2所示,机器视觉系统200包括用于协调在生产线214中各阶段执行的操作的PLC 211。一般地,PLC 211规定了生产线214的生产定时和速度,并且可以监控机器视觉系统200的等待时间以协调检验与生产线214中的其他过程。PLC 211通常是现有自动化系统的部分且利用数据网络254或专用通信管路与生产设施210中的各个设备接口。
控制器220与自动化系统的PLC 211连接且能够直接从PLC 211来接收关于车辆218的位置和生产线214的状态的信息。因此,控制器220能够根据整个生产线214的定时来控制各检验站212A、212B或212C的操作。在该实施例中,控制器220收集与生产循环有关的信息或者从PLC 211接收定时信息。例如,控制器可以基于PLC控制的在先事件的定时来计算循环时间。控制器还可以基于内部出发的事件或操作来计算循环时间。基于循环时间,控制器220可以确定分派给机器视觉分析过程的最大时间量。如下面结合过程1000更详细说明的,控制器还可以计算阈值(例如,时间阈值),用以判定一个或多个机器视觉算法是否应当卸载给工作机250的目的。
如图2所示,机器视觉系统200包括远程归档服务器230,其通过数据网络252与控制器220连接。归档服务器230可以存储图像以便工作机250进行处理,还可以保存先前处理的图像和质量测量的归档存储。在控制器220处收集的数字图像经由数据网络252传送到归档服务器230。用于通信的数据网络252通常包括使用TCP/IP或其他因特网通信协议的局域网(LAN)或广域网(WAN)。
机器视觉系统200还包括工作机250,其通过数据网络256与控制器220连接且通过数据网络255与视觉服务器230连接。控制器220构造成经由数据网络255将处理请求发送到工作机250,工作机250构造成执行所需的机器视觉算法的子集,在一些情况下与控制器220并行第执行。用于通信的数据网络256通常包括使用TCP/IP或其他因特网通信协议的局域网(LAN)或广域网(WAN)。在一些实施例中,数据网络252和256是相同的网络。图2所描绘的工作机250通常是专用计算机系统,其具有计算机处理器和用于存储执行下面描述的功能的计算机指令的非暂态计算机可读存储器。
如图2所示,机器视觉系统200可以分成位于生产设施210处的部分和位于生产设施210外的部分。然而,在一些实现中,工作机250、归档服务器230或整个机器视觉系统200可位于生产设施210的内部。在其他实现中,控制器220或整个机器视觉系统200可位于生产设施210之外。在另外的实现中,工作机250可以位于视觉服务器230内或控制器220内,或者在一个或多个位置处可以有多个工作机250。
图3示出了位于生产设施210处的机器视觉系统200的部分。如图3所示,生产线214的所示部分包括多个检验站212A-C。如上文所述,每个检验站212A-C构造成捕获所制造的车辆218的不同部分的数字图像并且能够用于检测自动生产线214中的多个车辆徽章的类型。
如图3所示,控制器220包括多个功能单元。如之前所描述的,控制器220构造成控制检验站212A-C。在该实施例中,控制检验站212A-C的控制器220的部分构造成作为逻辑状态机来工作。在一个实施例中,控制器220的状态机224构造成处于多个逻辑状态之一。第一逻辑状态可以为例如“等待车辆”。响应于来自PLC 211的表示车辆218已到达的信号或消息,控制器220上的状态机224可以变换成“捕获图像”状态。在该逻辑状态下,状态机224使得控制器220发送信号或消息至一个或多个检验站212A、212B或212C,指示其捕获数字图像。然后,状态机224进入“等待图像”状态,直至数字图像经由数据网络251从一个检验站212A、212B或212C发送到控制器220。在一些情况下,状态机224还可以实现定时器操作,其能够用于测量各操作执行要花费多长时间。状态机224还可以由控制器220使用来确定用于向工作机150卸载过程的阈值(例如,时间阈值)。
控制器220的另一功能是对收集的数字图像进行分析以获得与产品质量有关的测量和信息。在该实施例中,控制器220包括用于分析由检验站212A-C捕获的车辆徽章的数字图像的视觉分析器222。如下面结合过程1100更详细说明的,视觉分析器222构造成利用一个或多个机器视觉算法来分析数字图像以获得测量。
控制器220的第三功能是进行负荷平衡分析以确保能够在规定时间标准内执行机器视觉分析。参考图3,通过负荷平衡器226来进行负荷平衡分析。在该实施例中,负荷平衡器226使用阈值来判定是否应当向工作机150卸载过程以及向工作机150卸载多少过程。下面结合图8的过程1000来提供负荷平衡器操作的一个实施例。
图1和图2示出了具有单个工作机(150,250)的示例性系统。然而,在一些实现中,有益的是包含多个工作机以便提高系统的处理能力。通过增加多个工作机,机器视觉系统的计算容量能够适合于提供动态处理负荷或生产速度。图4示出了具有部署在各位置的多个工作机350A-E的机器视觉系统300的部分。在该实施例中,可以在具有机器视觉处理能力且与控制器320A通信的多个计算设备中的一个计算设备上创建工作机。如图4所示,机器视觉系统300包括经由数据网络与控制器320A连接的三个独立工作机320A-C。系统300还包括工作机350D,其与归档服务器330集成且经由数据网络与控制器320A连接。如图4所示,工作机350E也可以集成到第二控制器320B中,第二控制器320B经由数据网络与(第一)控制器320A连接。
机器视觉系统100(如图1所示)、机器视觉系统200(如图2-3所示)和机器视觉系统300(如图4所示)可以提供优于一些现有技术系统的优点。例如,机器视觉系统100、200和300可构造成在多个处理单元间分配机器视觉分析所需的处理。结果,相对于其他的单处理实现方式中,可以提高机器视觉系统的处理容量和速度。依次地,该提高的速度减少了判定零件是否满足规定质量标准所需的等待时间。
2.使用工作机用于机器视觉分析的示例性过程
图8和图10示出了在机器视觉系统中使用工作机的示例性的过程1000和1100。参考图2,示例性的过程能够用于实现机器视觉系统200中控制器120与工作机250之间的负荷平衡。为了下面论述的目的,机器视觉系统200构造成分析车辆徽章的图像,诸如图5-6所描述的。然而,下面的过程可以更一般地应用于监控与各自制造产品或过程相关联的质量度量。
图8示出了用于对具有负荷平衡能力的机器视觉系统执行设置程序的示例性的过程1000。参考图2,在负荷平衡机器视觉系统200中,控制器220可以执行过程1000,以准备对生产线上的零件执行机器视觉分析。例如,当系统初始化时,在规定时间间隔,或者响应于机器视觉分析的定时变化,可以执行过程1000。在该实施例中,过程1000由控制器220执行以确定要从控制器220卸载到工作机250的机器视觉分析的部分。
在操作1002中,获得一组机器视觉算法。该组机器视觉算法确定通过控制器对捕获的数字图像执行的图像处理。该组机器视觉算法可以从各自源获得。例如,该组机器视觉算法可由用户在计算机终端处输入或者可以从机器视觉软件库中接收。可以利用视觉查询语言(VQL)或适合于规定机器视觉分析的另一技术来规定机器视觉算法。
结合图2所示的机器视觉系统200,该组机器视觉算法用来分析车辆218的图像以判定车辆徽章的图像是否与一组模板匹配。图5示出了在检验站处通过数字照相机(图像获取设备)捕获的示例性的数字图像301。特别地,图5示出了具有左后门车辆徽章的车辆的后门部分的数字图像301。
在该实施例中,该组机器视觉算法用来分析车辆的数字图像以评估包括所安装的徽章类型的车辆质量。在其他实现中,不同的一组机器视觉算法可用于评估徽章的质量、徽章安装质量或车辆的另一视觉方面。
图9A示出了用于分析车辆徽章的数字图像以确定所安装的徽章类型的示例性的一组机器视觉算法。起初,一个或多个对比度增强机器视觉算法901可应用于数字图像。对比度增强算法901将数字图像加亮且提高亮像素与暗像素之间的对比度。在对比度增强之后,关键点检测算法902用来识别可能包含车辆徽章表征的数字图像的一个或多个候选区域。然后,在滤波算法903内处理识别的候选区域,这样消除了点数过低而不能与徽章区域对应的候选区域。接着,在每个数字图像上执行一个或多个模板匹配机器视觉算法905以将候选徽章区域与一个或多个基准图像进行比较。模板匹配算法905的结果可以包括表明匹配可能性的一个或多个相关值。在典型的实现中,执行模板匹配算法905所需的时间构成了该机器视觉系统的总执行时间的大部分;在每个图像中可能存在多个候选徽章区域,每个候选徽章区域必须与多个模板进行比较。在一些情况下,可以在图像中执行颜色匹配机器视觉算法以确定徽章的颜色和/或表面特性。最终算法(或多个算法)906将模板匹配的结果组合且生成输出。该输出可以是简单的合格/不合格输出或总分数或产品质量的一些其他度量。
在操作1004中,确定用于分析图像的总时间估计。结合图2,控制器220估计执行整组机器视觉算法所需的总时间。该估计可以利用各种技术来进行。例如,控制器220可以处理测试图像且通过在机器视觉算法序列的起始设定数字定时器且在序列末尾取回定时器值从而测量所经过的时间来测量总执行时间。可替代地,控制器220可以接收来自用户的或者来自一些其他源头的机器视觉算法执行时间的估计,并且将它们相加在一起以获得总时间估计。控制器220还可以使用查找表来估计每个机器视觉算法的典型执行时间并且将它们加在一起以获得总数,或者控制器220可以在工作周期内维持总执行时间的运行平均值。
返回图9A,在该实施例中完成全部所需算法的总估计时间大约是1350毫秒。该估计是基于用于执行每个算法或算法组的估计时间之和来计算的。对于该特定的一组算法,估计时间会受多种因素影响,包括:在关键点检测算法902中识别出的点簇数;在每个图像中识别的候选徽章区域的数量;和/或要与每个识别的徽章区域进行比较的徽章模板数量。在一些情况下,徽章可能需要两级徽章匹配,取决于第一级的结果。当计算总估计时间时,可能需要考虑这些因素。
在操作1006中,总时间估计与阈值进行比较。结合图2,控制器220将在操作1004中获得的总执行时间与阈值进行比较。阈值可以由用户来提供,或者通过控制器220基于从PLC 211获得关于生产循环的信息来生成,或者可以通过其他某种方式获得。通常,阈值小于生产循环所要求的时间。阈值可以解释除了机器视觉分析之外的操作的定时。例如,阈值可以解释机器视觉系统中部件之间的通信等待时间、文件管理操作或处理延迟。阈值还可以提供机器视觉算法的实际处理时间的变化的安全裕度。
在操作1020中,如果总时间估计小于或等于阈值,则控制器220不执行与将机器视觉分析的部分卸载到工作机250相关联的任何附加操作。在该情况下,设置过程完成,机器视觉系统可以准备以足以跟得上生产的速度来执行机器视觉分析。
在操作1008中,如果总时间估计大于阈值,则对于在操作1002中获得一组机器视觉算法中的两个以上的机器视觉算法获得算法时间估计。该算法时间估计表征了当对数字图像执行机器视觉分析时两个以上机器视觉算法的执行时间。结合图2,算法时间估计可以由控制器220确定或者作为输入提供给控制器220。在一个实施例中,控制器220利用定时器测量每个算法所需的执行时间来确定算法时间估计。可替代地,用户可以规定标准算法对总执行时间的相对共享的每个机器视觉算法的算法时间估计。
一般地,为了估计执行时间和计算排序的目的,可以单独地或者以不同方式成组地评估算法。估计执行时间和计算排序的用途之一可以是识别可能卸载给工作机的一个或多个算法,以及确定这些算法中的哪些算法将提供有用的总执行时间减少。因此,实际上不能与用于卸载的其他算法分离的算法(例如,因为它们取决于其他算法的输出,或者嵌入到其他算法内,或者以某种其他方式逻辑上相关),可以视为用于计算算法时间估计的单个的、流水线算法,如图9所示。在一些情况下,第一和第二机器视觉算法是相关的,因为第一机器视觉算法需要第二机器视觉算法的输出来执行。然而,不一定将全部的相关算法处理为单个的、流水线算法。在该情况下,算法时间估计代表了流水线机器视觉算法的合成时间。
在一些情况下,可以对于基于功能相似性而不是过程相关性组合的一组机器视觉算法来计算算法时间估计。例如,模板匹配算法905的时间估计部分地取决于图像中徽章的数量和必须校验的模板的数量。每个模板可以对应于例如能够安装在车辆上的不同类型的徽章。在该情况下,可以在两个以上控制器或工作机上并行地执行模板匹配算法的多个实例。
为了确定估计算法时间的目的,模板匹配算法可以单独地处理或者组合为单个的、群组算法,取决于方案。在该实施例中,存在五个候选徽章区域和十个徽章模板。假设每个模板匹配算法花费20ms,执行一组模板匹配算法的时间可以估计为1000ms(20ms x 5候选徽章区域x 10个徽章模板)。在一些情况下,对于图像的每个候选区域的模板匹配可以单独地处理。在该情况下,可能存在五个群组模板匹配算法,每个群组算法估计为200ms(20msx 10个徽章模板)。
返回图8,在操作1010中,基于其算法时间估计来计算与两个以上算法相关联的排序。参考图2,控制器220利用在操作1012中获得的算法估计时间来计算两个以上机器视觉算法的排序。如果机器视觉算法是算法群组或算法流水线的部分,然后,为了计算排序的目的来组合群组或流水线的算法时间。因此,排序代表了与集合中的其他机器视觉算法相比估计执行机器视觉算法(或算法群组或算法流水线)的相对时间。
图9B示出了具有示例性计算排序的图9A的一组机器视觉算法。在该实施例中,基于每个机器视觉算法的算法执行时间来计算排序。因为模板匹配算法905处理为单个的、群组算法,所以与集合中的其他算法相比,总执行时间较大。因此,其在图9B所示的算法中排序最高。在该实施例中,对比度增强算法、关键点检测算法、滤波算法和区域选择算法处理为单个的、流水线算法907。这些算法统一地排序为群组中的第二高。最终算法906消耗最少量的时间,且分配了最低排序。如果算法以不同方式组合或成流水线,则排序的计算很可能改变。
在操作1012中,选择指定算法在工作机上执行。结合图2,控制器220基于在操作1008中计算的算法排序来选择在操作1002中获得的一个或多个机器视觉算法以卸载给工作机250。参考图9B,可以基于其排序1,可以将群组模板匹配算法905选为指定算法。在该情况下,可以选择整组模板匹配算法以便在单个工作机250上执行。在排序号为1的算法是由多个相关算法构成的流水线算法的情况下,可以选择流水线算法在工作机250上执行。
在一些情况下,可以选择多于一个的算法以便在工作机上执行。例如,可以通过假设在操作1012中选择的算法将在工作机上执行来计算第二估计总执行时间。也即,第二估计总执行时间解释了由于指定算法卸载导致的估计的执行时间减少。如果第二估计执行时间超过了阈值,则可以基于计算的排序来指定另一算法(其可以是流水线或群组算法)以便在工作机上执行。该过程可以重复,直到估计总执行时间小于阈值。
在一些情况下,使得在工作机上执行指定算法。参考图2,控制器220可以将指令连同到当前数字图像的存储器指针发送到工作机250。作为响应,工作机250可以从存储器指针指示的位置取回图像且执行指定算法。在一些情况下,控制器220将信号(其可以包括指令)发送到不具有存储器指针的工作机250。
一旦完成了过程1000,机器视觉系统可以用于对控制器和工作机执行机器视觉分析。因为可以并行地执行机器视觉分析的部分,所以机器视觉系统可以满足生产线的时间约束。在一些情况下,间隔地或者在每个生产循环的开始重复过程1000。还可以响应于机器视觉分析所需的处理负荷的变化,或者响应于生产线的时间变化,重复过程1000。
图10示出了利用具有负荷平衡能力的机器视觉系统来监控多个产品的示例性过程1100。过程1100代表了在过程1000的设置程序已经完成之后机器视觉系统的示例性操作。
在操作1102之前,捕获数字图像。结合图2,检验站212A、212B、或212C捕获车辆218的一部分作为数字图像。如之前所提到的,检验站212A-C包括具有用于将光学图像转换成电子信号的CCD传感器的数字照相机。通过数字照相机来处理电子信号以生成数字图像。数字图像至少暂时存储在检验站212A、212B或212C中的计算机存储器高速缓存中。
如之前所论述的,数字图像包括对应于数字照相机传感器的光学输入的多维值阵列。为了下面论述的目的,数字图像是两维像素值阵列,每个像素值代表灰度值。已经压缩的、保存为不同的图像格式、裁剪或以其他方式改变的数字图像在本文中称为同一数字图像。
在操作1102中,数字图像发送到控制器。结合图2所描绘的实施例,车辆的一部分的数字图像利用数据网络251从检验站212A、212B或212C发送到控制器220。
数字图像通常以包括例如标准位图、jpeg或tiff图像文件隔室的标准图像文件格式来传递。在一些情况下,连同数字图像来发送其他数据。例如,指示照相机设定、灯光设定、时间、日期和与检验站状态有关的其他信息的数据还可以发送到控制器220。
在操作1004中,利用第一机器视觉算法来分析数字图像。参考图2,控制器220开始执行所获得的机器视觉算法序列来分析数字图像且判定车辆徽章是否匹配一个指定模板。如之前结合图9A所描述的,指定的机器视觉算法可以包括对比度增强步骤、关键点检测、滤波和模板匹配,还可以有其他算法。
图6示出了捕获的多个数字图像301、305、310的示例性分析的结果。如图6所示,已经分析数字图像301、305、310以识别包含车辆徽章表示的区域。如图6所示,分别通过定界框302、306、311来指示每个数字图像301、305、310的区域。在该实施例中,可以利用一系列模板进一步分析位于定界框302、306、311所指示的111区域中的每个数字图像的一部分以识别已经安装在车辆上的徽章的类型。
在操作1106中,将处理请求发送到工作机。结合图2,控制器220将处理请求发送到工作机250以执行被选择以便在图8所描述的设置过程中卸载的机器视觉算法。该请求可以包括指令以及到待分析图像的存储器指针。在一些情况下,可以通过之前执行的机器视觉算法来改变或修改待分析图像。例如,可以裁剪图像,使得工作机250取回的图像是检验站212A-C捕获的原图像的裁剪版本。在一些实施方案中,控制器220可以将处理请求发送到多个工作机250。例如,控制器220可以将指令和到车辆徽章图像的指针发送到多个工作机250,其中每个可以将不同的候选徽章区域与一组模板进行比较。
在操作1108中,利用工作机处的指定算法来分析数字图像。结合图2,响应于从控制器220发送的指令和存储器指针,工作机250可以从归档服务器230取回图像。然后,可以利用指定的机器视觉算法来分析取回的图像。在该操作过程中,控制器220可以继续其他机器视觉算法的执行。例如,控制器220可以与工作机250利用第二、不同的模板执行模板匹配算法并行地利用第一模板对图像执行模板匹配算法。
在操作1110中,发送来自指定的机器视觉算法的结果。结合图2,工作机250将卸载的机器视觉算法的一个或多个结果经由数据网络256发送到控制器220。
在操作1112中,计算测量。结合图2,控制器220包含来自工作机250的结果并且执行完成图像分析所需的任何其余的机器视觉算法。例如,控制器220可以接收由工作机250执行的模板匹配算法的结果,然后基于哪个模板最可能匹配来执行附加的颜色匹配步骤。当控制器220已经完成了所需的全部附加处理时,控制器220计算图像的最终测量。测量可以是零件的具体特征的测量,例如,或者是与零件的质量相关联的度量,或者甚至是简单的“及格/不及格”指示符。
可以利用用户接口屏幕400来显示上述的徽章分析的结果,如图7所示。用户接口屏幕400包括与检验站捕获的图像310、305和310对应的多个数字图像401、405和410。用户接口屏幕400还显示利用上文列出的机器视觉分析来计算的结果。结果可以指示所检验的车辆是否未通过质量测试,因为其徽章之一是不正确类型。
3.计算机硬件平台上的实现
参考图2所示的示例性的机器视觉系统200,利用计算机硬件平台来实现机器视觉系统200的多个部件。具体地,在该实施例中,控制器220、工作机250和归档服务器230各自实现为具体配置的计算机硬件平台。虽然可以对于机器视觉系统200所要求的功能来优化这些部件中的每一个,但是存在这些部件中的每一个所共有的元件。图11示出了在本文所论述的实施方案中使用的计算机硬件平台中所共有的元件。
图11示出了计算机系统1500,其具有可以用于执行与机器视觉系统相关联的功能的一些方面的多个标准部件。具体地,计算机系统1500包括:中央处理器单元(CPU)1502,其执行计算机可读指令;非暂态计算机存储器1506,其存储计算机可读指令;以及磁盘存储设备1504,其用于存储数据和计算机可读指令;显示设备1508,其显示系统输出;以及输入设备1510,其用于接收来自用户的输入。CPU、存储器、磁盘、显示器和输入单元通过一个或多个双向总线1512连接,双向总线在单元之间发送数据和/或计算机可读指令。
图11的计算机系统1500可以用来例如实现图4的控制器220。在该情况下,CPU1502可以用于对从检验站212A-C收集的图像数据执行机器视觉算法以获得测量。CPU 1502还可以执行用于识别卸载给工作机的算法的负荷平衡设置程序。CPU 1502还可以执行由状态机224使用的状态机逻辑以与检验站212A-C和/或自动化系统的PLC 211接口。存储器单元1506可以用于存储机器视觉算法、计算结果、视觉分析查询或其他类型的数据或计算机可读指令。在一些情况下,控制器220不具有显示设备1508。
图11的计算机系统1500还可以用于实现图2的工作机250。在该情况下,CPU 1502可以用于对从一个或多个控制器220接收到的数字图像执行卸载的机器视觉算法。存储器单元1506可以用于存储机器视觉算法、计算结果、查询、或其他类型的数据或计算机可读指令。在一些情况下,工作机250不具有显示设备1508。在一些情况下,工作机250是将CPU1502和存储器单元1506与其他过程或嵌入式系统共享的嵌入式系统。
图11的计算机系统1500还可以用来实现图2的归档服务器230。在该情况下,磁盘存储单元1504可以用于对从一个或多个控制器220接收到的数字图像归档。CPU 1502可以用于计算查询度量,以及对归档的数字图像和从一个或多个控制器220接收到的数字图像实现机器视觉算法。存储器单元1506用于存储机器视觉算法、计算结果、查询或其他类型的数据或计算机可读指令。在一些情况下,归档服务器230不具有显示设备1508。
提供前面的说明以使本领域普通技术人员能够实现和使用各个实施方案。具体的设备、技术和应用的描述仅作为实施方案来提供。对于本文所描述的实施方案的各种变型例对于本领域普通技术人员而言将是显而易见的,并且本文中所限定的总原理可应用于其他实施方案和应用,而不偏离各个实施方案的精神和范围。因此,各个实施方案不意在局限于本文所描述和图示的实施方案,但是它们要与权利要求一致的范围相符合。

Claims (21)

1.用于卸载待由多个工作机执行的机器视觉分析的部分的计算机实现方法,该方法包括:
获得产品的数字图像;
识别用于分析所述数字图像的一组机器视觉算法;
指示所述多个工作机以在所述数字图像上执行机器视觉分析,其中指示所述多个工作机包括:
根据第一估计的总执行时间超过阈值的确定,指示所述多个工作机的第一工作机以使用所述组的机器视觉算法的第一子集执行机器视觉分析,用于分析所述数字图像;和
根据第二估计的总执行时间超过所述阈值的确定,指示所述多个工作机的第二工作机以使用所述组的机器视觉算法的第二子集执行机器视觉分析,用于分析所述数字图像,并且其中所述第一和第二子集是不相同的;和
基于由所述多个工作机执行的机器视觉分析的结果确定质量测量。
2.如权利要求1所述的计算机实现方法,还包括:
将所述数字图像分成至少第一部分和第二部分,和
其中指示所述多个工作机以在所述数字图像上执行机器视觉分析包括:
指示所述第一工作机以使用所述数字图像的第一部分执行机器视觉分析,和
指示所述第二工作机以使用所述数字图像的第二部分执行机器视觉分析。
3.如权利要求2所述的计算机实现方法,其中指示所述多个工作机以在所述数字图像上执行机器视觉分析包括:
指示所述第一工作机在所述数字图像上执行识别的机器视觉算法的第一算法;和
指示所述第二工作机在所述数字图像上执行识别的机器视觉算法的第二算法,
其中所述第一算法和所述第二算法是不相同的算法。
4.如权利要求1所述的计算机实现方法,其中识别用于分析所述数字图像的组的机器视觉算法包括:
基于执行所述机器视觉算法的时间估计来对机器视觉算法进行排序,其中所述算法时间估计代表利用相应的机器视觉算法来分析所述数字图像的处理时间。
5.如权利要求1所述的计算机实现方法,还包括:
使用识别的机器视觉算法在所述数字图像上逻辑地执行机器视觉分析,和
其中确定质量测量包括基于逻辑地执行的机器视觉分析和由所述多个工作机执行的机器视觉分析的结果来确定质量测量。
6.如权利要求1所述的计算机实现方法,其中在所述第一工作机和第二工作机处的机器视觉分析至少部分地并行发生。
7.如权利要求1所述的计算机实现方法,其中在所述第一工作机和第二工作机处的机器视觉分析连续发生。
8.非暂态计算机可读存储介质,包括计算机可读指令,当在一个或多个计算机处理器上执行时,所述计算机可读指令使得所述计算机处理器协调待由多个工作机执行的机器视觉分析的卸载,所述计算机可读指令包括用于下列的指令:
获得产品的数字图像;
识别用于分析所述数字图像的一组机器视觉算法;
指示所述多个工作机以在所述数字图像上执行机器视觉分析,其中指示所述多个工作机包括:
根据第一估计的总执行时间超过阈值的确定,指示所述多个工作机的第一工作机以使用所述组的机器视觉算法的第一子集执行机器视觉分析,用于分析所述数字图像;和
根据第二估计的总执行时间超过所述阈值的确定,指示所述多个工作机的第二工作机以使用所述组的机器视觉算法的第二子集执行机器视觉分析,用于分析所述数字图像,并且其中所述第一和第二子集是不相同的;和
基于由所述多个工作机执行的机器视觉分析的结果确定质量测量。
9. 如权利要求8所述的非暂态计算机可读存储介质,进一步包括用于下列的指令:
将所述数字图像分成至少第一部分和第二部分,和
其中指示所述多个工作机以在所述数字图像上执行机器视觉分析包括:
指示所述第一工作机以使用所述数字图像的第一部分执行机器视觉分析,和
指示所述第二工作机以使用所述数字图像的第二部分执行机器视觉分析。
10. 如权利要求9所述的非暂态计算机可读存储介质,其中指示所述多个工作机以在所述数字图像上执行机器视觉分析包括:
指示所述第一工作机在所述数字图像上执行识别的机器视觉算法的第一算法;和
指示所述第二工作机在所述数字图像上执行识别的机器视觉算法的第二算法,
其中所述第一算法和所述第二算法是不相同的算法。
11.如权利要求8所述的非暂态计算机可读存储介质,其中识别用于分析所述数字图像的组的机器视觉算法包括:
基于执行所述机器视觉算法的时间估计来对机器视觉算法进行排序,其中所述算法时间估计代表利用相应的机器视觉算法来分析所述数字图像的处理时间。
12.如权利要求8所述的非暂态计算机可读存储介质,进一步包括用于下列的指令:
使用识别的机器视觉算法在所述数字图像上逻辑地执行机器视觉分析,和
其中计算测量包括基于逻辑地执行的机器视觉分析和由所述多个工作机执行的机器视觉分析的结果来计算测量。
13.如权利要求8所述的非暂态计算机可读存储介质,其中在所述第一工作机和第二工作机处的机器视觉分析至少部分地并行发生。
14.如权利要求8所述的非暂态计算机可读存储介质,其中在所述第一工作机和第二工作机处的机器视觉分析连续发生。
15.用于卸载待由多个工作机执行的机器视觉分析的部分的机器视觉系统,所述系统包括:
图像采集相机,被构造为获得产品的数字图像;
连接所述图像采集相机和多个工作机的控制器,
其中所述控制器被构造为:
识别用于分析所述数字图像的一组机器视觉算法;
通过下列指示所述多个工作机以在所述数字图像上执行机器视觉分析:
根据第一估计的总执行时间超过阈值的确定,指示所述多个工作机的第一工作机以使用所述组的机器视觉算法的第一子集执行机器视觉分析,用于分析所述数字图像;
根据第二估计的总执行时间超过所述阈值的确定,指示所述多个工作机的第二工作机以使用所述组的机器视觉算法的第二子集执行机器视觉分析,用于分析所述数字图像,并且其中所述第一和第二子集是不相同的;和
基于由所述多个工作机执行的机器视觉分析的结果确定质量测量。
16. 如权利要求15所述的机器视觉系统,其中所述控制器进一步被构造为:
将所述数字图像分成至少第一部分和第二部分,和
其中指示所述多个工作机以在所述数字图像上执行机器视觉分析包括:
指示所述第一工作机以使用所述数字图像的第一部分执行机器视觉分析,和
指示所述第二工作机以使用所述数字图像的第二部分执行机器视觉分析。
17.如权利要求16所述的机器视觉系统,其中指示所述多个工作机以在所述数字图像上执行机器视觉分析包括:
指示所述第一工作机在所述数字图像上执行识别的机器视觉算法的第一算法;和
指示所述第二工作机在所述数字图像上执行识别的机器视觉算法的第二算法,
其中所述第一算法和所述第二算法是不相同的算法。
18.如权利要求15所述的机器视觉系统,其中识别用于分析所述数字图像的组的机器视觉算法包括:
基于执行所述机器视觉算法的时间估计来对机器视觉算法进行排序,其中所述算法时间估计代表利用相应的机器视觉算法来分析所述数字图像的处理时间。
19.如权利要求15所述的机器视觉系统,其中所述控制器进一步被构造为:
在所述控制器处使用识别的机器视觉算法在所述数字图像上执行机器视觉分析,和
其中确定质量测量包括基于逻辑地执行的机器视觉分析和由所述多个工作机执行的机器视觉分析的结果来确定质量测量。
20.如权利要求15所述的机器视觉系统,其中在所述第一工作机和第二工作机处的机器视觉分析至少部分地并行发生。
21.如权利要求15所述的机器视觉系统,其中在所述第一工作机和第二工作机处的机器视觉分析连续发生。
CN201810796939.1A 2012-05-09 2013-05-08 用于机器视觉分析的分布式处理系统及方法 Active CN109285138B (zh)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US201261644932P 2012-05-09 2012-05-09
US61/644,932 2012-05-09
US13/830,781 2013-03-14
US13/830,781 US8958627B2 (en) 2012-05-09 2013-03-14 System and method of distributed processing for machine-vision analysis
PCT/US2013/040215 WO2013169951A2 (en) 2012-05-09 2013-05-08 System and method of distributed procesing for machine-vision analysis
CN201380023836.7A CN104471539B (zh) 2012-05-09 2013-05-08 用于机器视觉分析的分布式处理系统及方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201380023836.7A Division CN104471539B (zh) 2012-05-09 2013-05-08 用于机器视觉分析的分布式处理系统及方法

Publications (2)

Publication Number Publication Date
CN109285138A CN109285138A (zh) 2019-01-29
CN109285138B true CN109285138B (zh) 2023-01-10

Family

ID=49548653

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201380023836.7A Active CN104471539B (zh) 2012-05-09 2013-05-08 用于机器视觉分析的分布式处理系统及方法
CN201810796939.1A Active CN109285138B (zh) 2012-05-09 2013-05-08 用于机器视觉分析的分布式处理系统及方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201380023836.7A Active CN104471539B (zh) 2012-05-09 2013-05-08 用于机器视觉分析的分布式处理系统及方法

Country Status (5)

Country Link
US (3) US8958627B2 (zh)
EP (1) EP2847676B1 (zh)
CN (2) CN104471539B (zh)
CA (1) CA2871154C (zh)
WO (1) WO2013169951A2 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8958627B2 (en) * 2012-05-09 2015-02-17 Sight Machine, Inc. System and method of distributed processing for machine-vision analysis
US10454832B2 (en) * 2017-01-31 2019-10-22 Google Llc Balancing data requests over a network
US10643329B2 (en) * 2018-04-09 2020-05-05 The Boeing Company Automated paint quality control for aircraft
US11776102B2 (en) * 2019-02-27 2023-10-03 King Abdullah University Of Science And Technology Programmable product assessor

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6920241B1 (en) * 2000-09-29 2005-07-19 Cognex Corporation System and method for bundled location and regional inspection
CN101101484A (zh) * 2007-08-01 2008-01-09 暨南大学 一种基于机器视觉的二维定位装置
CN101201814A (zh) * 2006-11-01 2008-06-18 国际商业机器公司 用于内插高维、非线性数据的设备、系统和方法

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5835627A (en) * 1995-05-15 1998-11-10 Higgins; Eric W. System and method for automatically optimizing image quality and processing time
US6956963B2 (en) * 1998-07-08 2005-10-18 Ismeca Europe Semiconductor Sa Imaging for a machine-vision system
US6891632B2 (en) * 1998-07-17 2005-05-10 Peerless Systems, Inc. Method and apparatus for selecting print strategy for optimal performance
AU2208500A (en) 1998-12-31 2000-07-24 Kimberly-Clark Worldwide, Inc. Process control using multiple detections
DE10034606B4 (de) 2000-07-20 2004-02-26 Stefan Gleis Verfahren zur Bereitstellung von fertigungsbezogenen Daten in einer Serienfertigung von Fertigungsobjekten, insbesondere von Kraftfahrzeugen
US6493079B1 (en) * 2000-09-07 2002-12-10 National Instruments Corporation System and method for machine vision analysis of an object using a reduced number of cameras
US6795200B1 (en) * 2000-11-13 2004-09-21 Point Grey Research Inc. Method and system for dimensioning boxes or other cuboid objects
US7961201B1 (en) 2000-12-21 2011-06-14 Cognex Corporation Method and apparatus for producing graphical machine vision content for distribution via a network
US6931602B1 (en) 2000-12-22 2005-08-16 Cognex Corporation Approach facilitating the selection of various machine vision functionality from among different platforms
US7962898B1 (en) * 2000-12-29 2011-06-14 Cognex Corporation Optimized distribution of machine vision processing
US7383536B1 (en) * 2000-12-29 2008-06-03 Petry John Remote machine vision application program development method
JP3953739B2 (ja) * 2001-01-31 2007-08-08 株式会社リコー 通信装置、画像データの送信プログラム、送信プログラムを記録した記録媒体並びに画像データの送信方法
JP2003029938A (ja) * 2001-07-12 2003-01-31 Canon Inc 情報処理装置及びその制御方法及び印刷システム、並びに、コンピュータプログラム及び記憶媒体
US20030052971A1 (en) * 2001-09-17 2003-03-20 Philips Electronics North America Corp. Intelligent quad display through cooperative distributed vision
US7305449B2 (en) * 2001-10-30 2007-12-04 Hewlett-Packard Development Company, L.P. Web-based imaging service providing reservation
US7970924B2 (en) 2001-12-14 2011-06-28 Cognex Technology And Investment Corporation Deterministic triggering over an ethernet network
US7441030B1 (en) 2003-02-28 2008-10-21 Osisoft, Inc. Delivery of continuous real-time performance data over the internet
US20050157949A1 (en) * 2003-09-30 2005-07-21 Seiji Aiso Generation of still image
US7578444B2 (en) * 2004-10-29 2009-08-25 Symbol Technologies Inc Methods and apparatus for dynamic signal processing
CN2821682Y (zh) * 2005-03-10 2006-09-27 中国科学院自动化研究所 一种分布式视频处理装置
US20080016119A1 (en) 2006-07-14 2008-01-17 Sharma Parit K Quality Assurance System and Method
US8090592B1 (en) * 2007-10-31 2012-01-03 At&T Intellectual Property I, L.P. Method and apparatus for multi-domain anomaly pattern definition and detection
US20090268950A1 (en) 2008-04-29 2009-10-29 Kuo Shun-Kun Product-Quality Inspection System and Method thereof
US20100277774A1 (en) * 2009-05-04 2010-11-04 Certifi Media Inc. Image quality indicator responsive to image processing
US7986953B2 (en) * 2009-06-01 2011-07-26 Microsoft Corporation Location determination with geographic and bias tuning
CN101808126B (zh) * 2010-03-12 2012-11-14 清华大学 一种用于实时视频处理的分布式计算系统和方法
US8973010B2 (en) 2010-05-28 2015-03-03 Varian Medical Systems International, AG Scheduling image recognition tasks based on task dependency and phase
US8571089B2 (en) * 2010-08-09 2013-10-29 Qualcomm Incorporated Time-setting in satellite positioning system receivers
US20120050522A1 (en) 2010-08-24 2012-03-01 Research In Motion Limited Method of and apparatus for verifying assembly components of a mobile device
JP5267606B2 (ja) * 2011-03-30 2013-08-21 カシオ計算機株式会社 表示装置及びプログラム
US9223440B2 (en) * 2011-06-28 2015-12-29 Avago Technologies General Ip (Singapore) Pte. Ltd. Optical navigation utilizing speed based algorithm selection
US20130054566A1 (en) * 2011-08-31 2013-02-28 Microsoft Corporation Acceleration of ranking algorithms using a graphics processing unit
US20130132148A1 (en) * 2011-11-07 2013-05-23 Ecole Polytechnique Federale De Lausanne (Epfl) Method for multi-objective quality-driven service selection
JP5827549B2 (ja) * 2011-11-22 2015-12-02 コニカミノルタ株式会社 画像形成システム及び画像形成装置
EP4060610A3 (en) * 2012-03-02 2022-12-28 Sight Machine, Inc. Machine-vision system and method for remote quality inspection of a product
US8958627B2 (en) * 2012-05-09 2015-02-17 Sight Machine, Inc. System and method of distributed processing for machine-vision analysis
US9251254B2 (en) * 2012-12-21 2016-02-02 Qualcomm Incorporated Controlling the execution speed of a processor in an audio processing system
EP3387448B1 (en) * 2015-12-08 2023-11-29 Sight Machine, Inc. System and method for monitoring manufacturing

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6920241B1 (en) * 2000-09-29 2005-07-19 Cognex Corporation System and method for bundled location and regional inspection
CN101201814A (zh) * 2006-11-01 2008-06-18 国际商业机器公司 用于内插高维、非线性数据的设备、系统和方法
CN101101484A (zh) * 2007-08-01 2008-01-09 暨南大学 一种基于机器视觉的二维定位装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
产品表面缺陷在线检测方法研究及系统实现;彭向前;《中国博士学位论文全文数据库 信息科技辑》;20091215;论文第2章 *

Also Published As

Publication number Publication date
WO2013169951A2 (en) 2013-11-14
CN104471539B (zh) 2018-08-17
CN104471539A (zh) 2015-03-25
US20150339812A1 (en) 2015-11-26
CA2871154C (en) 2018-10-02
US20130301902A1 (en) 2013-11-14
US20190355112A1 (en) 2019-11-21
EP2847676B1 (en) 2019-03-13
WO2013169951A3 (en) 2014-01-16
US10134122B2 (en) 2018-11-20
CN109285138A (zh) 2019-01-29
US8958627B2 (en) 2015-02-17
EP2847676A4 (en) 2015-12-30
EP2847676A2 (en) 2015-03-18
CA2871154A1 (en) 2013-11-14

Similar Documents

Publication Publication Date Title
US11722642B2 (en) Machine-vision system and method for remote quality inspection of a product
US20190355112A1 (en) System and method of distributed processing for machine-vision analysis
JPWO2020031984A1 (ja) 部品の検査方法及び検査システム
US20140185912A1 (en) Methods and Systems for Enhanced Automated Visual Inspection of a Physical Asset
US11521120B2 (en) Inspection apparatus and machine learning method
US11120541B2 (en) Determination device and determining method thereof
CN112950598A (zh) 工件的瑕疵检测方法、装置、设备及存储介质
JP2001043367A (ja) 外観検査シミュレーションシステムおよびその方法
US20190122340A1 (en) Image processing apparatus, image processing system, and recording medium
JP2022088713A (ja) 物品の組立工程における検査システム
CN112949490A (zh) 设备动作检测方法、装置、电子设备及可读存储介质
WO2020044779A1 (ja) 設置環境推定装置及びプログラム
WO2022162817A1 (ja) 故障診断システム、故障診断方法及びプログラム
CN115631166A (zh) 一种产品质量检测系统及方法
CN115587959A (zh) 异常检测系统及异常检测方法
CN118778540A (zh) 一种产品检测方法、装置及相关设备
CN115760676A (zh) 一种基于全景画面的异常检测方法、装置、设备及介质
CN117173127A (zh) 排水管道闭路电视检测视频质量评估方法、装置及设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant