具有自动化物体检测机构的机器人系统及其操作方法与流程

文档序号:22121953发布日期:2020-09-04 16:27阅读:283来源:国知局
具有自动化物体检测机构的机器人系统及其操作方法与流程

相关申请的交叉引用

本申请要求2018年10月30日提交的美国临时专利申请序列号62/752,756的权益,并且进一步要求2019年5月24日提交的美国临时专利申请序列号62/852,963的权益,所述临时专利申请均以引用的方式整体并入本文。本申请还与2019年3月1日提交的美国专利申请序列号16/290,741,现在为美国专利号10,369,701以及2019年8月13日提交的美国专利申请序列号16/539,790有关,所述专利申请均以引用的方式整体并入本文。

本技术总体涉及机器人系统,并且更具体地,涉及用于对物体进行检测的系统、过程和技术。



背景技术:

通常情况下,将包裹码垛以便装运到目的地,在目的地处将所述包裹卸垛。有时,由人工将包裹卸垛,这可能很昂贵并且有造成人身伤害的危险。在工业环境中,卸垛操作通常由工业用机器人执行,诸如抓持、提升、运输包裹并将包裹递送到释放点的机器人臂。另外,可采用成像装置来捕获装载到货盘上的包裹堆叠的图像。系统可诸如通过将所捕获图像与存储在登记数据源中的所登记图像进行比较来处理图像以确保机器人臂有效地处理了包裹。

有时,包裹的所捕获图像可能与所登记图像匹配。因此,可获知被成像物体的物理特性(例如,包裹的尺寸、重量和/或质心的测量值)。无法正确地标识物理特性可能导致多种有害的后果。例如,这种失败可能导致停止,这可能需要手动登记包裹。另外,这种失败可能导致误处理包裹,特别在包裹相对较重和/或不平衡的情况下。

附图说明

图1是具有物体检测机构的机器人系统可在其中操作的示例性环境的图示。

图2是示出根据本技术的一个或多个实施方案的机器人系统的框图。

图3是根据本技术的一个或多个实施方案的机器人系统的图示。

图4a是根据本技术的一个或多个实施方案的由机器人系统处理的物体的示例性堆叠的图示。

图4b是根据本技术的一个或多个实施方案的示例性堆叠的顶表面的图示。

图4c是根据本技术的一个或多个实施方案的对应于顶表面的传感器数据的图示。

图5a是根据本技术的一个或多个实施方案的对应于在初始一组操作之后的顶表面的传感器数据的图示。

图5b是根据本技术的一个或多个实施方案的在图5a中示出的传感器数据的一部分5b的图示。

图6是根据本技术的一个或多个实施方案的初始提升操作之后的物体的图示。

图7a是根据本技术的一个或多个实施方案的比较数据的图示。

图7b是根据本技术的一个或多个实施方案的所更新数据的图示。

图8a是根据本技术的一个或多个实施方案的针对直接登记条件的顶视图数据的图示。

图8b是根据本技术的一个或多个实施方案的针对直接登记条件的侧视图的图示。

图9a是根据本技术的一个或多个实施方案的针对预期条件的顶视图数据的图示。

图9b是根据本技术的一个或多个实施方案的针对预期条件的侧视图的图示。

图9c是根据本技术的一个或多个实施方案的针对预期条件的比较数据的图示。

图10a是根据本技术的一个或多个实施方案的针对非预期条件的顶视图数据的图示。

图10b是根据本技术的一个或多个实施方案的针对非预期条件的侧视图的图示。

图10c是根据本技术的一个或多个实施方案的针对非预期条件的比较数据的图示。

图11a是根据本技术的一个或多个实施方案的针对变形物体条件的侧视图的一部分的图示。

图11b是根据本技术的一个或多个实施方案的比较数据的一部分的图示。

图12是根据本技术的一个或多个实施方案的针对咬入条件的侧视图的一部分的图示。

图13是根据本技术的一个或多个实施方案的针对盖板松开条件(open-flapcondition)的侧视图的一部分的图示。

图14是根据本技术的一个或多个实施方案的中间图像数据的一部分的图示。

图15是根据本技术的一个或多个实施方案的操作图1的机器人系统的方法的流程图。

图16是根据本技术的一个或多个实施方案的用于在实施初始操作之后处理图像和/或mvr的示例性流程图。

具体实施方式

本文描述用于具有自动化物体检测/登记机构的机器人系统的系统和方法。根据一些实施方案配置的机器人系统(例如,装置的执行一个或多个指定任务的集成系统)通过自主地/自动地(例如,利用很少的人类操作员输入或不利用人类操作员输入)检测并登记先前未知的或未识别物体(例如,包裹、盒、箱等)提供了增强的可用性与柔韧性。

为了确定是否识别出物体,机器人系统可获得关于在起始位置处的物体的数据(例如,物体的暴露表面的一个或多个图像)并将所述数据与已知或预期物体的登记数据进行比较。在所比较数据(例如,所比较图像的一部分)与针对在其中表示的对应物体中的一个的登记数据(例如,登记的表面图像中的一个)匹配时,机器人系统可检测到一个或多个所识别/所登记物体在起始位置处。机器人系统可基于移除与登记数据匹配的部分来确定图像数据中的一个或多个不匹配部分(例如,图像的无法与已知或预期物体的登记数据匹配的部分)。机器人系统可确定未经解释的区域包括一个或多个未识别物体。

如下文详细描述,机器人系统可根据一个或多个估计来操纵未识别物体,并确定关于未识别物体的另外的信息(例如,表面图像和/或物理尺寸)。例如,机器人系统可标识未识别物体的暴露边缘和/或暴露外拐角,所述未识别物体是单独的或不与其他物体/表面相邻。在一个或多个实施方案中,机器人系统可标识定位在目标堆叠上的拐角处和/或相对于定位在共同层上的其他物体突出的未识别物体(例如,具有高度在彼此阈值范围内的暴露表面的物体)的暴露边缘和/或暴露外拐角。基于暴露边缘和/或暴露外拐角,机器人系统可在暴露表面上导出最小可行区域(mvr)。mvr可各自表示接触并提升对应的物体所需的区域和/或对未识别物体中的一个的表面的估计。机器人系统可基于mvr抓持未识别物体并执行初始提升,从而将先前尚不清晰边缘与相邻物体/表面(例如,竖直地和/或水平地)分开。

在初始提升之后,机器人系统可获得并处理比较数据(例如,表示初始提升之后的未识别物体的传感器数据)以标识关于未识别物体的新信息。例如,机器人系统可处理比较数据以标识未识别物体的新发现的(例如,先前不确定的)边缘和/或拐角、相关联测量值(例如,物体的尺寸)、所更新图像/深度图或它们的组合。机器人系统可将新信息存储在主数据中以自主地/自动地登记(“自动登记”)先前未识别物体。因此,机器人系统可使用自动登记数据来标识、处理和/或操纵同一类物体。

在登记数据时,机器人系统可更新mvr,并且将它们各自存储为一个未识别物体的表面的表示。机器人系统可根据比较数据的处理结果基于从初始图像数据中裁剪识别出的部分(例如,在初始提升之前)和/或组合跨多个图像数据的部分(例如,在初始提升之后拍摄的图像)来更新mvr。因此,机器人系统可生成并登记所更新数据。处理结果的一些实例包括遮挡估计和/或边缘长度。使用所述遮挡估计,机器人系统可确定图像数据的描绘结构而非物体的部分(诸如机器人单元的部分),和/或图像数据的通过提升或移动一个或多个物体而改变的部分。使用所述边缘长度,机器人系统可补偿物体的变形(例如,归因于物体重量、抓持位置与质心(com)之间的间隔和/或所抓持表面的其他变化)和/或其他相邻物体的移动。

因此,机器人系统可获得关于先前未识别物体的各种数据并且使用所述数据来自主生成对应登记数据并更新主数据。所生成的登记数据可包括表面图像、尺寸(包括物体高度)和/或对应的物体的其他物理特性。因此,机器人系统可自主(例如,无需人类操作员输入)登记物体,并且使用所登记数据来识别并处理同一类物体的后续实例。

此外,使用自主登记,机器人系统可处理(例如,搬运、打包、拆包等)未识别物体而无需操作员辅助。因此,机器人系统的整体操作即使在物体是未识别物体时依然可不间断继续。另外,mvr处理增加了估计每个物体的表面的准确度,这增加了检测单独物体并捕获所检测的未识别物体的表面图像的准确度。

在以下描述中,阐述许多具体细节来提供对当前所公开技术的透彻理解。在其他实施方案中,此处所引入的技术可在没有这些具体细节的情况下实践。在其他情况下,不详细描述诸如具体函数或例程的公知特征,以便避免不必要地使本公开晦涩难懂。此说明中对“实施方案”、“一个实施方案”或类似用语的引用意指所描述的特定特征、结构、材料或特性包括在本公开的至少一个实施方案中。因此,本说明书中此类短语的出现不一定都指代同一实施方案。另一方面,此类引用也不一定相互排斥。此外,特定特征、结构、材料或特性可以任何合适的方式在一个或多个实施方案中加以组合。应理解,图中所示的各种实施方案仅是说明性表示并且不一定按比例绘制。

出于简洁的目的,在以下描述中年未阐述描述公知且往往与机器人系统和子系统相关联并且可能不必要地使所公开技术的一些重要方面晦涩难懂的结构或过程的若干细节。此外,虽然以下公开内容阐述本技术的不同方面的若干实施方案,但若干其他实施方案可具有不同于此章节中所述的那些的配置或部件。因此,所公开的技术可具有带有附加元件或没有下文所述元件中的若干的其他实施方案。

下文所述的本公开的许多实施方案或方面可呈计算机或处理器可执行指令(包括由可编程计算机或处理器执行的例程)的形式。相关领域技术人员应理解,所公开的技术可在下文所示和所述的那些之外的计算机或处理器系统上实践。本文所述的技术可在专门编程、配置或构造为执行下文所述的计算机可执行指令中的一者或多者的专用计算机或数据处理器中体现。因此,如本文一般所用的术语“计算机”和“处理器”指代任何数据处理器并且可包括互联网用具和手持式装置(包括掌上计算机、可穿戴计算机、蜂窝或移动电话、多处理器系统、基于处理器的或可编程消费者电子器件、网络计算机、迷你计算机等)。由这些计算机和处理器处理的信息可在任何合适的显示介质(包括液晶显示器(lcd))处呈现。用于执行计算机或处理器可执行任务的指令可存储在任何合适的计算机可读介质(包括硬件、固件,或硬件和固件的组合)中或上。指令可包含在任何合适的存储器装置(包括例如闪存驱动器和/或其他合适的介质)中。

术语“耦接”和“连接”以及它们的派生词可在本文中用来描述部件之间的结构关系。应理解,这些术语并不意图作为彼此的同义词。而是,在特定实施方案中,“连接”可用于指示两个或更多个元件彼此直接接触。除非在上下文中另外阐明,否则术语“耦接”可用于指示两个或更多个元件彼此直接或间接(在其间具有其他干预元件)接触,或者两个或更多个元件彼此配合或交互(例如,如呈因果关系,诸如用于信号传输/接收或用于函数调用),或两者。

合适的环境

图1是具有物体检测机构的机器人系统100可在其中操作的示例性环境的图示。机器人系统100可包括被配置来执行一个或多个任务的一个或多个单元(例如,机器人)和/或与所述一个或多个单元通信。打包机构的各方面可由各种单元来实践或实现。

对于图1所示的实例,机器人系统100可包括位于仓库或分配/装运枢纽中的卸载单元102、搬运单元104(例如,码垛机器人和/或拾件机器人)、运输单元106、装载单元108、或它们的组合。机器人系统100中的单元中的每一个可被配置来执行一个或多个任务。任务可按顺序组合以执行实现目标(诸如从卡车或货车卸载物体并将它们存储在仓库中,或者从存储位置卸载物体并将它们准备用于装运)的操作。再如,任务可包括将物体放置在目标位置上(例如,放置在货盘顶部上和/或仓/笼/盒/箱内部)。如下文所述,机器人系统可导出用于放置和/或堆叠物体的计划(例如,放置位置/取向、用于搬运物体的顺序和/或对应运动计划)。单元中的每一个可被配置来根据执行任务的所导出计划中的一个或多个来执行一系列动作(通过例如在其中操作一个或多个部件)以执行任务。

在一些实施方案中,任务可包括将目标物体112(例如,对应于正在执行的任务的包裹、盒、箱、笼、货盘等中的一者)从起始位置114操纵(例如,移动和/或重新定向)到任务位置116。例如,卸载单元102(例如,拆箱机器人)可被配置来将目标物体112从载具(例如,卡车)中的位置搬运到传送带上的位置。另外,搬运单元104可被配置来将目标物体112从一个位置(例如,传送带、货盘或仓)搬运到另一位置(例如,货盘、仓等)。再如,搬运单元104(例如,码垛机器人)可被配置来将目标物体112从源位置(例如,货盘、拾取区域和/或输送机)搬运到目的地货盘。在完成操作时,运输单元106可将目标物体112从与搬运单元104相关联的区域搬运到与装载单元108相关联的区域,并且装载单元108可将目标物体112(通过例如移动承载目标物体112的货盘)从搬运单元104搬运到存储位置(例如,架子上的位置)。下文描述关于任务和相关联动作的细节。

出于说明性目的,机器人系统100是在装运中心的上下文中描述的;然而,应理解,机器人系统100可被配置来在其他环境中/出于其他目的(诸如用于制造、组装、包装、健康护理和/或其他类型的自动化)执行任务。还应理解,机器人系统100可包括图1未示出的其他单元,诸如操纵器、服务机器人、模块化机器人等。例如,在一些实施方案中,机器人系统100可包括用于将物体从笼车或货盘搬运到输送机或其他货盘上的去码垛单元、用于将物体从一个容器搬运到另一个的容器交换单元、用于包裹物体的包装单元、用于根据物体的一个或多个特性对它们进行分组的分类单元、用于根据物体的一个或多个特性以不同方式对物体进行操纵(例如,分类、分组和/或搬运)的拾件单元、或它们的组合。

机器人系统100可包括在关节处连接以用于运动(例如,旋转和/或平移位移)的物理或结构构件(例如,机器人操纵器臂)。结构构件和关节可形成被配置来操纵端部执行器(例如,抓持器)的动力链,所述端部执行器被配置来根据机器人系统100的用途/操作来执行一个或多个任务(例如,抓持、自旋、焊接等)。机器人系统100可包括被配置来关于对应关节或在对应关节处对结构构件进行驱动或操纵(例如,移位和/或重新定向)的致动装置(例如,马达、致动器、线材、人工肌肉、电活性聚合物等)。在一些实施方案中,机器人系统100可包括被配置来到处运输对应单元/底架的运输马达。

机器人系统100可包括被配置来获得用于实施任务(诸如操纵结构构件和/或运输机器人单元)的信息的传感器。传感器可包括被配置来检测或测量机器人系统100的一个或多个物理特性(例如,其一个或多个结构构件/关节的状态、状况和/或位置)和/或周围环境的一个或多个物理特性的装置。传感器的一些实例可包括加速度计、陀螺仪、力传感器、应变计、触觉传感器、扭矩传感器、位置编码器等。

在一些实施方案中,例如,传感器可包括被配置来检测周围环境的一个或多个成像装置(例如,视觉和/或红外摄像机、2d和/或3d成像摄像机、诸如激光雷达或雷达的距离测量装置等)。成像装置可生成所检测环境的可通过机器/计算机视觉来处理(例如,用于自动化检查、机器人引导或其他机器人应用)的表示,诸如数字图像和/或点云。如下文更详细描述,机器人系统100可处理数字图像和/或点云,以标识目标物体112、起始位置114、任务位置116、目标物体112的姿势、关于起始位置114和/或姿势的置信度量度、或它们的组合。

对于操纵目标物体112,机器人系统100可捕获并分析指定区域(例如,拾取位置,诸如卡车内部或传送带上)的图像,以标识目标物体112及其起始位置114。类似地,机器人系统100可捕获并分析另一指定区域(例如,用于将物体放置在输送机上的投放位置、用于将物体放置在容器内部的位置,或货盘上用于堆叠目的的位置)的图像,以标识任务位置116。例如,成像装置可包括被配置来生成拾取区域的图像的一个或多个摄像机和/或被配置来生成任务区域(例如,投放区域)的图像的一个或多个摄像机。如下文所述,基于所捕获图像,机器人系统100可确定起始位置114、任务位置116、相关联姿势、打包/放置计划、搬运/打包顺序和/或其他处理结果。

在一些实施方案中,例如,传感器可包括被配置来检测机器人系统100的结构构件(例如,机器人臂和/或端部执行器)和/或对应关节的位置的位置传感器。机器人系统100可使用位置传感器来在任务的执行期间跟踪结构构件和/或关节的位置和/或取向。

合适的系统

图2是示出根据本技术的一个或多个实施方案的机器人系统100的框图。在一些实施方案中,例如,机器人系统100(例如,在上文所述的单元和/或机器人中的一者或多者处)可包括电子/电气装置,诸如一个或多个处理器202、一个或多个存储装置204、一个或多个通信装置206、一个或多个输入-输出装置208、一个或多个致动装置212、一个或多个运输马达214、一个或多个传感器216、或它们的组合。各种装置可通过有线连接和/或无线连接彼此耦接。例如,机器人系统100可包括总线,诸如系统总线、外围部件互连(pci)总线或pci快速总线、超传输或工业标准架构(isa)总线、小型计算机系统接口(scsi)总线、通用串行总线(usb)、iic(i2c)总线,或电子电器工程师协会(ieee)标准1394总线(也称为“火线”)。另外,例如,机器人系统100可包括桥接器、适配器、处理器,或用于在装置之间提供有线连接的其他信号相关的装置。无线连接可基于例如蜂窝通信协议(例如,3g、4g、lte、5g等)、无线局域网(lan)协议(例如,无线保真(wifi))、对等或装置间通信协议(例如,蓝牙、近场通信(nfc)等)、物联网(iot)协议(例如,nb-iot、let-m等)和/或其他无线通信协议。

处理器202可包括被配置来执行存储在存储装置204(例如,计算机存储器)上的指令(例如,软件指令)的数据处理器(例如,中央处理单元(cpu)、专用计算机和/或机载服务器)。在一些实施方案中,处理器202可包括在可操作地耦接到图2所示的其他电子/电气装置和/或图1所示的机器人单元的单独/独立控制器中。处理器202可实施控制其他装置/与其交互的程序指令,从而致使机器人系统100执行动作、任务和/或操作。

存储装置204可包括其上存储有程序指令(例如,软件)的非暂时性计算机可读介质。存储装置204的一些实例可包括易失性存储器(例如,高速缓存和/或随机存取存储器(ram))和/或非易失性存储器(例如,闪速存储器和/或磁盘驱动器)。存储装置204的其他实例可包括便携式存储器驱动器和/或云存储装置。

在一些实施方案中,存储装置204可用于进一步存储处理结果和/或预定数据/阈值并提供对它们的访问。例如,存储装置204可存储包括对可由机器人系统100操纵的物体(例如,盒、箱和/或产品)的描述的主数据252。在一个或多个实施方案中,主数据252可包括针对每个这种物体的登记数据254。登记数据254可包括预期由机器人系统100操纵的物体的尺寸、形状(例如,潜在姿势的模板和/或用于识别呈不同姿势的物体的计算机生成的模型)、颜色方案、图像、标识信息(例如,条形码、快速响应(qr)码、标志等和/或其预期位置)、预期重量、其他物理/视觉特性、或它们的组合。在一些实施方案中,主数据252可包括关于物体的操纵相关的信息,诸如物体中的每一个上的质心(com)位置或其估计、对应于一个或多个动作/操作的预期传感器测量值(例如,针对力、扭矩、压力和/或接触测量)、或它们的组合。

通信装置206可包括被配置来通过网络与外部或远程装置通信的电路。例如,通信装置206可包括接收器、发射器、调制器/解调器(调制解调器)、信号检测器、信号编码器/解码器、连接器端口、网卡等。通信装置206可被配置来根据一种或多种通信协议(例如,互联网协议(ip)、无线通信协议等)发送、接收和/或处理电信号。在一些实施方案中,机器人系统100可使用通信装置206来在机器人系统100的单元之间交换信息和/或与在机器人系统100外部的系统或装置交换信息(例如,出于报告、数据采集、分析和/或故障排除目的)。

输入-输出装置208可包括被配置来将信息传达给人类操作员和/或从人类操作员接收信息的用户接口装置。例如,输入-输出装置208可包括显示器210和/或用于将信息传达给人类操作员的其他输出装置(例如,扬声器、触觉电路、或触觉反馈装置等)。另外,输入-输出装置208可包括控制或接收装置,诸如键盘、鼠标、触摸屏、传声器、用户接口(ui)传感器(例如,用于接收运动命令的摄像机)、可穿戴输入装置等。在一些实施方案中,机器人系统100可使用输入-输出装置208来在执行动作、任务、操作或它们的组合时与人类操作员交互。

机器人系统100可包括在关节处连接以用于运动(例如,旋转和/或平移位移)的物理或结构构件(例如,机器人操纵器臂)。结构构件和关节可形成被配置来操纵端部执行器(例如,抓持器)的动力链,所述端部执行器被配置来根据机器人系统100的用途/操作来执行一个或多个任务(例如,抓持、自旋、焊接等)。机器人系统100可包括被配置来关于对应关节或在对应关节处对结构构件进行驱动或操纵(例如,移位和/或重新定向)的致动装置212(例如,马达、致动器、线材、人工肌肉、电活性聚合物等)。在一些实施方案中,机器人系统100可包括被配置来到处运输对应单元/底架的运输马达214。

机器人系统100可包括被配置来获得用于实施任务(诸如操纵结构构件和/或运输机器人单元)的信息的传感器216。传感器216可包括被配置来检测或测量机器人系统100的一个或多个物理特性(例如,其一个或多个结构构件/关节的状态、状况和/或位置)和/或周围环境的一个或多个物理特性的装置。传感器216的一些实例可包括加速度计、陀螺仪、力传感器、应变计、触觉传感器、扭矩传感器、位置编码器等。

在一些实施方案中,例如,传感器216可包括被配置来检测周围环境的一个或多个成像装置222(例如,视觉和/或红外摄像机、2d和/或3d成像摄像机、诸如激光雷达或雷达的距离测量装置等)。成像装置222可生成所检测环境的可通过机器/计算机视觉来处理(例如,用于自动化检查、机器人引导或其他机器人应用)的表示,诸如数字图像和/或点云。如下文更详细描述,机器人系统100(通过例如处理器202)可处理数字图像和/或点云,以标识图1的目标物体112、图1的起始位置114、图1的任务位置116、目标物体112的姿势、关于起始位置114和/或姿势的置信度量度、或它们的组合。

对于操纵目标物体112,机器人系统100(通过例如上文所述的各种电路/装置)可捕获并分析指定区域(例如,拾取位置,诸如卡车内部或传送带上)的图像,以标识目标物体112及其起始位置114。类似地,机器人系统100可捕获并分析另一指定区域(例如,用于将物体放置在输送机上的投放位置、用于将物体放置在容器内部的位置,或货盘上用于堆叠目的的位置)的图像,以标识任务位置116。例如,成像装置222可包括被配置来生成拾取区域的图像的一个或多个摄像机和/或被配置来生成任务区域(例如,投放区域)的图像的一个或多个摄像机。如下文所述,基于所捕获图像,机器人系统100可确定起始位置114、任务位置116、相关联姿势、打包/放置计划、搬运/打包顺序和/或其他处理结果。

在一些实施方案中,例如,传感器216可包括被配置来检测机器人系统100的结构构件(例如,机器人臂和/或端部执行器)和/或对应关节的位置的位置传感器224。机器人系统100可使用位置传感器224来在任务的执行期间跟踪结构构件和/或关节的位置和/或取向。

示例性物体搬运和登记

图3是根据本技术的一个或多个实施方案的图1的机器人系统100的图示。机器人系统100可包括机器人臂302(例如,图1的搬运单元104的实例),所述机器人臂302包括端部执行器304(例如,抓持器)。机器人臂302可被配置来在图1的起始位置与图1的任务位置116之间搬运目标物体112。如图3所示,起始位置114可具有在其上带有目标堆叠310(例如,一组物体)的货盘308。机器人臂302的任务位置116可以是输送机306(例如,图1的运输单元106的实例)上的放置位置(例如,起始/出口点)。例如,机器人臂302可被配置来从目标堆叠310拾取物体并将它们放置在输送机306上以便运输到另一目的地/任务。

机器人系统100可在利用机器人臂302执行搬运操作时使用图2的传感器216中的一个或多个。在一些实施方案中,机器人系统100可包括第一成像传感器312和/或第二成像传感器314。第一成像传感器312可包括被配置来对起始位置114进行成像和/或分析的一个或多个2d和/或3d传感器,诸如摄像机和/或深度传感器。第二成像传感器314可包括被配置来对任务位置116进行成像和/或分析的一个或多个2d和/或3d传感器,诸如摄像机和/或深度传感器。例如,第一成像传感器312可包括定位在起始位置114上方的已知位置处且面向起始位置114的一个或多个顶视图传感器312a(例如,摄像机和/或深度传感器)。顶视图传感器312a可生成与起始位置114的一个或多个顶视图(诸如目标堆叠310的顶视图)相对应的成像数据。任选地,第一成像传感器312还可包括定位在横向靠近起始位置114的已知位置处且面向起始位置114和/或其正上方的空间的一个或多个侧视图传感器312b(例如,摄像机和/或深度传感器)。侧视图传感器312b生成与起始位置114的一个或多个侧视/外形图(诸如目标堆叠310的侧视/外形图)相对应的成像数据。另外,第二成像传感器314可包括定位在一个或多个已知位置处且面向任务位置116或相关联空间的一个或多个摄像机和/或深度传感器,所述已知位置在任务位置116上方或横向于任务位置116。因此,第二成像传感器314可生成与在任务位置116处或在距任务位置116阈值距离内的目标物体112的一个或多个顶视图和/或任选侧视图相对应的成像数据。

机器人系统100可使用第一成像传感器312来标识定位在起始位置处的物体。如下文详细描述,机器人系统100可分析来自第一成像传感器312的图像数据以标识每个物体的存在和/或它们在/大约在起始位置处的位置。机器人系统100可进一步分析图像数据以确定物体是否与先前登记的物体(例如,与图2的登记数据254和/或图2的主数据252的其他方面相对应的物体)匹配。机器人系统100可使用图像数据来诸如通过导出最小可行区域(mvr)估计物体中的每一个的表面(例如,顶部水平表面和/或周边竖直表面)。机器人系统100可使用mvr来登记未识别物体(通过例如存储表示未识别物体的登记数据254的新实例的mvr和/或处理其结果)。所更新登记数据可被用来识别未识别物体的后续实例。

机器人系统100可使用来自第一成像传感器312和/或第二成像传感器314的图像数据执行任务,诸如用于将物体从起始位置114搬运到任务位置116。因此,机器人系统100可使用图像数据来导出并实施一个或多个运动计划以执行任务。机器人系统100可进一步使用来自第二成像传感器314的图像数据调整或偏离运动计划和/或在搬运期间获得关于物体的另外数据。

物体识别

图4a是由图1的机器人系统100处理的物体的示例性堆叠(例如,图3的目标堆叠310)的图示;图4b是示例性堆叠的顶表面(例如,目标堆叠310的实际顶视图410)的图示;并且图4c是对应于顶表面的传感器数据(例如,顶视图数据420)的图示,所述实例均是根据本技术的一个或多个实施方案的。一起参考图4a、图4b和图4c,顶视图数据420可包括描绘或表示实际顶视图410的一个或多个视觉图像和/或一个或多个3d深度图。

机器人系统100可将来自图3的定位在目标堆叠310上方的第一成像传感器312的图像数据(例如,顶视图数据420)用于各种目的。机器人系统100可分析顶视图数据420以标识可对应于物体边界的边缘。例如,机器人系统100可基于深度测量值和/或图像性状(例如,不同的颜色、线性图案、阴影、清晰度差异等)的差异来标识在图像数据中表示的边缘和/或连续表面。另外,机器人系统100可诸如基于深度测量值的差异来标识暴露边缘422(例如,不水平邻接在基本上相同高度处的另一物体/表面的物体顶表面的边缘)。

目标堆叠310可包括在图2的主数据252中登记的物体和/或未在主数据252登记的非预期物体。同样地,机器人系统100可使用对应于物体表面416的图像数据来识别或标识目标堆叠310内的物体。在一些实施方案中,机器人系统100可将图像数据或其中的一个或多个部分与主数据252(例如,在其中对应于物体表面416的图2的各种登记数据254)进行比较以识别目标堆叠310内的物体。例如,机器人系统100可在顶视图数据420的一部分与登记数据254中的物体表面416的一个或多个图像/特征匹配时标识目标堆叠310内的已知/所登记物体(例如,所识别物体412)。实际顶视图410的剩余部分(例如,与登记数据254不匹配的部分)可以是对应于未识别物体414的不匹配部分430。使用图4c中的虚线示出在图像数据中可能检测到或可能检测不到的未识别物体414的实际边缘。

基于与图像数据匹配,机器人系统100可定位顶视图数据420内的所识别物体412,所述所识别物体412可进一步(通过例如预校准表和/或将像素位置映射到坐标系的公式)平移到目标堆叠310的真实世界位置。此外,机器人系统100可基于所述匹配估计所识别物体412的非暴露边缘的位置。例如,机器人系统100可从主数据252中获得所识别物体412的尺寸。机器人系统100可测量与所识别物体412的暴露边缘422间隔开已知尺寸的图像数据的部分。根据映射,机器人系统100可确定所识别物体412的一个或多个基于登记的边缘424和/或如上所述类似地将基于登记的边缘424映射到真实世界位置。

在一些实施方案中,机器人系统100可标识如在图像数据中表示的目标堆叠310的暴露外拐角426。例如,机器人系统100可基于标识具有不同取向的暴露边缘422(例如,以不同角度延伸)中的两个或更多个之间的相交部或接合部来标识暴露外拐角426。在一个或多个实施方案中,机器人系统100可在暴露边缘422形成在预定范围内(诸如约90°的阈值范围)的角时标识暴露外拐角426。如下文详细描述,机器人系统100可使用暴露外拐角426和对应的暴露边缘422来处理和/或操纵未识别物体414。

作为说明性实例,机器人系统100可诸如通过标识层/表面来分析顶视图数据420(例如,3d深度图)以执行分割。机器人系统100可将层标识为相邻横向位置的组,所述相邻横向位置的组的深度量度在彼此范围内(例如,针对平坦表面)。机器人系统100可进一步将成角度表面标识为相邻横向位置的组,所述相邻横向位置的组具有跨一个或多个水平方向遵循线性图案/斜度的深度量度。机器人系统100还可分析顶视图数据420以标识3d边缘/拐角。例如,机器人系统100可将层/表面的周边边界标识为3d边缘,并且将3d边缘之间的接合部标识为3d拐角。另外,机器人系统100可基于检测到颜色、亮度的变化和/或与所述变化相关联的视觉图案来标识边缘/拐角。在一些实施方案中,机器人系统100可使用索贝尔滤波器来标识边缘/拐角。使用所标识层、表面、边缘和/或拐角,机器人系统100可估计可在顶视图数据420中的表示的每个物体的存在位置和/或边界。在一些实施方案中,机器人系统100可基于导出并验证对表面的估计、移除已验证的/所登记/确定的物体表面和/或操纵所估计物体来反复地处理顶视图数据420。

未识别物体的处理

在一些实施方案中,机器人系统100可根据识别状态和/或物体在目标堆叠310内的相对位置来处理(例如,检测和/或搬运)物体。例如,机器人系统100可首先拾取并搬运所识别物体,然后从传感器(例如,图3的第一成像传感器312)生成另一组图像数据。图5a是根据本技术的一个或多个实施方案的对应于在初始一组操作(例如,拾取并搬运所识别物体412)之后的顶表面的传感器数据501的图示。图5a中的阴影区域对应于在移除图4b和图4c中示出的所识别物体412中的两个之后的深度测量值的变化。

在机器人系统100在图像数据中没有检测到任何所识别物体412时,机器人系统100可标识任何暴露外拐角426和/或暴露边缘422以用于定位图4a的未识别物体414。例如,机器人系统100可如上所述类似地处理传感器数据501以标识暴露外拐角426和/或暴露边缘422。因此,机器人系统100可另外标识和/或定位在移除所识别物体412之后暴露的任何拐角/边缘。在一些实施方案中,机器人系统100可根据对应的阈值来将暴露内拐角502进一步标识为图4b的暴露边缘422中的两个或更多个之间的相交部/接合部。例如,机器人系统100可将暴露内拐角502标识为暴露边缘422中的相对于对应的连续表面超过180°的两个或更多个之间的接合部。在一些实施方案中,机器人系统100可在暴露边缘422形成在约270°的阈值范围内的角时标识暴露内拐角502。

在一些实施方案中,在所识别物体412中的任何一个都不剩余时,机器人系统100可基于暴露拐角和/或暴露边缘来(例如,从未识别物体414中)标识目标堆叠310中的登记目标506。例如,机器人系统100可选择传感器数据501的区域以及与暴露外拐角426相关联的对应的未识别物体414。换句话讲,在处理所识别物体412之后,机器人系统100可处理形成/构成目标堆叠310的暴露外拐角426的未识别物体414。基于对传感器数据501的对应部分的分析,机器人系统100可抓持未识别物体414、提升和/或水平搬运所抓持物体和/或对所抓持物体进行成像以用于登记目的。另外,在对所抓持物体进行成像之后,机器人系统100可将所抓持物体搬运到目的地(例如,图3的输送机306)。

为了进一步描述传感器数据分析,图5b是根据本技术的一个或多个实施方案的图5a的传感器数据501的一部分5b的详细图示。机器人系统100可根据mvr512来分析传感器数据501以确定抓持位置520。mvr512可表示接触、抓持和/或提升物体所需的最小大小的区域。换句话讲,mvr512可表示对一个物体的表面(例如,顶表面)的估计。例如,mvr512可与图3的端部执行器304的覆盖区(诸如端部执行器304占据的区域(例如,抓持器的吸盘))相关联,或者与具有覆盖区周围的另外/缓冲区域的更大区域相关联。在一些实施方案中,mvr512可对应于最小和/或最大候选大小,所述最小和/或最大候选大小可与目标堆叠310中的物体的最小/最大可能实例的物理尺寸(例如,长度、宽度、高度、直径、周长等)相对应。换句话讲,目标堆叠310内的物体的任何一个将都不具有小于最小候选大小以及大于最大候选大小的尺寸。最小/最大候选大小可以是预定值(即,在处理目标堆叠310之前提供的值)。

在一些实施方案中,机器人系统100可基于在对应表面(例如,具有在彼此阈值范围内的高度/深度值的区域)之上从暴露边缘422延伸出两条或更多条相交线来导出mvr512。例如,机器人系统100可基于从暴露边缘422围绕暴露外拐角426延伸出垂直线来导出mvr512。所述线可从暴露边缘422上对应于距暴露外拐角426一定间隔距离的部分(例如,一个点)延伸。间隔距离可以是预定值和/或根据一个或多个处理结果计算的值(例如,所估计边缘524或对应的置信度值和/或对应的物体的所估计标识或对应的置信度值)。因此,机器人系统100可将mvr512导出为由延伸线和暴露边缘422限定的区域。

在其他实施方案中,机器人系统100可沿着暴露边缘422移动并且分析围绕(例如,在暴露边缘的预定距离内)暴露边缘的区域。基于所述分析,机器人系统100可标识围绕暴露边缘422的其他2d/3d边缘。机器人系统100可基于测试所标识边缘来将所标识边缘确定为所估计边缘524。例如,机器人系统100可在所标识边缘与所分析的暴露边缘422相交和/或与互补的暴露边缘422平行时确定所估计边缘524。

在一些实施方案中,机器人系统100可使用mvr512导出抓持位置520。抓持位置520可与将直接在端部执行器304下方和/或接触端部执行器304以进行初始操纵的物体/堆叠上的区域相对应。换句话讲,机器人系统100可将抓持器放置在抓持位置520之上以抓持对应的物体,以进行后续操纵(例如,提升、水平搬运和/或用于登记的数据收集过程)。机器人系统100可导出覆盖mvr512的中间部分的抓持位置520。另外,机器人系统100可导出与暴露边缘422中的一个或多个对准和邻接和/或与暴露外拐角426中的一个对准的抓持位置520(例如,端部执行器304的覆盖区)。机器人系统100可在与所估计边缘524相关联的置信度水平或其他处理结果降低到低于预定阈值时导出偏心抓持位置。

机器人系统100可使用所导出抓持位置520来操作图3的机器人臂302和端部执行器304。机器人系统100可抓持定位在堆叠的拐角处、抓持位置520处的物体(例如,登记目标506)。在一些实施方案中,机器人系统100可提升和/或水平搬运所抓持物体以便清晰地辨别先前非暴露的边缘。例如,机器人系统100可提升和/或水平搬运物体达预定距离以便准确地辨别边缘。另外,例如,机器人系统100可在监测和/或分析高度变化和/或端部执行器倾斜时提升和/或水平搬运物体,使得与暴露边缘422相对的另外边缘变得可识别。机器人系统100可在初始提升期间和/或之后获得并处理数据以进一步描述未识别物体414。

采集未识别物体的登记数据

图6是根据本技术的一个或多个实施方案的初始提升操作之后的物体的图示。在一些实施方案中,机器人系统100可包括被配置来测量由于外部物体(例如,所抓持物体)和/或其移动而施加到机图3的器人臂302上的力的一个或多个传感器。例如,机器人系统100可包括附接到端部执行器304和/或与端部执行器304成一体的力传感器、扭矩传感器或它们的组合(例如,力-扭矩(ft)传感器602)。因此,机器人系统100可在提升在图5的抓持位置520处抓持的所抓持物体(例如,图4的未识别物体414中已被确定为登记目标506的一个)时测量向下力测量值604和/或扭矩测量值606。

在一些实施方案中,机器人系统100可使用向下力测量值604来确定登记目标506的重量。在一些实施方案中,机器人系统100可使用向下力测量值604和/或扭矩测量值606来计算所估计扭矩臂向量608和/或登记目标506的所估计质心(com)610。所估计扭矩臂向量608可与由ft传感器602提供的测量向量的总和相对应。机器人系统100可根据使用所估计扭矩臂向量608、扭矩测量值606和/或向下力测量值604作为输入的预定过程和/或公式来计算所估计com610。

在一些实施方案中,机器人系统100可将传感器测量值用作用于执行初始提升操作的反馈信号。例如,机器人系统100可执行初始提升操作,直到向下力测量值604和/或扭矩测量值606稳定(例如,测量时段内的测量值保持在阈值范围内)为止。因此,机器人系统100可确定所抓持物体被提升(即,不再由下面的物体或结构支撑)脱离下面的物体或结构并且变成完全由机器人臂302支撑的时间。机器人系统100可将所确定稳定性用作停止初始提升操作和/或获得关于所抓持物体的另外数据(例如,尺寸、重量、com和/或表面图像)的触发项。

为了进一步描述所获得的关于所抓持物体(例如,图4b的未识别物体414)的数据,图7a是比较数据702的图示,并且图7b是所更新数据740的图示,所述数据两者都是根据本技术的一个或多个实施方案的。如上所述,机器人系统100可基于图5b的mvr512来抓持未识别物体414。基于所述抓持,机器人系统100可(通过例如初始提升操作)提升和/或水平搬运所抓持物体,从而将所抓持物体与相邻和邻接的物体/表面分开。机器人系统100可在提升和/或水平搬运所抓持物体之后获得比较数据702(例如,2d/3d测量数据,诸如视觉图像、深度图、点云等)。在一些实施方案中,比较数据702可以是通过图2的传感器216中的一个或多个(诸如图3的第一成像传感器312)获得的。

机器人系统100可基于初始传感器数据(例如,在提升物体之前获得的图4c的顶视图数据420和/或图5a的传感器数据501)和/或比较数据702来进一步生成未识别物体414的所更新图像(例如,所更新数据740)。在一些实施方案中,机器人系统100可基于组合初始提升操作之前和之后的图像数据来生成所更新数据740。例如,机器人系统100可从顶视图数据420和/或与mvr512和/或抓持位置520相对应的传感器数据501导出所裁剪部分734。机器人系统100可基于将mvr512和/或抓持位置520映射到初始传感器数据并且复制对应区域中的像素信息和/或深度量度来导出所裁剪部分734。机器人系统100可基于在比较数据702之上上覆于所裁剪部分734来生成所更新数据740。所裁剪部分734相对于所更新数据740的位置可使用暴露外拐角426和暴露边缘422作为基准来确定。因此,机器人系统100可使用所裁剪部分734来覆盖比较数据702内的描绘图3的机器人臂302和/或图3的端部执行器304的区域。

在一些实施方案中,机器人系统100可基于比较数据702来标识或导出所提升物体的尺寸。机器人系统100可使用所得尺寸来从初始传感器数据中裁剪对应部分。机器人系统100可根据与新发现的边界在初始提升之前的位置相对应的初始传感器数据来生成所更新数据740作为所裁剪部分。

在一些实施方案中,机器人系统100可从比较数据702导出未覆盖部分732。未覆盖部分732可对应于未识别物体414未被端部执行器304和/或机器人臂302覆盖的顶表面。机器人系统100可使用端部执行器304和/或机器人臂302的一个或多个预定图案来导出未覆盖部分732。例如,机器人系统100可基于识别并移除比较数据702的与预定视觉/像素图案匹配的部分来导出未覆盖部分732。机器人系统100可将未覆盖部分732与所裁剪部分734组合以生成所更新数据740。

机器人系统100可处理比较数据702和/或所更新数据740以获得关于所抓持物体的一个或多个物理特性的信息。例如,机器人系统100可针对物体的轮廓/形状(包括所发现边缘722、所发现拐角726、边缘长度测量值728和/或拐角角度测量值730)处理比较数据702。机器人系统100可使用上文所述的一个或多个边缘检测方案来确定与对应的暴露边缘422相对的所发现边缘722。基于根据mvr512导出并抓持来举升未识别物体414在所提升物体的顶表面与周围物体/表面表面之间形成高度差。高度差可被用来清晰地确定所发现边缘722。机器人系统100可基于搜索从暴露边缘422延伸的边缘来确定所发现边缘722。在一些实施方案中,机器人系统100可基于确定暴露边缘422以直角延伸的边缘(诸如具有矩形顶表面的矩形盒/包裹)来确定所发现边缘722。

机器人系统100可将所发现拐角726确定为具有不同取向的所发现边缘722中的两个或更多个相交的接合部。在一些实施方案中,机器人系统100可诸如根据预定功能或公式来确定所发现拐角726的角度(例如,拐角角度测量值730)。

基于确定所发现边缘722,机器人系统100可计算所发现边缘722和/或暴露边缘422的边缘长度测量值728(例如,物体尺寸)。机器人系统100可基于确定所捕获图像中的边缘的长度(例如,比较数据702和/或传感器数据501)并且诸如根据一个或多个预定映射功能/公式将图像中的长度转换成真实世界长度来计算边缘长度测量值728。

在一些实施方案中,机器人系统100可基于比较数据702来确定边缘长度测量值728并且使用边缘长度测量值728来生成所更新数据740作为描绘所提升的未识别物体的表面(例如,顶表面)的图像。例如,在裁剪顶视图数据420和/或传感器数据501的一部分时,机器人系统100可延伸超过mvr512的一个或多个边界并延伸长达对应的边缘长度测量值728。在根据暴露边缘/拐角提升一些物体时,诸如当暴露拐角与机器人基部相对地定位时,机器人臂302可停止遮挡比较数据702中的所提升物体的部分。因此,机器人系统100可确定相对于暴露拐角/边缘和/或边缘长度测量值728的被遮挡区域并且从顶视图数据420和/或传感器数据501裁剪对应部分。如上所述,机器人系统100可上覆于所裁剪部分以使用暴露拐角/边缘和/或边缘长度测量值728作为基准来替换被遮挡区域。机器人系统100可根据上覆于比较数据702中的被遮挡部分或替换比较数据702中的被遮挡部分的初始图像(例如,在提升之前获得的第一图像)来生成所更新数据740作为具有所裁剪部分的组合图像。

基于上文所述的处理结果中的一个或多个,机器人系统100可生成对应物体(例如,未识别物体414)的登记数据254。例如,在机器人系统100确定目标堆叠310或其一部分(例如,顶层)包括一个或多个未识别物体414时,机器人系统100可选择未识别物体414中的一个作为登记目标506、操纵登记目标506、和/或获得关于登记目标506的数据,如上所述。此外,机器人系统100可遵循预定协议/格式来创建登记目标506的登记数据254的新实例(例如,图2的主数据252的新条目或记录)。因此,机器人系统100可将所获得数据存储在登记数据254的新实例中。例如,机器人系统100可将边缘长度测量值728存储为水平尺寸,将拐角角度测量值730或其衍生值存储为水平形状,将所更新数据740存储为表面图像或存储其关于登记目标506的组合。

基于比较数据702和初始数据的所更新数据740提供了改进的物体识别。使用在提升登记目标506之后获得的比较数据702作为生成所更新数据740的基础引起对物体边缘的准确确定。在确定物体边缘方面增加的准确度进一步提供了在确定上文所述的表面图像和各种测量值方面的增加的准确度。在所获得数据和表面图像方面提高的准确度进一步增加了基于对应的登记数据254来随后识别相同类型的物体的可能性。在一些实施方案中,与单独处理初始数据或处理堆叠的状态相比,获得并处理比较数据702提供了在测量值和表面图像方面的提高的准确度。由于初始提升和/或水平搬运可能干扰或移动登记目标506周围的物体,直接分析登记目标506而非在初始提升和/或水平搬运之后的剩余堆叠提供了提高的准确度。

示例性物体检测和登记情形

图8a是顶视图数据(例如,来自图3的第一成像传感器312(诸如图3的顶视图传感器312a)的顶视图数据420)的图示,并且图8b是侧视图数据800(其可任选地表示为侧视图数据,诸如图3的侧视图传感器312b)的图示,所述数据都可以是根据本技术的一个或多个实施方案的直接登记条件。侧视图数据可以是可选的并且对于本发明的实施不是必须的。侧视图数据800可根据图8a的方向8b表示目标堆叠310。一起参考图8a和图8b,机器人系统100可分析顶视图数据420,并且任选地分析侧视图数据800来标识并处理与目标堆叠310相关联的直接登记条件。

直接登记条件可与同其他周围物体/表面具有足够间隔的物体的识别相关联。在一些实施方案中,直接登记条件可以是基于间隔阈值812。间隔阈值812可对应于相邻边缘之间的阈值距离。换句话讲,间隔阈值812可对应于标识物体周围的区域的要求或对与物体不同(例如,不同的视觉特性和/或不同的深度量度)的其估计(例如,图5b的mvr512)的要求。作为说明性实例,机器人系统100可基于分析对应mvr周围的区域来检测标记“1”的物体。由于物体与物体“3”和“4”水平间隔超过间隔阈值812的距离。

另外,作为说明性实例,机器人系统100可基于间隔阈值812类似地检测标记“2”的物体。在相邻物体(例如,物体2和3)在其顶表面之间具有超过阈值的高度差814时,机器人系统100可确定物体的表面不在同一高度上。因此,物体2周围的部分可被认为是开放的。因此,周围部分可满足间隔阈值812,并且机器人系统100可如上所述类似地检测物体2。

在一些实施方案中,机器人系统100可根据其他处理结果对mvr进行进一步分析和分类。例如,机器人系统100可基于包括在mvr中的或与mvr相关联的开放/3d拐角的数量来将mvr分类为确定的或不确定的。作为说明性实例,机器人系统100可将确定的mvr确定为包括三个或更多个开放的拐角或与三个或更多个开放的拐角相关联的mvr。机器人系统100可将不确定mvr确定为包括一个或两个开放的拐角或与一个或两个开放的拐角相关联的mvr。因此,机器人系统100可根据在其中包括的三个暴露的/3d拐角将与物体3相关联的mvr分类为确定的mvr。

机器人系统100可诸如通过将mvr尺寸/大小与预定阈值(例如,最小和/或最大阈值)进行比较来验证mvr。机器人系统100可验证满足预定阈值的mvr。对于满足直接登记条件中的一个或多个的已验证mvr,机器人系统100可(通过例如确定/总结物体存在于与合格的mvr相对应的位置处)检测物体。另外,机器人系统100可直接登记所检测物体。例如,机器人系统100可针对所检测的未识别物体创建图2的登记数据254的实例并且在其中存储对应的合格的mvr。机器人系统100可基于存储mvr来直接登记物体而无需对mvr进行进一步的调整/验证/测试。

图9a至图9c示出在初始移动(例如,初始提升)登记目标506之后的预期条件的各方面。图9a是顶视图数据(例如,顶视图数据420)的图示,图9b是目标堆叠(任选地表示为侧视图数据900)的侧视图的示例性图示,并且图9c是比较数据702的图示,所述数据都针对根据本技术的一个或多个实施方案的预期条件。

现在一起参考图9a至图9c,预期条件可对应于在登记目标506的所导出mvr与登记目标506的表面及其边界准确地匹配时的预期条件。对于初始移动,机器人系统100可根据在登记目标506(例如,物体“1”)的mvr512的中间部分中的抓持位置520来操作机器人臂302和/或端部执行器304以抓持登记目标506。机器人系统100可将登记目标506提升初始提升高度904,从而使登记目标506的顶表面从初始深度测量值/其高度移位相同的量。因此,机器人系统100可致使登记目标506的顶表面与周围的且先前邻接的表面之间的竖直间隔。

机器人系统100可获得初始移动之后的比较数据702。比较数据702可包括由不匹配部分430围绕的顶表面的表示。比较数据702还可包括在传感器与一个或多个物体之间的描绘机器人臂302和/或端部执行器304的被遮挡区域912。初始提升还可产生基于提升的遮挡,所述遮挡由在传感器与物体的先前可见的部分之间移动/提升的登记目标506引起。同样地,比较数据702可能不描绘在初始图像数据(例如,顶视图数据420)中描绘的基于提升的遮挡914(例如,先前邻近/邻接登记目标506的部分)。对于图9c所示的实例,基于提升的遮挡914在第一成像传感器312定位在目标堆叠310的中心部分之上时可处于登记目标506右侧。

机器人系统100可分析比较数据702以标识层、边缘和/或拐角,如上所述。在分析比较数据702时,机器人系统100可诸如通过移除或不考虑被遮挡区域912和/或基于提升的遮挡914来考虑各种遮挡以进行层/边缘标识。由于机器人系统100可跟踪或导出机器人臂302和/或端部执行器304的真实世界位置/姿势,因此机器人系统100可在分析比较数据702时确定此类位置/姿势。机器人系统100可使用真实世界姿势来映射并确定比较数据702中的对应部分。所得部分可以是被遮挡区域912,其可被屏蔽或标记为从分析(例如,边缘检测)中移除。

在一些实施方案中,机器人系统100可导出用于将比较数据702的部分限制/指定为分析区域922(例如,图7b的未覆盖部分732或其一部分)的分析边界916。例如,机器人系统100可相对于暴露边缘422和/或图7a的所发现边缘722导出分析边界916中的每一个。分析边界916中的每一个可平行于暴露边缘422和/或所发现边缘722中的一者定向,并且与端部执行器304的横向周边位置(例如,靠近最接近的互补边缘422/722的部分/点)重合或相交。机器人系统100可将图像在分析边界916与对应边缘422/722之间的部分导出为分析区域922。分析区域922可向外延伸到一个或多个已知或所导出位置,诸如到达平台(例如,货盘308)的周边端部和/或目标堆叠310的周边端部(例如,限定不匹配部分430的对应的暴露边缘422)。所得的分析区域922可各自表示第二图像数据与被遮挡区域间隔开(例如,不包括)的部分。同样地,机器人系统100可处理分析区域922(诸如以用于标识边缘、尺寸等),并且屏蔽/忽略被遮挡区域。

机器人系统100可根据机器人臂302的已知位置/姿势进一步导出分析边界916,使得分析边界916限定包括机器人臂302的已知位置/姿势的所屏蔽区域924。例如,机器人系统100可基于运动计划和/或机器人单元(例如,基部)和登记目标506的相对位置来确定机器人臂302跨mvr的特定拐角延伸以接近登记目标506。机器人系统100可将所屏蔽区域924确定为由分析边界916界定的区域并且包括特定拐角。所屏蔽区域924可对应于被遮挡区域。同样地,机器人系统100可忽略所屏蔽区域924或不处理所屏蔽区域924以用于特定过程,诸如用于标识边缘和/或测量长度。

机器人系统100可处理分析区域922并且忽略所屏蔽区域924以标识所发现边缘722。换句话讲,根据机器人臂302和/或端部执行器304的已知位置/姿势,机器人系统100可标识并处理与比较数据702中的暴露边缘422重合的相对小的条带作为分析区域922。由于所得的分析区域922可能不会被遮挡,机器人系统100可处理分析区域922以(通过例如层检测、索贝尔滤波器等)标识所发现边缘722,如上所述。在标识所分析区域中的所发现边缘722之后,机器人系统100可根据模板形状(例如,矩形)跟踪和/或外推超过分析区域922的所发现边缘722。机器人系统100可在所发现边缘722与图5的所估计边缘524和mvr512重合时确定预期条件。换句话讲,机器人系统100可在所发现边缘722相对于图4b的暴露边缘422位于与所估计边缘524相同的位置(例如,间隔距离和/或取向)时确定预期条件。

机器人系统100可调整可由初始提升引起的位置/尺寸的变化。在调整之后,机器人系统100可基于所发现边缘722来生成所更新数据740,如上所述。对于预期条件,机器人系统100可使用mvr512或mvr512内的图像数据的部分作为所更新数据740(例如,登记目标506的表面的表示)。因此,机器人系统100可检测并登记目标506,如上所述。在一些实施方案中,机器人系统100可标识基于提升的遮挡914(基于例如已知提升高度、相对于传感器位置的边缘位置、对应角度等)并且相应地调整所更新数据740。

图10a至图10c示出在初始移动(例如,初始提升)登记目标506之后的非预期条件的各方面。图10a是顶视图数据(例如,顶视图数据420)的图示,图10b是物体堆叠310(任选地表示为侧视图数据1000)的侧视图的图示,并且图10c是比较数据702的图示,所述数据都针对根据本技术的一个或多个实施方案的预期条件。

现在一起参考图10a至图10c,机器人系统100可致使登记目标506的顶表面与周围的且先前邻接的表面之间的如上所述的竖直间隔。非预期条件可对应于在登记目标506的所导出mvr与登记目标506的表面及其在初始提升之后的边界不匹配时的非预期条件。

作为说明性实例,机器人系统100可导出与形成目标堆叠310的顶层的五个所估计物体相对应的五个mvr。机器人系统100可选择并操纵(例如,抓持并初始提升)与标记“1”的所估计物体相对应的登记目标506。然而,在物体估计是错误的情况下,所导出mvr可对应于表面的仅一部分或对应于多于一个物体的表面以用于其他物体估计错误。

在所导出mvr512无法覆盖如图10b所示的实际物体的整个时,初始提升可致使比较数据702中的非预期部分1002的移位(例如,深度量度的变化)。非预期部分1002可对应于mvr512之外的部分,诸如比较数据702中的包括和/或经过一个或多个预期边缘位置1004(例如,对应于图5b的所估计边缘524的位置)的部分。因此,如上所述,在机器人系统100分析比较数据702(例如,层间隔、边缘/拐角标识等)时,所标识表面可对应于大于mvr512并且覆盖非预期部分1002的区域。

机器人系统100可通过测量比较数据702中的所发现边缘722和/或新暴露边缘422的长度来生成图7a的边缘长度测量值728。机器人系统100可在所测量长度与mvr512的尺寸不匹配时检测非预期条件。例如,评估初始mvr可包括:在第二图像数据(例如,图7a的比较数据702)的一个或多个部分和/或暴露边缘无法与初始mvr的对应部分匹配时检测非预期条件。

在一些实施方案中,机器人系统100可进一步计算边缘的延伸超过预期边缘位置1004的部分的补偿长度1006。机器人系统100可调整所测量长度以说明由物体的移位/提升而引起的描绘的物体的大小/长度的变化,如上所述。基于所调整长度(例如,真实世界长度),机器人系统100可调整mvr512并生成图7b的所更新数据740。对于图10c所示的实例,机器人系统100可通过以下方式来生成所更新数据740:使mvr512沿着水平方向(例如,向左)远离水平暴露边缘延伸所调整的补偿长度1006。

基于检测到非预期条件,机器人系统100降低并释放/投放登记目标506并根据所更新mvr512重新抓持物体。机器人系统100可获得在释放/投放之后的所更新数据(例如,顶视图数据的新实例)以说明物体的任何位移。基于所更新图像,机器人系统100可根据边缘长度测量值728重新导出mvr512。使用重新导出的mvr512,机器人系统100可重新确定抓持位置,诸如在所更新mvr的中心部分之上。在一些实施方案中,重新抓持过程可在以下情况下被触发:补偿长度1006超过阈值长度、图6的向下力测量值604超过阈值重量和/或图6的所估计扭矩臂向量608超过预定限值。

图11a至图11b示出在初始移动(例如,初始提升)登记目标506之后的另一非预期条件的各方面。图11a是登记目标506的侧视图的一部分(其可任选地表示为侧视图数据1102,诸如图7a的来自图3的侧视图传感器312b的比较数据702的实例)的图示,并且图11b是顶视图数据1104的一部分(例如,来自图3的顶视图传感器312a的比较数据702的实例)的图示,所述数据都针对根据本技术的一个或多个实施方案的变形物体条件。

现在一起参考图11a至图11b,机器人系统100可致使登记目标506的顶表面与周围的且先前邻接的表面之间的如上所述的竖直间隔。物体估计可能是错误的,诸如上文关于图10a至图10c所述的,并且图5的抓持位置520对于图5a的登记目标506可能不是最佳的。在一些情况下,鉴于次优的抓持位置,物体可能会因其重量、柔韧性或缺乏结构刚度或它们的组合而变形。对于图11a所示的实例,登记目标506可向下弯曲。

机器人系统100可基于对比较数据702(例如,作为任选的侧视图数据1102)进行分析来检测变形物体条件。例如,检测非预期条件可包括:基于将暴露边缘与预定形状图案进行比较来检测变形物体条件。作为具体实例,机器人系统100可基于标识暴露边缘的形状和/或边缘斜坡中的变化/偏差的图案来检测变形物体条件。

基于检测到变形物体条件,机器人系统100可实施不同的过程以生成图7a的边缘长度测量值728。在一些实施方案中,机器人系统100可通过分割图9c的由上文所述的一个或多个示例性过程产生的分析区域922来估计与所扭曲表面/边缘相关联的长度。例如,机器人系统100可分割分析区域922以形成与对应的分析区域922相关联的暴露边缘422平行/重合的分析条带1112。机器人系统100可根据预定宽度来确定分析条带1112,并且分析条带1112可向外延伸至分析区域922的端部。机器人系统100可进一步划分分析条带1112中的每一个以形成分析区段1114。分析区段1114的边界可垂直于与对应的分析区域922相关联的暴露边缘422并且间隔开预定水平距离。

机器人系统100可计算分析区段1114中的每一个的区段长度1116(例如,相邻边界之间的直线距离)。机器人系统100可将分析条带1112中的每一个的区段长度1116相加和/或对分析条带1112的总长度求平均来导出所计算物体尺寸1118。因此,机器人系统100可导出所计算物体尺寸1118作为对所扭曲边缘/表面(例如,弧长1120)的长度的估计。

图12是登记目标506的侧视图的一部分(其可任选地表示为侧视图数据1200,诸如图7a的来自图3的侧视图传感器312b的比较数据702的实例)的图示,所述图针对根据本技术的一个或多个实施方案的咬入条件。咬入条件可对应于在邻近登记目标506的物体1202或其一部分也通过登记目标506的初始移动(例如,初始提升)移位的情况下的另一非预期条件。例例如,相邻物体1202的周边部分或突出部可接触登记目标506的一部分并且由其支撑。同样地,相邻物体1202的所支撑部分可随着登记目标506在初始提升期间升高而举升。

对于咬入条件,机器人系统100可如上所述检测非预期条件,因为比较数据702(例如,顶视图和/或侧视图)将包括图5b的mvr512之外的变化(例如,变化的深度量度)。机器人系统100可在检测到非预期条件之后进一步研究比较数据702。例如,机器人系统100可搜索物体间隔部分1204和/或接触点1206。物体间隔部分1204可对应于图像数据中的连续/图案化部分(例如,表面)之间的变化,诸如跨水平相邻位置的颜色、亮度、深度量度等的变化。机器人系统100可在比较数据702包括在图3的端部执行器304周围/或下方并且水平邻接物体间隔部分1204(其进一步水平邻接另一表面(例如,成角度表面或凹表面))的表面(例如,横向定向或抓持的表面)时检测咬入条件。机器人系统100可基于标识具有根据对应的线性或凹图案而跨水平相邻位置改变的图像值(例如,深度量度)的边缘和/或水平位置来标识成角度表面或凹表面。

另选地或除此之外,机器人系统100可通过标识一个或多个接触点1206来检测咬入条件。接触点1206可表示相邻物体1202与下面一个或多个物体接触的位置。例如,在登记目标506定位在目标堆叠310的顶层的周边部分上时,侧视图示出/表示相邻物体1202的进一步远离登记目标506的倾斜的周边边缘。另外,侧视图可描绘一个或多个横向定向的表面上方的倾斜的底部边缘。机器人系统100可将接触点1206标识为图像数据中的部分/位置,在所述部分/位置处,倾斜的周边边缘和/或倾斜的底部边缘接触一个或下面的横向定向的表面。

基于检测到咬入条件,机器人系统100可在端部执行器304正下方和/或周围处理边缘/表面,并且忽略/屏蔽其他部分。换句话讲,机器人系统100可分析由端部执行器304抓持的表面,并且将物体间隔部分1204和/或相邻物体1202的顶表面/成角度表面分类为不匹配部分430不对应于mvr512的部分。非预期条件可能不直接指示mvr512中的错误。因此,机器人系统100可获得登记目标506的图7a的边缘长度测量值728、评估mvr512、获得表面图像(例如,图7b的所更新数据740)、检测物体和/或登记物体,如上所述。

对于咬入条件,搬运登记目标506可致使相邻物体1202的姿势变化1208。换句话讲,移动登记目标506(诸如用于任务实施)可能致使相邻物体1202停留在与初始图像(例如,图4c的第一顶视图数据420)不同的位置/取向处。同样地,机器人系统100可获得新的图像数据以捕获并说明姿势变化1208。

在一些实施方案中,机器人系统100可实施登记目标506的水平位移和/或旋转移动作为初始提升的一部分。在登记目标506根据预定命令/设置提升到初始提升高度904时或之后,水平位移和/或旋转移动可由机器人臂302和/或端部执行器304执行。包括水平位移和/或旋转移动的初始提升可减少的咬入条件的发生,从而进一步改进总体系统效率和资源消耗(例如,计算资源,诸如处理时间、存储器等)。

图13是登记目标的侧视图的图示(其可任选地表示为侧视图数据1300,诸如图7a的来自图3的侧视图传感器312b的比较数据702的实例)的图示,所述图针对根据本技术的一个或多个实施方案的盖板松开条件。盖板松开条件可对应于通常由物体表面的错误估计和登记目标506中的结构损坏/变化引起的不同的非预期条件。例如,机器人系统100可初始导出图5b的mvr512以覆盖物体(例如,盒)上的顶部盖板中的一个。在机器人系统100根据初始导出的mvr512抓持并提升物体并且用于所抓持盖板的粘合剂机构(例如,胶带或胶水)失效时,盖板松开条件可发生。因此,所抓持盖板可相对于端部执行器304保持固定,而物体的其他部分从端部执行器304降低和/或旋转远离/向下。

对于盖板松开条件,机器人系统100可如上所述检测非预期条件,因为比较数据702(例如,顶视图和/或侧视图)将包括图5b的mvr512之外的变化(例如,变化的深度量度)。机器人系统100可在检测到非预期条件之后进一步研究比较数据702。例如,机器人系统100可搜索物体间隔部分1204和/或接触点1206,如上所述。机器人系统100可基于物体间隔部分1204的水平分量来将盖板松开条件与上文所述的咬入条件区分开。机器人系统100可将物体间隔部分1204的水平分量(例如,沿着x和/或y轴线的长度)与一个或多个阈值进行比较来检测盖板松开条件。

机器人系统100可基于标识并测试登记目标506的一个或多个成角度部分(例如,第一成角度部分1306和/或第二成角度部分1308)来进一步检测盖板松开条件。第一成角度部分1306可对应于登记目标506的顶表面或对应边缘。第二成角度部分1308可对应于登记目标506的底表面或对应边缘。在成角度部分根据一种或多种预定图案(诸如,对于直线和/或凹线或表面)是连续的时,机器人系统100可检测盖板松开条件。另外,机器人系统100可在顶表面或相关联边缘具有在登记目标506的初始深度902上方的一部分和在初始深度902下方的另一/相对部分时检测盖板松开条件。在一些实施方案中,机器人系统100可基于标识与所抓持盖板成角度、连接到所抓持盖板以及远离所抓持盖板延伸的周边边缘/表面中的一个来检测盖板松开条件。

基于检测到盖板松开条件,机器人系统100可根据非预期条件来计算物体的实际长度。例如,机器人系统100可测量所抓持表面的所抓持长度1302(例如,尺寸)。机器人系统100可进一步测量对应于成角度部分(例如,第一成角度部分/边缘1306和/或第二成角度部分/边缘1308)的长度(例如,图7的边缘长度测量值728)。机器人系统100还可使用成角度部分来测量物体的所投放部分(例如,第一成角度部分1306)与所抓持盖板和/或端部执行器304之间的开放角1304。机器人系统100可根据开放角1304将所抓持长度1302映射到成角度部分中的一个或多个,并且计算所映射的成角度部分的剩余区段的剩余长度1310。与咬入条件不同,盖板松开条件可直接指示mvr512中的错误。同样地,机器人系统100可使用所抓持长度1302、剩余长度1310、开放角1304和/或成角度部分的边缘长度测量值728来调整mvr512和/或生成所更新数据740。机器人系统100可基于所调整mvr来降低、释放/投放和/或重新抓持登记目标506。例如,机器人系统100可更新图5的抓持位置520以覆盖两个盖板或在两个盖板之上延伸。

图14是根据本技术的一个或多个实施方案的中间图像数据1400(例如,来自图3的顶视图传感器312a的输出)的一部分的图示。机器人系统100可在(通过生成/发送命令,诸如位置命令和/或设置)实施操作之后获得来自顶视图传感器312a的中间图像数据1400,以将图3的端部执行器304放置在图5b的抓持位置520之上。

机器人系统100可分析中间图像数据1400以在其中检测/标识附件遮挡部分1402。附件遮挡部分1402可表示中间图像数据1400中的部分,其中图3的端部执行器304和/或机器人臂302的附件部件(例如,线缆、线材、导管和/或其他附接件)在传感器与登记目标506之间。换句话讲,附件遮挡部分1402可表示中间图像数据1400的描绘对应于未被跟踪附件的预定图案的部分/位置,所述未被跟踪附件与端部执行器304和/或附接到端部执行器304的机器人臂302相关联。例如,虽然机器人系统100可跟踪端部执行器304和/或机器人臂302的结构部件的位置,但是机器人系统100可能不能够以相似的准确度跟踪附件部件。因此,机器人系统100可分析中间图像数据1400以标识与表示附件部件的预定图案匹配的任何边缘或表面。例如,机器人系统100可标识具有预定宽度/形状并且附接到端部执行器304和/或机器人臂302的所跟踪位置(例如,与其处于相同的高度和/或横向重合)的连续表面。机器人系统100可基于标识连续表面来检测附件遮挡部分1402。

在一些实施方案中,机器人系统100可基于检测到附件遮挡部分1402来实施操作以将端部执行器304(通过例如移动到预定位置,然后重新放置)重新定位在抓持位置520之上。机器人系统100可反复地(重新)定位端部执行器304并且获得中间图像数据1400,直到中间图像数据1400清除(即,不包括)附件遮挡部分1402。在一些实施方案中,机器人系统100可在附件遮挡部分1402的所确定位置与图11的分析区段1114的所预测位置(例如,在距图4c的暴露边缘422和/或图5b的所估计边缘524的阈值距离内)横向重叠时实施重新定位。因此,机器人系统100可增加防止附件遮挡部分1402在图7a的比较数据702(例如,在初始移位之后获得的图像)中出现的可能性。

图15是根据本技术的一个或多个实施方案的操作图1的机器人系统的方法1500的流程图。方法1500可用于导出并验证mvr并且相应地登记未知物体(例如,图4b的未识别物体414)。在一些实施方案中,方法1500可包括在将未识别物体414从图1的起始位置114(例如,图3的目标堆叠310)搬运到图1的任务位置116(例如,图3的输送机306)时或作为其一部分时登记未识别物体414。方法1500可基于利用图2的处理器202中的一个或多个执行存储在图2的存储装置204中的一个或多个上的指令来实施。因此,一个或多个处理器202可(通过例如,生成/发送命令、设置和/或计划)实施操作以控制一个或多个单元(例如,图3的机器人臂302、图3的端部执行器304、图2的传感器216等)和/或在其中的部件。

在1502处,机器人系统100可获得初始源数据(例如,第一图像数据)。机器人系统100可接收第一图像数据,所述第一图像数据包括来自图3的顶视图传感器312a和/或任选地来自图3的侧视图传感器312b的2d/3d图像数据。所获得的第一图像数据可描绘或表示在起始位置114处的一个或多个物体(例如,图4b的所识别物体412和/或图4b的未识别物体414)。

在框1504处,机器人系统100可标识初始源数据中的不匹配部分。在一些实施方案中,机器人系统100可基于检测到所登记物体来标识初始源数据中的不匹配部分。例如,机器人系统100可基于对第一图像数据进行分析来检测在起始位置114处的所登记物体。作为具体实例,机器人系统100可将第一图像数据或其部分与图2的主数据252进行比较。主数据252可包括图像或对应于图像的数据,所述图像或数据表示图2的对应的登记数据254中的所登记物体的已知表面。同样地,机器人系统100可在第一图像数据的部分与图2的登记数据254中的图像匹配时检测所识别物体412。机器人系统100可将第一图像数据中的剩余部分标识为图4b的表示未识别物体414中的一个或多个的不匹配部分430。

在框1506处,机器人系统100可导出一个或多个初始mvr并且/或者确定一个或多个对应的抓持位置。机器人系统100可标识第一图像数据中的表面片段和/或边缘,并且使用所标识表面片段/边缘/拐角来导出初始mvr(例如,图5b的mvr512)中的一个或多个,如上所述。初始mvr中的每一个可表示对一个未识别物体的一个表面的初始估计。在一些实施方案中,机器人系统100可针对与如下所述的框1506-1524相对应的过程的每个迭代导出一个初始mvr。在其他实施方案中,机器人系统100可导出初始mvr的所有可用实例,并且迭代遍历对应于下述框1510-1524的过程。

机器人系统100可使用初始mvr来导出初始抓持位置(例如,图5b的抓持位置520)。例如,机器人系统100可导出初始抓持位置作为初始mvr的中间位置。

在判定框1508处,机器人系统100可分析初始mvr以检测是否存在直接登记条件。在直接登记条件存在时,机器人系统100可将初始mvr确定为最终mvr。在这些情况下,机器人系统100可通过使用初始mvr创建新的登记数据来直接登记物体(即,无需对其进行任何调整),如下文针对框1526所述。机器人系统100还可在检测到直接登记条件时实施并完成任务(例如,无需实施对应于框1512-1522的过程)。

为了分析初始mvr,机器人系统100可标识在第一图像数据中描绘的暴露边缘(例如,图4c的暴露边缘422),所述暴露边缘表示也在比较图像数据(例如,第二图像数据)中描绘的表面的所估计边界,如上所述。机器人系统100可进一步标识暴露拐角(例如,图4c的暴露外拐角426,其中一对暴露边缘相交),如上所述。

机器人系统100可通过验证初始mvr的大小和/或形状来检测直接登记条件。机器人系统100可使用计算机视觉过程来确定初始mvr的尺寸和/或形状。机器人系统100可在所述形状与(例如,由人类操作员和/或物体供应者)向机器人系统100提供的预期物体形状匹配时验证初始mvr。另外,机器人系统100可在mvr的尺寸(例如,由人类操作员和/或物体供应者)向机器人系统100提供的大于最小物体尺寸且小于最大物体尺寸时验证初始mvr。

对于已验证mvr,机器人系统100可在围绕所估计的表面的相邻位置(例如,根据图8a的间隔阈值812)具有不同的图像性质时检测直接登记条件。例如,机器人系统100可在相邻位置的3d深度量度定位在所估计表面下方的至少阈值距离处时检测直接登记条件。机器人系统100还可在已验证mvr包括超过阈值的多个(例如,两个)暴露拐角或使用超过阈值的多个暴露拐角导出时检测直接登记条件。

在初始mvr中不存在直接登记条件时,机器人系统100可实施操作/过程以验证mvr。在框1510处,机器人系统100可使用中间成像数据建立清除方法。例如,机器人系统100可生成用于将端部执行器304放置在初始mvr内的初始抓持位置之上的定位计划(例如,运动计划)。机器人系统100可将定位计划和/或对应于定位计划的命令/设置传达到机器人臂302,并且机器人臂302可执行命令、设置和/或定位计划以相应地放置端部执行器304。随后,机器人系统100可诸如通过发送对应的命令以获得中间图像(例如,图14的中间图像数据1400)来操作图3的第一成像传感器312(例如,顶视图传感器312a)。机器人系统100可分析中间图像数据以在其中标识图14的附件遮挡部分1402。如果附件遮挡部分1402中的任一个被标识,则机器人系统100可生成并实施用于将端部执行器304移动至远离初始抓持位置的一个或多个位置,然后将端部执行器304重新放置在抓持位置之上的调整计划(例如,预定运动计划)。机器人系统100可反复地重复上述分析和调整,直到在中间图像数据(诸如端部执行器304的位置周围的部分)中没有标识出附件遮挡部分1402为止。例如,调整计划可基于标识出附件遮挡部分1402来生成,其中调整计划可用于将端部执行器304重新移动至远离初始抓持位置520的一个或多个位置,然后将端部执行器304重新放置在抓持位置520之上。

在框1512处,机器人系统100可将登记目标(例如,登记目标506,诸如在图4b的不匹配部分430中表示的未识别物体414中的一个)初始移位。机器人系统100可实施用于根据预定方向、预定距离和/或一组操作将登记目标506初始提升和/或横向移位的操作。例如,机器人系统100可将预定计划或一组对应的命令/设置发送到机器人臂302和/或端部执行器304以实施操作。因此,端部执行器304可在抓持位置处接触并抓持登记目标506,并且机器人臂302可根据图9b的初始提升高度904来使端部执行器304升高。

在一些实施方案中,机器人系统100可实施清除操作作为将登记目标(例如,未识别物体414)初始移位的一部分,如框1514处所示。例如,在提升所抓持登记目标506时和/或之后,机器人系统100可实施用于将端部执行器304横向移位和/或使端部执行器304围绕竖直轴线旋转的操作。清除操作减少了上述咬入条件的发生。

在框1516处,机器人系统100可获得登记目标的初始移位之后的比较图像(例如,第二图像数据,诸如图7a的比较数据702)。例如,机器人系统100可命令第一成像传感器312捕获登记目标506在初始移位操作之后的一个或多个描绘。第一成像传感器312可将所得的第二图像数据发送到一个或多个处理器202以进行计算机视觉分析。如上所述,第二图像数据可包括2d和/或3d描绘、顶视图描绘和/或侧视图描绘、或它们的组合。

在框1518处,机器人系统100可处理第二图像数据和/或初始mvr。机器人系统100可通过标识边缘(诸如暴露边缘)、确定其形状/长度和/或将边缘与预定图案进行比较来分析第二图像数据。例如,机器人系统100可确定第二图像数据中的暴露边缘中的一个的边缘长度测量值728。因此,机器人系统100可检测表示与初始mvr相关联的准确度的条件。机器人系统100可根据所检测条件来评估初始mvr。基于所述评估,机器人系统100可生成最终mvr。最终mvr可以是一个或多个条件的初始mvr。换句话讲,机器人系统100可通过基于预期条件将初始mvr确定为最终mvr来生成最终mvr。对于其他条件,最终mvr可以是所调整mvr(例如,图7b的所更新数据740),其是由从初始mvr中移除部分或将其边界延伸以包括来自第一图像数据的其他部分而得到的。下文描述关于第二图像数据和/或初始mvr的处理细节。

在判定框1520处,机器人系统100可基于处理第二图像的结果检测是否存在重新抓持条件。机器人系统100可至少部分地基于评估初始mvr来检测重新抓持条件。例如,机器人系统100可检测到在检测到预期条件之后不存在重新抓持条件(即,根据初始mvr的准确推导使端部执行器304居中)。另外,机器人系统100可基于针对咬入条件评估所抓持表面并且/或者针对变形物体条件评估图11的所计算物体尺寸1118来检测重新抓持条件的不存在。

机器人系统100可在第二图像数据中的一个或多个边缘的长度超过初始mvr的对应尺寸达预定限值时检测重新抓持条件。换句话讲,机器人系统100可在所提升物体具有比初始mvr足够大的表面时重新抓持登记目标506。在一些实施方案中,机器人系统100可进一步获得图6的向下力测量值604和/或所估计扭矩臂向量608并将其与预定限值/条件进行比较以检测重新抓持条件。

在框1522处,机器人系统100可在检测到重新抓持条件时实施用于重新抓持登记目标506的操作。机器人系统100可基于所调整mvr来导出所更新抓持位置(例如,抓持位置520的另一个实例)。例如,机器人系统100可导出所更新抓持位置以包括所调整mvr的中心部分。因此,机器人系统100可实施操作以将登记目标506重新放置在其原始位置处,诸如通过逆转初始提升操作(例如,无需清除操作)并将端部执行器304降低并横向移位。在返回到原始位置之后,机器人系统100可命令端部执行器304释放登记目标506。机器人系统100可导出重新抓持计划以将端部执行器304从当前位置移动到所更新抓持位置之上、降低/接触登记目标506,然后抓持登记目标506。机器人系统100可实施用于重新抓持计划的操作以完成重新抓持操作。机器人系统100可在没有检测到重新抓持条件时跳过重新抓持操作。

在框1524处,机器人系统100可实施与登记目标相关联的任务。例如,机器人系统100可通过将登记目标506从图1的起始位置114搬运到任务位置116来实施任务。机器人系统100可导出用于执行任务的运动计划,然后实施对应于所述任务运动计划的操作。机器人系统100可将任务运动计划和/或相关联命令/设置发送到一个或多个机器人单元(例如,机器人臂302和/或端部执行器304)以实施操作。机器人单元可执行所接收计划/命令/设置以实施任务。

在框1526处,机器人系统100可登记搬运的物体。在一些实施方案中,机器人系统100可在(例如,同时)实施任务时登记搬运的物体。例如,机器人系统100可创建表示登记目标506的新纪录的登记数据254的新实例(例如,新登记数据)。机器人系统100可将最终mvr和/或相关联的处理结果(例如,尺寸和/或图像)存储为包括新登记数据的登记数据254的一部分。

机器人系统100可在上文所述的各种操作期间跟踪真实世界部件位置(例如,机器人臂302、端部执行器304和/或其部分的位置/姿势)。真实世界部件位置的实例可包括描述抓持未识别物体414的端部执行器304和可操作地耦接到端部执行器304的机器人臂302的当前姿势,如上所述,并且在实施期间定位机器人臂302。跟踪真实世界部件位置可例如包括在实施用于初始移位的操作期间和/或在实施用于执行任务的操作期间进行跟踪。因此,机器人系统100可在获得各种图像(例如,第一图像数据、第二图像数据等)时确定端部执行器304和/或机器人臂302的位置/姿势。例如,机器人系统100可使用所跟踪位置来处理图像,如下文所述。

图16是根据本技术的一个或多个实施方案的用于在实施初始操作之后处理图像和/或mvr的示例性流程图。图16示出上文所述的图15的框1518的过程的详细实例。

在框1602处,机器人系统100可标识第二图像数据(例如,图7a的比较数据702)中的层和/或边缘。机器人系统100可处理2d图像、3d图像、侧视图描绘、顶视图描绘或它们的组合以确定边缘(例如,暴露边缘422),如上所述。机器人系统100可将层中的每一个确定为已处理图像中的一组横向相邻位置,所述一组横向相邻位置具有在彼此的阈值范围内和/或遵循预定图案(例如,线性斜率或凹曲线)的所描绘值(例如,深度量度、亮度、颜色等)。层可由所检测边缘界定。换句话讲,所标识边缘可表示在第二图像数据中描绘的一个或多个表面的所估计边界。机器人系统100可确定所标识边缘的图7a的边缘长度测量值728。

在一些实施方案中,机器人系统100可根据它们与端部执行器和/或初始提升操作的所跟踪位置比较的位置/取向来对边缘进行分类。例如,机器人系统100可基于与初始提升操作匹配的平移来在第一图像数据中识别对应于图4c的的暴露边缘422的边缘。另外,机器人系统100可标识图7a的可能尚未从第一图像数据中描绘或标识的所发现边缘722。在一些实施方案中,机器人系统100可进一步标识所抓持表面,所抓持表面在距所跟踪端部执行器位置(例如,在其正下方并且从其横向向外延伸)的预定距离内具有线性图案。

在标识层/边缘时,机器人系统100可确定并分析不包括图9c的被遮挡区域912的特定区域。在框1632处,机器人系统100可确定第二图像数据中的分析区域(例如,图9c的分析区域922)。例如,机器人系统100可映射机器人臂302和/或端部执行器304的所跟踪位置以确定或估计被遮挡区域912的位置。机器人系统100可比较所跟踪位置以标识未被机器人臂302和/或端部执行器304(例如,在其下方未横向重叠)遮挡的清晰边缘/拐角。机器人系统100还可标识在距所跟踪部件位置的横向阈值距离之外的清晰边缘/拐角。在一个实现方式中,机器人系统100可标识第二图像数据中的暴露边缘中的清晰边缘。例如,标识清晰边缘可包括:确定第二图像数据中的暴露边缘422在距所跟踪部件位置的横向阈值距离之外。

如上所述,机器人系统100可通过根据清晰边缘导出图9c的分析边界916来确定分析区域922。分析区域922可与第二图像数据的一侧由清晰边缘界定且相对侧由分析边界916界定的部分相对应。机器人系统100可导出平行于对应的清晰边缘的分析边界。机器人系统100可根据与所跟踪部件位置和/或与对应的清晰边缘的预定间隔导出分析边界916。在一些实施方案中,机器人系统100可导出彼此正交并且从一对清晰边缘相交处的清晰拐角延伸的一对分析边界916。机器人系统100可将第二图像数据的由分析边界916界定并且在分析区域922之外的区域确定为图9c的所屏蔽区域924。机器人系统100可忽略所屏蔽区域924并处理分析区域922,诸如以用于标识边缘、确定长度等。

在框1634处,机器人系统100可标识分析区域922内的边缘。作为处理分析区域922的实例,机器人系统100可从分析区域中的第一边缘开始并且沿着清晰边缘反复地移动,以在分析区域922中标识以一定角度与清晰边缘相交的互补边缘。机器人系统100可将相交边缘标识为界定/限定表面。机器人系统100可将清晰边缘的边缘长度测量值确定为第一边缘与所标识互补边缘之间的距离。

在框1604处,机器人系统100可比较在初始移位之前和之后获得的图像。换句话讲,机器人系统100可比较第一图像数据和第二图像数据和/或其处理结果。例如,机器人系统100可将分析区域922的视觉图像图案与初始mvr(例如,图5b的mvr512)的对应部分进行比较。另外,机器人系统100可将清晰边缘的边缘长度测量值728与初始mvr的尺寸进行比较。在比较两组长度时,机器人系统100可使用预定过程/公式来补偿由初始移位引起的大小变化。例如,机器人系统100可将边缘长度测量值728映射到第一图像数据中的物体的高度。另外,机器人系统100可将所有所确定长度映射到真实世界距离。

机器人系统100可至少部分地基于比较来检测表示初始mvr的准确度的条件。换句话讲,机器人系统100可基于第二图像数据中的暴露边缘来评估初始mvr。

在判定框1606处,机器人系统100可确定是否存在预期条件。机器人系统100可在第二图像数据的一个或多个部分和/或暴露边缘与初始mvr的对应部分匹配(例如,匹配视觉外观和/或匹配尺寸)时检测预期条件,如上所述。在检测到预期条件时,图15的方法1500可前进至图15的框1524并且实施任务/登记物体,如上所述。在没有检测到预期条件时,机器人系统100可检测由于第二图像数据的一个或多个部分和/或暴露边缘无法与初始mvr的对应部分匹配而造成的非预期条件。

基于检测到非预期条件,机器人系统100可在一组暴露边缘之间搜索/标识图12的物体间隔部分1204。例如,机器人系统100可移动超过分析区域922中的互补边缘,直到标识出另一边缘/表面。机器人系统100可将物体间隔部分1204标识为一组所描绘位置,所述一组所描绘位置定位在所标识边缘之间并且与边缘及其相关联的表面相比具有不连续的图像值。在一些情况下,物体间隔部分1204可以是没有宽度的边缘,其中两个表面在不同高度处彼此邻接。在其他情况下,物体间隔部分1204可对应于两个表面之间的横向间隔。机器人系统100可使用物体间隔部分1204来检测不同类型的非预期条件。

在判定框1608处,机器人系统100可确定是否存在咬入条件。机器人系统100可基于将暴露边缘和/或所抓持表面与预定形状图案和/或一个或多个对应的规则进行比较来检测咬入条件。例如,机器人系统100可在所抓持表面偏离线性/横向斜面时检测咬入条件。机器人系统100可基于标识邻近/邻接所抓持表面的物体间隔部分1204和/或物体间隔部分1204的横向间隔分量来进一步检测咬入条件。机器人系统100可基于标识与所抓持表面相对的邻近/邻接物体间隔部分1204的另一表面(例如,成角度表面或凹表面)来进一步检测咬入条件。换句话讲,机器人系统100可在所抓持表面的边缘(例如,第一边缘)在其他所标识表面的边缘(例如,第二边缘)与所处理图像中的所确定抓持器位置之间时检测咬入条件,其中物体间隔部分1204在两个边缘之间或与两个边缘重合。

在一些实施方案中,机器人系统100可标识诸如任选地在第二图像数据中的3d侧视图描绘中的所抓持边缘以及在所抓持边缘正下方的底部边缘。机器人系统100可搜索在所抓持边缘下方的另一底部边缘并且横向经过物体间隔部分1204。机器人系统100可沿循第二底部边缘并且进一步搜索图12的接触点1206,在所述接触点处,第二底部边缘与定位在下面的另一边缘相交。第二底部边缘可对应于图12的相邻物体1202。同样地,机器人系统100可在(1)存在接触点1206和/或(2)所抓持边缘与第二底部边缘不横向重合时检测咬入条件。不重叠边缘可进一步对应于标识具有不同斜度的两个间隔开的底部边缘。

在检测到咬入条件时,机器人系统100可屏蔽所抓持表面之外的部分(例如,物体间隔部分1204及以外的),如框1610所示。如框1612所示,机器人系统100可重复比较过程来确定初始mvr是否匹配所抓持表面。机器人系统100可将第二图像数据的未屏蔽部分与初始mvr进行比较,类似地如上文针对框1606所述。如上所述,在未屏蔽部分与初始mvr匹配时,方法1500可前进至上文针对框1524和1526所述的过程,以执行任务并登记物体。在未屏蔽部分无法与初始mvr匹配时,方法可前进至框1620并且得出结论:目标物体具有与初始mvr不匹配的尺寸。然后,机器人系统100可调整mvr,如下文进一步描述。

否则(例如,在没有检测到咬入条件时),机器人系统100可确定是否存在变形物体条件,诸如判定框1614处所示。机器人系统100可检测变形物体条件,如上所述。例如,机器人系统100可在暴露边缘偏离线性形状图案和/或与凹/凸图案匹配时检测变形物体条件。另外,任选地,机器人系统100可在3d侧视图描绘中的底部边缘保持连续并且远离所跟踪端部执行器位置向上/向下弯曲移动时检测变形物体条件。

在检测到变形物体条件时,机器人系统100可计算变形边缘的长度,诸如框1618处所示。机器人系统100可确定图11a的所计算物体尺寸1118,如上所述。例如,机器人系统100可选择变形边缘并且导出在第二图像数据(例如,3d顶视图描绘)中与所选择边缘平行/重合的图11b的一个或多个分析条带1112。机器人系统100可进一步导出对应于分析条带1112中的每一个内的分析位置(例如,图11b的分析区段1114的边缘)。分析位置可以是在3d点云中沿着平行于所选择暴露边缘的方向以固定距离间隔开的所描绘位置(例如,由x-y坐标对限定)。使用分析位置处的深度量度,机器人系统100可计算图11a的与对应于分析位置的一对相邻3d位置之间的直线距离相对应的区段长度1116。机器人系统100可基于区段长度1116(例如,其长度总和)来导出所计算物体尺寸1118。例如,所计算物体尺寸1118可表示对在放置在平坦表面上时未识别物体的边缘(即,顶表面的边缘)的直线距离的估计。在多个分析条带1112可用时,机器人系统100可将所计算物体尺寸1118导出为分析条带1112的长度总和的平均值。

在判定框1612处,机器人系统100可使用所计算物体尺寸1118来检查扭曲的所抓持表面是否与初始mvr匹配。例如,机器人系统100可将所计算物体尺寸1118(例如,来自第二图像数据的边缘长度测量值)与初始mvr的对应尺寸进行比较。在所抓持表面的未扭曲尺寸和/或所计算物体尺寸1118与初始mvr的对应尺寸匹配时,方法1500可前进至框1524和1526的过程,如上所述。否则,方法1500可前进至下文针对框1620详述的过程。

在判定框1616处,机器人系统100可确定是否存在盖板松开条件。机器人系统100可检测盖板松开条件,如上所述。例如,机器人系统100可在所抓持边缘与底部边缘之间的另一边缘以图13的开放角1304与所抓持边缘相交时检测盖板松开条件。另外,机器人系统100可在底部边缘与所抓持边缘不平行、以开放角1304延伸和/或延伸超过3d侧视图描绘中的所抓持边缘的横向端部时检测盖板松开条件。此外,机器人系统100可基于根据所确定抓持器位置、底部边缘(即,第二边缘)和/或两个边缘之间的另外的边缘(即,第一边缘)将所抓持的边缘与预定形状图案进行比较来检测盖板松开条件。例如,检测盖板松开条件可包括:标识在第二边缘与所确定抓持器位置之间并且与第二边缘形成开放角的第一边缘;以及将第一边缘和第二边缘与预定形状图案进行比较。另外,机器人系统100可基于标识图13的物体间隔部分1204中的横向不连续性不存在并且/或者根据图6的所估计扭矩臂向量608(诸如在延伸超过所跟踪抓持器位置的部分无法与所估计扭矩臂向量608的方向匹配时)来确定盖板松开条件。

在检测到盖板松开条件的情况下,机器人系统100可计算外推边缘的长度,诸如框1618处所示。机器人系统100可确定对应于目标物体的全长的所计算物体尺寸,如上所述。例如,机器人系统100可确定所抓持边缘(例如,第一边缘)的图13的所抓持长度1302。机器人系统100可根据开放角1304进一步测量图13的剩余长度1310。剩余长度1310可表示成角度边缘的延伸超过所抓持边缘或其映射的(例如,与第一边缘形成开放角的第二边缘)部分的长度。机器人系统100可根据所抓持长度1302和剩余长度1310确定所计算物体尺寸。在一些实施方案中,机器人系统100可基于与所抓持边缘与底部边缘之间的另外的边缘相对应的边缘长度测量值728来确定或验证所计算物体尺寸。

在一些实施方案中,机器人系统100可使用所计算物体尺寸来确定匹配。在其他实施方案中,方法1500可前进至对应于框1622的过程,其在下文详细描述。在机器人系统100无法检测特定条件(例如,咬入条件、变形物体条件和/或盖板松开条件)时,机器人系统100可确定/得出结论:非预期条件是由实际物体的大小与初始mvr之间的不匹配引起的。

在框1622处,机器人系统100可诸如通过根据上文所述的分析结果(即,检测到预期条件和/或非预期条件)生成最终mvr(例如,图7b的所更新数据720)来调整mvr。例如,机器人系统100可通过调整初始mvr以移除在其中的部分或通过向其添加另外的部分来生成最终mvr。机器人系统100可通过根据第二图像数据的一个或多个部分和/或暴露边缘使用第一图像数据来调整初始mvr。机器人系统100可生成包括初始mvr和第一图像数据中的邻近初始mvr的另外的部分的最终mvr。机器人系统100可生成包括在其中没有移除的部分的最终mvr。机器人系统100可根据以下调整初始mvr:针对尺寸不匹配条件的边缘长度测量值728(例如,在边缘长度测量值728无法与初始mvr的对应尺寸匹配时);针对咬入条件的所抓持长度1302;针对盖板松开条件的所计算物体尺寸或剩余长度1310和第一边缘的长度;和/或针对变形物体条件的所计算物体尺寸1118。

如上所述,基于将第一图像数据与第二图像数据进行比较来检测各种条件的机器人系统100提供了检测和登记物体方面的增加的准确度。通过所检测条件,机器人系统100可标识初始mvr与登记目标506的实际描绘之间的不匹配的原因/基础。因此,机器人系统100可调整初始mvr来准确地表示登记目标506。此外,使用图9c的分析区域922、图11b的分析条带1112和/或图11b的分析区段1114分析边缘的机器人系统100提供了提高的处理效率。上文所述的各个方面可提供减少或移除实施计算机视觉机构所需的资源(例如,完全标识/定位图9c的被遮挡区域912所需的图像分析例程)的近似值。

实施例

在一些实施方案中,一种用于操作机器人系统的方法可包括:获得表示定位在起始位置处的未识别物体的一个或多个表面的第一图像数据;基于所述第一图像数据导出初始最小可行区域(mvr),其中所述初始mvr表示对所述未识别物体的所述表面中的一个的初始估计;实施用于根据预定方向和预定距离将所述未识别物体初始移位的操作;获得表示所述初始移位之后的所述未识别物体的第二图像数据;标识在所述第二图像数据中描绘的暴露边缘,其中所述暴露边缘表示在所述第二图像数据中描绘的所述表面的所估计边界;基于所述第二图像数据中的所述暴露边缘评估所述初始mvr;基于评估所述mvr生成最终mvr;实施用于针对所述初始移位之后的所述未识别物体执行任务的操作;以及在实施所述任务时创建新登记数据,其中所述新登记数据表示所述未识别物体的新纪录,其中所述新登记数据包括所述最终mvr。评估所述初始mvr可包括:标识所述第二图像数据中的所述暴露边缘中的清晰边缘,其中所述清晰边缘表示未被用于将所述未识别物体移位的一个或多个机器人部件遮挡的物体边缘;基于所述清晰边缘确定分析区域,其中所述分析区域表示所述第二图像数据的与被遮挡区域分开的部分;标识所述分析区域中的互补边缘,其中所述互补边缘与所述清晰边缘以一定角度相交;确定所述清晰边缘和所述互补边缘的边缘长度测量值;以及将来自所述第二图像数据的所述边缘长度测量值与所述初始mvr的尺寸进行比较。所述方法还可包括:基于实施用于所述初始移位的所述操作并基于实施用于执行所述任务的所述操作跟踪真实世界部件位置,其中所述真实世界部件位置描述抓持所述未识别物体的端部执行器和能操作地耦接到所述端部执行器的机器人臂的当前姿势,并且在所述实施期间定位所述机器人臂;其中标识所述清晰边缘可包括:确定所述第二图像数据中的所述暴露边缘在距所跟踪部件位置的阈值距离之外。

在一些实施方案中,评估所述初始mvr可包括:在所述第二图像数据的一个或多个部分和/或所述暴露边缘与所述初始mvr的对应部分匹配时检测预期条件;并且生成所述最终mvr可包括:基于所述预期条件将所述初始mvr确定为所述最终mvr。评估所述初始mvr可包括:在所述第二图像数据的一个或多个部分和/或所述暴露边缘无法与所述初始mvr的对应部分匹配时检测非预期条件;并且生成所述最终mvr可包括:根据所述第二图像数据的所述一个或多个部分和/或所述暴露边缘使用所述第一图像数据来调整所述初始mvr。评估所述初始mvr还可包括:确定所述第二图像数据中的所述暴露边缘中的一个的边缘长度测量值;并且生成所述最终mvr包括:在所述边缘长度测量值无法与所述初始mvr的对应尺寸匹配时根据所述边缘长度测量值来调整所述初始mvr。

另选地或除此之外,评估所述初始mvr可包括:基于将所述暴露边缘与预定形状图案进行比较来检测包括变形物体条件的所述非预期条件;基于检测到所述变形物体条件来确定所计算物体尺寸,其中确定所计算物体尺寸可包括:基于与所述预定形状图案的所述比较来选择所述暴露边缘中的一个;导出所述第二图像数据中与所选择暴露边缘重合的分析条带,其中所述第二图像数据是具有在其中描绘的位置的深度量度的三维(3d)点云;导出所述分析条带内的分析位置,其中所述分析位置是所述3d点云中的沿着平行于所选择暴露边缘的方向分开固定距离的所描绘位置;基于与所述分析位置相关联的深度量度来计算区段长度,其中所述区段长度各自表示对应于所述分析位置的一对相邻3d位置之间的直线距离;基于所述区段长度导出所计算物体尺寸,其中所计算物体尺寸表示对在放置在平坦表面上时所述未识别物体的边缘的直线距离的估计;并且生成所述最终mvr可包括:根据所计算物体尺寸调整所述初始mvr。评估所述初始mvr可包括:基于以下检测包括咬入条件的所述非预期条件:将所述暴露边缘与预定形状图案进行比较;以及标识第一边缘与第二边缘之间的物体间隔部分,其中所述第一边缘在所述第二边缘与所确定抓持器位置之间;在检测到所述咬入条件时确定所述第一边缘的边缘长度测量值;以及根据所述边缘长度测量值将所述初始mvr与所述第二mvr的一个或多个部分进行比较。评估所述初始mvr还可包括:基于以下检测包括盖板松开条件的所述预期条件:标识第一边缘和第二边缘,其中所述第一边缘在所述第二边缘与所确定抓持器位置之间并且与第二边缘形成开放角;以及将所述第一边缘和所述第二边缘与预定形状图案进行比较;基于检测到所述盖板松开条件来确定所计算物体尺寸,其中确定所计算物体尺寸可包括:确定所述第一边缘的长度;测量表示所述第二边缘延伸超过所述第一边缘的部分的剩余长度;并且生成所述最终mvr可包括:根据所述剩余长度和所述第一边缘的所述长度调整所述初始mvr。在一些实施方案中,实施用于将所述未识别物体初始移位的所述操作可包括:生成用于将端部执行器放置在所述初始mvr内的抓持位置之上的定位计划;获得在生成所述定位命令之后的中间图像数据;标识所述中间图像数据中的附件遮挡部分,其中所述附件遮挡部分表示所述中间图像数据的描绘对应于未被跟踪附件的预定图案的部分,所述未被跟踪附件与所述端部执行器和/或附接到端部执行器的机器人臂相关联;以及基于所述附件遮挡部分的所述标识生成调整计划,其中所述调整计划用于将所述端部执行器重新移动至远离所述抓持位置的一个或多个位置,然后将所述端部执行器重新放置在所述抓持位置之上。

在一些实施方案中,一种机器人系统可包括:至少一个处理器;以及至少一个存储器装置,所述至少一个存储器装置连接到所述至少一个处理器并且在其上存储有指令,所述指令能够由所述处理器执行以用于:获得表示位于起始位置处的未识别物体的第一图像数据;基于所述第一图像数据导出初始最小可行区域(mvr),其中所述初始mvr表示对所述未识别物体的表面的初始估计;获得表示在初始移位之后所述未识别物体的第二图像数据;基于所述第二图像数据评估所述初始mvr;以及创建表示所述未识别物体的新纪录的新登记数据,其中所述新登记数据包括初始mvr或其根据所述评估的推导。可基于以下评估所述初始mvr:标识在所述第二图像数据中描绘的暴露边缘,其中所述暴露边缘表示在所述第二图像数据中描绘的所述表面的所估计边界;确定所述暴露边缘的边缘长度测量值;在所述边缘长度测量值无法与所述初始mvr的尺寸匹配时导出所调整mvr,其中所调整mvr是根据所述边缘长度测量值使用所述图像数据导出的;以及在所述边缘长度测量值无法与所述初始mvr的尺寸匹配时可创建所述新登记数据以包括所调整mvr。可基于以下评估所述初始mvr:标识在所述第一图像数据中描绘的暴露边缘,其中所述暴露边缘表示在所述第二图像数据中描绘的所述表面的所估计边界;标识一对所述暴露边缘相交的位置处的暴露拐角;在多个所述暴露拐角超过预定阈值时检测直接登记条件;以及基于检测到所述直接登记条件可创建所述新登记数据以包括所述初始mvr。此外,所述指令可用于通过所述至少一个处理器来实施上文所述的方法中的一个或多个方面。

在一些实施方案中,一种在其上可存储有处理器指令的有形非暂时性计算机可读介质,所述处理器指令在由一个或多个处理器执行时致使所述一个或多个处理器执行方法,所述方法可包括:获得表示位于起始位置处的未识别物体的第一图像数据;基于所述第一图像数据导出初始最小可行区域(mvr),其中所述初始mvr表示对所述未识别物体的表面的初始估计;实施用于根据预定方向和预定距离将所述未识别物体初始移位的操作;获得表示在所述初始移位操作之后所述未识别物体的第二图像数据;基于所述第二图像数据评估所述初始mvr;以及创建表示所述未识别物体的新纪录的新登记数据,其中所述新登记数据包括初始mvr或其根据所述评估的推导。实施用于将所述未识别物体初始移位的所述操作可包括:实施用于在将端部执行器提升到预定高度时或之后将端部执行器横向移位和/或使端部执行器围绕竖直轴线旋转的操作。所述指令在实施时可执行所述方法,所述方法还包括:至少部分地基于评估所述初始mvr来检测重新抓持条件;以及实施用于基于检测到所述重新抓持条件来重新抓持所述未识别物体的操作。在一个或多个实施方案中,评估所述mvr可包括:确定在所述第二图像数据中描绘的暴露边缘的边缘长度测量值;检测所述重新抓持条件可包括:在所述边缘长度测量值超过所述初始mvr的尺寸达预定限值时检测所述重新抓持条件;并且所述方法还可包括:导出包括所述初始mvr的中间部分的初始抓持位置,其中所述初始抓持位置对应于所述初始提升操作;在所述边缘长度测量值超过所述初始mvr的尺寸时导出所调整mvr;以及导出包括所调整mvr的中间部分的所调整抓持位置,其中所调整抓持位置对应于所述重新抓持操作。另外,所述处理器指令可用于实施上文在一个或多个实施方案中描述的所述方法的一个或多个方面。

结论

所公开技术的实例的上文具体实施方式并不意图是详尽的或将所公开技术限于所公开的确切形式。虽然出于说明性目的描述了所公开技术的具体实例,但如相关领域技术人员应认识到,在所公开技术的范围内各种等效修改也是可能的。例如,虽然过程或框是以给定次序呈现的,但替代实现方式可以不同次序执行具有步骤的例程或采用具有框的系统,并且可删除、移动、添加、细分、组合和/或修改一些过程或框来提供替代方案或子组合。这些过程或框中的每一个可以各种不同方式来实现。另外,虽然过程或框有时被示出为串联执行,但这些过程或框可替代地并行执行或实现,或者可在不同时间执行。此外,本文所指出的任何具体数目仅是实例;替代实现方式可采用不同的值或范围。

根据上文具体实施方式,可对所公开技术进行这些和其他改变。虽然具体实施方式描述了所公开技术的某些实例以及所设想的最佳模式,但所公开技术可以许多方式来实践,而无论文中上文描述呈现的如何详细。系统的细节可在其具体实现方式中相差甚大,但仍由本文所公开的技术涵盖。如上文所指出,在描述所公开技术的某些特征或方面时所用的特定术语不应被视为暗示本文中将术语重新定义为限于所公开技术的与所述技术相关联的任何具体特性、特征或方面。因此,除所附权利要求之外,本发明不受限制。一般来说,以下权利要求中所用的术语不应被视为将所公开技术限于说明书中所公开的具体实例,除非上文具体实施方式章节明确地限定了此类术语。

虽然本发明的某些方面在下文是以某些权利要求的形式呈现的,但本申请人可设想了呈任何数目的权利要求形式的本发明的各种方面。因此,本申请人保留在提交本申请之后追加附加权利要求以在本申请中或在接续申请中追加此类附加权利要求形式的权利。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1