CN112203809B - 信息处理装置和方法、机器人控制装置和方法及存储介质 - Google Patents

信息处理装置和方法、机器人控制装置和方法及存储介质 Download PDF

Info

Publication number
CN112203809B
CN112203809B CN201980035572.4A CN201980035572A CN112203809B CN 112203809 B CN112203809 B CN 112203809B CN 201980035572 A CN201980035572 A CN 201980035572A CN 112203809 B CN112203809 B CN 112203809B
Authority
CN
China
Prior art keywords
model
information
learning
learning model
robot
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201980035572.4A
Other languages
English (en)
Other versions
CN112203809A (zh
Inventor
广田祐一郎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Publication of CN112203809A publication Critical patent/CN112203809A/zh
Application granted granted Critical
Publication of CN112203809B publication Critical patent/CN112203809B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme 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/1697Vision controlled systems
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/4155Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by programme execution, i.e. part programme or machine function execution, e.g. selection of a programme
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/285Selection of pattern recognition techniques, e.g. of classifiers in a multi-classifier system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/778Active pattern-learning, e.g. online learning of image or video features
    • G06V10/7784Active pattern-learning, e.g. online learning of image or video features based on feedback from supervisors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40499Reinforcement learning algorithm
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/06Recognition of objects for industrial automation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/12Acquisition of 3D measurements of objects

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Multimedia (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Mechanical Engineering (AREA)
  • Robotics (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Automation & Control Theory (AREA)
  • Mathematical Physics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Fuzzy Systems (AREA)
  • Manipulator (AREA)
  • Image Analysis (AREA)

Abstract

本发明提供信息处理装置和方法、机器人控制装置和方法及存储介质。信息处理装置包括:第一获取单元,其用于从能够经由网络与所述信息处理装置通信的外部装置获取候选学习模型,所述候选学习模型响应于图像信息的输入而输出识别信息;评估单元,其用于基于操作环境中的图像信息、以及响应于所述图像信息向学习模型的输入而作为地面真值输出的识别信息,来评估所述候选学习模型;以及替换单元,其用于在评估满足需要的情况下,用所述候选学习模型来替换现有学习模型。

Description

信息处理装置和方法、机器人控制装置和方法及存储介质
技术领域
本发明涉及机信息处理装置和方法、机器人控制装置和方法及非暂时性计算机可读存储介质。
背景技术
最近已经研究了基于通过机器学习获得的识别结果来进行任务的机器人系统。通常,为了学习模型,安装在环境中的机器人需要在现实世界环境中以试错的方式多次重复地进行任务,使得机器人可以以足够高的成功率来进行任务。这需要很多时间。
NPL1公开了一种技术,其中,机器人在仿真环境中以试错的方式虚拟地进行任务,以快速学习模型,然后将所学习的模型赋予现实世界环境中的机器人,使得机器人可以以相对少的试错次数进行任务,以进行增量学习。
引用列表
专利文献
NPL1:Fangyi Zhang,Jurgen Leitner,Michael Milford,Ben Upcroft,PeterCorke,"Towards Vision-Based Deep Reinforcement Learning for Robotic MotionControl,"in Proceedings of the Australasian Conference on Robotics andAutomation(ACRA),2015,ANU,Canberra,Australia.
发明内容
技术问题
然而,在安装在系统需要始终操作的环境中的机器人系统中(如工厂中操作的机器人),机器人很难以试错的方式进行任务,以进行给定模型的增量学习。
解决问题的技术方案
本发明的第一方面提供了一种信息处理装置,其包括:第一获取单元,其被构造为从能够经由网络与所述信息处理装置通信的外部装置获取第一学习模型,所述第一学习模型响应于图像信息的输入而输出识别信息;学习单元,其被构造为,使所述第一学习模型学习通过所述信息处理装置使用识别信息的控制结果,所述识别信息是响应于执行环境中的所述图像信息的输入而从第二学习模型输出的;以及输出单元,其被构造为,通过向由所述学习单元学习的所述第一学习模型输入所述执行环境中的图像信息来使所述第一学习模型输出识别信息。
本发明的第二方面提供了一种控制机器人的机器人控制装置,其包括:第一获取单元,其被构造为从能够经由网络与所述机器人控制装置通信的外部装置获取候选模型,所述候选模型接收传感器信息作为输入并输出识别信息;评估单元,其被构造为基于通过基于执行模型来执行任务而获得的学习数据,来评估所述候选模型的性能,所述执行模型接收传感器信息作为输入并输出识别信息;显示单元,其被构造为显示指示由所述评估单元评估的所述候选模型的所述性能的信息;接收单元,其被构造为接收关于是否利用所述候选模型替换所述执行模型的输入;以及替换单元,其被构造为基于所述输入来利用所述候选模型替换所述执行模型。
本发明的第三方面提供了一种由信息处理装置进行的信息处理方法,所述信息处理方法包括如下步骤:从能够经由网络与所述信息处理装置通信的外部装置获取第一学习模型,所述第一学习模型响应于图像信息的输入而输出识别信息;使所述第一学习模型学习通过所述信息处理装置使用识别信息的控制结果,所述识别信息是响应于执行环境中的所述图像信息的输入而从第二学习模型输出的;以及通过向在所述学习步骤中学习的所述第一学习模型输入所述执行环境中的图像信息来使所述第一学习模型输出识别信息。
本发明的第四方面提供了一种由控制机器人的机器人控制装置进行的信息处理方法,所述信息处理方法包括如下步骤:从能够经由网络与所述机器人控制装置通信的外部装置获取候选模型,所述候选模型接收传感器信息作为输入并输出识别信息;基于通过基于执行模型来进行任务而获得的学习数据,来评估所述候选模型的性能,所述执行模型接收传感器信息作为输入并输出识别信息;显示指示在所述评估步骤中评估的所述候选模型的所述性能的信息;接收关于是否利用所述候选模型替换所述执行模型的输入;以及基于所述输入来利用所述候选模型替换所述执行模型。
本发明的第五方面提供了一种存储程序的非暂时性计算机可读存储介质,所述程序在由计算机读取并执行时,使所述计算机执行由信息处理装置进行的信息处理方法的步骤,所述信息处理方法包括如下步骤:从能够经由网络与所述信息处理装置通信的外部装置获取第一学习模型,所述第一学习模型响应于图像信息的输入而输出识别信息;使所述第一学习模型学习通过所述信息处理装置使用识别信息的控制结果,所述识别信息是响应于执行环境中的所述图像信息的输入而从第二学习模型输出的;以及通过向在所述学习步骤中学习的所述第一学习模型输入所述执行环境中的图像信息来使所述第一学习模型输出识别信息。
本发明的第六方面提供了一种存储程序的非暂时性计算机可读存储介质,所述程序在由计算机读取并执行时,使所述计算机执行由控制机器人的机器人控制装置进行的信息处理方法的步骤,所述信息处理方法包括如下步骤:从能够经由网络与所述机器人控制装置通信的外部装置获取候选模型,所述候选模型接收传感器信息作为输入并输出识别信息;基于通过基于执行模型来进行任务而获得的学习数据,来评估所述候选模型的性能,所述执行模型接收传感器信息作为输入并输出识别信息;显示指示在所述评估步骤中评估的所述候选模型的所述性能的信息;接收关于是否利用所述候选模型替换所述执行模型的输入;以及基于所述输入来利用所述候选模型替换所述执行模型。
本发明的有利效果
根据本发明,可以将从安装在用户环境中的用户机器人系统的外部获取的模型引入机器人系统中,而无需通过机器人系统以试错的方式进行任务。
附图说明
包含在说明书中并构成说明书的一部分的附图示出了本发明的实施例,并且与文字说明一起用来解释本发明的原理。
图1是示出机器人系统的示例性示意性构造的图。
图2是示出机器人系统的示例性外观的图。
图3是示出机器人控制装置的示例性硬件构造的图。
图4是示出机器人控制装置的功能构造的图。
图5A是示出信息处理的示例的流程图。
图5B是示出信息处理的示例的流程图。
图6是示出机器人系统的示例性示意性构造的图。
图7是示出机器人控制装置的功能构造的图。
图8是示出信息处理的示例的流程图。
具体实施方式
下面将参照附图描述本发明的实施例。
<第一实施例>
在第一实施例中,将以如下机器人系统为例,该机器人系统安装在用户工厂中并进行利用吸附手吸附和拾取目标物体的保持任务,并且将描述如下方法,该机器人系统通过该方法引入在外部服务器上发布的新模型(以下称为“候选模型”)。如本文所使用的术语“模型”是指关于具有学习参数的函数的信息。在该实施例中,模型是神经网络模型。在该实施例中,机器人系统利用机器人系统中当前保持的模型(以下称为“执行模型”)来进行任务,从而收集学习数据。学习数据用于对在后台新获取的候选模型进行增量学习。当候选模型具有满足由用户设置的预定水平的性能时,用候选模型来替换执行模型。因此,在用户特有的环境中操作的机器人系统可以引入在服务器上发布的候选模型,而无需以试错的方式进行特殊任务。
图1是示出根据第一实施例的机器人系统的示意性构造以及机器人系统与例如外部服务器之间的关系的图。机器人系统101是用户A使用的机器人系统。机器人系统101包括机器人控制装置102、连接到机器人控制装置102的机器人103、以及传感器104。机器人控制装置102在其中保持执行模型105。执行模型105接收从传感器104获取的信息作为输入,并输出识别结果。机器人控制装置102基于识别结果控制机器人103(在本实施例中为包括手臂的六轴关节机器人)来进行任务。机器人控制装置102经由互联网108连接到外部服务器106。当服务器106发布新模型107时,机器人控制装置102经由网络获取模型107作为候选模型。机器人控制装置102进行增量学习,使得候选模型在用户环境中以足够的性能实现任务,然后用候选模型替换执行模型105。服务器106类似地连接到用户B拥有的机器人控制装置和另一用户拥有的机器人控制装置以及用户A拥有的机器人控制装置102。各个用户可以将服务器上的模型107下载到在他们的环境中操作的机器人系统并使用该模型。执行模型和候选模型在保持在其中的学习参数的数量和网络结构方面可以彼此不同,只要这些模型接收相同格式的信息作为输入并输出相同格式的信息即可。服务器106是能够经由网络与机器人控制装置102进行通信的外部装置的示例。
图2是示出机器人系统101的外观和用于说明实施例的坐标系的图。机器人控制装置102连接到机器人103、互联网108和传感器104。更具体地,该实施例中的传感器104包括RGB-D相机201和电子秤202。机器人103包括附装吸嘴203的凸缘,并且响应于来自机器人控制装置102的指令而开始和终止吸气。待被机器人103拾取的目标物体204被给送并放置在电子秤202上的随机位置和朝向。
现在将描述坐标系。机器人坐标系205是以机器人103的基座的中心为原点的机器人坐标系。当机器人控制装置102指定以机器人坐标系205表示的吸嘴203的位置和朝向时,机器人103移动手臂以将吸嘴203定位在指定的位置和朝向。相机坐标系206是相机坐标系。RGB-D相机201拍摄RGB图像和深度图像,它们是从相机坐标系的原点沿Z轴正方向观看到的图像。机器人系统101保持预先计算的、机器人坐标系与相机坐标系之间的相对坐标转换。
图3是示出机器人控制装置102的示例性硬件构造的图。机器人控制装置102包括中央处理单元(CPU)10、存储器11、通信接口(I/F)12、显示单元13和输入单元14,作为硬件组件。CPU 10控制机器人控制装置102的整体处理。存储器11存储例如程序和在CPU 10基于程序执行处理时使用的数据。通信I/F 12控制与机器人103、服务器106和传感器104的通信。显示单元13例如是显示器,并且例如输出CPU 10的处理结果。输入单元14包括鼠标和键盘,接收用户操作,并将接收到的用户操作通知给CPU 10。CPU 10读出存储在存储器11中的程序,并基于所读取的程序执行处理,从而实现稍后将描述的图4和图7所示的机器人控制装置102的功能构造。此外,CPU 10读取存储在存储器11中的程序,并基于读取的程序执行处理,从而实现稍后将描述的图5A和图5B的流程图或图8的流程图中的处理。显示单元13和输入单元14不是机器人控制装置102的必要组件。
图4是示出机器人控制装置102的功能构造的图。
传感器信息获取单元301从传感器104获取传感器信息。更具体地,该实施例中的传感器信息包括从RGB-D相机201获取的RGB图像和深度图像、以及从电子秤202获取的重量信息。在此,假定RGB图像和深度图像已经经过了位置对准并且逐像素地彼此关联。
机器人运动计划单元302通过使用由执行模型保持单元303保持的执行模型,在从传感器信息获取单元301获取的RGB图像中识别目标物体的吸附位置。机器人运动计划单元302在从传感器信息获取单元301获取的深度图像中,获取与在RGB图像中识别的吸附位置相关联的深度值,以计算由相机坐标系表示的三维空间中的吸附位置和朝向。机器人运动计划单元302生成一系列路径,机器人103的手臂通过该系列路径移动到计算出的吸附位置和朝向并拾取目标物体。
机器人控制单元304根据该系列路径控制机器人103,从而使机器人103进行任务。
任务成功/失败确定单元305获得在机器人103拾取目标物体之前和之后从传感器信息获取单元301获取的重量信息之间的差,从而确定目标物体204是否已经被成功拾取。
学习数据管理单元306包括管理大量学习数据的数据库。各学习数据包括当机器人运动计划单元302识别目标物体的吸附位置时用作输入的传感器信息、响应于传感器信息而要输出的识别信息、以及识别信息的生成时间。学习数据将稍后用于候选模型的增量学习和性能评估。
服务器106包括模型保持单元307,其保持要分发给用户的模型。
候选模型获取单元308经由互联网获取由服务器中的模型保持单元307保持的模型,并保持该模型。
评估单元309通过使用从学习数据管理单元306获得的学习数据来评估由候选模型获取单元308获取的候选模型的性能,并基于评估结果确定是更新候选模型还是用候选模型替换执行模型。
候选模型更新单元310对由候选模型获取单元308获取的候选模型进行增量学习。更具体地,候选模型更新单元310利用从学习数据管理单元306获得的学习数据,来更新由候选模型获取单元308获取的候选模型的学习参数。
候选模型更新单元310重复更新候选模型的学习参数,直到由评估单元309评估的候选模型的评估结果超过预定性能水平。
执行模型替换单元311用由候选模型获取单元308保持的候选模型替换由执行模型保持单元303保持的模型。
图5A和图5B包括各自示出机器人控制装置102进行的信息处理的示例的流程图。机器人控制装置102并行执行两个处理。第一处理是任务执行处理,包括图5A所示的S401至S408。任务执行处理是如下处理,其中机器人103在诸如工厂的用户特有环境中重复进行预期任务。此外,任务执行处理还具有以下功能:基于用于进行任务的传感器信息和指示任务成功或失败的确定结果来生成学习数据,并在机器人103正在进行任务的同时管理所生成的数据。现在将详细描述任务执行处理。
(S401)
在S401中,位于根据实施例的机器人系统外部的给送器将目标物体204给送到电子秤202的秤盘上。
(S402)
在S402中,RGB-D相机201测量RGB图像和深度图像。然后,传感器信息获取单元301获取图像和图(map)作为传感器信息。
(S403)
在S403中,机器人运动计划单元302计算用于拾取目标物体的一系列路径作为机器人运动,更具体地,计算在机器人坐标系中在吸嘴的吸附之前的基于路径的位置和朝向、在吸附时的位置和朝向、以及在吸附之后的基于路径的位置和朝向。传感器信息获取单元301从RGB-D相机201获取RGB图像和深度图像作为传感器信息。然后,机器人运动计划单元302基于执行模型计算RGB图像中的目标物体的吸附位置。在该实施例中,执行模型是神经网络模型,其接收局部图像块作为输入并且输出指示是否可以吸附局部图像块的中心处的点的识别信息。输出值表示属于表示可以吸附该点(可以吸附)的类或表示不可吸附该点(不可吸附)的类的概率。属于这两类的概率之和被归一化为1。为了通过使用该模型来计算目标物体的吸附位置,机器人运动计划单元302扫描整个RGB图像以生成大量局部图像块。各局部图像块具有指示如下范围的大小,该范围正好足以确定RGB图像中的目标物体的吸附位置(例如,与如下正方形的一边相对应的像素的数量,该正方形以预定边距围绕通过从预定位置对目标物体进行摄像而拍摄的图像中由目标物体占据的区域)。各局部图像块的大小由用户预先设置。机器人运动计划单元302将局部图像块输入到执行模型,从而获得识别信息,即,指示与块相关联的点处的可以吸附的概率。因此,机器人运动计划单元302将原始RGB图像中的与指示可以吸附的概率最高的图像块的中心相对应的计算位置,确定为图像中的目标物体的吸附位置。然后,机器人运动计划单元302从深度图像获取RGB图像中的目标物体的吸附位置处的深度值。机器人运动计划单元302将在指向RGB图像中的吸附位置的方向从相机坐标系206的原点起由深度值表示的距离处的点,确定为相机坐标系206中的三维吸附位置和朝向的位置分量。机器人运动计划单元302将吸附位置附近的目标物体的表面的法线方向,确定为吸附位置和朝向的朝向分量,并从深度图像计算目标物体的表面。如上所述,机器人运动计划单元302可以计算相机坐标系206中的、吸嘴在吸附期间必须维持的吸附位置和朝向。机器人运动计划单元302根据先前计算出的相机坐标系与机器人坐标系之间的相对坐标转换,将计算出的吸附位置和朝向转换为机器人坐标系中的吸附位置和朝向。然后,机器人运动计划单元302基于机器人坐标系中的吸附位置和朝向来计算吸嘴在吸附之前和之后必须采取的基于路径的位置和朝向。各个基于路径的位置和朝向是通过将吸附位置和朝向沿远离物体的方向平移由用户预先设置的固定偏移距离而获得的位置和朝向。如上所述,确定机器人103的用于吸附操作的路径,即在机器人坐标系中在吸嘴的吸附之前的基于路径的位置和朝向、在吸附时的位置和朝向、以及在吸附之后的基于路径的位置和朝向。
(S404)
在S404中,机器人控制单元304根据在S403中计算出的机器人运动来控制机器人103以进行任务。更具体地,机器人控制单元304向机器人103发出用于将吸嘴移动到吸附之前的基于路径的位置和朝向的指令,从而将吸嘴移动到吸附之前的基于路径的位置和朝向。然后,机器人控制单元304向机器人103发出用于将吸嘴移动到吸附时的位置和朝向的指令,从而将吸嘴移动到吸附时的位置和朝向。然后,机器人控制单元304向机器人103发出用于开始通过吸嘴吸气的指令,从而通过吸附来保持目标物体。此后,机器人控制单元304向机器人103发出用于将吸嘴移动到吸附之后的基于路径的位置和朝向指令,从而将吸嘴移动到吸附之后的基于路径的位置和朝向。
(S405)
在S405中,任务成功/失败确定单元305确定在S404中进行的任务的成功或失败。更具体地,在进行任务之后,传感器信息获取单元301从电子秤202获取重量。如果重量等于通过从在放置目标物体的状态下、或在拾取物体之前的状态下预先测量的重量中减去一个目标物体的重量而获得的值,则任务成功/失败确定单元305确定物体已被成功拾取。如果不是,则任务成功/失败确定单元305确定失败。
(S406)
在S406中,学习数据管理单元306基于传感器信息以及在S405中确定的任务的成功或失败来生成学习数据,并管理该数据。更具体地,该步骤中的传感器信息是在S403中被确定为吸附位置并且具有可以吸附的最高概率的RGB图像中的局部图像块。学习数据管理单元306从机器人运动计划单元302接收局部图像块。如果在S405中的任务成功/失败确定结果是成功,则学习数据管理单元306将“可以吸附”确定为在识别该局部图像块时要输出的地面真值标签(ground truth label)。如果在S405中的任务成功/失败确定结果是失败,则学习数据管理单元306将“不可吸附”确定为在识别该局部图像块时要输出的地面真值标签。学习数据管理单元306将局部图像块、表示可以吸附或不可吸附的地面真值标签、以及从中提取局部图像块的原始图像的拍摄时间的组合,作为学习数据添加并存储到学习数据管理单元306。
(S407)
在S407中,机器人控制单元304控制机器人103以进行针对拾取的目标物体的预期任务。该实施例中的预期任务是如下任务:将通过吸附来保持目标物体的吸嘴移动到预先设置的预定位置,并通过停止吸气来释放目标物体。
(S408)
在S408中,机器人控制单元304确定是否终止任务执行处理。如果机器人控制单元304确定不终止任务执行处理,则从S401重复该处理。如果机器人控制单元304确定终止任务执行处理,则终止图5A的任务执行处理。
通过包括上述操作的任务执行处理,可以在机器人系统正在用户工厂中操作的同时重复执行预期任务期间,收集和累积最新工厂环境中的学习数据。
第二处理是模型替换处理,其包括图5B所示的S411至S417。在模型替换处理中,机器人控制装置102周期性地确定在服务器上是否发布了新模型,并且如果发布了新模型,则获取新模型作为候选模型。机器人控制装置102进行增量学习,使得候选模型具有满足用户环境中所需水平的性能,然后用候选模型来替换执行模型。将在下面详细描述模型替换处理。
(S411)
在S411中,候选模型获取单元308确定在服务器106上是否发布了新模型。如果候选模型获取单元308确定没有发布新模型,则处理进入S417。如果候选模型获取单元308确定发布了新模型,则处理进入S412。
(S412)
在S412中,候选模型获取单元308经由网络获取由服务器106的模型保持单元307保持的新模型。将获取的模型作为候选模型保持在由候选模型获取单元308管理的存储区域中。
(S413)
在S413中,评估单元309利用由学习数据管理单元306管理的学习数据来评估由候选模型获取单元308保持的候选模型的性能。评估单元309从学习数据管理单元306中获取用于评估的学习数据。学习数据管理单元306将在数据库中管理的学习数据随机混洗并分类为两组:用于评估的学习数据和用于增量学习的学习数据,这将在稍后描述。学习数据管理单元306将用于评估的学习数据赋予评估单元309。然后,评估单元309将所获取的各学习数据中包括的局部图像块输入到候选模型,以计算表示可以吸附和不可吸附的两类中的任一者的概率,并且确定具有更高概率的类作为与学习数据相关联的识别结果。评估单元309将识别结果与包括在学习数据中的表示可以吸附或不可吸附的地面真值标签进行核对,以确定识别结果是真还是假。评估单元309对接收到的各学习数据进行上述评估处理,以计算正确的识别率,并将计算出的率确定为候选模型的性能评估结果。
(S414)
在S414中,评估单元309确定在S413中计算出的性能评估结果是否满足预定性能水平。预定性能水平是基于用户针对机器人系统正在进行的任务所需的成功率而在机器人系统中预先设置的固定值。如果评估单元309确定评估结果不满足该水平,则处理进入S415。如果评估单元309确定评估结果满足该水平,则处理进入S416。如果在S415中的处理被重复地进行了预定时间段或预定次数之后评估结果不满足该水平,则评估单元309丢弃候选模型,并且处理进入S417。
(S415)
在S415中,候选模型更新单元310更新由候选模型获取单元308保持的候选模型。候选模型更新单元310从学习数据管理单元306获取用于学习的学习数据。然后,候选模型更新单元310将包括在获取的各学习数据中的局部图像块输入到候选模型,以获得指示总和为1并且表示可以吸附和不可吸附的两个类的概率中的任一者的输出值。另外,候选模型更新单元310从包括在学习数据中并表示可以吸附或不可吸附的地面真值标签中获取候选模型应输出的地面真值。更具体地,如果地面真值标签表示可以吸附,则候选模型更新单元310确定可以吸附的概率为1。如果地面真值标签表示不可吸附,则候选模型更新单元310确定可以吸附的概率为0。候选模型更新单元310将候选模型输出的输出值与地面真值之间的误差定义为交叉熵误差。然后,候选模型更新单元310使用随机梯度下降来更新候选模型的学习参数以最小化误差。
(S416)
在S416中,执行模型替换单元311用由候选模型获取单元308保持的候选模型来替换由执行模型保持单元303保持的执行模型。
(S417)
在S417中,例如,候选模型更新单元310确定是否终止模型替换处理。如果候选模型更新单元310确定不终止模型替换处理,则从S411重复该处理。如果候选模型更新单元310确定终止模型替换处理,则终止图5B的模型替换处理。
由于与任务执行处理并行地进行包括上述操作的模型替换处理,因此可以在后台利用最新的学习数据对在外部服务器上新发布的模型进行增量学习,并在经历了增量学习的发布模型满足预定性能水平时,可以用发布模型替换执行模型。因此,可以用从外部服务器获取的模型来替换执行模型,而不会导致在用户工厂中操作的机器人103的任务成功率有任何降低,并且无需通过机器人103以试错的方式进行任务以进行增量学习。
(第一变型例)
在实施例中,当在S403中对机器人103的运动进行计划时,机器人运动计划单元302使用从RGB图像生成的局部图像块作为输入到模型的信息来计算识别信息。输入信息不限于局部图像块。例如,机器人运动计划单元302可以使用RGB图像作为输入。在这种情况下,机器人运动计划单元302使用神经网络模型作为模型,该神经网络模型接收RGB图像的所有像素作为输入,并输出与图像中可以保持的部分相对应的像素位置。在这种情况下,由学习数据管理单元306在S406中生成的学习数据的传感器信息包括当任务成功/失败确定结果为“成功”时获取的RGB图像的所有像素,并且要输出的识别信息的地面真值标签指示与图像中可以保持的部分相对应的像素位置。在S413中,如果由模型输出的像素位置与由地面真值标签指示的像素位置之间的距离小于预定距离,则评估单元309确定识别结果为真。评估单元309对接收到的各学习数据进行上述评估处理,以计算正确的识别率,并将计算出的率确定为候选模型的性能评估结果。此外,在S415中,候选模型更新单元310获得候选模型与各学习数据相关联地输出的像素位置与由地面真值标签指示的像素位置之间的平方距离,并将平方距离的总和定义为误差。然后,候选模型更新单元310使用随机梯度下降来更新候选模型的学习参数以最小化误差。
(第二变型例)
根据上述方法,使用RGB图像的所有像素作为输入到模型的信息来进行实施例中的处理。可以将RGB图像的所有像素和深度图像的所有像素的对用作输入。在这种情况下,机器人运动计划单元302使用神经网络模型作为模型,该神经网络模型接收RGB图像和深度图像作为输入,并输出与图像中可以保持的部分相对应的像素位置。其余处理与上述方法相同,其中将RGB图像的所有像素用作输入。如上所述,在S403中可以使用任何传感器信息,只要可以基于传感器信息计算用于计划机器人103的运动的识别信息即可。
(第三变型例)
尽管在实施例中,任务成功/失败确定单元305在S405中基于从电子秤202获取的重量来确定任务的成功或失败,但是可以以其他方式来确定任务的成功或失败。例如,任务成功/失败确定单元305可以基于气压进行确定。在这种情况下,传感器信息获取单元301从作为传感器104之一的喷射器获取气压,该喷射器用于将负压空气提供给吸附手。任务成功/失败确定单元305可以在吸嘴203没有通过吸附保持物体的状态下响应于气压从给定值的预定增大来检测目标物体204的吸附,从而确定任务已经成功进行。此外,任务成功/失败确定单元305可以基于图像来确定任务的成功或失败。在这种情况下,传感器信息获取单元301从成功/失败确定相机获取图像,该成功/失败确定相机被光学地布置为传感器104之一。在机器人手臂通过吸附保持目标物体204之后,机器人控制单元304将机器人手臂移动到预定位置,并使成功/失败确定相机拍摄图像。任务成功/失败确定单元305可以通过图像处理来检测拍摄图像中目标物体的存在或不存在,并且基于拍摄图像中目标图像的存在来确定目标物体204已经通过吸附而被成功地保持。如上所述,在S405中可以使用任何传感器信息,只要可以基于传感器信息确定任务的成功或失败即可。
(第四变型例)
在实施例中由学习数据管理单元306管理的学习数据不限于在S406中通过利用当前使用的执行模型来操作机器人103而生成的学习数据。由学习数据管理单元306管理的学习数据可以是在利用当前执行模型替换之前获得的学习数据,或者可以是通过利用上一代执行模型进行图5A的任务执行处理而获得并且添加到管理目标的学习数据。类似地,由学习数据管理单元306管理的学习数据可以是通过利用上两代或更早的执行模型进行图5A的任务执行处理而获得并且添加到管理目标的学习数据。另外,由学习数据管理单元306管理的学习数据可以是通过利用特定执行模型(机器人控制装置102保持该特定执行模型以生成学习数据)进行图5A的任务执行处理而获得并且添加到管理目标的学习数据。此外,由学习数据管理单元306管理的学习数据可以是利用如上所述的不同执行模型生成的学习数据的混合。如上所述,在图5A的任务执行处理中可以使用除候选模型以外的任何执行模型。
(第五变型例)
尽管在实施例中将由学习数据管理单元306管理的所有学习数据用于评估和候选模型的增量学习,但是可以选择和使用学习数据的子集。例如,可以选择学习数据,使得包含生成时间在一天中的设置时间之后的设置比例的学习数据。例如,在用户环境中每月改变照明布局的情况下,可以选择学习数据,使得一个月内生成的学习数据占所选学习数据的50%。这使得在用户使用机器人103的环境已经改变的情况下,能够根据最近的环境对获取的候选模型进行评估和增量学习。作为选择学习数据的另一种方式,可以基于用于学习数据的传感器信息的特征来选择学习数据。在执行模型是神经网络模型的情况下,模型的特征提取层用于从学习数据中提取局部图像块的特征向量,并选择学习数据,使得特征向量的协方差矩阵增大。这使得在变化的用户环境中,能够根据各种各样的状况对获取的候选模型进行评估和增量学习。此外,当在S406中学习数据管理单元306将新的学习数据添加到管理目标时,可以以上述方式选择学习数据,并且可以消除不必要的学习数据。另选地,可以在S406中将所有学习数据添加到管理目标,并且可以在学习数据管理单元306将学习数据赋予评估单元309或候选模型更新单元310时,在S413或S415中选择学习数据。
(第六变型例)
尽管在实施例中将拾取任务描述为示例性任务,但是任务可以是其他任务。例如,任务可以是用于将通过吸附保持的目标物体安装在目的地物体上的安装任务。对于这种安装任务,附装到机器人103的吸嘴203通过吸附保持目标物体。在S402中,RGB-D相机201获取指示目标物体和目的地物体的测量的传感器信息,更具体地,获取通过从俯视视角拍摄两个物体的图像而获得的俯视视角RGB图像。在S403中,为了计划机器人103的运动,机器人运动计划单元302使用神经网络模型,该神经网络模型接收俯视视角RGB图像作为输入并且输出目标物体和目的地物体的相对位置和朝向。在S405中,任务成功/失败确定单元305利用执行任务之后拍摄的俯视视角RGB图像,通过图像处理来确定安装任务的成功或失败。由学习数据管理单元306在S406中生成的学习数据的传感器信息是用于计划机器人103的运动并且导致针对任务的成功或失败的确定“成功”的俯视透视RGB图像。要输出的识别信息的地面真值标签指示目标物体和目的地物体的相对位置和朝向。在S413中,如果从模型输出的两个物体的相对位置和朝向与由地面真值标签指示的相对位置和朝向之间的误差小于预定值,则评估单元309确定识别结果为真。这里使用的术语“相对位置和朝向之间的误差”是指位置和朝向的平移分量之间的差和位置和朝向的朝向分量之间的差的加权和。对由评估单元309接收的各学习数据进行上述评估处理,以计算正确的识别率,并且将计算出的率确定为候选模型的性能评估结果。此外,在S415中,候选模型更新单元310获得两个物体的相对位置和朝向(候选模型将该相对位置和朝向与各学习数据相关联地输出)与由地面真值标签指示的相对位置和朝向之间的平方距离,并且将平方距离的总和定义为误差。然后,候选模型更新单元310使用随机梯度下降来更新候选模型的学习参数以最小化误差。如上所述,在实施例中可以进行任何任务,只要可以通过使用接收传感器信息作为输入的模型的识别处理来在任务中计划机器人103的运动即可。
(第七变型例)
尽管在实施例中机器人控制装置102从服务器106获取模型,但是服务器可以是其他用户使用的机器人控制装置。这使得能够引入由其他用户开发或进行学习的模型作为执行模型,而无需在原始用户环境中以试错的方式进行任务。
(第八变型例)
在实施例的S414中,评估单元309基于用户预先设置的固定值来确定在S413中计算出的性能评估结果是否满足预定性能水平。然而,用户可以确定评估结果是否满足预定性能水平。在这种情况下,评估单元309使显示单元13显示使用户能够掌握性能评估结果的信息,更具体地,显示在S413中计算出的正确识别率、以及响应于各学习数据的输入局部图像块而从候选模型输出的输出值。用户通过参照在显示单元13上显示的信息来确定在S413中计算出的性能评估结果是否满足预定性能水平,并且评估单元309接收用户通过输入单元14输入的确定结果。该处理是接收处理的示例,接收处理接收关于是否用候选模型替换执行模型的确定。因此,用户可以根据用户的状况灵活地确定是否用候选模型替换执行模型。
<第二实施例>
在第二实施例中,将以如下机器人系统为例,该机器人系统安装在用户工厂中并进行用吸附手吸附和拾取目标物体的任务,并且将描述如下方法,机器人系统通过该方法从在多个外部服务器上发布的候选模型中自动选择具有最佳性能的候选模型,并引入所选择的模型。在该实施例中,机器人系统用当前保持在系统中的执行模型来进行任务以收集学习数据。机器人系统通过使用学习数据来评估在后台新获取的多个候选模型中的各个的性能,并且如果具有最佳性能的候选模型的性能优于执行模型的性能,则机器人系统用候选模型来替换当前使用的执行模型。如上所述,可以从服务器上发布的多个模型中选择具有最佳性能的模型,并将其引入用户系统,而无需通过机器人103进行性能评估的任务。
图6例如是示出机器人系统的示意性构造以及机器人系统与外部服务器之间的关系的图。机器人系统501是用户A使用的机器人系统。机器人系统501包括机器人控制装置502、连接到机器人控制装置502的机器人103以及传感器104。机器人控制装置502在其中保持执行模型105。机器人103、传感器104和执行模型105与第一实施例中描述的相似。机器人控制装置502基于识别结果控制机器人103以进行任务。机器人控制装置502经由互联网108连接到多个外部服务器,例如,服务器A 503和服务器B 505。当服务器A 503发布新模型504时或当服务器B 505发布新模型506时,机器人控制装置502经由网络获取发布模型作为候选模型。机器人控制装置502评估候选模型的性能,并且如果评估的性能满足预定性能水平,则机器人控制装置502用候选模型替换执行模型105。各机器人控制装置连接到多个服务器,并且可以从任何服务器获取模型。
对于机器人系统501的外观和坐标系,外观和坐标系与图2中的相同,其中,用本实施例的机器人控制装置502来替换第一实施例的机器人控制装置102。另外,机器人系统501的硬件构造也与图3相同,其中,用本实施例的机器人控制装置502来替换第一实施例的机器人控制装置102。
图7是示出机器人控制装置502的功能构造的图。在本实施例的机器人控制装置502中,从图4所示的第一实施例的机器人控制装置102的组件中去除了候选模型更新单元310。因此,不进行候选模型的学习参数的更新。此外,候选模型获取单元308和评估单元309在功能上被改变为候选模型获取单元601和评估单元602。机器人控制装置502连接到多个服务器,例如服务器A 503和服务器B 505。现在将描述具有与第一实施例中的功能不同的功能的候选模型获取单元601和评估单元602。
候选模型获取单元601经由互联网获取由连接至机器人控制装置502的服务器A503的模型保持单元603或连接至机器人控制装置502的服务器B 505的模型保持单元604保持的模型,并保持获取的模型。
评估单元602利用从学习数据管理单元306获得的学习数据评估由候选模型获取单元601获取的候选模型的性能,并基于评估结果确定是否用候选模型替代执行模型。
现在将参照流程图描述在该实施例中由机器人控制装置502进行的处理的更多具体细节。机器人控制装置502并行执行两个处理。第一处理是包括图5A中的S401至S408的任务执行处理,并且第一处理的细节与第一实施例中描述的相同。第二处理是模型替换处理,包括图8中的S701至S706。在模型替换处理中,周期性地确定是否在连接到机器人控制装置502的多个服务器上发布了新模型。当确定发布了新模型时,获取新模型作为候选模型。如果候选模型的性能满足用户环境中所需的水平,则用候选模型来替换执行模型。将在下面详细描述模型替换处理。
(S701)
在S701中,候选模型获取单元601依次确定是否在服务器A 503或服务器B 505上发布了新模型。如果候选模型获取单元601确定没有在任何服务器上发布新模型,则处理进行到S706。如果候选模型获取单元601检测到在任何服务器上发布的新模型,则响应于该检测,处理进入S702。
(S702)
在S702中,候选模型获取单元601经由网络从与模型相关的服务器获取在S701中检测到的新模型。将所获取的模型作为候选模型保持在由候选模型获取单元601管理的存储区域中。
(S703)
在S703中,评估单元602利用由学习数据管理单元306管理的学习数据来评估由候选模型获取单元601保持的候选模型的性能。评估单元602从学习数据管理单元306中获取用于评估的学习数据。学习数据管理单元306将在数据库中管理的学习数据随机混洗并分类为两组,用于评估的学习数据和用于增量学习的学习数据。学习数据管理单元306将用于评估的学习数据赋予评估单元602。然后,评估单元602将获取的各学习数据中包括的局部图像块输入到候选模型,以计算表示可以吸附和不可吸附的两类中的任一者的概率,并且确定具有更高概率的类作为与学习数据相关联的识别结果。评估单元602将识别结果与包括在学习数据中的表示可以吸附或不可吸附的地面真值标签进行核对,以确定识别结果是真还是假。评估单元602对接收到的各学习数据进行上述评估处理,以计算正确的识别率,并将计算出的率确定为候选模型的性能评估结果。
(S704)
在S704中,评估单元602确定在S703中计算出的性能评估结果是否满足预定性能水平。预定性能水平是通过以与S703中相同的方式评估当前使用的执行模型的性能而获得的结果。如果候选模型的评估结果优于执行模型的评估结果,则评估单元602确定候选模型的性能满足该水平,并且处理进入S705。否则,评估单元602确定候选模型的性能不满足该水平,并且处理进行到S706。
(S705)
在S705中,执行模型替换单元311用由候选模型获取单元601保持的候选模型来替换由执行模型保持单元303保持的执行模型。
(S706)
在S706中,例如,评估单元602确定是否终止模型替换处理。如果评估单元602确定不终止模型替换处理,则从S701开始重复处理。如果评估单元602确定终止模型替换处理,则终止图8的模型替换处理。
与任务执行处理并行地进行包括上述操作的模型替换处理可以从在多个外部服务器上发布的模型中选择具有最佳性能的模型,并且用所选择的模型替换执行模型。如上所述,可以始终从可用模型中选择具有最佳性能的模型,并且可以将所选择的模型用作在用户工厂中操作的机器人控制装置502的执行模型。
(变型例)
在实施例中,候选模型获取单元601在S701中依次确定是否在服务器A 503或服务器B 505上发布了新模型。如果候选模型获取单元601检测到在任一服务器上发布的新模型,则响应于检测,处理进行到S702。机器人控制装置502依次进行从S702起的操作。然而,只要候选模型获取单元601检测到第一新模型,处理就不必进入S702。候选模型获取单元601可以首先检查所有服务器以获取所有新的候选模型。在这种情况下,机器人控制装置502并行进行S702和S703中的操作以计算候选模型的性能评估结果。然后,机器人控制装置502对展现最高性能评估结果的候选模型进行从S704起的操作。因此,可以更快地检测用于替换的最优候选模型。
<其他实施例>
可以通过以下处理来实现本发明,该处理是经由网络或存储介质将用于实现上述实施例的一个或多个功能的程序提供给系统或装置,并且使该系统或装置的计算机中的一个或多个处理器读出并执行程序。本发明还可以通过用于实现一个或多个功能的电路(例如,ASIC)来实现。
尽管已经详细描述了本发明的示例性实施例,但是本发明不限于特定实施例。
例如,机器人控制装置102可以包括多个通信I/F。例如,机器人控制装置102可以包括用于机器人103的通信I/F、用于服务器106的通信I/F以及用于传感器104的通信I/F。
此外,机器人控制装置102可以包括多个CPU和多个存储器。CPU可以使用存储器并且基于存储在存储器中的程序执行处理。
此外,图4和图7所示的机器人控制装置102的功能组件的子集或全部可以作为硬件组件并入机器人控制装置102中。
根据上述实施例,可以将从安装在用户环境中的机器人系统的外部获取的模型引入到用户的机器人系统中,而无需通过机器人系统以试错的方式进行任务。
本发明不限于上述实施例,并且可以在本发明的精神和范围内进行各种改变和变型。因此,为了使公众了解本发明的范围,做出了以下权利要求。
本申请要求2018年5月28日提交的日本专利申请第2018-101357号的优先权,该申请的全部内容通过引用并入本文。

Claims (20)

1.一种信息处理装置,其包括:
第一获取单元,其被构造为从能够经由网络与所述信息处理装置通信的外部装置获取第一学习模型,所述第一学习模型响应于图像信息的输入而输出识别信息;
学习单元,其被构造为,使所述第一学习模型学习通过所述信息处理装置使用识别信息的控制结果,所述识别信息是响应于执行环境中的所述图像信息的输入而从第二学习模型输出的;以及
输出单元,其被构造为,通过向由所述学习单元学习的所述第一学习模型输入所述执行环境中的图像信息来使所述第一学习模型输出识别信息。
2.根据权利要求1所述的信息处理装置,所述信息处理装置还包括:
评估单元,其被构造为基于所述执行环境中的图像信息、以及响应于向第一学习模型输入所述图像信息而输出为地面真值的识别信息,来评估所述第一学习模型,
其中,在所述评估单元的评估结果满足需要的情况下,所述输出单元通过输入所述执行环境中的所述图像信息来使已由所述学习单元学习的所述第一学习模型输出识别信息。
3.根据权利要求2所述的信息处理装置,所述信息处理装置还包括:
替换单元,其被构造为在所述评估单元的评估结果满足所述需要的情况下,用已由所述学习单元学习的所述第一学习模型来替换所述第二学习模型。
4.根据权利要求2所述的信息处理装置,其中,
所述学习单元基于由所述评估单元获得的所述第一学习模型的评估结果、以及作为与所述图像信息相关联的地面真值的识别信息,来更新所述第一学习模型的耦合加权系数。
5.根据权利要求2所述的信息处理装置,其中,
作为与所述图像信息相关联的地面真值的所述识别信息是通过基于所述第二学习模型进行任务而获得的学习数据,所述第二学习模型接收图像信息作为输入并输出识别信息,并且
在由所述评估单元评估的所述第一学习模型的性能不满足预定性能水平的情况下,所述学习单元基于所述学习数据来更新所述第一学习模型。
6.根据权利要求3所述的信息处理装置,其中,在由所述评估单元评估的所述第一学习模型的性能满足如下性能的情况下,所述替换单元用所述第一学习模型来替换所述第二学习模型,所述性能是被设置为进行任务所需的性能。
7.根据权利要求3所述的信息处理装置,其中,在由所述评估单元评估的所述第一学习模型的性能满足所述第二学习模型的性能的情况下,所述替换单元用所述第一学习模型来替换所述第二学习模型。
8.根据权利要求1所述的信息处理装置,其中,所述第一学习模型和所述第二学习模型中的各个具有彼此不同的神经网络结构。
9.根据权利要求1所述的信息处理装置,其中,通过向所述执行环境中的图像信息添加基于响应于所述执行环境中的图像信息而从所述第二学习模型输出的识别信息来控制所述信息处理装置的结果,来获得响应于所述执行环境中的图像信息向学习模型的输入而作为地面真值输出的所述识别信息。
10.一种控制机器人的机器人控制装置,所述机器人控制装置包括:
第一获取单元,其被构造为从能够经由网络与所述机器人控制装置通信的外部装置获取候选模型,所述候选模型接收传感器信息作为输入并输出识别信息;
评估单元,其被构造为基于通过基于执行模型来执行任务而获得的学习数据,来评估所述候选模型的性能,所述执行模型接收传感器信息作为输入并输出识别信息;
显示单元,其被构造为显示指示由所述评估单元评估的所述候选模型的所述性能的信息;
接收单元,其被构造为接收关于是否用所述候选模型替换所述执行模型的输入;以及
替换单元,其被构造为基于所述输入来用所述候选模型替换所述执行模型。
11.根据权利要求10所述的机器人控制装置,所述机器人控制装置还包括:
第二获取单元,其被构造为获取关于目标物体的传感器信息;
计划单元,其被构造为基于所述执行模型基于所述传感器信息而输出的识别信息,来计划所述机器人的运动;
控制单元,其被构造为基于所述机器人的计划运动来控制所述机器人;
确定单元,其被构造为确定由被控制的所述机器人进行的任务的成功或失败;以及
管理单元,其被构造为基于所述传感器信息和指示所述任务的成功或失败的确定结果来生成所述学习数据,并管理所述学习数据。
12.根据权利要求11所述的机器人控制装置,其中,所述管理单元选择所述学习数据使得所述传感器信息的特征的方差增大,并管理所述学习数据。
13.根据权利要求11所述的机器人控制装置,其中,所述管理单元管理多个学习数据,使得包含生成时间在一天中的设置时间之后的设置比例的学习数据。
14.根据权利要求10所述的机器人控制装置,其中,所述任务是保持目标物体的任务。
15.根据权利要求10所述的机器人控制装置,其中,所述任务是将目标物体安装在目的地物体上的安装任务。
16.根据权利要求10所述的机器人控制装置,其中,所述第一获取单元从能够经由所述网络与所述机器人控制装置通信的多个外部装置获取候选模型。
17.一种由信息处理装置进行的信息处理方法,所述信息处理方法包括:
步骤a,从能够经由网络与所述信息处理装置通信的外部装置获取第一学习模型,所述第一学习模型响应于图像信息的输入而输出识别信息;
步骤b,使所述第一学习模型学习通过所述信息处理装置使用识别信息的控制结果,所述识别信息是响应于执行环境中的所述图像信息的输入而从第二学习模型输出的;以及
步骤c,通过向在所述步骤b中学习的所述第一学习模型输入所述执行环境中的图像信息来使所述第一学习模型输出识别信息。
18.一种由控制机器人的机器人控制装置进行的信息处理方法,所述信息处理方法包括:
步骤a,从能够经由网络与所述机器人控制装置通信的外部装置获取候选模型,所述候选模型接收传感器信息作为输入并输出识别信息;
步骤b,基于通过基于执行模型来进行任务而获得的学习数据,来评估所述候选模型的性能,所述执行模型接收传感器信息作为输入并输出识别信息;
步骤c,显示指示在所述步骤b中评估的所述候选模型的所述性能的信息;
步骤d,接收关于是否用所述候选模型替换所述执行模型的输入;以及
步骤e,基于所述输入来用所述候选模型替换所述执行模型。
19.一种存储程序的非暂时性计算机可读存储介质,所述程序在由计算机读取并执行时,使所述计算机执行由信息处理装置进行的信息处理方法的步骤,所述信息处理方法包括:
步骤a,从能够经由网络与所述信息处理装置通信的外部装置获取第一学习模型,所述第一学习模型响应于图像信息的输入而输出识别信息;
步骤b,使所述第一学习模型学习通过所述信息处理装置使用识别信息的控制结果,所述识别信息是响应于执行环境中的所述图像信息的输入而从第二学习模型输出的;以及
步骤c,通过向在所述步骤b中学习的所述第一学习模型输入所述执行环境中的图像信息来使所述第一学习模型输出识别信息。
20.一种存储程序的非暂时性计算机可读存储介质,所述程序在由计算机读取并执行时,使所述计算机执行由控制机器人的机器人控制装置进行的信息处理方法的步骤,所述信息处理方法包括:
步骤a,从能够经由网络与所述机器人控制装置通信的外部装置获取候选模型,所述候选模型接收传感器信息作为输入并输出识别信息;
步骤b,基于通过基于执行模型来进行任务而获得的学习数据,来评估所述候选模型的性能,所述执行模型接收传感器信息作为输入并输出识别信息;
步骤c,显示指示在所述步骤b中评估的所述候选模型的所述性能的信息;
步骤d,接收关于是否利用所述候选模型替换所述执行模型的输入;以及
步骤e,基于所述输入来利用所述候选模型替换所述执行模型。
CN201980035572.4A 2018-05-28 2019-05-15 信息处理装置和方法、机器人控制装置和方法及存储介质 Active CN112203809B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2018101357A JP7154823B2 (ja) 2018-05-28 2018-05-28 情報処理装置、ロボット制御装置、情報処理方法及びプログラム
JP2018-101357 2018-05-28
PCT/JP2019/019318 WO2019230399A1 (ja) 2018-05-28 2019-05-15 ロボット制御装置、システム、情報処理方法及びプログラム

Publications (2)

Publication Number Publication Date
CN112203809A CN112203809A (zh) 2021-01-08
CN112203809B true CN112203809B (zh) 2023-09-15

Family

ID=68696668

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980035572.4A Active CN112203809B (zh) 2018-05-28 2019-05-15 信息处理装置和方法、机器人控制装置和方法及存储介质

Country Status (4)

Country Link
US (1) US20210072734A1 (zh)
JP (1) JP7154823B2 (zh)
CN (1) CN112203809B (zh)
WO (1) WO2019230399A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7251555B2 (ja) * 2019-01-18 2023-04-04 株式会社安川電機 ロボット制御システム及びロボット制御方法
JP7021158B2 (ja) * 2019-09-04 2022-02-16 株式会社東芝 ロボットシステムおよび駆動方法
US11822913B2 (en) 2019-12-20 2023-11-21 UiPath, Inc. Dynamic artificial intelligence / machine learning model update, or retrain and update, in digital processes at runtime
JP7456592B2 (ja) 2020-03-25 2024-03-27 株式会社栗本鐵工所 黒鉛球状化処理装置、学習装置、および、マグネシウム投入量の決定方法
KR102432361B1 (ko) * 2022-03-21 2022-08-17 주식회사 서큘러스 인터랙션 로봇, 로봇 운영 시스템, 및 그 제어 방법

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004199391A (ja) * 2002-12-18 2004-07-15 Manabu Tanaka 画像解析におけるしきい値決定方法とその装置、二値化装置並びに画像解析装置、学習機能付き情報処理方法と学習機能付き画像解析装置並びにそれらのための記録媒体
JP2015100877A (ja) * 2013-11-25 2015-06-04 キヤノン株式会社 ロボット制御方法、及びロボット制御装置
JP6088679B1 (ja) * 2016-02-19 2017-03-01 ファナック株式会社 カメラの画像により故障を判定するロボットシステムの故障診断装置
CN107562050A (zh) * 2017-08-29 2018-01-09 广东工业大学 一种机器人识别环境的方法及系统
CN107977668A (zh) * 2017-07-28 2018-05-01 北京物灵智能科技有限公司 一种机器人图像识别方法及系统

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2941032B2 (ja) * 1990-09-27 1999-08-25 豊田工機株式会社 加工条件自動作成機能を有する数値制御装置
JP3211186B2 (ja) * 1997-12-15 2001-09-25 オムロン株式会社 ロボット、ロボットシステム、ロボットの学習方法、ロボットシステムの学習方法および記録媒体
JP2003203171A (ja) * 2002-01-07 2003-07-18 Yamaha Motor Co Ltd 商品受注システム、商品受注方法、商品受注システム用プログラム、及び商品受注システム用記録媒体
US9342793B2 (en) * 2010-08-31 2016-05-17 Red Hat, Inc. Training a self-learning network using interpolated input sets based on a target output
JP6325504B2 (ja) * 2015-10-28 2018-05-16 ファナック株式会社 学習制御器の自動調整を行う機能を有するサーボ制御装置
JP6614611B2 (ja) * 2016-02-29 2019-12-04 Kddi株式会社 画像間類似度を考慮して物体を追跡する装置、プログラム及び方法
JP6140331B1 (ja) * 2016-04-08 2017-05-31 ファナック株式会社 主軸または主軸を駆動するモータの故障予知を学習する機械学習装置および機械学習方法、並びに、機械学習装置を備えた故障予知装置および故障予知システム
JP6542824B2 (ja) * 2017-03-13 2019-07-10 ファナック株式会社 入力画像から検出した対象物の像の尤度を計算する画像処理装置および画像処理方法
US11017317B2 (en) * 2017-12-27 2021-05-25 X Development Llc Evaluating robot learning
US10730181B1 (en) * 2017-12-27 2020-08-04 X Development Llc Enhancing robot learning
US11146327B2 (en) * 2017-12-29 2021-10-12 Hughes Network Systems, Llc Machine learning models for adjusting communication parameters

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004199391A (ja) * 2002-12-18 2004-07-15 Manabu Tanaka 画像解析におけるしきい値決定方法とその装置、二値化装置並びに画像解析装置、学習機能付き情報処理方法と学習機能付き画像解析装置並びにそれらのための記録媒体
JP2015100877A (ja) * 2013-11-25 2015-06-04 キヤノン株式会社 ロボット制御方法、及びロボット制御装置
JP6088679B1 (ja) * 2016-02-19 2017-03-01 ファナック株式会社 カメラの画像により故障を判定するロボットシステムの故障診断装置
CN107977668A (zh) * 2017-07-28 2018-05-01 北京物灵智能科技有限公司 一种机器人图像识别方法及系统
CN107562050A (zh) * 2017-08-29 2018-01-09 广东工业大学 一种机器人识别环境的方法及系统

Also Published As

Publication number Publication date
JP7154823B2 (ja) 2022-10-18
JP2019206041A (ja) 2019-12-05
WO2019230399A1 (ja) 2019-12-05
CN112203809A (zh) 2021-01-08
US20210072734A1 (en) 2021-03-11

Similar Documents

Publication Publication Date Title
CN112203809B (zh) 信息处理装置和方法、机器人控制装置和方法及存储介质
US10737385B2 (en) Machine learning device, robot system, and machine learning method
TWI638249B (zh) Position control device and position control method
CN112258567B (zh) 物体抓取点的视觉定位方法、装置、存储介质及电子设备
CN110246182B (zh) 基于视觉的全局地图定位方法、装置、存储介质和设备
CN110692082A (zh) 学习装置、学习方法、学习模型、推算装置以及夹持系统
US9295141B2 (en) Identification device, method and computer program product
CN113199483A (zh) 机器人系统、机器人的控制方法、机器学习装置及机器学习方法
US10600206B2 (en) Tracking system and method thereof
WO2020022302A1 (ja) 把持装置
CN111483750A (zh) 机器人系统的控制方法以及控制装置
CN113052907B (zh) 一种动态环境移动机器人的定位方法
US11568598B2 (en) Method and device for determining an environment map by a server using motion and orientation data
JP2019008337A (ja) 物体識別システム、物体識別方法、プログラム及びコンピュータ記憶媒体
JP7051751B2 (ja) 学習装置、学習方法、学習モデル、検出装置及び把持システム
CN115862074B (zh) 人体指向确定、屏幕控制方法、装置及相关设备
CN109816728B (zh) 基于生成查询网络的机械臂抓取点定位检测的方法
CN111745639A (zh) 信息处理方法及装置、物体检测装置以及机器人系统
CN110235137A (zh) 学习数据获取设备和方法、程序和存储介质
CN110942083A (zh) 拍摄装置以及拍摄系统
CN115862124A (zh) 视线估计方法、装置、可读存储介质及电子设备
CN111470244B (zh) 机器人系统的控制方法以及控制装置
JP2021061014A (ja) 学習装置、学習方法、学習モデル、検出装置及び把持システム
EP3479204B1 (en) User tracking for use in virtual reality
CN112183521A (zh) 一种智能输入方法、系统、设备及可读存储介质

Legal Events

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