CN111461107B - 用于识别感兴趣区的材料搬运方法、装置和系统 - Google Patents
用于识别感兴趣区的材料搬运方法、装置和系统 Download PDFInfo
- Publication number
- CN111461107B CN111461107B CN201911395155.9A CN201911395155A CN111461107B CN 111461107 B CN111461107 B CN 111461107B CN 201911395155 A CN201911395155 A CN 201911395155A CN 111461107 B CN111461107 B CN 111461107B
- Authority
- CN
- China
- Prior art keywords
- point cloud
- cloud data
- region
- regions
- processing unit
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 66
- 239000000463 material Substances 0.000 title claims description 85
- 238000012545 processing Methods 0.000 claims description 115
- 238000010801 machine learning Methods 0.000 claims description 34
- 238000013527 convolutional neural network Methods 0.000 claims description 23
- 230000011218 segmentation Effects 0.000 claims description 22
- 230000033001 locomotion Effects 0.000 claims description 9
- 238000001514 detection method Methods 0.000 claims description 8
- 238000007781 pre-processing Methods 0.000 claims description 6
- 230000001131 transforming effect Effects 0.000 claims description 2
- 238000009825 accumulation Methods 0.000 claims 1
- 230000004807 localization Effects 0.000 claims 1
- 238000005007 materials handling Methods 0.000 abstract description 7
- 230000004044 response Effects 0.000 abstract description 2
- 230000006870 function Effects 0.000 description 12
- 238000012549 training Methods 0.000 description 12
- 230000007704 transition Effects 0.000 description 12
- 238000004422 calculation algorithm Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 9
- 238000003860 storage Methods 0.000 description 9
- 239000013598 vector Substances 0.000 description 9
- 210000004027 cell Anatomy 0.000 description 8
- 238000009826 distribution Methods 0.000 description 8
- 230000008859 change Effects 0.000 description 7
- 238000004590 computer program Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 5
- 238000001914 filtration Methods 0.000 description 5
- 238000011176 pooling Methods 0.000 description 5
- 238000012360 testing method Methods 0.000 description 5
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000013145 classification model Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 210000002569 neuron Anatomy 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000004069 differentiation Effects 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000012706 support-vector machine Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 238000010200 validation analysis Methods 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000007635 classification algorithm Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003628 erosive effect Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000000877 morphologic effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000004513 sizing Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 230000000007 visual effect Effects 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/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- 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/23—Clustering techniques
-
- 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
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based 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/20—Image preprocessing
- G06V10/25—Determination of region of interest [ROI] or a volume of interest [VOI]
-
- 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/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/60—Type of objects
- G06V20/64—Three-dimensional objects
-
- 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/10028—Range image; Depth image; 3D point clouds
-
- 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/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- 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/12—Acquisition of 3D measurements of objects
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Multimedia (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Mathematical Physics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Image Analysis (AREA)
Abstract
所公开的实施方案涉及一种材料搬运方法,该材料搬运方法基于图像捕获单元的视场生成三维(3‑D)点云数据。基于3‑D点云数据的取向数据从多个聚类区域中提取第一组聚类区域。另外,基于3‑D点云数据生成二维深度图。确定与来自第一组聚类区域的聚类区域相对应的候选区。确定聚类区域的横截面积与集装箱的横截面积的比率,该比率超过第一横截面阈值。因此,当所确定的比率超过第一横截面阈值时,确定候选区的分类分数。响应于将候选区分类为感兴趣区,限定集装箱中的防止与感兴趣区的碰撞的导航路径。
Description
技术领域
本公开的示例性实施方案整体涉及材料搬运系统,并且更具体地讲,涉及感兴趣区的识别。
背景技术
在工作场所(诸如仓库)中,集装箱的装载和卸载是可由工人手动执行和/或由可能以半自主和全自主模式操作的机器辅助的常见操作。机器(诸如传送带、叉车机器、机器人纸箱装载器/卸载器等)可以用于操纵放置在集装箱、卡车或移动式自主车辆中的产品。为了使机器以完全自主模式操作,可以要求机器区分产品并且识别产品的位置以便在集装箱内安全操作。
申请人已经识别出与现有方法相关联的许多缺陷和问题。通过所付努力、智慧和创新,根据本公开的实施方案的开发解决方案已经解决了许多这些识别的缺陷和问题,本文详细描述了这些解决方案的许多示例。
发明内容
本文的各种实施方案涉及在材料搬运环境中提供增加的安全性的方法、装置和系统。参考所要求保护的方法,一种用于材料搬运的方法可以包括由图像处理单元基于图像捕获单元的视场(FOV)生成三维(3-D)点云数据,并且FOV可以包括集装箱的内部。方法还可以包括由图像处理单元识别集装箱内部的多个聚类区域,以及由图像处理单元基于与3-D点云数据相关联的取向数据而从多个聚类区域中提取第一组聚类区域。方法还可以包括由图像处理单元基于3-D点云数据生成二维(2-D)深度图,以及由图像处理单元确定第一组聚类区域的候选区。候选区可以包括其聚类区域的横截面积与集装箱的横截面积的比率超过第一横截面阈值的聚类区域。方法还可以包括由机器学习单元确定候选区的分类分数,以及由机器学习单元在候选区的分类分数超过第一分类阈值的情况下将候选区分类为感兴趣区。方法还可以包括由处理器基于与感兴趣区相关联的数据集限定集装箱中的导航路径。导航路径可以被配置为防止与感兴趣区的碰撞。
在一些情况下,生成3-D点云数据可以包括累积基于由位于材料搬运装置上的图像捕获单元捕获的FOV的点云数据生成的3-D点云数据,以及基于材料搬运装置的物品操纵器在FOV的扫描操作期间的移动而收集的运动学数据。在这种实施方案中,方法还可以包括由图像处理单元将3-D点云数据的第一格式变换为第二格式。第一格式可以对应于光检测和测距帧,并且第二格式可以对应于与图像处理单元兼容的经变换帧。
在一些实施方案中,方法还包括由图像处理单元预处理3-D点云数据。预处理可以包括由图像处理单元从以第二格式的3-D点云数据中移除噪声数据点,由图像处理单元分割从中移除噪声数据点的3-D点云数据,以及由图像处理单元基于3-D点云数据的分割来确定多个聚类区域。
在一些实施方案中,方法可以包括由图像处理单元至少基于第二组聚类区域相对于材料搬运装置的取向而从多个聚类区域中提取第二组聚类区域,以及由图像处理单元确定集装箱的多个聚类区域中的第二组聚类区域中的每一个的类型。第二组聚类区域中的每一个的类型可以对应于集装箱的侧壁、底板区域、或天花板区域中的一者,并且多个聚类区域中的第一组聚类区域可以对应于已停放的集装箱的后壁和产品壁。在这种实施方案中,方法还可以包括由图像处理单元获得已更新3-D点云数据。已更新3-D点云数据可以包括从中裁剪第二组聚类区域的3-D点云数据。
在一些实施方案中,方法还可以包括由图像处理单元分割已更新3-D点云数据,以及由图像处理单元基于已更新3-D点云数据的分割来确定第一组聚类区域。另外,方法可以包括由图像处理单元将候选区识别为第一组聚类区域中的设置在第一组聚类区域与第二组聚类区域之间的相交区域处的聚类区域,其中候选区限定2-D深度图。
在一些情况下,方法可以包括由图像处理单元将已更新3-D点云数据转换成范围图像,并且2-D深度图的生成可以基于范围图像。在这种实施方案中,方法还可以包括由处理器基于候选区的定位来生成与感兴趣区相关联的数据集,以及由处理器将与感兴趣区相关联的数据集传输到与材料搬运装置相关联的可编程逻辑控制器。
在一些另外的实施方案中,方法可以包括由处理器将所识别的候选区提供给经训练的单输入卷积神经网络模块,以及由卷积神经网络模块确定与所识别的候选区相关联的分数。方法还可以包括由卷积神经网络模块在分类分数超过第二分类阈值的情况下将所识别的候选区分类为感兴趣区,其中感兴趣区是集装箱的后壁。否则,方法可以包括由卷积神经网络模块在分类分数未超过第二分类阈值的情况下将所识别的候选区分类为产品壁。
在其他实施方案中,方法可以包括由处理器在分类分数未超过第二分类阈值的情况下基于与已分类感兴趣区相关联的数据集限定集装箱中的导航路径,以及由物品操纵单元控制物品操纵器以跟随导航路径,以便操纵在对应于产品壁的区域中放置在集装箱中的多个物品。
在一些情况下,候选区的分类包括由机器学习单元获得候选区中的多个关键兴趣点。在多个关键兴趣点的计数超过第二分类阈值的情况下,候选区可以对应于感兴趣区。在多个关键兴趣点的计数未超过限定值的情况下,候选区可能不对应于感兴趣区。
在一些实施方案中,候选区的分类还包括由机器学习单元基于多个关键兴趣点确定多个关键描述符,以及由机器学习单元确定多个关键描述符的分布。方法还可以包括由机器学习单元基于多个关键描述符的分布来生成特征向量。
在一些情况下,候选区的分类还包括由机器学习单元训练机器学习模型以提供分类分数,以及由机器学习单元在特征向量的分类分数未超过第一分类阈值的情况下将候选区分类为产品壁。
在一些实施方案中,方法包括由物品操纵单元控制物品操纵器以跟随导航路径并且操纵放置在集装箱中的多个物品。在其他实施方案中,方法包括在集装箱的横截面积与聚类区域的横截面积之间的差异未超过第一横截面阈值的情况下,由图像处理单元将候选区定位为感兴趣区。
提供上述发明内容仅出于提供本文描述的一个或多个示例性实施方案的概述的目的,以提供对本公开的一些方面的基本理解。因此,应当理解,上述实施方案仅为示例并且不应理解为以任何方式缩小本公开的范围或实质。应当理解,除了这里总结的那些,本公开的范围还涵盖了很多可能的实施方案,这些实施方案中的一些实施方案将在下面具体实施方式及其附图中进一步解释。
附图说明
专利或申请文件包含至少一张彩色附图。专利局将根据必要费用的请求和支付而提供具有一张或多张彩色附图的本专利或专利申请公开的副本。
可结合附图阅读例示性实施方案的描述。应当理解,为了说明的简单和清晰,图中所示的元件不一定按比例绘制。例如,元件中的一些元件的尺寸相对于其他元件被夸大。结合本公开的教导的实施方案相对于文中给出的附图示出和描述,在附图中:
图1示出了用于与一个或多个实施方案使用的工作场所的图像;
图2示出了根据一个或多个实施方案的可编程逻辑控制器的框图;
图3示出了根据本文所述的一个或多个实施方案的3-D点云数据的图像;
图4示出了根据本文所述的一个或多个实施方案的以第二格式的经变换的3-D点云数据的图像;
图5示出了根据本文所述的一个或多个实施方案的更新的3-D点云数据的图像;
图6A示出了根据本文所述的一个或多个实施方案的候选区的图像;
图6B示出了根据本文所述的一个或多个实施方案的2-D深度图的图像;
图7示出了根据本文所述的一个或多个实施方案的用于后壁检测的图像;
图8A示出了根据本文所述的一个或多个实施方案的被确定为在指定区域外部的多个关键描述符;
图8B示出了根据本文所述的一个或多个实施方案的被确定为在指定区域内部的多个关键描述符;
图8C示出了根据本文所述的一个或多个实施方案的已提取特征;并且
图9A至图9F是示出根据本文描述的示例性实施方案的用于操作材料搬运装置的示例性方法的流程图。
具体实施方式
在下文中将参考附图更全面地描述本公开的一些实施方案,附图中示出了本公开的一些实施方案,但未示出全部实施方案。实际上,这些公开内容可以以许多不同的形式体现,并且不应该被解释为限于本文所阐述的实施方案;相反,提供这些实施方案是为了使本公开满足适用的法律要求。在全篇内容中,类似的标号指代类似的元件。在本专利中使用的术语并不意味着是限制性的,本文所述的设备或其部分可以在其他取向上附接或利用。
短语“在一个实施方案中”、“根据一个实施方案”等一般意指跟在该短语后的特定特征、结构或特性可以被包括在本公开的至少一个实施方案中,并且可以被包括在本公开的不止一个实施方案中(重要的是,这类短语不一定是指相同的实施方案)。
本文使用的词语“示例”意指“用作示例、实例或说明”。本文描述为“示例”的任何具体实施不一定被理解为比其他具体实施优选或有利。
如果说明书陈述了部件或特征“可以”、“能够”、“能”、“应当”、“将”、“优选地”、“有可能地”、“通常”、“任选地”、“例如”、“经常”或“可能”(或其他此类语言)被包括或具有特性,则具体部件或特征不是必须被包括或具有该特性。此类部件或特征可任选地包括在一些实施方案中,或可排除在外。
当机器(诸如卡车卸载器)在工作场所中以完全自主模式操作时(例如,从停放的集装箱卸载产品),安装在其中的各种设备和部件可以被配置为确定导航路径(例如,入口、出口等)以从卡车的集装箱中的产品壁拾取产品。这些系统可以将产品定位在集装箱内部,并且利用一个或多个机械臂和操纵器以便在集装箱内部执行装载和卸载操作。为了进行有效操作,可能要求机器区分需要拾取的产品和集装箱的需要避免的各个区。在一些情况下,可能发生误报,其中系统将集装箱的壁误解为产品的壁。在这些情况下,操纵器可能尝试拾取集装箱的部分,由此导致对集装箱和操纵器的损坏,产生责任问题,并且降低系统的性能。
为了解决这些问题和其他问题,本公开使用3-D视觉数据以对集装箱内的感兴趣区(诸如后集装箱壁)进行分类。一旦识别了感兴趣区,就限定集装箱中的导航路径。以此方式,可以准确地确定集装箱的尺寸设定以防止物品操纵器和集装箱壁之间的可能碰撞。
术语诸如前部、后部、内部、外部等是为便于描述而使用的词语,并且不应被解释为限制性术语。在本专利申请中使用的术语并不意味着是限制性的,本文所述的设备或其部分可在其他取向上附接或利用。对特定示例和具体实施的参考是出于说明性目的,而不旨在限制本发明或权利要求书的范围。已经以高级别描述了示例性实施方案,下面提供执行各种示例性操作的各种设备的设计。
图1示出了根据一个或多个示例性实施方案的工作场所100的图像。工作场所100可以对应于其中可执行操作(诸如产品的装载和/或卸载以及产品的存储)的限定区域。工作场所100的一些示例可以包括但不限于仓库、零售点等。工作场所100可以包括集装箱102、一个或多个过渡部件104、材料搬运装置106、一个或多个图像捕获设备108a和108b、以及远程控制中心110。材料搬运装置106还可以包括物品操纵器112、多个牵引设备114和可编程逻辑控制器116。一个或多个图像捕获设备108a和108b、材料搬运装置106、以及远程控制中心110可以通过网络118彼此通信地耦接。
在一些实施方案中,可编程逻辑控制器116可以包括多个部件,诸如处理器、多个致动器、图像处理单元、机器学习单元等,如参考图2所描述的。在一些实施方案中,这些部件中的一个或多个可以集成在可编程逻辑控制器116内。在其他实施方案中,多个部件可以与可编程逻辑控制器116分离并且可以与可编程逻辑控制器116通信地耦接。
集装箱102可以对应于适于存储多个产品的存储单元,该多个产品可能以任何取向布置成任何数量的配置。然而,如图1所示,产品可以被存储为齐平产品壁120。在示例性实施方案中,集装箱102可以是车辆(未示出)的拖车,诸如用于运输多个产品的卡车。集装箱102可包括一个或多个区,诸如一个或多个门122、底板124、天花板126、侧壁128和后壁130。为了装载和卸载存储为齐平产品壁120的多个产品,可以使集装箱102在工作场所100中的第一位置处停放在工作场所100中。在停放集装箱102之后,可以定位一个或多个过渡部件104,其方式为使得一个或多个过渡部件104与集装箱102的底板124和工作场所100的地表面132耦接。
在示例性实施方案中,一个或多个过渡部件104可以对应于适于将工作场所100的地表面132与集装箱102的底板124耦接的对象,使得形成了往返于集装箱102的进出行进路径。在示例性实施方案中,一个或多个过渡部件104相对于工作场所100的地表面132的取向可以根据集装箱102的底板124相对于地表面132的取向来调整。例如,如果集装箱102的底板124的高度相对于工作场所100的地表面132的高度偏移,则可以调整一个或多个过渡部件104的俯仰以使得一个或多个过渡部件104适当地耦接到底板124和地表面132两者。在一些实施方案中,为了允许调整一个或多个过渡部件104的取向,可以将一个或多个过渡部件104耦接到一个或多个致动器(未示出),诸如液压缸、马达等。一个或多个致动器可以被致动以允许修改一个或多个过渡部件104的取向。一个或多个过渡部件104的一些示例可以包括但不限于坡道和装卸跳板。
材料搬运装置106可以包括可编程逻辑控制器116,其适于控制材料搬运装置106的一个或多个部件的操作。例如,可编程逻辑控制器116可以适于控制物品操纵器112和多个牵引设备114的操作。在一些实施方案中,图像捕获设备108b定位在材料搬运装置106上,使得可编程逻辑控制器116可以进一步适于控制图像捕获设备108b的操作。可编程逻辑控制器116可以适于指示图像捕获设备108b捕获与集装箱102相关联的FOV。基于所捕获的FOV,图像捕获设备108b可以被配置为生成集装箱102的3-D点云数据,使得3-D点云数据包括集装箱102的点云。此后,可编程逻辑控制器116可以适于基于所生成的3-D点云数据来控制材料搬运装置106的操作。在下文中参考图9A至图9F描述控制材料搬运装置106的操作。材料搬运装置106的一些示例可以包括但不限于机器人纸箱卸载器、叉车机器、和/或适于将产品装载到集装箱102和从该集装箱卸载的任何其他机器。
可编程逻辑控制器116可以进一步适于通过执行各种操作来处理由图像捕获设备108b生成的3-D点云数据。此类操作的示例可以包括但不限于分割、聚类、生成2-D深度图、特征分类等。
一个或多个图像捕获设备108a和108b可以定位在工作场所100中的限定位置处。例如,图像捕获设备108a可以定位在工作场所100的天花板(未示出)上。另选地或另外地,图像捕获设备108b定位在材料搬运装置106上。更具体地,图像捕获设备108b可以定位在材料搬运装置106的物品操纵器112上。一个或多个图像捕获设备108a和108b可以包括适于捕获与集装箱102相关联的视场(FOV)的一个或多个图像传感器。在一些实施方案中,一个或多个图像捕获设备108a和108b中的每一个可以包括二维(2-D)激光成像检测和测距(LIDAR)设备。这些2-D LIDAR设备可以快速连续地发射多个脉冲,并且这些发射的方向可以顺序地改变。每个距离测量可以被视为像素,并且快速连续地发射和捕获的像素的集合(即“点云”)可以被呈现为图像或进行分析,诸如用于检测障碍物。与图像捕获设备108b和/或可编程逻辑控制器116相关联的图像查看器可以被配置为操纵点云以给出呈现为3D图像的3D点云的外观。
在一些实施方案中,由一个或多个图像捕获设备108a和108b生成的每个点云包括可用于表示3-D图像中的对象的多个点。例如,如图1所示,可以利用多个点(例如,3-D点云数据)来表示3-D图像中的集装箱102。多个点中的每个点可以包括有关点的坐标以及与一个或多个对象相关联的点相对于材料搬运装置106的取向的信息。在示例性实施方案中,3-D点云中的点的取向可以对应于与一个或多个对象相关联的点的俯仰和偏航。在示例性实施方案中,3-D点云中的点的坐标可以确定3-D图像中的点的位置。另外,点的坐标可以确定该点相对于图像捕获设备108b的深度。在捕获3-D点云之后,一个或多个图像捕获设备108a和108b可以适于将所捕获的3-D点云传输到材料搬运装置106的可编程逻辑控制器116。除了2-D LIDAR之外,一个或多个图像捕获设备108a和108b的一些示例可以包括但不限于相机、立体相机、3-D LIDAR等。
远程控制中心110可以包括一个或多个计算设备,其可以使得用户或管理员能够监测在工作场所100中执行的各种操作。在示例性实施方案中,远程控制中心110可以通过网络118通信地耦接到一个或多个图像捕获设备108a和108b中的每一个以及材料搬运装置106。在一些实施方案中,远程控制中心110可以包括通过网络118通信地耦接到一个或多个图像捕获设备108a和108b以及材料搬运装置106的应用程序服务器。应用程序服务器可以适于监测和控制一个或多个图像捕获设备108a和108b以及材料搬运装置106的操作。在一些实施方案中,材料搬运装置106的可编程逻辑控制器116的功能可以在应用程序服务器中实现。在这种实施方案中,应用程序服务器可以适于远程控制材料搬运装置106的操作。另外,在这种实施方案中,对于材料搬运装置106中的可编程逻辑控制器116的需要可能不是要求的。应用程序服务器的一些示例可以包括但不限于JBossTM应用程序服务器、JavaTM应用程序服务器、Apache TomcatTM服务器、IBM WebsphereTM等。
网络118可以对应于内容和消息通过其在工作场所100中的各种设备和/或机器(例如,一个或多个图像捕获设备108a和108b,以及材料搬运装置106)之间流动的介质。网络118的示例可以包括但不限于无线保真(Wi-Fi)网络、无线区域网(WAN)、局域网(LAN)或城域网(MAN)。工作场所100中的各种设备和/或机器可以根据各种有线和无线通信协议(诸如,传输控制协议和互联网协议(TCP/IP)、用户数据报协议(UDP)以及2G、3G、4G或5G通信协议)连接到网络118。
在操作中,集装箱102可以在第一位置处停放在工作场所100中。在示例性实施方案中,第一位置可以对应于通过其接收集装箱102的至少一部分的工作场所100中的大门(由142描绘)。例如,在将集装箱102停放在工作场所100中期间,通过大门142接收集装箱102的一个或多个门122。尽管在本文中参考停放在工作场所100中的集装箱102进行描述和示出,但本公开设想本文描述的方法、系统和装置可以在任何环境中使用以便防止与对象的不期望的碰撞。
在将集装箱102停放在工作场所100中之后,可以将材料搬运装置106定位在工作场所100中的第二位置(例如,第二位置140)处。此后,一个或多个图像捕获设备108a和108b可以适于捕获工作场所100的FOV并生成3-D点云数据。在利用图像捕获设备108a来生成3-D点云数据的第一场景中,3-D点云数据可以包括材料搬运装置106的图像和集装箱102的图像。在利用图像捕获设备108b来生成3-D点云数据的第二场景中,3-D点云数据可以包括集装箱102的图像。
图像处理单元210可以被配置为基于图像捕获设备108b的FOV生成三维(3-D)点云数据。FOV可以包括集装箱102的内部,该内部包括产品壁120、底板124、天花板126、侧壁128和后壁130。可编程逻辑控制器116可以被配置为基于与多个聚类区域相关联的取向数据而从多个聚类区域中提取第一组聚类区域。第一组聚类区域可以对应于集装箱102内部的多个区的产品壁120、底板124、天花板126和后壁130。可编程逻辑控制器116可以进一步被配置为生成包括候选区(诸如产品壁120或后壁130)的2-D深度图。候选区可以对应于来自第一组聚类区域的一个聚类区域,其聚类区域的横截面积与集装箱的横截面积的比率超过第一横截面阈值。根据本公开,对于本领域的普通技术人员来说将显而易见的是,当横截面积之间的比率(即聚类区域与集装箱之间的比率)超过第一横截面阈值时,对于传统系统而言区分齐平的产品壁120和集装箱壁130可能更加困难。相反,当横截面积之间的比率未超过第一横截面阈值时,可以清楚地看出,在给定大小差异的情况下,聚类区域表示产品或产品壁120(例如,诸如位于集装箱中的单个包装)。另外,尽管在本文中参考超过第一横截面阈值的比率进行描述,但本公开设想可以使用实现相同比较结果的任何计算(例如,集装箱的横截面积与聚类区域的横截面积的比率)。
机器学习单元(参考图2描述)可以被配置为确定候选区的分类分数。在候选区的分类分数超过第一分类阈值的情况下,机器学习单元可以被配置为将候选区分类为感兴趣区(例如,后壁130)。因此,可编程逻辑控制器116可以被配置为基于与集装箱102的感兴趣区相关联的数据集来限定集装箱102中的导航路径。该导航路径可以被配置为防止与感兴趣区(例如,后壁130)的碰撞。这些操作将参考图9A至图9F详细描述。
图2示出了根据一个或多个示例性实施方案的可编程逻辑控制器116的框图。根据一个或多个示例性实施方案,结合图3至图9F中描绘的各种图示来解释图2。可编程逻辑控制器116可以包括处理器202、存储器204、收发器206、图像捕获单元208、图像处理单元210、学习和分类单元212(包括机器学习单元212A、卷积神经网络模块212B和一个或多个自动编码器212C)、导航单元214和物品操纵器单元216。处理器202可以通信地耦接到存储器204、收发器206、图像处理单元210、学习和分类单元212、导航单元214和物品操纵器单元216中的每一个。
处理器202可以包括合适的逻辑、电路和/或接口,其可操作以执行存储在存储器204中的一个或多个指令以便执行限定操作。处理器202可以使用一种或多种技术来实现。处理器202的示例包括但不限于x86处理器、ARM处理器、精简指令集计算(RISC)处理器、专用集成电路(ASIC)处理器、复杂指令集计算(CISC)处理器、或任何其他处理器。
存储器204可以包括合适的逻辑、电路和/或接口,其适于存储可由处理器202执行以执行限定操作的指令集。一些通常已知的存储器实施方式包括但不限于随机存取存储器(RAM)、只读存储器(ROM)、硬盘驱动器(HDD)和安全数字(SD)卡。
收发器206可以与有利于通过网络118向工作场所100中操作的各种设备传输消息和数据并且从该各种设备接收消息和数据的通信接口相对应。收发器206的示例可以包括但不限于天线、以太网端口、USB端口、串行端口、或可适于接收和传输数据的任何其他端口。收发器206根据各种通信协议(诸如,I2C、TCP/IP、UDP以及2G、3G、4G或5G通信协议)传输和接收数据和/或消息。
图像捕获单元208可以包括合适的逻辑和电路,其可以被配置为控制一个或多个图像捕获设备108a和108b的操作。例如,图像捕获单元208可以指示一个或多个图像捕获设备108a和108b捕获集装箱102的FOV,诸如集装箱102内部的第一组区和第二组区。第一组区的示例可以包括集装箱102的产品壁120、底板124、天花板126和后壁130,并且第二组区可以包括集装箱102的侧壁128。基于所捕获的FOV,图像捕获单元208可以被配置为生成3-D点云数据。在示例性实施方案中,在图3中示出了3-D点云数据300。3-D点云数据300包括:第一点云数据集,诸如后壁点云数据302和产品壁点云数据304;以及第二点云数据集,诸如侧壁点云数据306A和306B、底板点云数据308和天花板点云数据310。
图像捕获单元208可以另外地指示物品操纵器单元216在捕获FOV期间致动材料搬运装置106的一个或多个部件。另外,图像捕获单元208可以将与材料搬运装置106的一个或多个部件的移动相关联的运动学数据和3-D点云数据(由图像捕获设备108b生成)相关联。稍后结合图3描述3-D点云数据的捕获。可以使用一种或多种技术(诸如但不限于现场可编程门阵列(FPGA)、专用集成电路(ASIC)等)来实现图像捕获单元208。
图像处理单元210可以包括合适的逻辑和电路,其可以使得图像处理单元210能够处理3-D点云数据。在示例性实施方案中,图像处理单元210可以从图像捕获单元208接收3-D点云数据。另外,图像处理单元210可以适于对3-D点云数据执行各种图像处理操作,例如,分割、聚类、确定2-D深度图等。例如,图像处理单元210可以基于与多个聚类区域相关联的取向数据(例如,3-D点云数据的取向数据)从多个聚类区域中生成对应于后壁130或产品壁120的第一组聚类区域。图像处理单元210可以进一步被配置为生成包括候选区的二维(2-D)深度图。图像处理单元210可以进一步被配置为将对应于3-D点云数据的光检测和测距帧的第一格式变换为对应于与图像处理单元210兼容的经变换帧的第二格式。
在示例性实施方案中,在图4中示出了以第二格式的经变换3-D点云数据400。经变换3-D点云数据400包括:第一经变换点云数据集,诸如后壁点云数据402和产品壁点云数据404、底板点云数据408和天花板点云数据410;以及第二经变换点云数据集,诸如侧壁点云数据406A和406B。
图像处理单元210可以进一步被配置为从以第二格式的3-D点云数据移除噪声数据点,并且分割无噪声的3-D点云数据。另外,图像处理单元210可以基于3-D点云数据的分割来确定多个聚类区域,并且至少基于第二组聚类区域相对于材料搬运装置106的取向而从多个聚类区域中识别第二组聚类区域。图像处理单元210可以进一步确定第二组聚类区域中的每一个的类型(例如,集装箱102的多个聚类区域的侧壁128)。
在示例性实施方案中,图像处理单元210可以基于从多个聚类区域中识别出的第二组聚类区域的裁剪,从3-D点云数据获得更新的3-D点云数据。
参考图5,示出了已更新3-D点云数据500。基于第二组聚类区域的裁剪,已更新3-D点云数据500包括第一已更新点云数据集,诸如后壁点云数据502和产品壁点云数据504、底板点云数据508和天花板点云数据510。从第二组聚类区域中识别并裁剪侧壁点云数据。此后,图像处理单元210可以分割从已识别的第二组聚类区域的3-D点云数据获得的已更新3-D点云数据,并且基于已更新3-D点云数据的分割来确定第一组聚类区域。
在示例性实施方案中,图像处理单元210可以从第一组聚类区域中识别候选区,该候选区设置在第一组聚类区域与第二组聚类区域之间的相交区域处。候选区可以对应于来自第一组聚类区域的聚类区域。在示例性实施方案中,在图6A中示出了候选区。候选区对应于齐平产品壁点云数据604(例如,在后壁点云数据602之前)或仅对应于后壁点云数据602。
在示例性实施方案中,候选区的横截面积(例如,候选区的横截面积)与集装箱102的横截面积的比率超过第一横截面阈值。在这种实施方案中,图像处理单元210可以将候选区定位为感兴趣区(例如,后壁130或产品壁120)以用于如下文所述的进一步处理。例如,生成与感兴趣区相关联的数据集,并且该数据集可以被传输到与材料搬运装置106相关联的可编程逻辑控制器116。在候选区的横截面积(例如,候选区的横截面积)与集装箱的横截面积的比率未超过第一横截面阈值的情况下,图像处理单元210可以将候选区定位为产品壁120。在候选区的横截面积与集装箱102的横截面积的比率超过第一横截面阈值的情况下,图像处理单元210可以将如图6A所示的已更新3-D点云数据转换成范围图像。基于范围图像,图像处理单元210可以生成2-D深度图,如图6B所示。在该转换之后,系统可以确定候选区是对应于后壁130还是产品壁120(例如,候选区和集装箱的横截面积在大小方面过于接近)。后壁130或产品壁120的确定可以基于后壁检测算法,如参考图7所述。在一些实施方案中,后壁130或产品壁120的确定可以基于由学习和分类单元212执行的一种或多种分类算法,如图8A至图8C所示。
参考图7,示出了输入图像702(类似于图6B所示的2-D深度图)。另外,示出了对输入图像702(即,2-D深度图)施加从而产生两个掩模704和706的两个二进制阈值。对两个掩模704和706执行数学运算(诸如XOR运算)以基于形态腐蚀来生成所得掩模708,由于该形态腐蚀,输出像素的值是输入像素邻域中的所有像素的最小值。在二进制图像中,如果任何像素被设置为0,则输出像素被设置为0。另外,基于对一致图像区的分析,对所得掩模708执行斑点分析,使得从背景清楚地辨别出被检查对象。可以对最大面积斑点710进行滤波以排除误报并识别感兴趣区。
最大面积斑点710也可以被馈送到图像处理单元210中的后壁检测模块,该后壁检测模块生成概率分数(使用分类器)。基于概率分数,后壁检测模块可以确定最大面积斑点710是否对应于后壁130。可以使用一种或多种技术(诸如但不限于FPGA、ASIC等)来实现图像处理单元210。
学习和分类单元212可以包括合适的逻辑和电路,其可以被配置为在接收用于分类的实际数据点之前基于给定训练数据点来构建分类模型。一旦接收到数据点以进行分类,学习和分类单元212可以被配置为预测所接收的数据点的类别、目标或标签。学习和分类单元212可以包括机器学习单元212A、卷积神经网络模块212B和自动编码器212C。
在示例性实施方案中,机器学习单元212A可以被配置为获得候选区中的多个关键兴趣点。图像中的关键兴趣点可以指具有明确限定的位置并且可以被可靠地检测到的像素(经由本文所述的任何过程)。关键兴趣点具有高本地信息含量并且理想情况下可以在不同图像之间重复。关键兴趣点的位置信息可以有益于决定候选区是否平坦、良好组织并且合适堆叠。在示例性实施方案中,机器学习单元212A可以被配置为以列方式确定平坦、良好组织并且合适堆叠的候选区以用于与位置信息一起使用。在多个关键兴趣点的计数超过限定值的情况下,候选区可以对应于集装箱102的感兴趣区(例如,后壁130)。在多个关键兴趣点的计数未超过限定值的另一个情况下,候选区可能不对应于感兴趣区。机器学习单元212A可以进一步被配置为基于多个关键兴趣点来确定多个关键描述符。
在一些实施方案中,如图8A所示,可以将多个关键描述符确定为在指定区域802外部。这种实施方案可以与2-D图像对应于后壁130的场景相对应。在另一个示例性实施方案中,如图8B所示,可以将多个关键描述符804确定为在指定区域802内部。这种实施方案可以与2-D图像对应于齐平产品壁120的场景相对应。
机器学习单元212A可以进一步被配置为确定多个关键描述符804的分布。基于多个关键描述符804的分布,机器学习单元212A可以被配置为生成特征向量。在图8C中示出了与特征向量相对应的特征806。
机器学习单元212A可以进一步被配置为训练机器学习模型以提供分类分数,并且在特征向量的分类分数超过第一分类阈值的情况下将候选区分类为后壁130。在特征向量的分类分数未超过第一分类阈值的另一种情况下,机器学习单元212A可以进一步被配置为将候选区分类为产品壁120。
在另一个实施方案中,卷积神经网络模块212B(例如,经训练的单输入卷积神经网络模块)可以被配置为接收已识别的候选区并确定与已识别的候选区相关联的分类分数。分类分数可以是类别分数(例如,后壁分数),其可具有零(0)到一(1)之间的概率(即,越接近一则越准确)。当输入数据(诸如点云、图像或其他这样的格式)被呈现给经训练的卷积神经网络模块212B时,卷积神经网络模块212B输出类别分数。例如,如果提供正后壁数据作为输入,则卷积神经网络模块212B可以提供指示理想情况的分数1.0。在分类分数超过第二分类阈值的情况下,卷积神经网络模块212B可以被配置为将已识别的候选区分类为感兴趣区(例如,后壁130)。在分类分数未超过第二分类阈值的情况下,卷积神经网络模块212B可以进一步被配置为将已识别的候选区分类为产品壁120。
在另一个实施方案中,自动编码器212C可以被配置为从3-D点云数据提取特征。在某些情况下,自动编码器212C可以通过在盒表面和边缘之间提供更多的区分来克服3-D点云数据中的任何噪声。这种区分可以促进关键点提取器性能的提高,从而改善分类。在其他情况下,自动编码器212C可以直接用作后壁候选的特征提取器。
导航单元214可以包括合适的逻辑和电路,在候选区被识别为感兴趣区的情况下,该合适的逻辑和电路可以被配置为基于与集装箱102的已分类感兴趣区相关联的数据集来确定集装箱102中的第一导航路径。另外,导航单元214可以适于将有关第一导航路径的数据存储在存储器204中。可以使用一种或多种技术(诸如但不限于FPGA、ASIC等)来实现导航单元214。
物品操纵器单元216可以包括合适的逻辑和电路,其可以被配置为控制材料搬运装置106的物品操纵器112的操作以操纵放置在集装箱102中的多个物品。在候选区被识别为产品壁120的情况下,可以将多个物品放置在对应于产品壁的区域中。在各种实施方案中,物品操纵器单元216可以根据存储的指令来操作物品操纵器112,这些指令允许物品操纵器112拾取多个产品(存储在集装箱102中)中的产品并将所拾取的产品放置在工作场所100中的位置处。另外,物品操纵器单元216可适于记录有关物品操纵器112相对于集装箱102的移动的运动学数据。另外,物品操纵器单元216可以适于将有关物品操纵器112的移动的运动学数据存储在存储器204中。可以使用一种或多种技术(诸如但不限于FPGA、ASIC等)来实现物品操纵器单元216。
图9A至图9F是示出根据本文描述的实施方案的材料搬运装置106的示例性方法的流程图。结合图1至图8C描述了图9A至图9F。
应当理解,流程图中的每个框、以及流程图中的框的组合可以通过各种装置(诸如硬件、固件、一个或多个处理器、电路、和/或与包括一个或多个计算机程序指令的软件的执行相关联的其他设备)来实现。例如,本文中描述的过程中的一者或多者可以通过计算机程序指令来体现。在这方面,体现所描述的过程的计算机程序指令可以由采用本公开的实施方案的材料搬运装置106的存储器204存储并且由材料搬运装置106中的处理器执行。
可以理解,可以将任何这样的计算机程序指令加载到计算机或其他可编程装置(例如,硬件)上以产生一种机器,使得所得计算机或其他可编程装置提供一个或多个流程图框中指定的功能的实施方式。这些计算机程序指令还可以存储在非暂态计算机可读存储存储器中,该非暂态计算机可读存储存储器可以指示计算机或其他可编程装置以具体方式工作,使得存储在计算机可读存储存储器中的指令产生一种制品,其执行可实现一个或多个流程图框中指定的功能。计算机程序指令还可以加载到计算机或其他可编程装置上,以使得在计算机或其他可编程装置上执行一系列操作,从而产生计算机实施方法,使得在计算机或其他可编程装置上执行的指令提供用于实现一个或多个流程图框中指定的功能的操作。因此,图9A至图9F的操作在被执行时,将计算机或处理电路转换成被配置为执行本发明的示例性实施方案的具体机器。因此,图9A至图9F的操作限定了用于将计算机或处理器配置为执行示例性实施方案的算法。在一些情况下,可以为通用计算机提供处理器的实例,该实例执行图9A至图9F的算法,以将通用计算机变换为被配置为执行示例性实施方案的具体机器。
因此,流程图中的框支持用于执行指定功能的装置的组合以及用于执行指定功能的操作的组合。还将理解,流程图中的一个或多个框以及流程图中的框的组合可以由执行指定功能的基于硬件的专用计算机系统或者专用硬件和计算机指令的组合来实现。
转到操作902,材料搬运装置106可以包括用于扫描基于图像捕获设备108b的FOV捕获的集装箱102的内部的装置(诸如图像捕获设备108b)。在示例性实施方案中,基于对集装箱102的内部的视图的扫描,图像捕获设备108b可以结合图像捕获单元208被配置为累积3-D点云数据。
图像捕获设备108b的FOV可以基于各种因素,诸如图像捕获设备108b的视角和/或图像捕获设备108b与对象之间的距离。集装箱102的内部可以包括第一组区(聚类区域)和第二组区(聚类区域)。第一组区的示例可以包括集装箱102的产品壁120、底板124、天花板126和后壁130,并且第二组区可以包括集装箱102的侧壁128。
在示例性实施方案中,图像捕获设备108b(诸如2-D LIDAR)可以被配置为通过实现统一机器人描述格式(URDF)模型来连续地累积3-D点云数据。本公开不应被设想为限于作为图像捕获设备108b的2-D LIDAR和URDF模型。也可以考虑其他类型的图像捕获设备108b和对应格式,而不会在本公开的范围内进行任何改变。
转到操作904,材料搬运装置106可以包括用于捕获基于材料搬运装置106的物品操纵器112在扫描集装箱102的内部期间的移动而收集的运动学数据的装置(诸如物品操纵器单元216)。物品操纵器112的移动可以相对于集装箱102。在一些实施方案中,与物品操纵器112相关联的运动学数据可以对应于限定物品操纵器112的运动的数据。更具体地,运动学数据可以包括有关在多个时刻的物品操纵器112的位置、物品操纵器112的相对速度、以及物品操纵器112的加速度的信息。
在示例性实施方案中,物品操纵器单元216可以被配置为相对于物品操纵器112上的图像捕获设备108b实时地跟踪物品操纵器112的接头和连杆(例如,上臂J1、J2、J3和J4)的运动学链。物品操纵器112的接头和连杆的运动学链可以包括有关在多个时刻的物品操纵器112的位置、相对速度和加速度的信息(经由接头值传感器、接头距离传感器、接近传感器和/或光电传感器确定)。物品操纵器112执行从第一位置(例如,位置A)到另一个位置(例如,位置B)的旋转和/或平移的组合,并且可以适于覆盖集装箱102的整个3-D FOV。
图像捕获单元208可以将指令传输到图像捕获设备108b以累积工作场所100的点云数据。同时,图像捕获单元208可以指示物品操纵器单元216致动材料搬运装置106的物品操纵器112以沿着限定路径行进。当图像捕获设备108b安装在物品操纵器112上时,在物品操纵器112的行进期间,图像捕获装置108b也沿着限定路径行进。在示例性实施方案中,图像捕获单元208可以指示图像捕获设备108b在物品操纵器112沿着限定路径行进期间连续地累积集装箱102的内部的视图的点云数据。另外,在物品操纵器112的行进期间,物品操纵器单元216可以捕获物品操纵器112的运动学数据。物品操纵器单元216可以适于将运动学数据存储在存储器204中。在示例性实施方案中,与物品操纵器112相关联的运动学数据可以对应于限定物品操纵器112的运动的数据。
转到操作906,材料搬运装置106可以包括用于基于由图像捕获设备108b累积的点云数据和由物品操纵器单元216捕获的运动学数据来生成3-D点云数据的装置(诸如图像捕获单元208)。所生成的3-D点云数据可以对应于基于已累积的点云数据与运动学数据的关联而增强的3-D点云数据。
为了生成增强的3-D点云数据,图像捕获单元208可以从存储器204提取物品操纵器112的运动学数据。另外,图像捕获单元208可以将运动学数据与3-D点云数据相关联以生成增强的3-D点云数据。为了将物品操纵器112的运动学数据与3-D点云数据相关联,图像捕获单元208可以确定在物品操纵器112沿着限定路径行进期间的由图像捕获设备108b累积点云数据的一个或多个时刻。另外,图像捕获单元208可以基于与物品操纵器112沿着限定路径的行进的相关联的运动学数据来至少确定物品操纵器112在一个或多个确定时刻的位置。此后,图像捕获单元208可以适于根据物品操纵器112在一个或多个确定时刻的确定位置而将在一个或多个确定时刻捕获的累积的点云数据缝合在一起。
在示例性实施方案中,可以实时地执行前述操作(即,累积的点云数据和与物品操纵器112相关联的运动学数据的关联)。在这种场景中,在图像捕获设备108b累积点云数据的时刻,图像捕获单元208可以适于从物品操纵器单元216接收物品操纵器112的位置。此后,图像捕获单元208可以根据物品操纵器112的位置将累积的点云数据相关联以生成增强的3-D点云数据。集装箱102内部的示例性3-D点云数据在图3中被示为3-D点云数据300。
转到操作908,材料搬运装置106可以包括用于将增强的3-D点云数据的第一格式变换成第二格式的装置(诸如图像处理单元210)。增强的3D点云数据的第一种格式可以对应于可包含LIDAR点数据记录的LIDAR数据(.las文件)。在一些实施方案中,第一格式存储从软件(例如,由LIDAR设备提供)接收的3-D点云数据,该软件组合全球定位系统(GPS)、惯性测量单元(IMU)和激光脉冲范围数据以生成X、Y和Z点数据。第一格式的目的可以是提供允许不同的LIDAR硬件和软件工具以通用格式输出数据的开放格式。
第二格式可以对应于与图像处理单元210兼容的经变换帧。例如,第二格式可以对应于栅格数据,该栅格数据可以被存储作为呈现为像素的值的网格。在一个实施方案中,可以基于其中将网格放置在增强的3-D点云数据上的网格化将增强的3-D点云数据的第一格式变换为第二格式。基于网格的每个单元中的LIDAR点,可以计算对应的单元值。在另一个实施方案中,可以基于每个单元的值的内插将增强的3-D点云数据的第一格式变换为第二格式。本公开不应被认为限于作为第一格式的(.las)格式,作为第二格式的格栅格式、以及作为变换技术的网格化和内插。也可以考虑其他类型的第一格式、第二格式和变换技术,而不会在本公开的范围内进行任何改变。在图4中示出了以第二格式的示例性经变换3-D点云数据400。
转到操作910,材料搬运装置106可以包括用于预处理3-D点云数据的装置(诸如图像处理单元210)。3-D点云数据的预处理还可以包括多个操作916至920,例如,对噪声、反射和其他伪影的分割和移除,如图9B的流程图中所述。
转到操作916,材料搬运装置106可以包括用于从以经变换第二格式的3-D点云数据中移除噪声数据点的装置(诸如图像处理单元210)。在各种实施方案中,图像处理单元210可以利用各种噪声滤波算法,例如,基于统计的滤波技术、基于邻域的滤波技术、基于投影的滤波技术、基于信号处理的方法、基于偏微分方程的滤波技术等,以便从增强的3D点云数据中移除噪声和离群值。
转到操作918,材料搬运装置106可以包括用于分割从中移除噪声数据点的3-D点云数据的装置(诸如图像处理单元210)。在一些实施方案中,图像处理单元210可以利用各种分割算法(例如基于边缘的分割,区域增长分割,模型拟合分割,机器学习分割等)以便对子集(称为聚类区域)中的点进行分组,其特征在于具有一个或多个共同特性(例如,取向数据、几何、辐射测量等)。
转到操作920,材料搬运装置106可以包括用于基于3-D点云数据的分割来确定多个聚类区域的装置(诸如图像处理单元210)。基于3-D点云数据的分割,图像处理单元210可以被配置为确定各种聚类区域,诸如集装箱102的内部中对应的第一组聚类区域和第二组聚类区域。
为了将点集聚类为聚类区域,例如,图像处理单元210可以适于将区限定为包括在3-D点云数据400的后壁点云数据402中的多个点中的单个点(可互换地称为原点)。此后,图像处理单元210可以适于确定与原点相邻的一个或多个点(包括在区中)中的每一个的取向。如果图像处理单元210确定一个或多个点中的每个点的取向和原点的取向的变化在限定的取向范围内,则图像处理单元210可以将聚类区域的边界修改为包括一个或多个点。因此,聚类区域的修改后的边界可以包括原点和与原点相邻的一个或多个点。可以在3-D点云数据400上重复该过程,直到一个或多个点(邻近聚类区域中的点)的取向和该区中的原点的取向之间的变化在第一限定取向范围之外。类似地,例如,可以在3-D点云数据400中识别多个聚类区域中的其他聚类区域。
在替代示例性实施方案中,可以确定一个或多个点的取向(例如,邻近3-D点云数据400中的聚类区域)和聚类区域的取向之间的取向变化。在这种实施方案中,图像处理单元210可以适于在确定变化之前确定聚类区域的取向。在示例性实施方案中,聚类区域的取向可以对应于聚类区域的形心的取向。因此,图像处理单元210可以适于确定聚类区域的形心。此后,图像处理单元210可以适于确定聚类区域的形心的取向。区的形心的取向可以被认为是聚类区域的取向。另外,基于聚类区域的形心的取向,例如,图像处理单元210可以适于确定聚类区域的取向与3D点云数据400中的邻近聚类区域的一个或多个点的取向之间的变化。在替代实施方案中,在不脱离本公开的范围的情况下,图像处理单元210可以适于将聚类区域的形心的取向视为聚类区域的取向。
转到图9A中的操作912,材料搬运装置106可以包括用于至少基于第二组聚类区域相对于材料搬运装置106的取向而从多个聚类区域中提取第二组聚类区域的装置(诸如图像处理单元210)。在一个实施方案中,多个聚类区域中的每一个中的多个点中的一个点的取向可以对应于该点相对于材料搬运装置106的俯仰和偏航的量度。
如以上讨论,聚类区域的取向可以对应于聚类区域的形心的取向。因此,为了确定多个聚类区域的取向,图像处理单元210可以适于确定每个聚类区域的相应形心的取向。此后,图像处理单元210可以适于检查每个聚类区域的取向是否位于一个或多个限定的取向范围中的至少一个内。在示例性实施方案中,一个或多个限定的取向范围对应于在材料搬运装置106定位在工作场所100中的原始位置时,集装箱102的区通常可具有的取向范围。另外,在开始材料搬运装置106的操作之前,可以将一个或多个限定的取向范围存储在存储器204中。下表示出了与集装箱102的一个或多个区相对应的示例性一个或多个限定的取向范围:
集装箱102的部分类型 | 俯仰范围(度) | 偏航范围(度) |
一个或多个侧壁128 | 0-10 | -50至50 |
表1:限定的取向范围
基于所确定的多个聚类区域的取向与一个或多个限定的取向范围中的每一个的比较,图像处理单元210可以适于从集装箱102的多个区中识别出聚类区域表示第二组聚类区域。
例如,图像处理单元210可以确定聚类区域的取向是10度俯仰和50度偏航。图像处理单元210可以进一步确定另一个聚类区域的取向是5度俯仰和0度偏航。此后,图像处理单元210将每个聚类区域的取向与一个或多个限定的取向范围进行比较(如以上表1所示)以确定一个聚类区域是否可以对应于集装箱102的一个或多个侧壁128中的侧壁。另外,另一个聚类区域可以对应于集装箱102的底板124。因此,图像处理单元210将该聚类区域识别为第二组聚类区域并且将另一个聚类区域识别为第一组聚类区域。
另外,图像处理单元210可以适于将有关第二组聚类区域的信息存储在存储器204中。在示例性实施方案中,有关第二组聚类区域的信息可以包括但不限于第二组聚类区域中的每个聚类区域的取向以及(集装箱102的多个区中的)区的类型。多个区的类型可以对应于集装箱102的至少一个或多个侧壁128、集装箱102的产品壁120、集装箱102的底板124、天花板126和集装箱102的后壁130。
在另一个实施方案中,图像处理单元210可以被配置为确定最远聚类区域并且然后将聚类区域信息与侧壁聚类区域对准,因为侧壁聚类区域位于与集装箱102的后壁130相对应的聚类区域的限定附近内。因此,对应于侧壁的聚类区域位于聚类区域与后壁会聚的位置。提取后壁130和/或齐平产品壁120作为第一组聚类区域。
一旦从多个聚类区域中识别出第二组聚类区域,材料搬运装置106就可以包括用于基于与多个聚类区域相关联的取向数据而从多个聚类区域中提取剩余组的聚类(即,第一组聚类区域)的装置(诸如图像处理单元210)。
转到操作924,材料搬运装置106可以包括用于获得更新的3-D点云数据的装置(诸如图像处理单元210)。已更新3-D点云数据可以包括从中裁剪第二组聚类区域的3-D点云数据。在示例性实施方案中,图像处理单元210可以被配置为利用各种裁剪算法以便从来自3-D点云数据的多个聚类区域中裁剪已识别的第二组聚类区域并获得已更新3-D点云数据。
在图5中示出了示例性已更新3-D点云数据500。已更新3-D点云数据500包括第一组已更新点云数据,诸如后壁点云数据502、产品壁点云数据504和底板点云数据508。从第二组聚类区域中识别并裁剪侧壁点云数据。
转到操作926,材料搬运装置106可以包括用于基于已识别的第二组聚类区域的裁剪来分割从3-D点云数据获得的已更新3-D点云数据的装置(诸如图像处理单元210)。在示例性实施方案中,图像处理单元210可以被配置为基于各种分割算法来分割已更新3-D点云数据,例如:基于边缘的分割、区增长分割、模型拟合分割、机器学习分割等。因此,图像处理单元210可以对子集(称为聚类区域)中的第一组聚类的点进行分组,其特征在于具有一个或多个共同特性(例如,取向数据、几何、辐射测量等)。
转到操作928,材料搬运装置106可以包括用于从第一组聚类区域中识别候选区的装置(诸如图像处理单元210),这些候选区设置在第一组聚类区域与第二组聚类区域之间的相交区域处。在示例性实施方案中,图像处理单元210可以被配置为确定第一组聚类区域和侧壁128之间的相交区域。
转到操作930,材料搬运装置106可以包括用于确定候选区的横截面积(例如,候选区的横截面积)与集装箱102的横截面积的比率的装置(诸如图像处理单元210)。在一个实施方案中,该比率可以超过第一横截面阈值。在这种情况下,控制转到操作940。在另一个实施方案中,该比率可能未超过第一横截面阈值。在这种情况下,控制转到操作932。在示例性实施方案中,第一横截面阈值可以是0.70。
本公开可以不被设想为限于将候选区的横截面积和横截面积的比率与第一横截面阈值进行比较。可以将所确定的聚类区和集装箱102的横截面积之间的差异与限定值(例如0.2米(m))进行比较的其他实施方案。在示例性实施方案中,如果所确定的聚类区域和集装箱102的横截面积之间的差异超过0.2m,则这意味着产品壁120和后壁130的高度之间存在实质性差异,即产品壁120的高度实质上大于后壁130的高度。因此,后壁130可以基于对应聚类区域被适当地定位,并且可以确定与后壁130相对应的数据集。在替代示例性实施方案中,如果所确定的聚类区域和集装箱102的横截面积之间的差异未超过0.2m,则这意味着产品壁120的高度几乎等于后壁130的高度。因此,可能要求查明聚类区域对应于产品壁120还是后壁130。
转到操作932,当比率未超过第一横截面阈值时,材料搬运装置106可以包括用于将候选区定位为感兴趣区的装置(诸如图像处理单元210)。在一个实施方案中,感兴趣区可以是集装箱102的后壁130。当候选区对应于集装箱102的后壁130时,候选区的定位可以基于各种定位算法。
转到操作934,材料搬运装置106可以包括用于基于候选区的定位来生成与感兴趣区相关联的数据集的装置(诸如图像处理单元210)。在一个实施方案中,数据集可以对应于物品操纵器112的后壁的右下角的X、Y和Z。
在一个实施方案中,基于后壁130的分类,图像处理单元210可以确定后壁130的尺寸和取向信息,物品操纵器单元216基于该信息对准物品操纵器112以拾取产品或回缩。尺寸信息包括后壁130相对于物品操纵器112的深度信息(X)、宽度信息(Y)和高度信息(Z)。取向数据可以用于使物品操纵器112相对于后壁130对准。另外,图像处理单元210可以将右下角信息提供给可编程逻辑控制器116的处理器202。根据一个实施方案,图像处理单元210可以被配置为确定占用率,诸如后壁130候选的面积与后壁的总面积(即典型拖车的面积)的比率,作为数据集的一部分。
转到操作936,材料搬运装置106可以包括用于将与感兴趣区相关联的数据集传输到与材料搬运装置106相关联的可编程逻辑控制器116的处理器202的装置(诸如图像处理单元210)。
转到操作938,材料搬运装置106可以包括用于基于从处理器202接收的与集装箱102的感兴趣区相关联的数据集来限定集装箱102中的导航路径的装置(诸如物品操纵器单元216)。该导航路径可以减小可能性或以其他方式防止与后壁130(例如,感兴趣区)的碰撞。
返回操作930,当比率超过第一横截面阈值时,转到操作940,材料搬运装置106可以包括用于将已更新3-D点云数据转换成范围图像的装置(诸如图像处理单元210)。在一个实施方案中,可以基于近似相机参数将3-D点云数据投影到强度(或范围)图像上。2D图像中的对应像素的强度是3-D点云数据中的相应3-D点的激光强度。在多于一个3-D点被投影到相同像素上的情况下,像素的强度是最接近图像捕获设备108b的位置的点的激光强度。
转到操作942,材料搬运装置106可以包括用于生成包括候选区的二维(2-D)深度图的装置(诸如图像处理单元210)。在一个实施方案中,深度图像包括3-D点云中的每个点相对于图像捕获设备108b的位置的深度信息。
转到操作944,材料搬运装置106可以包括用于将候选区分类为感兴趣区(即,后壁130)的装置(诸如学习和分类单元212)。可以根据图9E和图9F中的以下操作来执行分类。在图9E和图9F中描述的两个实施方案中,分类的训练阶段可以离线进行。在训练阶段中,可以收集训练和验证数据,并且可以使用训练数据来训练模型。因此,在该阶段中,可以使用训练数据来训练学习和分类单元212(例如,经由使用关键兴趣点),以便通过使用验证数据连续评估学习和分类单元212的性能来调谐用于优化由学习和分类单元212限定的权重的参数。一旦对学习和分类单元212进行了足够的训练以在验证数据上显示令人满意的结果,学习和分类单元212就可以在操作阶段中进行操作。在操作阶段中,学习和分类单元212可以被冻结,并且学习和分类单元212可以用于对机器人或任何其他设备进行测试或真实世界测试。
根据示例性实施方案,转到操作946,材料搬运装置106可以包括用于获得候选区中的多个关键兴趣点的装置(诸如学习和分类单元212)。在示例性实施方案中,候选区可以对应于后壁130。在另一个实施方案中,候选区可以对应于产品壁120。图像中的关键兴趣点可以指具有明确限定的位置并且可以被可靠地检测到的像素(经由本文所述的任何过程)。关键兴趣点具有高本地信息含量并且理想情况下可以在不同图像之间重复。在示例性实施方案中,图像处理单元210可以被配置为通过使用来自加速分割测试(FAST)算法的特征来获得(或提取)候选区中的多个关键兴趣点。根据FAST算法,在图像中选择像素“p”(具有强度IP)。这是可以被识别为兴趣点的像素。设置阈值强度值T(诸如,被测像素的20%)。例如,围绕像素“p”的16个像素的圆。如果需要将16个像素中的“N”个连续像素(例如12个连续像素)检测为兴趣点,则要求其比IP高或低值T。在某些情况下,可以基于机器学习过程来改善FAST算法的性能。
转到操作948,材料搬运装置106可以包括用于计数和确定多个关键兴趣点是否超过限定值的装置(诸如学习和分类单元212)。在多个关键兴趣点的计数未超过限定值的实施方案中,控制转到操作964。在多个关键兴趣点的计数超过限定值的另一个实施方案中,控制转到操作950。
转到操作950,材料搬运装置106可以包括用于基于多个关键兴趣点确定多个关键描述符的装置(诸如学习和分类单元212)。在示例性实施方案中,图像处理单元210可以被配置为通过使用二进制鲁棒不变可缩放关键点(BRISK)来确定多个关键描述符。给定一组关键点(由子像素精炼的图像位置和相关联的浮点标度值组成),通过将简单亮度比较测试的结果串联起来而将BRISK描述符构成二进制字符串。BRISK依赖于可配置的循环采样模式,从中它可以计算亮度比较以形成二进制描述符字符串。在BRISK中,可以识别每个关键点的特征方向以实现取向归一化描述符并且实现对于总体鲁棒性而言是关键的旋转不变性。可以仔细选择亮度比较,其中重点放在最大化描述性上。
转到操作952,材料搬运装置106可以包括用于确定多个关键描述符的分布的装置(诸如学习和分类单元212)。如图8A的示例性实施方案所示,可以将多个关键描述符确定为在指定区域802外部。这种实施方案可以与2-D图像对应于后壁130的场景相对应。在另一个示例性实施方案中,如图8B所示,可以将多个关键描述符804确定为在指定区域802内部。这种实施方案可以与2-D图像对应于齐平产品壁(诸如产品壁120)的场景相对应。图像处理单元210可以被配置为基于对多个关键描述符的直方图的确定来确定多个关键描述符的分布。例如,图像处理单元210可以确定多个关键描述符804相对于指定区域802的分布,该分布可以指示齐平产品壁(诸如产品壁120)中的物品的质地、物品之间的空间等。换句话说,图像处理单元210可以被配置为检测不能与3D点云区分开但可呈现在范围图像中的较小间隙或边缘。该特征可以是齐平产品壁(诸如产品壁120)和后壁130之间的主要区别符。因此,使用关键兴趣点,可以检测到重要特征,并且此后对其进行分类以对后壁130、产品壁120或规则壁(例如,侧壁等)进行评估。
转到操作954,材料搬运装置106可以包括用于基于多个关键描述符的分布来生成特征向量的装置(诸如学习和分类单元212中的机器学习单元212A)。在一个实施方案中,可以利用多个关键描述符以从深度图图像提取特征。此类提取的特征可以对应于特征向量。
在示例性实施方案中,机器学习单元212A可以被配置为确定取向梯度直方图(HOG)特征。为了提取HOG特征,可以将所检测的图像分成称为“单元”的几个连接的分量。然后,可以计算每个单元中的逐像素梯度,并且可以生成HOG特征。最后,可以通过深度图像中的所有单元的线性组合来进行所检测的深度图像的特征描述符。通常将单元组合成更大块,在该块中对单元的直方图进行归一化,使得可以减少光影的影响。可以注意到,HOG特征对应于深度图像中的边缘和拐角。
转到操作956,材料搬运装置106可以包括用于训练机器学习模型以提供分类分数的装置(诸如学习和分类单元212中的机器学习单元212A)。
在示例性实施方案中,支持向量机(SVM)分类器可以用作学习和分类单元212的核心训练机。HOG特征可以用于基础级别训练。在一轮训练后,计算约束和收敛值并选择难度样本的部分以进行测试。对应于后壁130的样品被放入正样品集中,并且对应于产品壁120的样品被放入负样品集中。因此,HOG特征是离线生成的,并且分类模型被相应地训练。这种离线训练可以有助于优化分类模型的参数以更好地拟合样本数据。
转到操作958,材料搬运装置106可以包括用于确定候选区的分类分数是否超过第一分类阈值的装置(诸如学习和分类单元212中的机器学习单元212A)。在一个实施方案中,如果候选区的分类分数超过第一分类阈值,则控制转到操作960。在一个实施方案中,如果候选区的分类分数不超过第一分类阈值,则控制转到操作962。
转到操作960,材料搬运装置106可以包括用于基于候选区的分类分数超过第一分类阈值而将候选区分类为感兴趣区的装置(诸如学习和分类单元212中的机器学习单元212A)。在这种实施方案中,感兴趣区可以是后壁130。控制返回到操作934。
转到操作962,材料搬运装置106可以包括用于在特征向量的分类分数未超过第一分类阈值的情况下将候选区分类为产品壁120的装置(诸如学习和分类单元212中的机器学习单元212A)。控制转到操作966。
参考操作948,当多个关键兴趣点的计数不超过限定值时,控制转到操作964。转到操作964,材料搬运装置106可以包括用于确定候选区不对应于感兴趣区的装置(诸如图像处理单元210)。换句话说,候选区对应于产品壁120。
转到操作966,材料搬运装置106可以包括用于控制物品操纵器112以操纵在对应于产品壁120的区域(在该区域中候选区被识别为产品壁120)中放置在集装箱102中的多个物品的装置(诸如物品操纵器单元216)。
在替代示例性实施方案中,响应于确定产品壁120中的至少一个产品,导航单元214可以适于确定集装箱102中的第一导航路径。在示例性实施方案中,基于被齐平为集装箱102中的产品壁120的多个产品的识别来确定集装箱102中的第一导航路径。另外,导航单元214可以适于致动多个牵引设备以促进使材料搬运装置行进至期望位置。此后,例如,处理器202可以指示物品操纵器单元216致动物品操纵器112以拾取至少一个产品并将该至少一个产品放置在集装箱102外部的期望位置处。可以重复拾取和放置至少一个产品的操作,直到将所有产品从集装箱102移除。该导航路径可以考虑集装箱的后壁130(以及侧壁、底板、天花板等)以便防止与这些元件中的一个或多个碰撞。
根据另一个示例性实施方案,转到操作970,材料搬运装置106可以包括用于将所识别的候选区提供给经训练的单输入卷积神经网络模块212B的装置(诸如学习和分类单元210)。
转到操作972,材料搬运装置106可以包括用于确定与所识别的候选区相关联的分类分数的装置(诸如卷积神经网络模块212B)。在示例性实施方案中,根据基于深度学习的方法,卷积神经网络模块212B可以被配置为执行如下四层中所限定的基本步骤:
1.卷积(CONV)层:2-D深度图可以通过多个卷积滤波器进行卷积以生成CONV层。卷积层可以计算连接到输入中的局部区的神经元的输出,每个神经元计算权重和它们在输入体积中连接到的小区之间的点积。
2.修正线性单元(ReLU)层:可以将非线性应用于卷积层以限定ReLU层。ReLU层可以应用逐元素激活函数,诸如阈值设置为零的最大(0,x),而使体积大小不变。
3.池化(POOL)层:在POOL层中,表示的空间大小可以逐渐减小以基于对每个特征图单独操作的最大池化来减小网络中的参数数量和计算。因此,POOL层沿空间尺寸(宽度、高度)执行向下采样操作,从而导致减小的体积。
4.完全连接(FC)层:完全连接神经元的层最终计算出已池化特征的类别分数,基于该类别分数将2-D深度图分类为后壁130。
转到操作974,材料搬运装置106可以包括用于确定与所识别的候选区相关联的分类分数是否超过第二分类阈值的装置(诸如卷积神经网络模块212B)。在一个实施方案中,与所识别的候选区相关联的分类分数超过第二分类阈值并且控制转到操作976。在另一个实施方案中,与所识别的候选区相关联的分类分数未超过第二分类阈值并且控制转到操作978。
转到操作976,材料搬运装置106可以包括用于在分类分数超过第二分类阈值的情况下将所识别的候选区分类为感兴趣区(即后壁130)的装置(诸如卷积神经网络模块212B)。控制返回到操作934。
转到操作978,材料搬运装置106可以包括用于在分类分数未超过第二分类阈值的情况下将所识别的候选区分类为产品壁120的装置(诸如卷积神经网络模块212B)。控制返回到操作966。
虽然参考示例性实施方案描述了本公开,但是本领域的技术人员应当理解,在不脱离本公开的范围的情况下,可以进行各种改变并且可以用等同物替换其元件。另外,在不脱离本公开的实质范围的情况下,可以进行许多修改以使特定系统、设备或其部件适应本公开的教导内容。因此,本公开旨在不限于为实现本公开内容而公开的特定示例性实施方案,而是本公开将包括落入所附权利要求书范围内的所有示例性实施方案。此外,术语第一、第二等的使用不表示任何顺序或重要性,而是术语第一、第二等用于将一个元件与另一个元件区分开。
本文所用的术语仅用于描述特定实施方案的目的,并且并非旨在对本公开进行限制。如本文所用,单数形式“一个”、“一种”和“该”旨在还包括复数形式,除非语境中另外明确地指出其他情况。还应当理解,当在本说明书中使用术语“包含”和/或“包括”时,规定了所述特征、整体、步骤、操作、元件和/或部件的存在,但不排除一个或多个其他特征、整体、步骤、操作、元件、部件和/或它们的组的存在或添加。
提供前述方法描述和过程流程图仅作为说明性示例,并且不旨在要求或暗示必须以所呈现的顺序执行各种实施方案的步骤。如本领域技术人员将理解的,上述实施方案中的步骤顺序可以以任何顺序执行。词语诸如“之后”、“然后”、“下一个”等并不旨在限制步骤的顺序;这些词只是用来引导读者了解方法的描述。此外,例如,使用冠词“一个”、“一种”或“该”对单数形式的权利要求元素的任何引用都不应被解释为将元素限制为单数。
用于实现结合本文所公开的各方面描述的各种例示性逻辑、逻辑块、模块和电路的硬件可以包括通用处理器、数字信号处理器(DSP)、专用处理器诸如专用集成电路(ASIC)或现场可编程门阵列(FPGA)、可编程逻辑设备、离散栅极或晶体管逻辑、离散硬件部件或它们的被设计用于执行本文描述的功能的任何组合。通用处理器可以是微处理器,然而或者,处理器可以是任何传统的处理器、控制器、微控制器或状态机。处理器可还被实现为计算设备的组合,例如,DSP和微处理器的组合、多个微处理器、结合DSP核心的一个或多个微处理器、或者任何其他此类配置。另选地或另外地,一些步骤或方法可以通过特定于给定功能的电路来执行。
在一个或多个示例性实施方案中,本文描述的功能可由专用硬件或由固件或其他软件编程的硬件的组合来实现。在依赖于固件或其他软件的实现方式中,可由于存储在一个或多个非暂态计算机可读介质和/或一个或多个非暂态处理器可读介质上的一个或多个指令的执行来执行这些功能。这些指令可由驻留在一个或多个非暂态计算机可读或处理器可读存储介质上的一个或多个处理器可执行软件模块来体现。在这方面,非暂态计算机可读或处理器可读存储介质可包括可由计算机或处理器访问的任何存储介质。作为示例而非限制,这种非暂态计算机可读或处理器可读介质可以包括随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、FLASH存储器、磁盘存储、磁存储设备等。如本文所用,磁盘存储装置包括压缩光盘(CD)、激光盘、光学光盘、数字通用光盘(DVD)、软磁盘及蓝光discTM、或用激光以磁性方式或以光学方式存储数据的其他存储设备。上述类型的介质的组合也包括在术语非暂态计算机可读和处理器可读介质的范围内。另外,存储在一个或多个非暂态处理器可读或计算机可读介质上的指令的任何组合在本文中可称为计算机程序产品。
本发明所属领域的技术人员将想到本文所阐述的本发明的许多修改和其他实施方案,其具有前述描述和相关附图中呈现的教导的益处。尽管附图仅示出了本文描述的装置和系统的某些部件,但应当理解,各种其他部件可与材料搬运系统结合使用。因此,应当理解,本发明不限于所公开的特定实施方案,并且修改和其他实施方案旨在被包括在所附权利要求的范围内。此外,上述方法中的步骤可能不一定以附图中所描绘的顺序发生,并且在一些情况下,所描绘的步骤中的一个或多个可基本上同时发生,或者可涉及附加步骤。尽管本文采用了特定术语,但它们仅以一般性和描述性意义使用,而不是出于限制的目的。
Claims (10)
1.一种材料搬运方法,包括:
由图像处理单元基于图像捕获单元的视场(FOV)生成三维(3-D)点云数据,其中所述FOV包括集装箱的内部;
由所述图像处理单元识别所述集装箱内部的多个聚类区域;
由所述图像处理单元基于与所述3-D点云数据相关联的取向数据而从所述多个聚类区域中提取第一组聚类区域;
由所述图像处理单元确定所述第一组聚类区域的候选区,其中所述候选区包括聚类区域;
确定所述候选区的横截面积和所述集装箱的横截面积的比率;
当所确定的比率超过第一横截面阈值时,由机器学习单元确定所述候选区的分类分数;
由所述机器学习单元在所述候选区的所述分类分数超过第一分类阈值的情况下将所述候选区分类为感兴趣区;以及
由处理器基于与所述感兴趣区相关联的数据集限定所述集装箱中的导航路径,其中所述导航路径被配置为防止与所述感兴趣区的碰撞。
2.根据权利要求1所述的方法,其中生成所述3-D点云数据包括:累积:
基于由定位在材料搬运装置上的图像捕获单元捕获的所述FOV的点云数据生成的点云数据,和
基于所述材料搬运装置的物品操纵器在所述FOV的扫描操作期间的移动而收集的运动学数据。
3.根据权利要求2所述的方法,还包括由所述图像处理单元将所述3-D点云数据的第一格式变换为第二格式,其中所述第一格式对应于光检测和测距帧,并且所述第二格式对应于与所述图像处理单元兼容的经变换帧。
4.根据权利要求3所述的方法,还包括由所述图像处理单元预处理所述3-D点云数据,其中所述预处理包括:
由所述图像处理单元从以所述第二格式的所述3-D点云数据中移除噪声数据点;
由所述图像处理单元分割从中移除所述噪声数据点的所述3-D点云数据;以及
由所述图像处理单元基于所述3-D点云数据的所述分割来确定所述多个聚类区域。
5.根据权利要求1所述的方法,还包括:
由所述图像处理单元至少基于第二组聚类区域相对于材料搬运装置的取向而从所述多个聚类区域中提取第二组聚类区域;以及
由所述图像处理单元确定所述集装箱的所述多个聚类区域中的所述第二组聚类区域中的每一个的类型,
其中所述第二组聚类区域中的每一个的所述类型对应于所述集装箱的侧壁、底板区域、或天花板区域中的一者,其中所述多个聚类区域中的所述第一组聚类区域对应于已停放的集装箱的后壁和产品壁。
6.根据权利要求5所述的方法,还包括:由所述图像处理单元获得已更新3-D点云数据,其中所述已更新3-D点云数据包括从中裁剪所述第二组聚类区域的3-D点云数据。
7.根据权利要求6所述的方法,还包括:
由所述图像处理单元分割所述已更新3-D点云数据;
由所述图像处理单元基于所述已更新3-D点云数据的所述分割来确定所述第一组聚类区域;以及
由所述图像处理单元将所述候选区识别为所述第一组聚类区域中的设置在所述第一组聚类区域与所述第二组聚类区域之间的相交区域处的所述聚类区域,其中所述候选区限定2-D深度图。
8.根据权利要求7所述的方法,还包括:
由所述图像处理单元将所述已更新3-D点云数据转换成范围图像,其中所述2-D深度图的生成基于所述范围图像并且对应于与所述3-D点云数据中的点相关联的深度信息。
9.根据权利要求7所述的方法,还包括:
由所述处理器基于所述候选区的定位来生成与所述感兴趣区相关联的所述数据集;以及
由所述处理器将与所述感兴趣区相关联的所述数据集传输到与所述材料搬运装置相关联的可编程逻辑控制器。
10.根据权利要求7所述的方法,还包括:
由所述处理器将所识别的候选区提供给经训练的单输入卷积神经网络模块;
由所述卷积神经网络模块确定与所识别的候选区相关联的分数;
由所述卷积神经网络模块在所述分类分数超过第二分类阈值的情况下将所识别的候选区分类为感兴趣区,其中所述感兴趣区是所述集装箱的后壁;以及
由所述卷积神经网络模块在所述分类分数未超过所述第二分类阈值的情况下将所识别的候选区分类为产品壁。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311340474.6A CN117292116A (zh) | 2019-01-18 | 2019-12-30 | 用于识别感兴趣区的材料搬运方法、装置和系统 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/251,978 US10776651B2 (en) | 2019-01-18 | 2019-01-18 | Material handling method, apparatus, and system for identification of a region-of-interest |
US16/251,978 | 2019-01-18 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311340474.6A Division CN117292116A (zh) | 2019-01-18 | 2019-12-30 | 用于识别感兴趣区的材料搬运方法、装置和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111461107A CN111461107A (zh) | 2020-07-28 |
CN111461107B true CN111461107B (zh) | 2023-11-24 |
Family
ID=69159597
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311340474.6A Pending CN117292116A (zh) | 2019-01-18 | 2019-12-30 | 用于识别感兴趣区的材料搬运方法、装置和系统 |
CN201911395155.9A Active CN111461107B (zh) | 2019-01-18 | 2019-12-30 | 用于识别感兴趣区的材料搬运方法、装置和系统 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311340474.6A Pending CN117292116A (zh) | 2019-01-18 | 2019-12-30 | 用于识别感兴趣区的材料搬运方法、装置和系统 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10776651B2 (zh) |
EP (3) | EP4137992B1 (zh) |
CN (2) | CN117292116A (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018107000A1 (en) | 2016-12-09 | 2018-06-14 | Berkshire Grey, Inc. | Systems and methods for processing objects provided in vehicles |
US11436753B2 (en) | 2018-10-30 | 2022-09-06 | Liberty Reach, Inc. | Machine vision-based method and system to facilitate the unloading of a pile of cartons in a carton handling system |
IT201900000995A1 (it) * | 2019-01-23 | 2020-07-23 | Nuovo Pignone Tecnologie Srl | Apparecchiatura robotica industriale con generazione di percorso di lavorazione migliorata e metodo per azionare un' apparecchiatura robotica industriale secondo un percorso di lavorazione migliorato |
US11449079B2 (en) * | 2019-01-30 | 2022-09-20 | Adobe Inc. | Generalizable robot approach control techniques |
CN110322464B (zh) * | 2019-06-30 | 2021-07-02 | 华中科技大学 | 一种基于三维点云的小曲率薄壁零件边界提取方法 |
US20240037751A1 (en) * | 2019-07-11 | 2024-02-01 | Zebra Technologies Corporation | Three-dimensional (3d) depth imaging systems and methods for dynamic container auto-configuration |
US11618167B2 (en) * | 2019-12-24 | 2023-04-04 | X Development Llc | Pixelwise filterable depth maps for robots |
US11009604B1 (en) * | 2020-01-31 | 2021-05-18 | Zebra Technologies Corporation | Methods for detecting if a time of flight (ToF) sensor is looking into a container |
US11694333B1 (en) * | 2020-02-05 | 2023-07-04 | State Farm Mutual Automobile Insurance Company | Performing semantic segmentation of 3D data using deep learning |
EP3950232B1 (en) * | 2020-08-04 | 2022-11-02 | Bayerische Motoren Werke Aktiengesellschaft | Method for testing a container being capable to store at least one vehicle component |
US11922368B1 (en) * | 2020-12-11 | 2024-03-05 | Amazon Technologies, Inc. | Object classification exception handling via machine learning |
CN112598350B (zh) * | 2020-12-24 | 2024-02-20 | 山西迪奥普科技有限公司 | 一种基于点云扫描的仓储堆料管理方法及系统 |
CN113119077A (zh) * | 2021-04-30 | 2021-07-16 | 哈尔滨工业大学 | 一种工业机器人手持示教装置和示教方法 |
WO2023059485A1 (en) | 2021-10-06 | 2023-04-13 | Berkshire Grey Operating Company, Inc. | Dynamic processing of objects provided in elevated vehicles with evacuation systems and methods for receiving objects |
CN115994906B (zh) * | 2023-03-22 | 2023-06-20 | 杭州深度视觉科技有限公司 | 基于轮廓位置索引的物料图像定位方法及装置 |
CN116109879B (zh) * | 2023-04-13 | 2023-07-04 | 东莞市杰达机械有限公司 | 整平机的控制系统及其控制方法 |
CN116342695B (zh) * | 2023-05-29 | 2023-08-25 | 未来机器人(深圳)有限公司 | 无人叉车放货检测方法及装置、无人叉车、存储介质 |
CN117894015B (zh) * | 2024-03-15 | 2024-05-24 | 浙江华是科技股份有限公司 | 点云标注数据优选方法及系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101702200A (zh) * | 2009-11-03 | 2010-05-05 | 武汉大学 | 一种机载激光雷达点云数据的自动分类方法 |
CN104346608A (zh) * | 2013-07-26 | 2015-02-11 | 株式会社理光 | 稀疏深度图稠密化方法和装置 |
CN104969262A (zh) * | 2013-03-08 | 2015-10-07 | 英特尔公司 | 用于基于感兴趣的区域的图像编码的技术 |
CN105574545A (zh) * | 2015-12-17 | 2016-05-11 | 福州华鹰重工机械有限公司 | 环境图像多视角语义切割方法及装置 |
US9489745B1 (en) * | 2015-06-12 | 2016-11-08 | Google Inc. | Using depth maps of a scene to identify movement of a video camera |
CN106650809A (zh) * | 2016-12-20 | 2017-05-10 | 福州大学 | 一种车载激光点云目标分类方法和系统 |
CN107247960A (zh) * | 2017-05-08 | 2017-10-13 | 深圳市速腾聚创科技有限公司 | 图像提取分类区域的方法、物体识别方法及汽车 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102012013030A1 (de) | 2012-06-29 | 2014-04-24 | Liebherr-Verzahntechnik Gmbh | Vorrichtung zum automatischen Entnehmen von in einem Behälter angeordneten Werkstücken |
EP2951528B1 (en) * | 2013-01-29 | 2018-07-25 | Andrew Robert Korb | Methods for analyzing and compressing multiple images |
US9333649B1 (en) | 2013-03-15 | 2016-05-10 | Industrial Perception, Inc. | Object pickup strategies for a robotic device |
MX2016015810A (es) | 2014-06-04 | 2017-07-19 | Intelligrated Headquarters Llc | Visualización de un descargador de camiones. |
CN105260699B (zh) * | 2015-09-10 | 2018-06-26 | 百度在线网络技术(北京)有限公司 | 一种车道线数据的处理方法及装置 |
US9940730B2 (en) | 2015-11-18 | 2018-04-10 | Symbol Technologies, Llc | Methods and systems for automatic fullness estimation of containers |
US10663594B2 (en) | 2016-03-14 | 2020-05-26 | Imra Europe S.A.S. | Processing method of a 3D point cloud |
US10762468B2 (en) * | 2016-09-22 | 2020-09-01 | Amazon Technologies, Inc. | Adaptive process for guiding human-performed inventory tasks |
US10451405B2 (en) * | 2016-11-22 | 2019-10-22 | Symbol Technologies, Llc | Dimensioning system for, and method of, dimensioning freight in motion along an unconstrained path in a venue |
CN110419049B (zh) | 2017-03-17 | 2024-01-23 | 奇跃公司 | 房间布局估计方法和技术 |
US10328578B2 (en) * | 2017-04-21 | 2019-06-25 | X Development Llc | Methods and systems for detecting, recognizing, and localizing pallets |
US10346659B1 (en) * | 2018-03-21 | 2019-07-09 | Amazon Technologies, Inc. | System for reading tags |
-
2019
- 2019-01-18 US US16/251,978 patent/US10776651B2/en active Active
- 2019-12-30 CN CN202311340474.6A patent/CN117292116A/zh active Pending
- 2019-12-30 CN CN201911395155.9A patent/CN111461107B/zh active Active
-
2020
- 2020-01-10 EP EP22192990.4A patent/EP4137992B1/en active Active
- 2020-01-10 EP EP24156156.2A patent/EP4343711A1/en active Pending
- 2020-01-10 EP EP20151319.9A patent/EP3683721B1/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101702200A (zh) * | 2009-11-03 | 2010-05-05 | 武汉大学 | 一种机载激光雷达点云数据的自动分类方法 |
CN104969262A (zh) * | 2013-03-08 | 2015-10-07 | 英特尔公司 | 用于基于感兴趣的区域的图像编码的技术 |
CN104346608A (zh) * | 2013-07-26 | 2015-02-11 | 株式会社理光 | 稀疏深度图稠密化方法和装置 |
US9489745B1 (en) * | 2015-06-12 | 2016-11-08 | Google Inc. | Using depth maps of a scene to identify movement of a video camera |
CN105574545A (zh) * | 2015-12-17 | 2016-05-11 | 福州华鹰重工机械有限公司 | 环境图像多视角语义切割方法及装置 |
CN106650809A (zh) * | 2016-12-20 | 2017-05-10 | 福州大学 | 一种车载激光点云目标分类方法和系统 |
CN107247960A (zh) * | 2017-05-08 | 2017-10-13 | 深圳市速腾聚创科技有限公司 | 图像提取分类区域的方法、物体识别方法及汽车 |
Non-Patent Citations (1)
Title |
---|
魏玉锋,梁冬泰,梁丹,邢淑敏.基于多模态信息的机器人视觉识别与定位研究.《光电工程》、基于多模态信息的机器人视觉识别与定位研究.2018,正文第170650-1-11页. * |
Also Published As
Publication number | Publication date |
---|---|
EP4343711A1 (en) | 2024-03-27 |
EP4137992B1 (en) | 2024-04-10 |
EP4137992A1 (en) | 2023-02-22 |
CN117292116A (zh) | 2023-12-26 |
US10776651B2 (en) | 2020-09-15 |
US20200234071A1 (en) | 2020-07-23 |
EP3683721B1 (en) | 2022-10-12 |
CN111461107A (zh) | 2020-07-28 |
EP3683721A1 (en) | 2020-07-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111461107B (zh) | 用于识别感兴趣区的材料搬运方法、装置和系统 | |
CN110163904B (zh) | 对象标注方法、移动控制方法、装置、设备及存储介质 | |
AU2020201664B2 (en) | Industrial vehicles with overhead light based localization | |
US11527072B2 (en) | Systems and methods for detecting waste receptacles using convolutional neural networks | |
US9327406B1 (en) | Object segmentation based on detected object-specific visual cues | |
KR102061522B1 (ko) | 라이다 센서를 이용한 밀집도 기반의 객체 검출 장치 및 방법 | |
US9630320B1 (en) | Detection and reconstruction of an environment to facilitate robotic interaction with the environment | |
US20060115113A1 (en) | Method for the recognition and tracking of objects | |
WO2022188663A1 (zh) | 一种目标检测方法及装置 | |
WO2021249406A1 (zh) | 货箱的提取方法、装置、系统、机器人和存储介质 | |
WO2022132239A1 (en) | Method, system and apparatus for managing warehouse by detecting damaged cargo | |
Holz et al. | Fast edge-based detection and localization of transport boxes and pallets in rgb-d images for mobile robot bin picking | |
US20220171975A1 (en) | Method for Determining a Semantic Free Space | |
Zhang et al. | Lidar-based object classification with explicit occlusion modeling | |
EP4177694A1 (en) | Obstacle detection device and obstacle detection method | |
Panmatharit et al. | Bolt Looseness Identification using Faster R-CNN and Grid Mask Augmentation | |
WO2024115678A1 (en) | Detecting a moving picking station on a grid | |
WO2024115695A1 (en) | Detecting an identification marker on a picking station | |
CN115375759A (zh) | 基于目标检测的机器人视觉定位方法和装置 | |
Tews | 3D payload detection from 2D range scans |
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 |