CN110315529A - 机器视觉和机器人安装系统及方法 - Google Patents
机器视觉和机器人安装系统及方法 Download PDFInfo
- Publication number
- CN110315529A CN110315529A CN201910169328.9A CN201910169328A CN110315529A CN 110315529 A CN110315529 A CN 110315529A CN 201910169328 A CN201910169328 A CN 201910169328A CN 110315529 A CN110315529 A CN 110315529A
- Authority
- CN
- China
- Prior art keywords
- working region
- image data
- automaton
- filter
- visible sensation
- 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
- 238000000034 method Methods 0.000 title claims abstract description 148
- 230000035807 sensation Effects 0.000 claims description 55
- 238000007689 inspection Methods 0.000 claims description 40
- 238000001914 filtration Methods 0.000 claims description 29
- 230000004044 response Effects 0.000 claims description 13
- 238000010276 construction Methods 0.000 claims description 7
- 238000005094 computer simulation Methods 0.000 claims description 6
- 238000006243 chemical reaction Methods 0.000 claims 1
- 238000009434 installation Methods 0.000 abstract description 35
- 239000012636 effector Substances 0.000 description 22
- 238000004519 manufacturing process Methods 0.000 description 16
- 230000006870 function Effects 0.000 description 8
- 239000000463 material Substances 0.000 description 8
- 238000010801 machine learning Methods 0.000 description 5
- 238000012423 maintenance Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000003860 storage Methods 0.000 description 4
- 238000012549 training Methods 0.000 description 4
- 238000000151 deposition Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 239000007787 solid Substances 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 229910002056 binary alloy Inorganic materials 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 238000013178 mathematical model Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 239000000523 sample Substances 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 101000932768 Conus catus Alpha-conotoxin CIC Proteins 0.000 description 1
- 241001269238 Data Species 0.000 description 1
- 241000406668 Loxodonta cyclotis Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000003908 quality control method Methods 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
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
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B23—MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
- B23P—METAL-WORKING NOT OTHERWISE PROVIDED FOR; COMBINED OPERATIONS; UNIVERSAL MACHINE TOOLS
- B23P19/00—Machines for simply fitting together or separating metal parts or objects, or metal and non-metal parts, whether or not involving some deformation; Tools or devices therefor so far as not provided for in other classes
- B23P19/04—Machines for simply fitting together or separating metal parts or objects, or metal and non-metal parts, whether or not involving some deformation; Tools or devices therefor so far as not provided for in other classes for assembling or disassembling parts
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B23—MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
- B23P—METAL-WORKING NOT OTHERWISE PROVIDED FOR; COMBINED OPERATIONS; UNIVERSAL MACHINE TOOLS
- B23P19/00—Machines for simply fitting together or separating metal parts or objects, or metal and non-metal parts, whether or not involving some deformation; Tools or devices therefor so far as not provided for in other classes
- B23P19/04—Machines for simply fitting together or separating metal parts or objects, or metal and non-metal parts, whether or not involving some deformation; Tools or devices therefor so far as not provided for in other classes for assembling or disassembling parts
- B23P19/06—Screw or nut setting or loosening machines
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B23—MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
- B23P—METAL-WORKING NOT OTHERWISE PROVIDED FOR; COMBINED OPERATIONS; UNIVERSAL MACHINE TOOLS
- B23P19/00—Machines for simply fitting together or separating metal parts or objects, or metal and non-metal parts, whether or not involving some deformation; Tools or devices therefor so far as not provided for in other classes
- B23P19/10—Aligning parts to be fitted together
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B23—MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
- B23P—METAL-WORKING NOT OTHERWISE PROVIDED FOR; COMBINED OPERATIONS; UNIVERSAL MACHINE TOOLS
- B23P19/00—Machines for simply fitting together or separating metal parts or objects, or metal and non-metal parts, whether or not involving some deformation; Tools or devices therefor so far as not provided for in other classes
- B23P19/10—Aligning parts to be fitted together
- B23P19/102—Aligning parts to be fitted together using remote centre compliance devices
- B23P19/105—Aligning parts to be fitted together using remote centre compliance devices using sensing means
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1679—Programme controls characterised by the tasks executed
- B25J9/1687—Assembly, peg and hole, palletising, straight line, weaving pattern movement
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1694—Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
- B25J9/1697—Vision controlled systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/217—Validation; Performance evaluation; Active pattern learning techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/28—Determining representative reference patterns, e.g. by averaging or distorting; Generating dictionaries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/0014—Image feed-back for automatic industrial control, e.g. robot with camera
-
- 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/20—Image preprocessing
- G06V10/30—Noise filtering
-
- 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/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
- G06V10/443—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
- G06V10/446—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering using Haar-like filters, e.g. using integral image techniques
-
- 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/46—Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
- G06V10/462—Salient features, e.g. scale invariant feature transforms [SIFT]
-
- 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/56—Extraction of image or video features relating to colour
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/10—Terrestrial scenes
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40565—Detect features of object, not position or orientation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2218/00—Aspects of pattern recognition specially adapted for signal processing
- G06F2218/02—Preprocessing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/10—Machine learning using kernel methods, e.g. support vector machines [SVM]
-
- 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/10004—Still image; Photographic image
- G06T2207/10012—Stereo images
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/06—Recognition of objects for industrial automation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Mechanical Engineering (AREA)
- Data Mining & Analysis (AREA)
- Robotics (AREA)
- Quality & Reliability (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Image Analysis (AREA)
- Length Measuring Devices By Optical Means (AREA)
- Image Processing (AREA)
- Manipulator (AREA)
- Automatic Assembly (AREA)
Abstract
本发明涉及机器视觉和机器人安装系统及方法。机器视觉方法及系统确定工作区域中的对象是否具有一个或多个预定特征。方法包括捕获工作区域的图像数据,将滤波器应用于图像数据,其中,滤波器包括对应于特定特征的方面,并且至少部分地基于应用确定对象是否具有特定特征。系统包括:相机系统,被配置为捕获工作区域的图像数据;以及控制器,通信地耦接到相机系统,的,并且包括具有计算机可读指令的非暂时性计算机可读介质,该计算机可读指令在被执行时使得控制器将滤波器应用于图像数据,并且至少部分地基于应用滤波器来确定对象是否具有特定特征。还公开了利用机器视觉方法及系统的机器人安装方法及系统。
Description
技术领域
本公开涉及机器视觉。
背景技术
制造业正变得越来越自动化。当前的机器人制造系统在重复性任务中非常有效;然而,它们不一定适应不断变化的环境或者由人为或其他上游输入引入的错误。例如,负责将螺母安装到螺纹紧固件上的螺母运行机器人(例如,具有螺母安装末端执行器的机械臂)将螺母安装到尺寸不正确或配置不正确的螺纹紧固件上,导致人员不仅要识别错误,随后还要修正错误。
发明内容
公开了机器视觉和机器人安装系统及方法。
根据本公开的用于确定工作区域中的对象是否具有一个或多个预定特征的自动机器视觉方法包括:从相机系统捕获工作区域的图像数据,将滤波器应用于该图像数据以产生滤波数据,其中,该滤波器包括对应于一个或多个预定特征的特定特征的方面,并且至少部分地基于该应用,确定对象是否具有特定特征。根据本公开的机器人安装方法包括执行根据本公开的自动机器视觉方法,其中,相机系统安装到机械臂的末端执行器、与机械臂的末端执行器一起安装或者作为机械臂的末端执行器安装,并且基于该确定,使用机械臂以相对于该对象的预定配置安装组件。
根据本公开的用于确定工作区域中的对象是否具有一个或多个预定特征的机器视觉系统包括:相机系统,被配置为捕获工作区域中的图像数据,以及控制器,通信地耦接到该相机系统以从该相机系统接收图像数据。该控制器包括具有计算机可读指令的非暂时性计算机可读介质,该计算机可读指令在被执行时使得控制器将滤波器应用于图像数据以产生滤波数据,其中,该滤波器包括对应于一个或多个预定特征的特定特征的方面,并且至少部分地基于应用该滤波器来确定对象是否具有特定特征。根据本公开的机器人安装系统包括根据本公开的机器视觉系统和机械臂,其中,相机系统安装到机械臂的末端执行器、与机械臂的末端执行器一起安装或者作为机械臂的末端执行器安装。该机械臂配置为部分地基于控制器做出的对象具有特定特征的确定来以相对于该对象的预定配置安装组件。
附图说明
图1是示意性地表示根据本公开的方法的流程图。
图2是示意性地表示根据本公开的系统的示图。
图3是表示根据本公开的示例机器人安装系统的粗略示意图。
图4是示意性地表示飞机生产和服务方法的流程图。
图5是示意性地表示飞机的框图。
具体实施方式
通常,在附图中,可能包括在给定示例中的元件以实线示出,而对于给定示例中可选的元件以虚线示出。然而,以实线示出的元件对于本公开的所有示例并不是必需的,并且在不脱离本公开的范围的情况下,以实线示出的元件可以从特定示例中省略。
本文公开了机器视觉和机器人安装系统及方法。图1提供了示意性地表示用于确定工作区域304中的对象302是否具有一个或多个预定特征306的自动机器视觉方法100的流程图,并且图2提供了用于确定工作区域304中的对象302是否具有一个或多个预定特征306的机器视觉系统300的示意性表示。如从本文的讨论中理解的那样,图1和图2中的方法100和系统300的示意性表示不是限制性的,并且其他方法100,方法100的步骤、系统300,以及系统300的元件都在本公开的范围内,包括具有多于或少于所示步骤数量的方法100,以及具有多于或少于所示元件数量的系统300。从本文的讨论中还可以理解,方法100不需要按照图示的顺序执行图1中示意性表示的步骤。可以将系统300描述为配置为执行或实现根据本公开的方法100;然而,并非所有方法100都需要由根据本公开的系统300执行或实施,并且并非所有系统300都需要执行或实施根据本公开的方法100。
如上所述,方法100和系统300确定工作区域304中的对象302是否具有一个或多个预定特征306(例如,对象302的物理或结构特征或者特定位置或方位)。因此,通过确认对象302的特征306是预期存在的特征,或者以其他方式对应于期望存在于对象302的位置处的对象,方法100和系统300可以确定对象302是否是正确的对象,例如,是否准备通过后续操作来处理。附加地或替代地,方法100和系统300可以确定对象302是否处于期望的配置,例如完全安装、正确定位、与不同的组件组装等。相反,如果方法100或系统300确定对象302的特征不是期望存在的特征306,或者以其他方式对应于期望存在于对象302的位置处的对象或其配置,则可以避免后续操作,或者可以执行替代操作,例如通过用正确的对象替换对象302,通过在后续处理之前进一步操纵对象302等。因此,可以将一些方法100和系统300描述为质量控制方法和系统。
可以将方法100和系统300描述为自动方法和系统,只要在启动或激活时,实现方法100或系统300的最终目标所需的步骤可以由系统或其组件完全自动化,而不需要来自人类用户的外部输入。
工作区域304可以是任何适当的工作区域,例如在制造或生产环境中。作为说明性的、非排他性的示例,工作区域304可以在组装或制造阶段包括产品或其一部分,例如车辆、飞机或机器。作为更具体的示例,工作区域304可以包括产品的区域,其中安装紧固件以将两个或更多个部件组装在一起。在这样的示例中,对象302可以包括紧固件;然而,方法100和系统300可以用对象302的任何合适配置实现或配置。
具体参考图1并且总体参考图2,方法100包括从相机系统308捕获(102)工作区域304的图像数据,将滤波器应用(104)于图像数据以产生滤波数据,其中,滤波器包括对应于一个或多个预定特征306的一个特定特征的方面,并且至少部分地基于该应用(104),确定(106)对象302是否具有特定特征。换句话说,捕获与工作区域304相关联的图像数据,将具有对应于特定特征的方面的滤波器应用于该图像数据,并且形成滤波后的图像数据,确定对象302是否具有特定特征。作为说明性的、非排他性的示例,当对象302是螺纹紧固件时,滤波器可以具有与对象302所期望定位的对象的螺纹构造(例如螺距)相对应的方面,并且作为滤波的结果,确定螺纹紧固件是否具有预期存在的螺距。
具体参考图2,系统300包括配置为捕获工作区域304的图像数据的相机系统308,以及通信地耦接到相机系统308以从相机系统308接收图像数据的控制器310。可以将控制器310描述为配置为执行或实现根据本公开的方法100。附加地或替代地,控制器310可以包括具有计算机可读指令的非暂时性计算机可读介质,该计算机可读指令在被执行时使得控制器将滤波器应用于图像数据以创建滤波数据,其中,滤波器包括对应于一个或多个预定特征306的特定特征,并且至少部分地基于滤波器的应用,确定对象302是否具有特定特征。
控制器310可以是配置为执行本文所讨论的控制器310的功能的任何合适的一个或多个装置。例如,控制器310可以包括电子控制器、专用控制器、特殊用途控制器、个人计算机、特殊用途计算机、显示装置、逻辑装置、存储装置和/或具有计算机可读介质的存储装置中的一个或多个,该计算机可读介质适于存储用于实现根据本公开的系统和/或方法的各方面的计算机可执行指令。附加地或替代地,控制器310可以包括或配置为读取用于实现根据本公开的方法或方法的步骤的非暂时性计算机可读存储器或存储器、适合于存储计算机可执行指令或软件的介质。此类介质的示例包括CD-ROMs、磁盘、硬盘驱动器、闪存等。如本文所使用的,将具有计算机可执行指令的存储器或内存、装置和介质以及根据本公开的计算机实现的方法和其他方法认为是在被认为可取得专利的主题范围内。
在方法100和系统300的一些示例中,相机系统308相对于工作区域304定位在已知或确定的位置和方位。例如,从相机系统308的角度来看,对象302的尺寸、形状和方位影响所捕获的图像数据(例如,对应于对象302的像素的集合),并因此影响为确定对象302是否具有特定特征的图像数据的相应分析。因此,与相机系统308和工作区域304相关联的坐标系需要以已知方式对准或至少协调,以便根据这些示例操作实施方法100和系统300。因此,可以将一些方法100描述为进一步包括确定或获取相机系统308相对于工作区域304的位置和/或方位,和/或反之亦然,并且类似地,在一些系统300中,计算机可读指令在被执行时还可以进一步使控制器确定或获取相机系统308相对于工作区域304的位置和/或方位,和/或反之亦然。
在一些这样的示例中,相机系统308和工作区域304中的一个或两个可以位于已知或确定的位置,例如,当确定对象302是否具有一个或多个预定特征时,系统300的控制器310考虑已知或确定的位置。这可以包括确定和/或建立描述系统300的位置和/或方位的坐标系,确定和/或建立描述工作区域304的位置和/或方位的坐标系,确定和/或建立描述相机系统308的位置和/或方位的坐标系,和/或确定和/或建立两个或多个坐标系之间的关系、偏移和/或差异。
例如,相机系统308和工作区域304中的一个或两个可以与定位系统相关联或由其监控,定位系统例如是制造或生产环境中的室内定位系统,其被配置为检测相机系统308和/或工作区域304的精确位置。附加地或替代地,相机系统308可以固定在空间中,并且工作区域304可以移动到相机系统308的视野中,例如,工作区域304可以通过精密工具而精确定位,或者通过系统300利用视觉系统或触摸探针执行的全局再同步操作而宽松定位。替代地,工作区域304可以固定在空间中,而可以移动相机系统308,使得工作区域304在相机系统308的视野中,例如,相机系统308可以通过精密工具而精确定位,或者通过系统300利用视觉系统或触摸探针执行的全局再同步操作而宽松定位。替代地,工作区域304的数学模型或描述可用于估计、建立和/或确定相机系统308与工作区域304之间的相对方位。例如,工作区域304的该数学模型或描述可以包括和/或是工作区域304的CAD模型或工作区域304的CAD模型的二维投影。
在方法100和系统300的一些示例中,相机系统308由相机支架312(例如机械臂)支撑。也就是说,相机系统308可以安装到机械臂的末端执行器上、与机械臂的末端执行器一起安装或者作为机械臂的末端执行器安装。在一些这样的系统300中,控制器310通信地耦接到相机支架以接收相机系统308相对于工作区域304的位置和方位。如所讨论的,考虑、知道、确定和/或量化相机系统308相对于工作区域304的位置和方位有助于分析图像数据,以确定对象302是否具有特定特征。
在方法100和系统300的一些示例中,图像数据包括颜色数据。例如,特征306可以是特定颜色。然而,在不需要对象的颜色或以其他方式指示对象302是否对应于期望对象的应用中,图像数据可以不包括颜色数据。在这样的示例中,相机系统308因此可以捕获黑白或灰度数据。
一些方法100还包括在捕获(102)期间照亮(108)工作区域304,如图1中示意性地表示的。因此,一些系统300可以进一步包括照明装置314,其被配置为当相机系统308捕获图像数据时照亮工作区域304,如图2中示意性地表示的。例如,照明装置314可以包括闪光装置,该闪光装置通信地耦接到相机系统308或其组件,使得当相机系统308捕获图像数据时闪光灯照亮工作区域304。
如图1中示意性地表示的,一些方法100还包括在捕获(102)图像数据之后,并且在应用(104)滤波器之前,基于工作区域304中不是对象302的部分的已知颜色,从图像数据中减去(110)对应于工作区域304中不是对象302的部分的数据。在相应的系统300中,计算机可读指令在被执行时因此进一步使得控制器减去对应于工作区域304的不是对象302的部分的数据。例如,在一些应用中,除了工作区域304中存在的一个或多个对象302之外,工作区域304的颜色可以是均匀的。作为更具体的示例,工作区域304可以包括处于原始或涂漆状态的片材,其中原始或涂漆状态具有特定颜色。因此,可以从图像数据中减去与特定颜色相关联的数据,从而仅保留或通常仅保留与工作区域304中的一个或多个对象302相关联的数据。可以将附加地或替代地减去颜色数据描述为色度键控。
一些方法100还包括在捕获(102)图像数据之后,并且在应用(104)滤波器之前,将图像数据转换(112)为HSV(色调、饱和度、值)域。在相应的系统300中,计算机可读指令在被执行时因此进一步使得控制器在应用滤波器之前将图像数据转换为HSV域。虽然并非在所有方法100和系统300中都需要,但是将图像数据转换成HSV域可以有助于减去与工作区域304中不是对象302的部分相关联的颜色数据。
附加地或替代地,一些方法100还包括在捕获(102)图像数据之后,并且在应用(104)滤波器之前,基于一个或多个预定特征306的假定特征对图像数据进行二进制阈值化(114),并且响应于二进制阈值化(114),识别(116)一组或多组像素作为假定特征的候选。在相应的系统300中,计算机可读指令在被执行时因此进一步使得控制器在应用滤波器之前基于一个或多个预定特征306的假定特征对图像数据进行二进制阈值化,并且响应于图像数据被二进制阈值化,识别一个或多个像素组作为假定特征的候选。作为说明性的、非排他性的示例,假定特征可以是颜色、形状、尺寸、标记和与预期在工作区域304中或期望在工作区域304中的对象相关联的螺纹构造中的一个或多个。在一些示例中,基于与工作区域304相关联的数据库,假定特征对应于工作区域304中的预期或期望对象。例如,正在组装或制造的产品可以具有保存在数据库内的零件清单,在其中识别零件的特征。因此,如果预期或期望在工作区域304内的对象具有假定特征,例如特定颜色,则基于假定特征的二进制阈值化(114)有助于将像素或图像数据的子集识别为假定特征的候选。作为更具体的示例,旨在用于产品的特定组件的紧固件或紧固件的一部分可以具有特定颜色。通过基于特定颜色对图像数据进行二进制阈值化,在图像数据中识别对应于特定颜色的特定像素组,以便进一步处理而最终确定对象302实际上是否是期望存在的对象,或者对象302是否处于期望的配置,例如完全安装、正确定位、与不同组件组装等。
一些这样的方法100还包括在二进制阈值化(114)之后对图像数据进行噪声滤波(118)(即,应用噪声滤波器(例如,二进制噪声滤波器)),在这种情况下,识别(116)一组或多组像素还响应于噪声滤波(118)。在相应的系统300中,计算机可读指令在被执行时因此进一步使得控制器在图像数据被二进制阈值化之后对图像数据进行噪声滤波(即,应用噪声滤波器(例如,二进制噪声滤波器)),并且识别一组或多组像素组还响应于图像数据被噪声滤波。例如,取决于工作区域304是否被照亮和/或取决于工作区域304的照亮程度或质量,二进制阈值化(114)后的图像数据可能有噪声,并且噪声滤波(118)可以清理图像数据,并有助于最终确定对象302实际上是否是期望存在的对象,或者对象302是否处于期望的配置,例如完全安装、正确定位、与不同组件组装等。
在一些方法100和系统300中,其存在被确定且对应于在产生滤波图像数据时应用至图像数据的滤波器的一方面的特定特征是一个或多个预定特征的假定纹理。在一些这样的示例中,假定纹理对应于基于与工作区域304相关联的数据库在工作区域304内的预期或期望对象。例如,并且如所讨论的,正在组装或制造的产品可以具有保存在数据库内的零件清单,在其中识别零件的特征。因此,如果预期或期望在工作区域304中的对象具有假定特征,例如特定纹理,则滤波器的应用有助于最终确定对象302是否具有假定纹理。作为更具体的示例,旨在用于产品的特定组件的紧固件可以具有螺纹,该螺纹使紧固件具有与特定螺纹尺寸或螺距相对应的纹理。
在方法100和系统300的一些示例中,滤波器是Gabor滤波器。例如,对于与期望紧固件相关联的螺距,并且基于与工作区域304和/或相机系统308相关联的相对和/或绝对位置和/或方位数据(例如,在方法100期间和/或系统300已知或获取的),可以选择或导出适当的Gabor滤波器,并将其应用于图像数据,例如作为二进制阈值化(114)的结果而被识别的一组或多组像素。Gabor滤波器对像素组的响应越大,一组像素实际上表示期望在工作区域304中的对象的特征(例如,特定螺距)的置信度就越高。
作为说明性的、非排他性的示例,期望的紧固件可以具有已知的螺距,其可以沿着已知紧固件的纵向轴线限定。对象302在系统300中、工作区域304中和/或相对于相机系统308的位置可以是已知的和/或可获取的(例如本文所讨论的,在方法100期间和/或利用系统300)。表现出对应的一致波长的该已知螺距可以基于对象302的位置,例如通过对象302的透视投影来缩放,以生成缩放的波长。然后可以利用该缩放波长来创建、生成和/或选择Gabor滤波器或定向Gabor滤波器族。然后可以将Gabor滤波器或定向Gabor滤波器族应用于图像数据。如果图像数据包括具有已知的螺距的期望紧固件(即,如果对象302是期望的紧固件),则Gabor滤波器将表现出强烈的响应。相反,如果图像数据不包括具有已知的螺距的期望紧固件(即,如果对象302不是期望的紧固件),则Gabor滤波器将表现出弱的或较弱的响应。
作为另一个说明性的、非排他性示例,对象302的纵向轴线可以关于或相对于相机系统308的成像平面以一定角度定向。在这些条件下,上述缩放波长还可以乘以角度校正因子,以产生和/或生成角度校正和缩放波长。然后,可以利用该角度校正和缩放的波长来创建、生成和/或选择可以应用于图像数据的Gabor滤波器或定向Gabor滤波器族,如上所述。角度校正因子的示例包括或者是对象302的纵轴相对于成像平面定向的角度的余弦。
作为另一个说明性的、非排他性示例,相机系统308可以围绕对象302旋转、围绕对象302的位置旋转,和/或围绕对象302的纵向轴旋转。相机系统308的这种旋转引起图像平面的旋转,从而提供关于对象302的三维信息并允许系统300利用定向Gabor滤波器族。
在一些方法100和系统300中,滤波数据包括或可以被描述为一个或多个像素斑点,这些像素斑点是代表对象302的候选。一些这样的方法100还包括,在应用(104)滤波器之后,分析(120)像素的一个或多个斑点(即,局部分组)以确定一个或多个斑点特征的存在。在相应的系统300中,计算机可读指令在被执行时因此进一步使得控制器分析一个或多个像素斑点,以确定在应用滤波器之后一个或多个斑点特征的存在。例如,一个或多个斑点特征可以包括斑点区域、斑点偏心率、斑点尺寸、斑点亮度、斑点相关性以及斑点同质性中的一个或多个。在一些这样的方法100和系统300中,一个或多个斑点特征和与工作区域304相关联的数据库中的一个或多个预定特征306相关联。如所讨论的,正在组装或制造的产品可以具有保存在数据库内的零件清单,在其中识别零件的特征。因此,如果预期或期望在工作区域304中的对象具有与一个或多个斑点的预期面积、偏心率、尺寸、亮度、相关性和/或同质性相对应的假定特征,则对一个或多个斑点的分析有助于最终确定对象302是否具有一个或多个预定特征。
一些这样的方法100还包括训练122机器学习模型以识别与一个或多个斑点特征相关联的一个或多个预定特征306。在相应的系统300中,计算机可读指令在被执行时因此进一步使控制器训练机器学习模型以识别与一个或多个斑点特征相关联的一个或多个预定特征306。作为说明性的、非排他性示例,机器学习模型可以是支持向量法(SVM)。
在一些方法100和系统300中,相机系统308是立体相机系统,因此图像数据包括两个图像。这样的方法100还包括创建(124)滤波数据的点云。在相应的系统300中,计算机可读指令在被执行时因此进一步使得控制器310创建滤波数据的点云。
一些这样的方法100还包括在捕获102图像数据期间,在工作区域304上投射126光纹理。对应系统300还包括投影仪316,其配置为在工作区域304上投射光纹理。在一些这样的方法100和系统300中,光纹理包括图案,而在其他这样的方法100和系统300中,光纹理是随机的。通过在工作区域304上投射光纹理,可以解析由相机系统308捕获的两个图像以创建点云。例如,在一些方法100中,创建(124)点云可以包括基于光纹理从两个图像生成128视差图。
更具体地,一些方法100还包括选择(130)与对象302相关联的像素,并将与对象302相关联的像素与来自与工作区域304相关联的数据库的预期或期望对象的计算机模型(例如CAD模型)进行比较(132)。在相应的系统300中,计算机可读指令在被执行时因此进一步使得控制器选择与对象302相关联的像素,并将与对象302相关联的像素与来自与工作区域304相关联的数据库的预期或期望对象的计算机模型进行比较。作为说明性的、非排他性的示例,紧固件的计算机模型可以包括对应于紧固件轴的圆柱体的表示,并且将计算机模型和与对象302相关联的像素进行比较可以包括通过使用法线和半径估计将圆柱体拟合到像素。
在一些应用中,工作区域304包括多个对象302。因此,结合多个对象中的每一个执行一些方法100。在相应的系统300中,计算机可读指令在被执行时因此进一步使得控制器310确定多个对象302中的每一个是否具有特定特征。
继续参考图1和2,机器人安装方法200和机器人安装系统400也在本公开的范围内。如图1中示意性地示出并且总体参考图2,机器人安装方法200包括执行根据本公开的自动机器视觉方法100,其中相机系统308安装到机械臂402的末端执行器、与机械臂402的末端执行器一起安装或者作为机械臂402的末端执行器安装,并且基于所执行的方法100的确定(106),指示(202)机械臂402以相对于对象302的预定配置安装组件,以及使用机械臂402以相对于对象302的预定配置安装(204)组件。如图2中示意性地表示的,机器人安装系统400包括根据本公开的机器视觉系统300和机械臂402,在机械臂402中,相机系统308安装到机械臂402的末端执行器、与机械臂402的末端执行器一起安装或者作为机械臂402的末端执行器安装,并且其中,机械臂402配置为部分地基于控制器310对对象302是否具有特定特征确定和从控制器310接收的指令而以相对于对象302的预定配置安装组件。也就是说,计算机可读指令在被执行时还使得控制器指示机械臂以相对于对象的预定配置安装组件。
现在转到图3,示出了机器人安装系统401形式的机器人安装系统400的说明性、非排他性示例。在适当的情况下,来自图2的示意图的附图标记用于表示机器人安装系统401的相应部分;然而,图3的示例是非排他性的,并且不将机器人安装系统400限制为图3所示的实施例。也就是说,机器人安装系统400不限于所示机器人安装系统401的具体实施例,并且机器人安装系统400可以结合图2和/或图3的实施例及其变型的示意性表示中示出和讨论的机器人安装系统400的任何数量的各种方面、配置、特性、特性等,而不需要包括所有这些方面、配置、特性、特性等。为了简洁起见,可以不再关于机器人安装系统401讨论、说明和/或标记先前讨论的每个组件、部件、部分、方面、区域等或其变型;然而,在本公开的范围内,先前讨论的特征、变型等可以与机器人安装系统401一起使用。
如图3所示,机器人安装系统401包括具有作为末端执行器404的机械臂402、相机系统308以及螺母扳手406。机械臂402相对于工作区域304定位,工作区域304包括从片材414延伸的紧固件形式的多个对象302。更具体地,在所描绘的示例中,多个螺栓408延伸穿过片材414,其中一部分螺栓408具有安装在其上的螺母410并限定紧固件对412。控制器310示意性地呈现为与相机系统308、螺母扳手406以及机械臂402通信,该操作通信示意性地由闪电表示,并且该通信可以是有线和/或无线的。因此,机器人安装系统401被配置为执行根据本公开的方法100和方法200。更具体地,机器人安装系统401利用其机器视觉系统300来确定对象302是否具有一个或多个预定特征,例如是否存在正确的螺栓408和螺母410,螺栓408是否正确或完全定位成可操作地接收螺母410,螺母是否正确和可操作地定位在对应的螺栓408上,该螺栓408是否仍然需要螺母410,等等。然后,基于这样的确定,机械臂402可以利用螺母扳手406可操作地安装附加螺母410,和/或可以不安装螺母410,例如,在不正确的螺栓408被定位的地方,或者在螺栓408未被可操作地定位以接收螺母410的地方。
现在转到图4和图5,本公开的实施例可以在如图4所示的飞机制造和保养方法500以及如图5所示的飞机600的背景下描述。也就是说,方法500可以包括根据本公开的方法100或方法200中的一个或多个,并且飞机600可以利用根据本公开的系统300或系统400制造或保养,例如其中飞机600包括工作区域304。
在预生产期间,示例性方法500可以包括飞机600的规格和设计504以及材料采购506。在生产期间,会发生飞机600的组件和子组件制造508以及系统集成510。此后,飞机600可以通过认证和交付512以便投入使用514。在客户保养期间,安排飞机600用于例行维护和保养516(其还可以包括修改、重新配置、翻新等)。
方法500的每个过程可以由系统集成商、第三方和/或运营商(例如,客户)执行或执行。出于本说明书的目的,系统集成商可以包括但不限于任何数量的飞机制造商和主要系统分包商;第三方可以包括但不限于任何数量的供应商、分包商以及供应商;并且运营商可以是航空公司、租赁公司、军事实体、服务机构等。
如图5所示,由示例性方法500生产的飞机600可以包括具有多个系统604和一个内舱606的机身602。高级系统604的示例包括推进系统608、电气系统610、液压系统612以及环境系统614中的一个或多个。还可以包括任何数量的其他系统。尽管示出了航空航天的示例,但是本文公开的发明的原理可以应用于其他行业,例如汽车行业。
可以在生产和服务方法500的任何一个或多个阶段期间采用本文公开的装置和方法。例如,对应于生产阶段508的组件和子组件可以以类似于飞机600在使用中生产的组件和子组件的方式制造或制造。此外,在生产阶段508和510期间,可以利用一个或多个设备实施例、方法实施例或其组合,例如,通过显著加快飞机600的组装或降低飞机600的成本。类似地,当飞行器600在使用中时,可以使用一个或多个装置实施例、方法实施例或其组合,例如但不限于维护和保养516。
根据本公开的发明主题的说明性的、非排他性的示例在以下列举的段落中描述:
A.一种用于确定工作区域中的对象是否具有一个或多个预定特征的自动机器视觉方法,该自动机器视觉方法包括:
从相机系统捕获工作区域的图像数据;
将滤波器应用于图像数据以产生滤波数据,其中,滤波器包括与一个或多个预定特征的一特定特征相对应的方面;以及
至少部分地基于该应用,确定对象是否具有特定特征。
A1.段落A的自动机器视觉方法,其中至少一个:
(i)将相机系统定位于相对于工作区域的已知位置和方位;以及
(ii)自动机器视觉方法还包括确定相机系统和工作区域之间的相对方位。
A2.段落A-A1中任一段的自动机器视觉方法,其中,相机系统安装到机械臂的末端执行器、与机械臂的末端执行器一起安装或作为机械臂的末端执行器安装。
A3.段落A-A2中任一段的自动机器视觉方法,其中,图像数据包括颜色数据。
A4.段落A-A3中任一段的自动机器视觉方法,还包括:
在捕获期间照亮工作区域。
A5.段落A-A4中任一段的自动机器视觉方法,还包括在捕获图像数据之后并且在应用滤波器之前:
基于工作区域中的不是对象的部分的已知颜色,从图像数据中减去对应于不是对象的工作区域的部分的数据。
A6.段落A-A5中任一段的自动机器视觉方法,还包括在捕获图像数据之后并且在应用滤波器之前:
将图像数据转换为HSV域。
A7.段落A-A6中任一段的自动机器视觉方法,还包括在捕获图像数据之后并且在应用滤波器之前:
基于一个或多个预定特征的假定特征对图像数据进行二进制阈值化;以及
响应于该二进制阈值化,识别一组或多组像素作为假定特征的候选。
A7.1.段落A7的自动机器视觉方法,其中,假定特征对应于工作区域内的基于与工作区域相关联的数据库的预期或期望对象。
A7.2.段落A7-A7.1中任一段的自动机器视觉方法,其中,假定特征是颜色、形状、尺寸、标记以及螺纹构造中的一种或多种。
A7.3.段落A7-A7.2中任一段的自动机器视觉方法,还包括:
在二进制阈值化之后对图像数据进行噪声滤波;
其中,识别一组或多组像素进一步响应于噪声滤波。
A8.段落A-A7.3中任一段的自动机器视觉方法,其中,特定特征是一个或多个预定特征的假定纹理。
A8.1.段落A8的自动机器视觉方法,其中,假定纹理对应于工作区域中的基于与工作区域相关联的数据库的预期或期望对象。
A8.2.段落A8-A8.1中任一段的自动机器视觉方法,其中,假定纹理对应于紧固件螺纹尺寸。
A9.段落A-A8.2中任一段的自动机器视觉方法,其中,滤波器是Gabor滤波器。
A10.段落A-A9中任一段的自动机器视觉方法,其中,滤波数据包括作为代表对象的候选的一个或多个像素斑点。
A10.1.段落A10的自动机器视觉方法,还包括:
在应用滤波器之后,分析一个或多个像素斑点以确定一个或多个斑点特征的存在。
A10.1.1.段落A10.1的自动机器视觉方法,其中,一个或多个斑点特征可以包括斑点区域、斑点偏心率、斑点尺寸、斑点亮度、斑点相关性以及斑点同质性中的一个或多个。
A10.1.1.1.段落A10.1.1的自动机器视觉方法,其中,一个或多个斑点特征和与工作区域相关联的数据库中的一个或多个预定特征相关联。
A10.1.2.段落A10-A10.1.1.1中任一段的自动机器视觉方法,还包括:
训练机器学习模型以识别与一个或多个斑点特征相关联的一个或多个预定特征。
A11.段落A-A10.1.2任一段的自动机器视觉方法,其中,相机系统是立体相机系统,其中,图像数据包括两个图像,并且其中,自动机器视觉方法还包括:
创建滤波数据的点云。
A11.1.段落A11的自动机器视觉方法,还包括:
在捕获图像数据期间,在工作区域上投射光纹理。
A11.1.1.段落A11.1的自动机器视觉方法,其中,光纹理包括图案。
A11.1.2.段落A11.1的自动机器视觉方法,其中,光纹理是随机的。
A11.1.3.段落A11.1-A11.1.2中任一段落的自动机器视觉方法,其中,创建点云包括基于光纹理从两个图像生成视差图。
A11.1.3.1段落A11.1.3的自动机器视觉方法,还包括:
选择与对象相关的像素;以及
将与对象相关联的像素与来自与工作区域相关联的数据库的预期或期望对象的计算机模型进行比较。
A12.段落A-A11.1.3.1中任一段的自动机器视觉方法,其中,对象包括紧固件或紧固件对。
A13.段落A-A12中任一段的自动机器视觉方法,其中,工作区域包括多个对象,并且其中,该方法结合多个对象中的每一个来执行。
A14.段落A-A13中任一段的自动机器视觉方法,其中,工作区域包括从片材延伸的多个对象。
A14.1.段落A14的自动机器视觉方法,当依赖于段落A5时,其中,工作区域中不是对象的部分对应于片材。
A15.段落A-A14.1中任一段落的自动机器视觉方法,其中,一个或多个预定特征包括颜色、尺寸、形状、标记以及螺纹构造中的一个或多个。
A16.段落A-A15中任一段的自动机器视觉方法,由段落C-C15中任一段的机器视觉系统执行。
B.一种机器人安装方法,包括:
执行段落A-A16中任一段的自动机器视觉方法,其中,相机系统安装到机械臂的末端执行器、与机械臂的末端执行器一起安装或作为机械臂的末端执行器安装;
基于该确定,指示机械臂以相对于对象的预定配置安装组件;以及
使用机械臂以相对于对象的预定配置安装组件。
B1.段落B的机器人安装方法,其中,对象和组件包括紧固件对。
C.一种用于确定工作区域中的对象是否具有一个或多个预定特征的机器视觉系统,该机器视觉系统包括:
相机系统,被配置为捕获工作区域的图像数据;以及
控制器,通信地耦接到相机系统以从相机系统接收图像数据,其中控制器包括具有计算机可读指令的非暂时性计算机可读介质,该计算机可读指令在被执行时使得控制器:
将滤波器应用于图像数据以创建滤波数据,其中,滤波器包括与一个或多个预定特征的特定特征相对应的方面;以及
至少部分地基于滤波器的应用,确定对象是否具有特定特征。
C1.段落C的机器视觉系统,还包括:
相机支架,其中相机系统由相机支架支撑;
其中,控制器通信地耦接到相机支架以接收相机系统相对于工作区域的位置和方位数据。
C1.1.段落C1的机器视觉系统,其中,相机支架是机械臂。
C2.段落C-C1.1中任一段的机器视觉系统,其中,图像数据包括颜色数据。
C3.段落C-C2中任一段的机器视觉系统,还包括:
被配置为当相机系统捕获图像数据时照亮工作区域的照明装置。
C4.段落C-C3中任一段的机器视觉系统,其中,计算机可读指令在被执行时还使得控制器:
在应用滤波器之前,基于工作区域中的不是对象的部分的已知颜色,从图像数据中减去对应于工作区域中的不是对象的部分的数据。
C5.段落C-C4中任一段的机器视觉系统,其中,计算机可读指令在被执行时还使得控制器:
在应用滤波器之前,将图像数据转换为HSV域。
C6.段落C-C5中任一段的机器视觉系统,其中,计算机可读指令在被执行时还使得控制器:
在应用滤波器之前,基于一个或多个预定特征的假定特征对图像数据进行二进制阈值化;以及
响应于二进制阈值化的图像数据,识别一组或多组像素作为假定特征的候选。
C6.1.段落C6的机器视觉系统,其中,假定特征对应于工作区域中的基于与工作区域相关联的数据库的预期或期望对象。
C6.2.段落C6-C6.1中任一段落的机器视觉系统,其中,假定特征是颜色、形状、尺寸、标记以及螺纹构造中的一种或多种。
C6.3.段落C6-C6.2中任一段的机器视觉系统,其中,计算机可读指令在被执行时还使得控制器:
在图像数据被二进制阈值化之后,噪声滤波图像数据;
其中,识别一组或多组像素进一步响应于噪声滤波的图像数据。
C7.段落C-C6.3中任一段的机器视觉系统,其中,特定特征是一个或多个预定特征的假定纹理。
C7.1.段落C7的机器视觉系统,其中,假定纹理对应于工作区域中的基于与工作区域相关联的数据库的预期或期望对象。
C7.2.段落C7-C7.1中任一段的机器视觉系统,其中,假定纹理对应于紧固件螺纹尺寸。
C8.段落C-C7.2中任一段的机器视觉系统,其中,滤波器是Gabor滤波器。
C9.段落C-C8中任一段的机器视觉系统,其中,滤波数据包括作为代表对象的候选的一个或多个像素斑点。
C9.1.段落C9的机器视觉系统,其中,计算机可读指令在被执行时还使得控制器:
在应用滤波器之后,分析一个或多个像素斑点以确定一个或多个斑点特征的存在。
C9.1.1.段落C9.1的机器视觉系统,其中,一个或多个斑点特征可以包括斑点区域、斑点偏心率、斑点尺寸、斑点亮度、斑点相关性以及斑点同质性中的一个或多个。
C9.1.1.1.段落C9.1.1的机器视觉系统,其中,一个或多个斑点特征和与工作区域相关联的数据库中的一个或多个预定特征相关联。
C9.1.2.段落C9-C9.1.1.1中任一段的机器视觉系统,其中,计算机可读指令在被执行时还使得控制器:
训练机器学习模型以识别与一个或多个斑点特征相关联的一个或多个预定特征。
C10.段落C-C9.1.2任一段的机器视觉系统,其中,相机系统是立体相机系统,其中,图像数据包括两个图像,并且其中,计算机可读指令在被执行时还使得控制器:
创建滤波数据的点云。
C10.1.段落C10的机器视觉系统,还包括:
被配置为在工作区域上投射光纹理的投影仪。
C10.1.1.段落C10.1的机器视觉系统,其中,光纹理包括图案。
C10.1.2.段落C10.1的机器视觉系统,其中,光纹理是随机的。
C10.1.3.段落C10.1-C10.1.2中任一段的机器视觉系统,其中,创建点云包括基于光纹理从两个图像生成视差图。
C10.1.3.1段落C10.1.3的机器视觉系统,其中,计算机可读指令在被执行时还使得控制器:
选择与对象相关的像素;以及
将与对象相关联的像素与来自与工作区域相关联的数据库的预期或期望对象的计算机模型进行比较。
C11.段落C-C10.1.3.1中任一段的机器视觉系统,其中,对象包括紧固件或紧固件对。
C12.段落C-C11中任一段的机器视觉系统,其中,工作区域包括多个对象,并且其中,计算机可读指令在被执行时还使得控制器确定多个对象中的每一个是否具有特定特征。
C13.段落C-C12中任一段的机器视觉系统,其中,工作区域包括从片材延伸的多个对象。
C13.1.段落C13的机器视觉系统,当依赖于段落C4时,其中,工作区域中不是对象的部分对应于片材。
C14.段落C-C13.1中任一段的机器视觉系统,其中,一个或多个预定特征包括颜色、尺寸、形状、标记以及螺纹构造中的一个或多个。
C15.段落C-C14中任一段的机器视觉系统,被配置为执行段落A-A16中任一段的自动机器视觉方法。
C16.使用段落C-C15中任一段的机器视觉系统来确定工作区域内的对象是否具有一个或多个预定特征。
D.一种机器人安装系统,包括:
段落C-C15中任一段的机器视觉系统;以及
机械臂,其中,相机系统安装到机械臂的末端执行器、与机械臂的末端执行器一起安装或者作为机械臂的末端执行器安装,并且其中,机械臂配置为部分地基于控制器确定对象具有特定特征而以相对于对象的预定配置安装组件;
其中,计算机可读指令在被执行时还使得控制器指示机械臂以相对于对象的预定配置安装组件。
D1.段落D的机器人安装系统,其中,对象和组件包括紧固件对。
D2.使用段落D-D1中任一段的机器人安装系统以相对于对象的预定配置安装组件。
如本文所使用的,术语“适配”和“配置”意味着元件、组件或其它主题被设计和/或旨在执行给定功能。因此,不应将术语“适配”和“配置”的使用解释为意味着给定的元件、组件或其他主题仅仅“能够”执行给定的功能,而是为了执行该功能而将该元件、组件和/或其他主题专门选择、创建、实现、利用、编程和/或设计。还在本公开的范围内,引述为适于执行特定功能的元件、组件和/或其他引述的主题可以附加地或替代地被描述为配置为执行该功能,反之亦然。类似地,引述为配置为执行特定功能的主题可以附加地或替代地被描述为可操作以执行该功能。
如本文所使用的,置于第一实体和第二实体之间的术语“和/或”意味着(1)第一实体、(2)第二实体以及(3)第一实体和第二实体三者之一。用“和/或”列出的多个条目应该以相同的方式解释,即如此结合的“一个或多个”实体。除了由“和/或”措辞具体标识的实体之外,可选地可以存在其他实体,无论这些实体是否与那些具体标识的实体相关。因此,作为非限制性示例,在一个示例中,当与诸如“包括”的开放式语言结合使用时,对“A和/或B”的引用可以仅指A(可选地包括除B之外的实体);在另一个例子中,仅指B(可选地包括除A之外的实体);在又一个示例中,指A和B(可选地包括其他实体)。这些实体可以指元素、动作、结构、步骤、操作、值等。
根据本公开的所有装置和方法不需要本文公开的装置的各种公开元件和方法的步骤,并且本公开包括本文公开的各种元件和步骤的所有新颖和非显而易见的组合和子组合。此外,本文公开的各种元件和步骤中的一个或多个可以限定独立的发明主题,其独立于整个公开的装置或方法。因此,这样的发明主题不需要与这里明确公开的特定装置和方法相关联,并且这样的发明主题可以在本文未明确公开的装置和/或方法中找到用途。
Claims (13)
1.一种用于确定工作区域(304)中的对象(302)是否具有一个或多个预定特征(306)的自动机器视觉方法(100),所述自动机器视觉方法(100)包括:
从相机系统(308)捕获(102)所述工作区域(304)的图像数据;
将滤波器应用于(104)所述图像数据以生成滤波数据,其中,所述滤波器包括与所述一个或多个预定特征(306)中的一特定特征相对应的方面;以及
至少部分基于所述应用(104),确定(106)所述对象(302)是否具有所述特定特征。
2.根据权利要求1所述的自动机器视觉方法(100),其中,至少一个:
(i)将所述相机系统(308)定位于相对于工作区域(304)的已知位置和方位;以及
(ii)所述自动机器视觉方法(100)还包括确定(106)所述相机系统(308)和所述工作区域(304)之间的相对方位。
3.根据权利要求1所述的自动机器视觉方法(100),还包括在捕获(102)所述图像数据之后并且在应用(104)所述滤波器之前:
将所述图像数据转换(112)为HSV域;以及
基于所述工作区域(304)中的不是所述对象(302)的部分的已知颜色,从所述图像数据中减去(110)对应于所述工作区域(304)中的不是所述对象(302)的部分的数据。
4.根据权利要求1所述的自动机器视觉方法(100),还包括在捕获(102)所述图像数据之后并且在应用(104)所述滤波器之前:
基于所述一个或多个预定特征(306)的假定特征二进制阈值化(114)所述图像数据,其中,所述假定特征是颜色、形状、大小、标记以及螺纹构造中的一个或多个;以及
响应于所述二进制阈值化(114),识别(116)一组或多组像素作为所述假定特征的候选。
5.根据权利要求4所述的自动机器视觉方法(100),其中,所述假定特征对应于所述工作区域(304)中的基于与所述工作区域(304)相关联的数据库的预期或期望对象。
6.根据权利要求4所述的自动机器视觉方法(100),还包括:
噪声滤波(118)所述二进制阈值化(114)后的所述图像数据;
其中,所述识别(116)一组或多组像素还响应于所述噪声滤波(118)。
7.根据权利要求1所述的自动机器视觉方法(100),其中,所述特定特征是所述一个或多个预定特征(306)的假定纹理,其中,所述假定纹理对应于所述工作区域(304)中的基于与所述工作区域(304)相关联的数据库的预期或期望对象。
8.根据权利要求7所述的自动机器视觉方法(100),其中,所述假定纹理对应于紧固件螺纹尺寸。
9.根据权利要求7所述的自动机器视觉方法(100),其中,所述滤波器是Gabor滤波器。
10.根据权利要求1所述的自动机器视觉方法(100),其中,所述滤波数据包括作为代表所述对象(302)的候选的一个或多个像素斑点,并且其中,所述自动机器视觉方法(100)还包括:
在应用(104)所述滤波器之后,分析(120)所述一个或多个像素斑点以确定一个或多个斑点特征的存在,其中,所述一个或多个斑点特征包括斑点区域、斑点偏心率、斑点尺寸、斑点亮度、斑点相关性以及斑点同质性中的一个或多个,其中,所述一个或多个斑点特征和与所述工作区域(304)相关联的数据库中的所述一个或多个预定特征(306)相关联。
11.根据权利要求1所述的自动机器视觉方法(100),其中,所述相机系统(308)是立体相机系统,其中,所述图像数据包括两个图像,并且其中,所述自动机器视觉方法(100)还包括:
在捕获(102)所述图像数据期间,在所述工作区域(304)上投射(126)光纹理;
创建(124)滤波数据的点云,其中,所述创建(124)点云包括基于所述光纹理从所述两个图像生成(128)视差图;
选择(130)与所述对象(302)相关联的像素;以及
将与所述对象(302)相关联的所述像素与来自与所述工作区域(304)相关联的数据库的预期或期望对象的计算机模型进行比较(132)。
12.根据权利要求1所述的自动机器视觉方法(100),其中,所述对象(302)包括紧固件或紧固件对(412)。
13.一种用于确定工作区域(304)中的对象(302)是否具有一个或多个预定特征(306)的机器视觉系统(300),所述机器视觉系统(300)包括:
相机系统(308),被配置为捕获所述工作区域(304)中的图像数据;以及
控制器(310),通信地耦接到所述相机系统(308)以从所述相机系统(308)接收所述图像数据,其中,所述控制器(310)包括具有计算机可读指令的非暂时性计算机可读介质,所述计算机可读指令在被执行时使得所述控制器(310):
将滤波器应用于所述图像数据以产生滤波数据,其中,所述滤波器包括与所述一个或多个预定特征(306)的特定特征相对应的方面;以及
至少部分地基于所述滤波器的应用,确定所述对象(302)是否具有所述特定特征。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/939,127 | 2018-03-28 | ||
US15/939,127 US10657419B2 (en) | 2018-03-28 | 2018-03-28 | Machine vision and robotic installation systems and methods |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110315529A true CN110315529A (zh) | 2019-10-11 |
Family
ID=65443701
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910169328.9A Pending CN110315529A (zh) | 2018-03-28 | 2019-03-06 | 机器视觉和机器人安装系统及方法 |
Country Status (4)
Country | Link |
---|---|
US (2) | US10657419B2 (zh) |
EP (1) | EP3557478B1 (zh) |
JP (1) | JP2019194565A (zh) |
CN (1) | CN110315529A (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11593931B2 (en) | 2020-06-09 | 2023-02-28 | Howmedica Osteonics Corp. | Surgical kit inspection systems and methods for inspecting surgical kits having parts of different types |
KR102463522B1 (ko) * | 2020-11-04 | 2022-11-04 | 전남대학교산학협력단 | 고차수 이미지 분해 필터를 활용한 영상 기반의 구조물 움직임 측정 방법. |
WO2024043775A1 (en) | 2022-08-25 | 2024-02-29 | Sime Darby Plantation Intellectual Property Sdn Bhd | Autonomous method and system for detecting, grabbing, picking and releasing of objects |
CN117798654B (zh) * | 2024-02-29 | 2024-05-03 | 山西漳电科学技术研究院(有限公司) | 汽轮机轴系中心智能调整系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB8809368D0 (en) * | 1987-04-23 | 1988-05-25 | Nissan Motor | Assembly method for component parts |
US6167607B1 (en) * | 1981-05-11 | 2001-01-02 | Great Lakes Intellectual Property | Vision target based assembly |
WO2003034165A1 (en) * | 2001-10-18 | 2003-04-24 | Cimac Automaton Limited | Auto motion : robot guidance for manufacturing |
CN1423237A (zh) * | 2001-11-16 | 2003-06-11 | 株式会社三丰 | 图像边界检测系统与方法 |
US20070188606A1 (en) * | 2006-02-16 | 2007-08-16 | Kevin Atkinson | Vision-based position tracking system |
GB2486658A (en) * | 2010-12-21 | 2012-06-27 | Crane Electronics | Torque tool positioning system |
CN107030693A (zh) * | 2016-12-09 | 2017-08-11 | 南京理工大学 | 一种基于双目视觉的带电作业机器人目标跟踪方法 |
Family Cites Families (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5579444A (en) * | 1987-08-28 | 1996-11-26 | Axiom Bildverarbeitungssysteme Gmbh | Adaptive vision-based controller |
US5727300A (en) | 1995-02-07 | 1998-03-17 | The Boeing Company | Fastener verification system |
DE69610925T2 (de) * | 1995-08-04 | 2001-06-13 | Image Proc Systems Inc | Vorrichtung zur untersuchung von flaschengewinden und verfahren zu deren betrieb |
JPH11300670A (ja) * | 1998-04-21 | 1999-11-02 | Fanuc Ltd | 物品ピックアップ装置 |
US7343034B2 (en) * | 2003-10-30 | 2008-03-11 | Illinois Tool Works Inc | Method of inspecting threaded fasteners and a system therefor |
US7755761B2 (en) | 2004-11-12 | 2010-07-13 | The Boeing Company | Self-normalizing contour drilling machine |
US7362437B2 (en) | 2006-03-28 | 2008-04-22 | The Boeing Company | Vision inspection system device and method |
US8050486B2 (en) | 2006-05-16 | 2011-11-01 | The Boeing Company | System and method for identifying a feature of a workpiece |
WO2008076942A1 (en) * | 2006-12-15 | 2008-06-26 | Braintech Canada, Inc. | System and method of identifying objects |
US8224121B2 (en) | 2007-06-15 | 2012-07-17 | The Boeing Company | System and method for assembling substantially distortion-free images |
US8978967B2 (en) | 2007-10-31 | 2015-03-17 | The Boeing Campany | Intelligent fastener system |
US9302785B2 (en) | 2007-11-29 | 2016-04-05 | The Boeing Company | Engine installation using machine vision for alignment |
US7876216B2 (en) | 2008-06-25 | 2011-01-25 | The Boeing Company | Object location and reporting system for harsh RF environments |
JP5333344B2 (ja) * | 2009-06-19 | 2013-11-06 | 株式会社安川電機 | 形状検出装置及びロボットシステム |
JP5685027B2 (ja) * | 2010-09-07 | 2015-03-18 | キヤノン株式会社 | 情報処理装置、物体把持システム、ロボットシステム、情報処理方法、物体把持方法およびプログラム |
FI20106090A0 (fi) * | 2010-10-21 | 2010-10-21 | Zenrobotics Oy | Menetelmä kohdeobjektin kuvien suodattamiseksi robottijärjestelmässä |
US9098908B2 (en) * | 2011-10-21 | 2015-08-04 | Microsoft Technology Licensing, Llc | Generating a depth map |
JP5507595B2 (ja) * | 2012-02-17 | 2014-05-28 | ファナック株式会社 | ロボットを用いた物品組付け装置 |
US9299118B1 (en) | 2012-04-18 | 2016-03-29 | The Boeing Company | Method and apparatus for inspecting countersinks using composite images from different light sources |
US10473558B2 (en) * | 2012-11-13 | 2019-11-12 | Ues, Inc. | Automated high speed metallographic system |
US9761002B2 (en) | 2013-07-30 | 2017-09-12 | The Boeing Company | Stereo-motion method of three-dimensional (3-D) structure information extraction from a video for fusion with 3-D point cloud data |
US9568906B2 (en) | 2013-09-18 | 2017-02-14 | The Boeing Company | Robotic object coating system |
JP2015147256A (ja) * | 2014-02-04 | 2015-08-20 | セイコーエプソン株式会社 | ロボット、ロボットシステム、制御装置、及び制御方法 |
US9789549B2 (en) | 2015-07-07 | 2017-10-17 | The Boeing Company | Robotic system and drilling end effector for robotic system |
US10002431B2 (en) * | 2015-11-03 | 2018-06-19 | The Boeing Company | Locating a feature for robotic guidance |
US10066925B2 (en) | 2016-02-02 | 2018-09-04 | The Boeing Company | Point cloud processing apparatus and method |
US10596700B2 (en) * | 2016-09-16 | 2020-03-24 | Carbon Robotics, Inc. | System and calibration, registration, and training methods |
US10217031B2 (en) * | 2016-10-13 | 2019-02-26 | International Business Machines Corporation | Identifying complimentary physical components to known physical components |
US10671835B2 (en) * | 2018-03-05 | 2020-06-02 | Hong Kong Applied Science And Technology Research Institute Co., Ltd. | Object recognition |
-
2018
- 2018-03-28 US US15/939,127 patent/US10657419B2/en active Active
-
2019
- 2019-02-15 EP EP19157351.8A patent/EP3557478B1/en active Active
- 2019-02-18 JP JP2019026431A patent/JP2019194565A/ja active Pending
- 2019-03-06 CN CN201910169328.9A patent/CN110315529A/zh active Pending
-
2020
- 2020-04-14 US US16/848,307 patent/US20200242413A1/en not_active Abandoned
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6167607B1 (en) * | 1981-05-11 | 2001-01-02 | Great Lakes Intellectual Property | Vision target based assembly |
GB8809368D0 (en) * | 1987-04-23 | 1988-05-25 | Nissan Motor | Assembly method for component parts |
WO2003034165A1 (en) * | 2001-10-18 | 2003-04-24 | Cimac Automaton Limited | Auto motion : robot guidance for manufacturing |
CN1423237A (zh) * | 2001-11-16 | 2003-06-11 | 株式会社三丰 | 图像边界检测系统与方法 |
US20070188606A1 (en) * | 2006-02-16 | 2007-08-16 | Kevin Atkinson | Vision-based position tracking system |
GB2486658A (en) * | 2010-12-21 | 2012-06-27 | Crane Electronics | Torque tool positioning system |
CN107030693A (zh) * | 2016-12-09 | 2017-08-11 | 南京理工大学 | 一种基于双目视觉的带电作业机器人目标跟踪方法 |
Also Published As
Publication number | Publication date |
---|---|
US20200242413A1 (en) | 2020-07-30 |
EP3557478A3 (en) | 2020-01-15 |
EP3557478B1 (en) | 2023-12-27 |
JP2019194565A (ja) | 2019-11-07 |
US10657419B2 (en) | 2020-05-19 |
EP3557478A2 (en) | 2019-10-23 |
US20190303721A1 (en) | 2019-10-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110315529A (zh) | 机器视觉和机器人安装系统及方法 | |
US9251582B2 (en) | Methods and systems for enhanced automated visual inspection of a physical asset | |
US9582870B2 (en) | Method and system for analyzing process monitoring data | |
JP7143868B2 (ja) | 部品取付機器、作業管理方法、作業管理システム、照合装置、照合方法及びプログラム | |
US20180276810A1 (en) | Structural health monitoring employing physics models | |
DE102016112800A1 (de) | Geführte prüfung einer eingebauten komponente unter verwendung eines mobilen prüfgeräts | |
CN110874832A (zh) | 装配过程的自动监督和检查 | |
US9491355B2 (en) | System for capturing an image of a damaged vehicle | |
CN113469971B (zh) | 一种图像匹配方法及检测装置、存储介质 | |
CN116257930A (zh) | 用于交通工具的远程视觉检测的三维检测孪生体 | |
Piero et al. | Virtual commissioning of camera-based quality assurance systems for mixed model assembly lines | |
WO2019115183A2 (de) | Verfahren und system zur schadenserkennung eines bauteils | |
US11403748B2 (en) | Method and system for articulation of a visual inspection device | |
US9183225B2 (en) | Computerized method for transforming an image from an image-searchable domain to a pixel-searchable domain | |
Costa et al. | Modeling of video projectors in OpenGL for implementing a spatial augmented reality teaching system for assembly operations | |
CN109285138B (zh) | 用于机器视觉分析的分布式处理系统及方法 | |
CN113168295A (zh) | 用于在物品上进行印刷的校准测试的装置和方法 | |
Gierecker et al. | Configuration and enablement of vision sensor solutions through a combined simulation based process chain | |
CN113689495A (zh) | 基于深度学习的孔心检测方法及其孔心检测装置 | |
Raj et al. | Vision based feature diagnosis for automobile instrument cluster using machine learning | |
WO2020142495A1 (en) | Multiple robot and/or positioner object learning system and method | |
Viharos et al. | Vision based, statistical learning system for fault recognition in industrial assembly environment | |
US20200250893A1 (en) | Augmented reality-based ply layups on a composite part layup tool | |
Çelik et al. | Image Segmentation on Concrete Damage for Augmented Reality Supported Inspection Tasks | |
US11762367B2 (en) | Benchtop visual prototyping and assembly system |
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 |