CN109551459B - 机器人系统以及工件取出方法 - Google Patents
机器人系统以及工件取出方法 Download PDFInfo
- Publication number
- CN109551459B CN109551459B CN201811101031.0A CN201811101031A CN109551459B CN 109551459 B CN109551459 B CN 109551459B CN 201811101031 A CN201811101031 A CN 201811101031A CN 109551459 B CN109551459 B CN 109551459B
- Authority
- CN
- China
- Prior art keywords
- robot
- image
- learning
- teaching
- 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 89
- 238000012545 processing Methods 0.000 claims description 228
- 238000000605 extraction Methods 0.000 claims description 149
- 238000011156 evaluation Methods 0.000 claims description 99
- 238000013500 data storage Methods 0.000 claims description 51
- 238000010801 machine learning Methods 0.000 claims description 46
- 239000000284 extract Substances 0.000 claims description 9
- 230000008569 process Effects 0.000 description 42
- 238000011960 computer-aided design Methods 0.000 description 20
- 238000013527 convolutional neural network Methods 0.000 description 11
- 238000007781 pre-processing Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 9
- 238000012986 modification Methods 0.000 description 7
- 230000004048 modification Effects 0.000 description 7
- 238000010276 construction Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000011176 pooling Methods 0.000 description 5
- 238000013135 deep learning Methods 0.000 description 4
- 238000005259 measurement Methods 0.000 description 3
- 230000015654 memory Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000011218 segmentation Effects 0.000 description 3
- 101100521334 Mus musculus Prom1 gene Proteins 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000010845 search algorithm Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000004040 coloring Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 230000008021 deposition Effects 0.000 description 1
- 230000012447 hatching Effects 0.000 description 1
- 238000003709 image segmentation Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000036544 posture Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000010079 rubber tapping Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
Images
Classifications
-
- 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/0081—Programme-controlled manipulators with master teach-in means
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/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
-
- 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/1628—Programme controls characterised by the control loop
- B25J9/163—Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
- B25J13/08—Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
- B25J13/088—Controls for manipulators by means of sensing devices, e.g. viewing or touching devices with position, velocity or acceleration sensors
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J15/00—Gripping heads and other end effectors
- B25J15/08—Gripping heads and other end effectors having finger members
-
- 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/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1679—Programme controls characterised by the tasks executed
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/39—Robotics, robotics to robotics hand
- G05B2219/39311—Multilayer, MNN, four layer perceptron, sigmoidal neural network
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40053—Pick 3-D object from pile of objects
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Human Computer Interaction (AREA)
- Manipulator (AREA)
- Numerical Control (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及机器人系统以及工件取出方法。以更简便的方法选择工件的取出位置。机器人系统(1a)具备:三维测量机(40),其生成多个工件(50)的距离图像;机器人(30),其具有用于取出上述多个工件(50)的至少一个的机械手;显示部(12),其显示通过上述三维测量机(40)生成的上述距离图像;以及接受部(13),其接受用于在所显示的上述距离图像上由上述机械手进行的取出的取出位置的示教,上述机器人(30)根据所示教的上述取出位置,通过上述机械手取出上述多个工件(50)的至少一个。
Description
技术领域
本发明涉及进行用于机器人取出工件的处理的机器人系统以及工件取出方法。
背景技术
目前,为了检测工件的取出位置,进行使用了通过包括距离图像传感器的三维测量部测量出的工件的距离图像的示教。作为用于进行使用了距离图像的示教的方法,例如一般使用CAD(Computer-Aided Design计算机辅助设计)匹配的方法和根据设定参数进行搜索的方法。这里,距离图像是测量了测量对象物(工件)的表面的图像,表示拍摄到的图像上的各个像素(pixel)具有来自三维测量部的深度信息的图像。即,可以说距离图像上的各个像素(pixel)具有三维测量部所具备的三维坐标系的三维坐标信息。
在CAD匹配的方法中,首先生成与工件的形状对应的CAD数据。接着,针对CAD数据,示教机器人的机械手能够握持的工件的取出位置。另外,从测量了工件的距离图像搜索与CAD数据匹配的场所。然后,在匹配后的场所选择对CAD数据示教的工件的取出位置所对应的位置。根据该选择结果,能够通过控制机器人的机械手的握持来实现工件的取出。
例如专利文献1中公开一种通过使用这种CAD进行工件的取出位置的示教来取出被堆积的工件的技术。
另外,在根据设定参数进行检索时,根据示教者的经验来选择用于检索机器人的机械手可握持的工件的取出位置的检索算法,变更选择出的检索算法的参数并且确认对于实际的距离图像是否找到工件来调整参数,从而能够实现工件的取出。
专利文献1:日本特开2017-124450号公报
发明内容
如上所述会广泛地使用CAD数据匹配的方法。但是,在该方法中,需要对CAD模型示教多个通过机械手能够握持的工件的取出位置,示教需要时间。
另外,为了进行匹配,CAD模型成为必要,但是关于不定形的工件,不能够生成CAD模型。另外,当取出的对象不是成品而是加工中的工件时,为了特意取出加工中的工件的CAD模型必须通过追加生成。
另一方面,在不使用CAD数据而根据参数从距离图像进行搜索时,如上述那样需要根据示教者的经验,在考虑了工件与机械手的关系的基础上选择检索算法。
这样,在现有的方法中,在机器人系统中选择工件的取出位置并不容易。
因此,本发明的目的为提供用于通过更简单的方法选择工件的取出位置的机器人系统以及工件取出方法。
(1)本发明的机器人系统(例如后述的机器人系统1a)具备:三维测量机(例如后述的三维测量机40),其生成多个工件(例如后述的工件50)的距离图像;机器人(例如后述的机器人30),其具有用于取出上述多个工件的至少一个的机械手;显示部(例如后述的显示部12),其显示通过上述三维测量机生成的上述距离图像;以及接受部(例如后述的操作接受部13),其接受用于在上述显示的距离图像上由上述机械手进行取出的取出位置的示教,上述机器人根据所示教的上述取出位置,通过上述机械手取出上述多个工件的至少一个。
(2)在上述(1)记载的机器人系统中,上述显示部可以在所显示的上述距离图像上描绘所示教的上述取出位置。
(3)在上述(1)或(2)记载的机器人系统中,具备:取出位置选择部(例如后述的选择处理部11),其存储所示教的上述取出位置以及其附近的三维点群的信息作为搜索用信息,对上述距离图像进行基于上述搜索用信息的搜索,从而选择新的取出位置,上述机器人可以在通过上述取出位置选择部选择出的上述新的取出位置通过上述机械手来取出各个工件。
(4)本发明的其他机器人系统(例如后述的机器人系统1a),具备:三维测量机(例如后述的三维测量机40),其生成多个工件(例如后述的工件50)的距离图像;机器人(例如后述的机器人30),其具有用于取出上述多个工件的至少一个的机械手;显示部(例如后述的显示部12),其显示通过上述三维测量机生成的上述距离图像和在该距离图像上所示教的取出位置;接受部(例如后述的操作接受部13),其接受用于在上述显示的距离图像上由上述机械手进行取出的取出位置的示教;以及学习部(例如后述的学习部14),其通过进行机器学习即将所示教的上述取出位置以及其附近的三维点群的信息作为输入数据,将与针对作为该输入数据的三维点群的信息的示教对应的评价值或与取出成败对应的评价值中的至少任意一方设为了标签,来构筑用于输出关于作为输入数据而被输入的三维点群的信息的评价值的学习模型,上述机器人根据所示教的上述取出位置由上述机械手来取出上述多个工件的至少一个。
(5)本发明的其他机器人系统(例如后述的机器人系统1a),具备:三维测量机(例如后述的三维测量机40),其生成多个工件(例如后述的工件50)的距离图像;机器人(例如后述的机器人30),其具有用于取出上述多个工件的至少一个的机械手;显示部(例如后述的显示部12),其显示通过上述三维测量机生成的上述距离图像和在该距离图像上所示教的取出位置;接受部(例如后述的操作接受部13),其接受用于在上述显示的距离图像上由上述机械手进行取出的取出位置的示教;学习部(例如后述的学习部14),其通过进行机器学习即将所示教的上述取出位置以及其附近的三维点群的信息作为输入数据,将与针对作为该数据数据的三维点群的信息的示教对应的评价值或与取出成败对应的评价值中的至少任意一方设为标签,来构筑用于输出关于作为输入数据而被输入的三维点群的信息的评价值的学习模型;以及取出位置选择部(例如后述的选择处理部11),其从上述距离图像剪裁预定区域的距离图像,将被剪裁的上述距离图像的三维点群的信息作为输入数据输入给上述学习模型,从而根据关于被输出的上述三维点群的信息的评价值来选择新的取出位置,上述机器人根据所示教的上述取出位置由上述机械手来取出上述多个工件的至少一个,在通过上述取出位置选择部选择出的上述新的取出位置由上述机械手来取出各个工件。
(6)本发明的其他机器人系统(例如后述的机器人系统1b),具备:三维测量机(例如后述的三维测量机40),其生成多个工件(例如后述的工件50)的距离图像;机器人(例如后述的机器人30),其具有用于取出上述多个工件的至少一个的机械手;推定部(例如后述的推定处理部143),其输出通过进行取出位置的推定而生成并且由至少一个评价值组成的评价值地图,该取出位置是用于根据由上述三维测量机生成的上述距离图像通过上述机械手取出上述多个工件的至少一个的位置;以及位置选择部(例如后述的取出位置选择部153),其根据通过上述推定部输出的上述评价值地图来选择由上述机械手取出的上述多个工件的至少一个的取出位置,上述机器人根据通过上述位置选择部选择出的上述取出位置由上述机械手取出上述多个工件的至少一个。
(7)本发明的其他机器人系统(例如后述的机器人系统1b),具备:三维测量机(例如后述的三维测量机40),其生成多个工件(例如后述的工件50)的距离图像;机器人(例如后述的机器人30),其具有用于取出上述多个工件的至少一个的机械手;监督数据存储部(例如后述的监督数据存储部151),其将通过上述三维测量机生成的上述距离图像作为机器学习用的监督数据进行存储;显示部(例如后述的显示部12),其显示存储在上述监督数据存储部中的上述距离图像;接受部(例如后述的操作接受部13),其接受基于上述显示部所显示的上述距离图像的至少一个示教位置的示教;注释处理部(例如后述的注释处理部152),其根据上述接受部接受的上述示教位置来生成表示至少一个示教位置的标签地图,将该标签地图与保存在上述监督数据存储部中的上述距离图像关联并作为数据组保存在上述监督数据存储部中;学习处理部(例如后述的学习处理部141),其将存储在上述监督数据存储部中的上述数据组作为输入来进行机器学习,输出学习完毕模型;学习完毕模型存储部(例如后述的学习完毕模型存储部142),其存储从上述学习处理部输出的上述学习完毕模型;推定部(例如后述的推定处理部143),其输出通过进行取出位置的推定而生成并且由至少一个评价值组成的评价值地图,该取出位置是用于根据由上述三维测量机新生成的新的多个工件的距离图像,通过上述机械手取出上述新的多个工件的至少一个时的位置;以及位置选择部(例如后述的取出位置选择部153),其根据通过上述推定部输出的上述评价值地图来选择由上述机械手取出的上述新的多个工件的至少一个的取出位置,上述机器人根据通过上述位置选择部选择出的上述取出位置由上述机械手取出上述新的多个工件的至少一个。
(8)本发明的工件取出方法为由具备生成多个工件(例如后述的工件50)的距离图像的三维测量机(例如后述的三维测量机40)和具有用于取出上述多个工件的至少一个的机械手的机器人(例如后述的机器人30)的机器人系统(例如后述的机器人系统1a)进行的工件取出方法,该方法具备:显示步骤,显示通过上述三维测量机生成的上述距离图像;以及接受步骤,接受用于在所显示的上述距离图像上由上述机械手进行取出的取出位置的示教,上述机器人根据所示教的上述取出位置通过上述机械手来取出上述多个工件的至少一个。
(9)本发明的其他工件取出方法为由具备生成多个工件(例如后述的工件50)的距离图像的三维测量机(例如后述的三维测量机40)和具有用于取出上述多个工件的至少一个的机械手的机器人(例如后述的机器人30)的机器人系统(例如后述的机器人系统1a)进行的工件取出方法,该方法具备:显示步骤,显示通过上述三维测量机生成的上述距离图像和在该距离图像上示教的取出位置;接受步骤,接受用于在所显示的上述距离图像上由上述机械手进行取出的取出位置的示教;以及学习步骤,通过进行机器学习即将所示教的上述取出位置以及其附近的三维点群的信息作为输入数据,将与针对作为该输入数据的三维点群的信息的示教对应的评价值或与取出成败对应的评价值中的至少任意一方设为标签,来构筑用于输出关于作为输入数据而被输入的三维点群的信息的评价值的学习模型,上述机器人根据所示教的上述取出位置通过上述机械手来取出上述多个工件的至少一个。
(10)本发明的其他工件取出方法为由具备生成多个工件(例如后述的工件50)的距离图像的三维测量机(例如后述的三维测量机40)和具有用于取出上述多个工件的至少一个的机械手的机器人(例如后述的机器人30)的机器人系统(例如后述的机器人系统1a)进行的工件取出方法,该方法具备:显示步骤,显示通过上述三维测量机生成的上述距离图像和在该距离图像上示教的取出位置;接受步骤,接受用于在所显示的上述距离图像上由上述机械手进行取出的取出位置的示教;学习步骤,通过进行机器学习即将所示教的上述取出位置以及其附近的三维点群的信息作为输入数据,将与针对作为该输入数据的三维点群的信息的示教对应的评价值或与取出成败对应的评价值中的至少任意一方设为标签,来构筑用于输出关于作为输入数据而被输入的三维点群的信息的评价值的学习模型;以及取出位置选择步骤,从上述距离图像剪裁预定区域的距离图像,将被剪裁的上述距离图像的三维点群的信息作为输入数据输入给上述学习模型,从而根据关于被输出的上述三维点群的信息的评价值来选择新的取出位置,上述机器人根据所示教的上述取出位置,通过上述机械手来取出上述多个工件的至少一个,在通过上述取出位置选择步骤选择出的上述新的取出位置通过上述机械手来取出各个工件。
(11)本发明的其他工件取出方法为由具备生成多个工件(例如后述的工件50)的距离图像的三维测量机(例如后述的三维测量机40)和具有用于取出上述多个工件的至少一个的机械手的机器人(例如后述的机器人30)的机器人系统(例如后述的机器人系统1b)进行的工件取出方法,具备:推定步骤,输出通过进行取出位置的推定而生成并且由至少一个评价值组成的评价值地图,该取出位置是用于根据由上述三维测量机生成的上述距离图像由上述机械手取出上述多个工件的至少一个的位置;以及位置选择步骤,根据通过上述推定步骤输出的上述评价值地图来选择由上述机械手取出的上述多个工件的至少一个的取出位置,上述机器人根据通过上述位置选择步骤选择出的上述取出位置由上述机械手取出上述多个工件的至少一个。
(12)本发明的其他工件取出方法为由具备生成多个工件(例如后述的工件50)的距离图像的三维测量机(例如后述的三维测量机40)和具有用于取出上述多个工件的至少一个的机械手的机器人(例如后述的机器人30)的机器人系统(例如后述的机器人系统1b)进行的工件取出方法,具备:监督数据存储步骤,将通过上述三维测量机生成的上述距离图像作为机器学习用的监督数据存储在监督数据存储部中;显示步骤,显示存储在上述监督数据存储部中的上述距离图像;接受步骤,接受基于通过上述显示步骤显示的上述距离图像的至少一个示教位置的示教;注释处理步骤,根据通过上述接受步骤接受的上述示教位置来生成表示至少一个示教位置的标签地图,将该标签地图与保存在上述监督数据存储部中的上述距离图像关联并作为数据组保存在上述监督数据存储部中;学习处理步骤,将存储在上述监督数据存储部中的上述数据组作为输入来进行机器学习,输出学习完毕模型;学习完毕模型存储步骤,将通过上述学习处理步骤输出的上述学习完毕模型存储在学习完毕模型存储部中;推定步骤,输出通过进行取出位置的推定而生成并且由至少一个评价值组成的评价值地图,该取出位置是用于根据在上述学习完毕模型存储部中存储的上述学习完毕模型和由上述三维测量机新生成的新的多个工件的上距离图像,通过上述机械手取出上述新的多个工件的至少一个时的位置;以及位置选择步骤,根据通过上述推定步骤输出的上述评价值地图来选择由上述机械手取出的上述新的多个工件的至少一个的取出位置,上述机器人根据通过上述位置选择步骤选择出的上述取出位置由上述机械手取出上述新的多个工件的至少一个。
根据本发明,能够通过更简单的方法选择工件的取出位置。
附图标记的说明
1a、1b:机器人系统;10a、10b:图像处理装置;11:选择处理部;111:选择用数据存储部;112:注释处理部;113:匹配部;114:剪裁部;12:显示部;13:操作接受部;14:学习部;141:学习处理部;142:学习完毕模型存储部;143:推定处理部;15:选择处理部;151:监督数据存储部;152:注释处理部;153:取出位置选择部;20:机器人控制装置;30:机器人;40:三维测量机;50:工件;60:容器;70:距离图像;71:示教位置;80:匹配用点群信息;90:取出位置候补。
附图说明
图1是表示本发明各个实施方式的整体结构的示意图。
图2是表示本发明第一实施方式的图像处理装置的功能块的框图。
图3是表示在本发明各个实施方式中作为取出对象的堆积工件的示意图。
图4是表示在本发明各个实施方式中通过测量堆积的工件而生成的距离图像的图。
图5表示在本发明各个实施方式中描绘了所示教的取出位置的距离图像。
图6表示在本发明的第一实施方式中记录的描绘位置周边三维点群信息。
图7是表示在本发明的第一实施方式中进行的剪裁的图。
图8是表示在本发明的第一实施方式中进行的剪裁时的扫描的图。
图9A是表示本发明的第一实施方式的动作的流程图(1/2)。
图9B是表示本发明的第一实施方式的动作的流程图(2/2)。
图10是表示本发明第二实施方式的图像处理装置的功能块的框图。
图11是表示本发明第二实施方式的动作的流程图。
具体实施方式
接着,参照附图来详细说明本发明的实施方式。
以下,说明第一实施方式与第二实施方式这2个实施方式。这里,各个实施方式在选择工件的取出位置的结构中是共同的。
但是,在取出位置选择的处理中,相对于在第一实施方式中进行图像的匹配处理和剪裁图像的处理这样的预处理,在第二实施方式中省略这样的预处理这点是不同的。
以下,首先详细说明第一实施方式,接着在第二实施方式中特别说明与第一实施方式不同的部分。
<实施方式整体的结构>
参照图1,说明第一实施方式的机器人系统1a的结构。机器人系统1a具备图像处理装置10a、机器人控制装置20、机器人30、三维测量机40、多个工件50以及容器60。
图像处理装置10a与机器人控制装置20和三维测量机40可通信地连接。另外,机器人控制装置20除了与图像处理装置10a可通信地,也与机器人30可通信地连接。
首先,说明机器人系统1a的概要。
在机器人系统1a中,通过三维测量机40测量包括堆积状态的被杂乱放置的多个工件50,生成距离图像70。
然后,使用图像处理装置10a进行从距离图像选择工件50的取出位置的示教。针对距离图像,通过用户直接示教工件50的取出位置来进行该示教。具体地说,图像处理装置10a例如通过灰度级或RGB的渐变等以能够掌握构成距离图像的各个像素的高度的差异的方式使图像显示部显示该距离图像。
对此进行了参照的用户在通过鼠标的操作等例如选择适当的场所作为取出位置候补并指定为工件50的取出位置时,图像处理装置10a针对所显示的距离图像描绘由用户示教的取出位置(以下称为“示教位置”)。另外,图像处理装置10a取得由用户示教的取出位置周围的距离图像的数据(以下称为“示教位置附近图像数据”)并进行存储。另外,作为取出位置候补的适当的位置是指例如三维点的高度较高的场所。
之后,在进行工件50的取出位置的选择时,图像处理装置10a通过距离图像搜索与所存储的示教位置附近图像数据匹配的图像区域。然后,图像处理装置10a将匹配后的图像区域作为新的示教位置附近图像数据,选择该图像数据的例如中心位置作为新的取出位置。这样,图像处理装置10a能够根据通过用户的示教而存储的示教位置附近图像数据选择新的取出位置,所以不接受来自用户的新的示教也能够选择工件50的取出位置。
根据这样的结构,在机器人系统1a中,与目前相比,能够通过更简单的方法来选择工件50的取出位置。
另外,机器人控制装置20生成用于针对图像处理装置10a所选择的工件50的取出位置进行取出的控制信号。然后,机器人30根据机器人控制装置20所生成的控制信号来执行工件50的取出。根据这样的结构,在机器人系统1a中,能够根据选择出的取出位置实际取出工件50。
进一步,图像处理装置10a根据示教结果进行机器学习,构筑用于选择工件50的取出位置的学习模型。然后,图像处理装置10a根据所构筑的学习模型从距离图像选择新的取出位置。
根据这样的结构,在机器人系统1a中,能够更高精度地选择取出位置。
以上是机器人系统1a的概要。接着,说明机器人系统1a中包括的各个装置。
图像处理装置10a是用于进行使用了距离图像的示教和机器学习的装置。参照图2的功能框图在后面详细描述图像处理10a。
机器人控制装置20是用于控制机器人30的动作的装置。机器人控制装置20根据图像处理装置10a选择出的工件50的取出位置等信息,生成用于控制机器人30的动作的控制信号。然后,机器人控制装置20将所生成的控制信号输出给机器人30。
另外,图像处理装置10a、机器人控制装置20通过预先进行的校准,将用于控制机器人30的机器坐标系与表示工件50的取出位置的摄像机坐标系对应起来。
机器人30是根据机器人控制装置20的控制进行动作的机器人。机器人30具备用于以垂直方向的轴为中心旋转的基部、进行移动以及旋转的臂、为了握持工件50而安装在臂上的机械手。
机器人30根据机器人控制装置20输出的控制信号,驱动臂和机械手,使机械手移动到示教位置,握持堆积的工件50并从容器60取出。
另外,省略关于所取出的工件50的移动目的地的图示。另外,关于机器人30和机械手的具体结构,本领域技术人员十分熟悉,所以省略详细的说明。
三维测量机40通过测量容器60内的工件50,生成距离图像。三维测量机40例如能够如上所述那样通过具备距离图像传感器的摄像机或使用了立体声摄像机的三维测量机来实现。但是,在测量的过程中如果能够生成三维点群的距离图像,则不限定于具备距离图像传感器的摄像机或使用了立体声摄像机的三维测量机,也可以通过其它方式的三维测量机来实现三维测量机40。
通过三维测量机40生成的距离图像被输出给图像处理装置10a。
工件50在容器60内包括堆积的状态而被杂乱地放置。工件50只要是通过安装在机器人30的臂上的机械手能够握持即可,其形状等没有特别限定。
<图像处理装置10a的功能块>
接着,参照图2说明图像处理装置10a所具备的各个功能块。另外,图2中,将机器人系统1a的图像处理装置10a以外的结构要素汇总图示为环境100。
图像处理装置10a具备选择处理部11、显示部12、操作接受部13以及学习部14。
选择处理部11作为机器人系统1的概要如上所述,通过进行各种图像处理来选择工件50的取出位置。通过选择处理部11进行的图像处理大致区分为“匹配处理”和“剪裁处理”2种。
为了进行这些处理,选择处理部11具备选择用数据存储部111、注释处理部112、匹配部113以及剪裁部114。
选择用数据存储部111是存储选择处理部11内的各个功能块所使用的各种数据的部分。
注释处理部112是进行用于从用户接受工件50的取出位置的示教的处理的部分。
匹配部113是进行匹配处理的部分。另外,剪裁部114是进行剪裁处理的部分。
后面描述这些选择处理部11所具备的各个功能块的功能、匹配处理以及剪裁处理的内容。
显示部12是显示选择处理部11所输出的图像的部分。选择处理部11所输出的图像是例如通过由三维测量机40测量工件50而生成的距离图像、在距离图像描绘用户所示教的示教位置的图像。显示部12例如通过液晶显示器、有机EL显示器来实现。
操作接受部13是接受来自用户的操作的部分。操作接受部13例如从参照了显示在显示部12中的距离图像的用户接受指定用于示教工件50的取出位置的该取出位置的操作。操作接受部13例如通过鼠标、键盘等来实现。
例如,用户可以使用鼠标、键盘指定使得显示部12所显示的光标移动到该取出位置(表示该取出位置的图像上)。另外,通过触摸面板一体地实现显示部12和操作接受部13,由此例如可以通过轻敲该取出位置(表示该取出位置的图像上)来进行指定。
学习部14是进行机器学习相关的处理的部分。学习部14具备学习处理部141、学习完毕模型存储部142以及推定处理部143。
学习处理部141是执行机器学习的部分。例如进行使用了卷积神经网络(Convolutional neural network)的深层学习(Deep Learning)。
学习完毕模型存储部142是存储学习处理部141在机器学习中进行学习中的学习模型的参数和学习完毕模型的参数的部分。
推定处理部143为了由选择选择处理部11进行取出位置的选择,进行使用了学习完毕模型存储部142中存储的学习完毕模型的推定。
关于通过这些各个部进行的机器学习的详细内容后面在成为<机器学习>的项目中进行描述。
以上,说明图像处理装置10a所包括的功能块。
为了实现这些功能块,图像处理装置10a具备CPU(Central Processing Unit:中央处理单元)等运算处理装置。另外,图像处理装置10a也具备存储了应用软件、OS(Operating System:操作系统)等各种控制用程序的HDD(Hard Disk Drive:硬盘驱动器)等辅助存储装置、用于存储在运算处理装置执行程序后暂时所需要的数据的RAM(RandomAccess Memory:随机存取存储器)等主存储装置。
而且,在图像处理装置10a中,运算处理装置从辅助存储装置读入应用软件或OS,使读入的应用软件或OS在主存储装置展开,同时进行基于这些应用软件或OS的运算处理。另外,根据其运算结果来控制各装置所具备的各种硬件。由此实现本实施方式的功能块。即,第一实施方式能够通过硬件与软件的协作来实现。
作为具体例,图像处理装置10a能够通过将用于实现第一实施方式的应用软件组装到一般的个人计算机或服务器装置中来实现。
但是,图像处理装置10a伴随着学习部14进行的机器学习的运算量较多,因此例如在计算机中装载GPU(Graphics Processing Units:图形处理单元),通过被称为GPGPU(General-Purpose computing on Graphics Processing Units:图形处理单元的通用计算)的技术,将GPU用于伴随机械学习的运算处理时,能够进行高速处理。另外,如果在计算机中装载FPGA(Field-Programmable Gate Array现场可编程门阵列),并将FPGA用于伴随机械学习的运算处理,则能够进行高速处理。
进一步,为了进行更高速的处理,使用多台转载了这种GPU或FPGA的计算机来构筑计算机集群,可以通过该计算机集群中包括对多台计算机进行并行处理。
<匹配处理>
接着,详细说明选择处理部11进行的处理内容。如上所述,选择处理部11进行“匹配处理”和“剪裁处理”这2种处理。首先,参照图3到图6说明匹配处理。
图3表示俯瞰堆放在容器60内的工件50的状态。如图3所示,工件50被杂乱地堆积,不示教工件50的取出位置而通过机器人30的机械手来握持取出该工件50是比较困难的状态。另外,图中为了图示的方便,只对一部分工件50标注标记。
三维测量机40通过测量堆放在容器60内的堆积的工件50来生成距离图像。三维测量机40将所生成的距离图像发送给图像处理装置10a的选择处理部11。选择处理部11接收到的距离图像被存储在选择用数据存储部111中。
注释处理部112为了从用户接受工件50的取出位置的示教,从选择用数据存储部111取得距离图像。然后,注释处理部152将取得的距离图像输出给显示部12。显示部12如图4所示那样显示所输入的距离图像。另外,图中为了图示的方便,只对一部分工件50标注标记。
如果进行三维测量,则能够在二维的像素上生成各个像素位置具有高度信息的距离图像。注释处理部112通过RGB的色调表现各个像素所具有的高度信息,来显示距离图像,或者通过灰度级的浓度表现各个像素所具有的高度信息来显示距离图像。进行示教的用户能够通过参照这种表现方法的距离图像来识别深度信息。
图4中,由于记载专利附图上的制约,而通过阴影来表示各个像素所具有的高度信息,但是不限于此。例如,可以通过色调和渐变(graduation)等来表现各个像素所具有的高度信息。图4中,表现为离三维测量机40的距离近的对象(object)(即距离地面的高度高的对象)成为白色,离三维测量机40的距离远的对象(即距离地面的高度低的对象)成为黑色。
例如,工件50a存在于比工件50b离地面更高的位置,所以工件50a被赋予比工件50b更为白色的阴影。另外,与工件50b对应的面被与工件50a对应的面隐藏一部分。用户通过对此进行参照了解到是在工件50b上面堆放工件50a的状态。
另外,例如与工件50c对应的面的高度根据场所而不同。用户通过对此进行参照而了解到是工件50c被倾斜堆放的状态。
这样地参照显示在显示部12上的距离图像的用户如上述那样使用通过鼠标、触摸面板实现的操作接受部13来指定工件50的取出位置,从而进行工件50的取出位置的示教。操作接受部13将所示教的工件50的取出位置即示教位置通知给注释处理部112。注释处理部112为了用户能够识别该被通知的示教位置,对距离图像上的示教位置进行描绘。例如通过变更距离图像上的示教位置的像素的颜色等用户容易掌握的方法来进行描绘。图5表示进行了描绘时的显示例。
用户针对位于能够取出的位置的工件50分别示教取出位置。并且,如图中示教位置71所示那样,进行描绘使得用户能够掌握所示教的示教位置。另外,图中为了图示的方便只对一部分的示教位置71标注标记。
注释处理部112取得示教位置的三维点信息、将示教位置设为中心的示教位置附近的预定范围内的三维点群信息即示教位置附近图像数据。然后,注释处理部112将所取得的示教位置的三维点信息与示教位置附近图像数据对应,作为匹配用点群信息存储在选择用数据存储部111中。
图6表示匹配用点群信息的一例作为匹配用点群信息80。另外,在图6的例子中,为了说明对示教点实施描绘,但是匹配用点群信息80中包括的示教位置附近图像数据中不包括表示示教位置的描绘。另外,在以下的说明中,省略匹配用点群信息的标记即“80”的记载。
作为匹配用点群信息而取得的三维点群的范围的大小根据工件50的大小等预先进行设定。另外,将某个程度大的范围的三维点群信息作为匹配用点群信息进行存储,在后述的匹配中使用所存储的匹配用点群信息时,进行设定的调整,可以将修剪为必要大小的信息用作匹配用点群信息。
另外,注释处理部112可以将附带的信息追加到匹配用点群信息中。例如,也可以追加表示匹配用点群信息的特征的信息。表示特征的信息例如指匹配用点群信息中包含的多个像素所具有的三维点的平均高度、与示教位置对应的像素所具有的三维点的高度等信息。
在第一实施方式中,堆积了多个工件50,所以使用通过三维测量机40测量到的一张距离图像,如上所示地通过用户来示教多个示教位置,从而能够针对工件50能够取得的多个姿势的每一个姿势进行取出位置的示教。
另外,作为背景技术而说明的CAD模型的示教假设针对形状能够均匀地取得三维点。但是,在实际进行拍摄的情况下,由于光学条件等原因而不能够针对形状均匀地取得三维点。这样,在假设和实际的摄像中,三维点的取得容易度有不同,因此该差异会影响匹配的程度。
对此在第一实施方式中,取得通过实际的光学条件而取得的三维点的距离图像作为输入,能够保存描绘位置周围的三维点群信息,因此如CAD模型的示教那样能够防止由于光线条件等的原因而不能够取得与CAD模型上的示教位置对应的工件50的示教位置这样的故障。
接着,说明在取出工件50时,通过匹配部113进行的使用了匹配用点群信息的匹配。
匹配部113在取出工件50时,从三维测量机40取出堆放在容器60内的堆积的工件50的距离图像。然后,匹配部113针对所取得的距离图像,根据存储在选择用数据存储部111中的各匹配用点群信息中包括的示教位置附近图像数据,例如使用ICP(IterativeClosest Point迭代最近点)匹配等三维点群的匹配方法来进行搜索。然后,匹配部113选择距离图像中匹配的评价高的图像区域的例如中心位置作为取出对象的工件50的取出位置。另外,选择多个匹配评价为阈值以上高的图像区域,将这些多个图像区域中离地面的高度为最高的图像区域设为新的示教位置附近图像数据。
匹配部113将选择出的工件50的取出位置发送给机器人控制装置20。然后机器人控制装置20根据接收到的工件50的取出位置来控制机器人30,从而尝试工件50的取出。
这里,匹配用点群信息是如上述那样根据用户的示教而生成的,但是不限于所有的匹配用点群信息都是适当的信息。例如,在将与某个匹配用点群信息匹配的评价高的部分设为了取出位置的情况下取出成功,但是在将与其他匹配用点群信息匹配的评价高的部分设为了取出位置的情况下取出会失败。
这样,会有成败根据匹配用点群信息而不同的情况,所以匹配部113通过对各个匹配用点群信息进行评价来将评价值赋予各个匹配用点群信息即可。然后,优选匹配部113使用该评价值高的匹配用点群信息。
另外,赋予了该评价值的匹配用点群信息在后述的机器学习中作为监督数据而使用,因此匹配部113将赋予了评价值的匹配用点群信息存储在选择用数据存储部111中。另外,评价值低的匹配用点群信息作为机器学习的监督数据(失败数据)也是必要的数据。因此,匹配部113不仅将评价值高的匹配用点群信息,也将评价值低的匹配用点群信息作为监督数据存储在选择用数据存储部111中。
匹配部113能够根据工件50的取出成败来赋予评价值。例如,匹配部113在将与某个匹配用点群信息匹配的评价高的部分设为取出位置时,当工件50的取出成功时,赋予比取出失败时更高的评价值。例如,匹配部113在工件50的取出成功时赋予第一预定值以上(例如60分以上),在工件50的取出失败时,设为第二预定值以下(例如50分以下)。另外,例如匹配部113在工件50的取出成功时,根据取出所需要的时间使评价值进一步不同。例如,匹配部113可以使工件50的取出所需要的时间越短则评价值变得越高。另外,例如匹配部113在工件50的取出失败时,可以根据失败的程度使评价值不同。例如,匹配部113在虽然能够握持工件50但在取出过程中脱落时,可以使评价值比不能够握持工件50时要高。
匹配部113针对这次测量到的距离图像进行基于各个匹配用点群信息的匹配。另外,匹配部113进行各个匹配后的场所的工件50的取出的尝试和上述评价值的赋予。通过从三维测量机40重新取得堆放在容器60内的堆积工件50的距离图像来重复该处理。
这样,匹配部113重复使用了匹配用点群信息的匹配以及工件50的取出、与该取出结果对应的评价值的赋予,从而能够对各个匹配用点群信息进行评价。然后,匹配部113通过选择评价值高的匹配用点群信息,能够提高工件50的取出的成功概率。
另外,匹配部113针对在距离图像的匹配成功的部分,取得与匹配用点群信息相同大小的范围的三维点群信息,将该取得的三维点群信息作为新的匹配点群信息即可。
这样,匹配部113除了对匹配所使用的匹配用点群信息,也能够对从匹配后的部分取得的新的匹配用点群信息进行工件50的取出。即,匹配部113能够自动地增加匹配用点群信息。这样,能够收集评价值更高的匹配用点群信息。
这样,在第一实施方式中,匹配部113重复使用了匹配用点群信息的匹配以及工件50的取出、与该取出结果对应的评价值的赋予,从而能够选择工件50的取出位置。另外,也能够自动增加匹配用点群信息。
因此,在第一实施方式中,即使不接受来自用户的新的示教也能够基于选择出的取出位置进行工件50的取出。
另外,第一实施方式与针对目前进行的CAD等模型的示教不同,是基于针对通过由三维测量机40实际测量工件50而取得的距离图像的示教。在使用这样通过实际测量工件50而取得距离图像时,由于包括干扰等理由而匹配大多不成立。因此,为了匹配成立,有时会宽松地设定与匹配成败相关的阈值。
但是,如果取采用这样宽松设定阈值的方法,则即使在不符合实际作为取出位置而被检测的场所中也会产生匹配成立的问题。因此,为了减轻该问题,关于通过描绘而没有进行示教的场所也尝试匹配,如果在该没有进行该示教的场所匹配成立,则可以将作为检测位置为不适当的场所,从最终的检测位置排除的处理加到上述第一实施方式的处理中。
以上,说明了匹配部113进行的匹配处理。通过上述的匹配处理能够实现工件50的取出位置的选择。
在该结构中,通过进一步组合学习部14的机器学习、剪裁部114的剪裁处理,能够提高工件50的取出位置的选择精度。以下,说明学习部14进行的机器学习。接着说明剪裁部114进行的剪裁处理。
<机器学习>
如上所述,匹配部113重复使用了匹配用点群信息的匹配以及工件50的取出、与该取出结果对应的评价值的赋予,从而能够生成赋予了评价值的匹配用点群信息。并且,如上所述,匹配部113将赋予了评价值的匹配用点群信息存储在选择用数据存储部111中。
学习部14的学习处理部141将存储在选择用数据存储部111中的赋予了评价值的匹配用点群信息作为监督数据,进行有监督机器学习。另外,学习处理部141通过该有监督学习来构筑用于提高工件50的取出位置的选择精度的学习模型。然后,学习处理部141将所构筑的学习模型存储在学习完毕模型存储部142中。
然后,推定处理部143通过后述的剪裁处理使用存储在该学习完毕模型存储部142中的学习模型,能够不进行与通过三维测量机40测量到的距离图像之间的匹配来选择出工件50的取出位置。另外,学习处理部141根据剪裁处理的取出成败来进一步进行机器学习,从而能够进一步更新存储在学习完毕模型存储部142中的曾经构筑的学习模型。
接着,具体说明学习模型的构筑。学习处理部141将存储在选择用数据存储部111中的匹配用点群信息中包括的示教位置附近图像数据设为输入数据,将被赋予该匹配用点群信息的评价值作为标签进行有监督学习。作为有监督学习的方法,学习处理部141进行深层学习(Deep Learning),该深层学习使用了适合将图像数据作为对象的学习的神经网络即卷积神经网络(CNN:Convolutional Neural Network)。因此准备3层以上并且包括至少一次的图像的卷积运算的卷积神经网络。但是,这不是将在第一实施方式所适用的机器学习限定为卷积神经网络的意思。可以将使用了卷积神经网络以外的深层学习模型、线形模型等的机器学习适用于第一实施方式。
这里,卷积神经网络为具备了卷积层、池化层、全连接层以及输出层的结构。但是这只是为了说明的结构例,例如可以省略池化层。另外,例如如上所述,在将图像作为标签进行学习时,可以进一步设置反卷积层(デコンボリューション層)。
在卷积层中,为了进行边缘提取等的特征提取,对所输入的三维点群信息施加预定参数的滤波器。该滤波器的预定参数相当于一般的神经网络的权重,通过重复学习进行学习。
在池化层中,例如将从卷积层输出的图像划分为小的窗口,输出每个窗口的特征(例如窗口各自的最大值)。
通过组合这些卷积层以及池化层,能够从三维点群信息提取特征量。
在全连接层中,将通过卷积层以及池化层取出的特征与一个节点结合,输出通过激活函数进行转换的值。这里,激活函数是将不满0的输出值全部设为0的函数,用于在只将某个阈值以上的部分作为有意义的信息发送给输出层。
在输出层中,根据从全连接层的输出,输出关于基于作为了输入数据的匹配用点群信息的取出的评价值。然后,计算输出层的输出与标签之间的误差。这里,如上所述,标签是被赋予作为输入数据的匹配用点群信息的评价值。
在学习开始时,没有适当地进行卷积神经网络中包括的各个参数的加权,所以该误差成为大的值的可能性较高。因此,学习处理部141为了缩小计算出的误差而修正加权值。具体地说,为了减小误差,重复被称为前向传播、反向传播的处理,从而变更卷积神经网络中包括的各个感知器的加权值。
学习处理部141这样地学习监督数据的特征,根据作为了输入数据的匹配用点群信息来归纳地获得用于输出评价值的学习模型。学习处理部141将所构筑的学习模型作为学习完毕模型存储在学习完毕模型存储部142中。
上述的学习可以通过在线学习进行,也可以通过批量学习或小批量学习进行有监督学习。
在线学习指每次生成监督数据时立刻进行有监督学习的学习方法。另外,批量学习指在重复生成监督数据期间,收集与重复对应的多个监督数据,并使用收集到的所有监督数据进行有监督学习的学习方法。进一步,小批量学习是指每当滞留有在线学习与批量学习的中间的某个程度监督数据时进行有监督学习的学习方法。在进行批量学习和小批量学习时,到开始学习期间,将收集到的监督数据存储在选择用数据存储部111中即可。
另外,在新取得监督数据时,可以将学习完毕模型的参数作为初始值来进行学习,从而提高学习完毕模型进行推定的精度。另外,其他在新取得监督数据时,也可以与学习完毕模型无关地新构筑另一个学习模型。
<剪裁处理>
接着,说明剪裁部114进行的剪裁处理。
剪裁部114使用通过学习处理部141构筑的学习模型,从而不进行与由三维测量机40测量出的距离图像之间的匹配而选择工件50的取出位置。以下,将不进行匹配而选择取出位置的处理称为“剪裁处理”进行说明。
在进行剪裁处理时,剪裁部114如果在取出作业时取得新的距离图像,则在所取得的距离图像的所有区域剪裁与针对学习完毕模型的输入相同大小(即与匹配用点群信息相同大小)的距离图像。然后,剪裁部114取得该剪裁出的部分(以下称为“取出位置候补”)的三维点群信息。
参照图7以及图8说明剪裁部114进行的取出位置候补的提取处理(剪裁处理)。图7中将作为剪裁对象的区域作为取出位置候补90进行图示。该取出位置候补90的大小如上所述成为与对学习完毕模型的输入相同的大小(即与匹配用点群信息相同大小)。
剪裁部114例如如图8所示,从图像左上使对象位置每次错开几个像素来扫描作为取出位置候补90的对象,由此对图像所有区域进行剪裁。另外,图8中直线地进行扫描,但是也可以对扫描增加旋转。另外,可以任意设定扫描开始位置和扫描方向。剪裁部114在剪裁时,也取得在距离图像上的取出位置候补90的位置(例如剪裁出的图像数据的中心位置),与取出位置候补对应地存储在选择用数据存储部111中。
推定处理部143从选择用数据存储部111分别取得这样提取出的所有取出位置候补的三维点群信息。然后,推定处理部143将所取得的所有取出位置候补的三维点群信息分别代替上述的匹配用点群信息而输入给学习完毕模型,得到关于各取出位置候补的评价值作为输出。推定处理部143将该输出通知给剪裁部114。
剪裁部114选择与从学习完毕模型输出的评价值高的剪裁图像对应存储的位置作为取出位置。剪裁部114将选择出的取出位置发送给机器人控制装置20。然后,机器人控制装置20根据接收到的取出位置来控制机器人30,从而尝试工件50的取出。
这里,通过取出位置候补的三维点群信息尝试了工件50的取出的情况与通过匹配用点群信息尝试了取出的情况相同,会有取出成功和失败的情况。因此,剪裁部114与匹配处理时的匹配用点群信息同样,根据工件50取出的成败将评价值赋予取出位置候补。另外,剪裁部114将赋予了该评价值的取出位置候补存储在选择用数据存储部111中。赋予了该评价值的取出位置候补能够用作学习处理部141为了更新学习完毕模型的新的监督数据。
具体地说,学习处理部141将取出位置候补的三维点群数据设为输入数据,将被赋予作为该输入数据的取出位置候补的评价值设为标签,进行上述的在线学习或小批量学习。这样,能够执行工件50的取出操作,并实时地将学习完毕模型更新为精度更高的学习完毕模型。另外,不限定为在线学习或小批量学习。也可以通过批量学习更新学习模型。
<第一实施方式的动作>
接着,参照图9A以及图9B的流程图来说明第一实施方式的动作。另外,图9A是关于相当于上述匹配处理的动作的流程图,图9B是关于相当于上述剪裁处理的动作的流程图。
在步骤S11中,注释处理部112取得通过由三维测量机40测量堆积的工件50而生成的距离图像。
在步骤S12中,注释处理部112使距离图像显示在显示部12中。
在步骤S13中,注释处理部112根据操作接受部13接受的来自用户的工件50的取出位置的示教,在距离图像上描绘示教位置。
在步骤S14中,注释处理部112设定匹配用点群信息的大小。根据预先赋予的设定值或用户的操作来进行设定。
在步骤S15中,注释处理部112根据通过步骤S14进行的设定,生成匹配用点群信息。另外,注释处理部112将所生成的匹配用点群信息存储在选择用数据存储部111中。
在步骤S16中,匹配部113使用存储在选择用数据存储部111中的匹配用点群信息来进行匹配以及工件50的取出,从而将评价值赋予匹配用点群信息。匹配部113将赋予了评价值的匹配用点群信息存储在选择用数据存储部111中。
在步骤S17中,匹配部113判定是否需要追加匹配用点群信息。在存储预定数量以上的评价值为预定值以上的匹配用点群信息时,在步骤S17中判定为否,处理进入步骤S18。另一方面,在没有存储预定数量以上的评价值为预定值以上的匹配用点群信息时,在步骤S17中判定为是,处理返回步骤S11,再次重复处理。
在步骤S18中,学习处理部141进行以下的学习,即将学习部14所存储的匹配用点群信息设为输入数据,将赋予该匹配用点群信息的评价值设为标签。这样,生成学习完毕模型,存储在学习完毕模型存储部142中。
接着,参照图9B说明剪裁处理时的动作。
在步骤S19中,剪裁部114取得通过由三维测量机40测量堆积的工件50而生成的距离图像。
在步骤S20中,剪裁部114在所取得的距离图像的所有区域将与针对学习完毕模型的输入相同大小(即与匹配用点群信息相同大小)的距离图像作为取出位置候补来剪裁。然后,剪裁部114取得该取出位置候补的三维点群信息。另外,剪裁部114将取得的取出位置候补的三维点群信息存储在选择用数据存储部111中。推定处理部143将存储在选择用数据存储部111中的所有取出位置候补的三维点群信息分别输入给学习完毕模型,得到每个取出位置候补的评价值作为输出。推定处理部143将该输出通知给剪裁部114。
在步骤S21中,剪裁部114选择与从学习完毕模型输出的评价值高的剪裁图像对应存储的位置作为取出位置。剪裁部114将选择出的取出位置发送给机器人控制装置20。然后,机器人控制装置20根据接收到的取出位置来控制机器人30,从而尝试工件50的取出。如上所述,尝试工件50的取出的结果会有取出成功和取出失败。因此,剪裁部114根据工件50取出的成败将评价值赋予取出位置候补。
在步骤S22中,学习处理部141进行将在步骤S21中被赋予了评价值的取出位置候补作为了监督数据的学习,从而判定是否更新学习完毕模型。如果是进行小批量学习的情况,则在记录了预定数量的监督数据、从上次的学习经过了预定时间的情况下,在步骤S23判定为是,处理进入步骤S24。另一方面,在只记录了预定数量以下的监督数据、没有从上次的学习经过了预定时间的情况下,在步骤S23判定为否,处理进入步骤S24。另外,如果是在线学习,在步骤S23判定为是,处理进入步骤S24。
在步骤S24中,学习处理部141将取出位置候补的三维点群数据设为输入数据,将被赋予设为了该输入数据的取出位置候补的评价值设为标签,进行上述的学习。这样,更新存储在学习完毕模型存储部142中的学习完毕模型。
在步骤S24中,剪裁部114判定是否继续取出。当存在评价值的取出位置候补且没有进行将该取出位置候补设为了对象的取出时,认为存在还没有取出的工件50,所以在步骤S24中判定为是,处理进入步骤S20。另一方面,当进行将所有评价值高的取出位置候补设为了对象的取出时,认为取出了所有的工件50,所以在步骤S24中判定为否并结束处理。
根据以上说明的第一实施方式的匹配处理,在步骤S13中接受来自用户的取出位置的示教后,不接受来自用户的新的示教也能够根据所存储的匹配用点群信息(示教位置的三维点信息和将示教位置设为了中心的示教位置附近图像数据)来进行使用了与三维测量机40测量出的距离图像之间的匹配的搜索,由此能够选择取出位置。另外,根据第一实施方式的匹配处理,用户只示教取出位置,不需要基于搜索算法的选择等的知识。进一步,根据第一实施方式的匹配处理,因为不使用CAD数据,所以节省准备CAD数据的时间。
即,根据第一实施方式的匹配处理,与目前相比,能够以更简便的方法选择工件50的取出位置。
另外,根据第一实施方式的剪裁处理,进一步根据匹配用点群信息来构筑学习模型,并且根据所构筑的学习模型能够从自动地从距离图像剪裁出的图像数据中选择取出位置,能够更有效地、更高精度地选择取出位置。
进一步,根据第一实施方式的剪裁处理,随着取出的继续能够取得新的监督数据,所以能够实时地更新所构筑的学习模型。
<第二实施方式>
接着详细说明第二实施方式。另外,第二实施方式的基本结构与第一实施方式共通。例如,第二实施方式的机器人系统1b的整体结构是与图1所示的第一实施方式的机器人系统1a的整体结构相同的结构,通过将图像处理装置10a置换为第二实施方式的图像处理装置即图像处理装置10b而成为第二实施方式的结构。
以下为了避免重复的说明,省略关于两个实施方式这样共通的点的说明,并详细说明两个实施方式不同的点。
<第一实施方式与第二实施方式不同点的概要>
在第一实施方式进行学习时,进行以下的预处理,即图像处理装置10a对从三维测量机40取得的距离图像进行匹配,生成匹配用点群信息。然后,图像处理装置10a将该匹配用点群信息设为学习模型的输入数据,将对该匹配用点群信息赋予的评价值设为标签,从而进行机器学习的学习模型的构筑和使用了所构筑的学习模型的取出位置的选择。
或者,在第一实施方式中,图像处理装置10a进行以下预处理,即在从三维测量机40取得的距离图像的所有区域剪裁与针对学习完毕模型的输入相同大小(即与匹配用点群信息相同大小)的距离图像作为取出位置候补。然后,图像处理装置10a将该剪裁出的取出位置候补的三维点群信息设为学习模型的输入数据,将对该三维点群信息赋予的评价值设为标签,从而进行机器学习的学习模型的构筑和使用了所构筑的学习模型的取出位置的选择。
对此,在第二实施方式省略该匹配和剪裁的预处理,将从三维测量机40取得的距离图像整体设为学习模型的输入数据,从而进行机器学习的学习模型的构筑和使用了所构筑的学习模型的取出位置的选择。
虽然根据适用第二实施方式的环境,但是在第二实施方式中也能够根据这样省略预处理的情况来有效地进行运算处理和容易地进行安装。另外,在第二实施方式中,这样地将距离图像整体设为学习模型的输入数据,从而能够考虑图像中远远离开的像素间的影响。
<图像处理装置10b的功能块>
接着,为了省略预处理,并且将距离图像整体设为学习模型的输入数据,参照图10说明图像处理装置10b所具备的各个功能块。
另外,图10中与图2相同,将机器人系统1b的图像处理装置10b以外的结构要素汇总为环境100进行图示。
图像处理装置10b在具备选择处理部15来代替图像处理装置10a所具备的选择处理部11这点不同。即,图像处理装置10b具备选择处理部15、显示部12、操作接受部13以及学习部14。
另外,选择处理部15具备监督数据存储部151、注释处理部152以及取出位置选择部153。
监督数据存储部151是存储用于进行机器学习的监督数据的部分。从三维测量机40输入的距离图像作为监督数据的输入数据被存储在监督数据存储部151中。另外,注释处理部152所生成的标签作为监督数据的输入数据被存储在监督数据存储部151中。
该输入数据和标签在注释处理部152进行的标签存储时被关联起来。
注释处理部152是生成监督数据中包括的标签的部分。注释处理部152为了生成标签,从监督数据存储部151取得距离图像。另外,注释处理部152将所取得的距离图像显示在显示部12中。关于距离图像的显示例,参照图4如上述那样。
用户如果参照所显示的距离图像,则与第一实施方式同样地进行取出位置的示教。具体地说,使用由鼠标、触摸面板实现的操作接受部13来指定取出位置,从而进行取出位置的示教。
操作接受部13将所示教的取出位置即示教位置通知给注释处理部152。注释处理部152为了由用户识别该通知的示教位置,对距离图像上的示教位置进行描绘。描绘例如通过变更距离图像上的示教位置的像素颜色等用户容易掌握的方法来进行。关于进行了描绘时的显示例,参照图5如上述那样。
这里,在第一实施方式中,用户通过点来示教取出位置。对此,在第二实施方式中,用户将取出位置作为预定区域来示教。例如,在第二实施方式中,用户通过对可取出的区域进行涂色来进行取出位置的示教。
注释处理部152根据用户的示教,生成对距离图像整体所包括的各个像素分配了表示是否是工件50的取出位置(即示教位置)的属性(例如工件50的取出位置为“1”,工件50的取出位置以外的位置为“0”)的图像。以下将该图像称为“标签用地图”。
在第二实施方式中,将该标签用地图用作标签。另外,注释处理部152在生成标签用地图时,不对各个像素分配表示是否是工件50的取出位置的属性,而可以进一步提高分辨率至1/s(s是任意的自然数),并且按照每个1/s像素分配表示是否是工件50的取出位置的属性。另外,作为标签不需要三维点群信息,所以在标签用地图中可以删除距离图像中包括的三维点群信息。因此,标签用地图成为包括距离图像的各个像素(或设为了1/s的各个像素)的二维坐标的信息和对各个像素(或设为了1/s的各个像素)表示是否是工件50的取出位置的属性的信息的图像。
注释处理部152将所生成的标签用地图设为标签,将用于来自用户的示教而使用的距离图像设为输入数据,通过将两者关联而生成监督数据。然后,注释处理部152将所生成的监督数据存储在监督数据存储部151中。另外,注释处理部152不是将数据输入和标签关联并存储在监督数据存储部151中,而是分别存储在监督数据存储部151中,并使两者链接,从而设为监督数据。
第二实施方式的学习处理部141在进行机器学习时,使用存储在监督数据存储部151中的监督数据进行机器学习。具体地说,在第二实施方式中,通过学习处理部141进行的机器学习,在将距离图像设为了输入时,构筑输出与标签用地图同样的图像的学习模型。即,构筑输出将可取出的区域分段后的图像的学习模型。
该机器学习例如通过输入图像,并对图像中的所有像素进行某种推定(例如分类等)的方法来实现。作为该方法,例如列举语义分割(Semantic Segmentation)。语义分割是以对汽车的自动运行进行应用为目标的技术,例如将照片的图像数据作为输入,按照车、行人等每个区域来进行颜色划分。
在第二实施方式中,如上所述,将输入数据作为距离图像,将标签作为针对距离图像的注释(例如由人在要取出工件50的位置涂上了颜色的图像)来进行机器学习,由此能够一次进行针对所有像素的评价值推定。因此,能够省略第一实施方式的匹配处理和剪裁处理的预处理。
具体地说,第二实施方式的机器学习例如能够通过使用以下参考文献所公开的卷积编码器解码器来实现。
<参考文献>
Vijay Badrinarayanan,Alex Kendall,Roberto Cipolla、“SegNet:A DeepConvolutional Encoder-Decoder Architecture for Image Segmentation”、[online]、日本平成28年8月10日、[日本平成29年9月10日检索]、英特网<URL:https://arxiv.org/pdf/1511.00561.pdf>
学习处理部141通过机器学习构筑学习完毕模型。然后,学习处理部141将所构筑的学习完毕模型存储在学习完毕模型存储部142中。
取出位置选择部153是根据推定处理部143输出的评价值地图选择取出位置的部分。以下详细说明取出位置选择部153进行的取出位置的选择和评价值地图。
取出位置选择部153如果为了选择取出位置而从三维测量机40取得距离图像,则将所取得的距离图像输出给推定处理部143。推定处理部143将所输入的距离图像设为输入数据,输入给存储在学习完毕模型存储部142中的学习完毕模型。根据该输入,从学习完毕模型输出将能够取出的区域进行了分段的图像。将该输出的图像称为“评价值地图”。
评价值地图是与标签用地图相同的数据结构,成为包括各个像素(或设为了1/s的各个像素)的二维坐标的信息和针对各个像素(或设为了1/s的各个像素)表示是否是工件50的取出位置的属性的信息的图像。
推定处理部143将评价值地图输出给取出位置选择部153。
取出位置选择部153根据评价值地图来选择工件50的取出位置。具体地说,将作为工件50的取出位置而被分段的各个区间作为取出位置的候补。然后,根据表示取出位置的候补区域的坐标信息,在设为了输入数据的距离图像上确定与取出位置的候补对应的区域。然后,通过对该确定的区域进行已知的点群处理和图像处理来选择取出位置。
取出位置选择部153将选择出的取出位置输出给机器人控制装置20。之后与第一实施方式同样,机器人控制装置20根据取出位置来生成控制信号。然后机器人30根据控制信号由机械手来取出工件50。
通过以上说明的结构,在第二实施方式中,省略匹配和剪裁等的预处理,将从三维测量机40取得的距离图像整体设为学习模型的输入数据,从而能够进行机器学习的学习模型的构筑和使用了所构筑的学习模型的取出位置的选择。
<第二实施方式的动作>
接着,参照图11的流程图来说明第二实施方式的动作。
在步骤S31中,监督数据存储部151存储距离图像,该距离图像通过由三维测量机40测量堆积的工件50来生成。
在步骤S32中,注释处理部152使显示部12显示存储在监督数据存储部151中的距离图像。
在步骤S33中,注释处理部152根据操作接受部13接受的来自用户的取出位置的示教,在距离图像上描绘示教位置。
在步骤S34中,注释处理部152根据用户的示教来生成标签用地图。注释处理部152将标签用地图和距离图像作为监督数据存储在监督数据存储部151中。
在步骤S35中,学习处理部141进行以下学习,即将存储在监督数据存储部151中的监督数据的距离图像设为输入数据,将与该距离图像对应的标签用地图设为标签。这样,生成学习完毕模型,并存储在学习完毕模型存储部142中。
在步骤S36中,取出位置选择部153取得通过由三维测量机40测量堆积的工件50而生成的距离图像。然后,取出位置选择部153将所取得的距离图像输出给推定处理部143。
在步骤S37中,推定处理部143将所输入的距离图像输入给存储在学习完毕存储部142中的学习完毕模型。然后,推定处理部143取得评价地图作为学习完毕的输出。推定处理部143将所取得的评价值地图输出给取出位置选择部153。
在步骤S38中,取出位置选择部153根据评价值地图选择取出位置。取出位置选择部153将选择出的取出位置发送给机器人控制装置20。
在步骤S39中,机器人控制装置20根据接收到的取出位置来控制机器人30,从而进行工件50的取出。另外,当取出多个工件50时,在步骤S38中选择多个取出位置,在步骤S39中对该多个取出位置分别执行取出。但是,通过取出工件50,工件50的堆积状态会发生变化,所以每次取出工件50时,可以返回步骤S36重复处理。
根据以上所说的结构,在第二实施方式中,省略匹配和剪裁等的预处理,将从三维测量机40取得的距离图像整体设为学习模型的输入数据,从而能够进行机器学习的学习模型的构筑和使用了所构筑的学习模型的取出位置的选择。
<硬件和软件的协作>
另外,上述机器人系统中包括的各个装置能够分别通过硬件、软件或他们的组合来实现。另外,通过上述机器人系统中包括的各个装置各自的协作进行的机器学习方法也能够通过硬件、软件或他们的组合来实现。这里,通过软件实现表示通过计算机读入程序并执行来实现。
能够使用各种类型的非暂时的计算机可读介质(non-transitory computerreadable medium)来存储程序并并提供给计算机。非暂时的计算机可读介质包括有各种类型的实体的记录介质(tangible storage medium,有形的存储介质)。非暂时的计算机可读介质的例子包括磁记录介质(例如软盘、磁带、硬盘驱动器)、光磁记录介质(例如光磁盘)、CD-ROM(Read Only Memory,只读存储器)、CD-R、CD-R/W、半导体存储器(例如掩模ROM、PROM(programmable ROM,可编程ROM)、EPROM(Erasable PROM,可擦除PROM)、闪存ROM、RAM(random access memory,随机存取存储器))。另外,也可以通过各种类型的暂时的计算机可读介质(transitory computer readable medium)对计算机提供程序。暂时的计算机可读介质的例子包括电信号、光信号以及电磁波。暂时的计算机可读介质经由电线以及光纤等有线通信线路或无线通信线路,将程序提供给计算机。
<实施方式的变形>
另外,上述的各个实施方式是本发明的优选实施方式,但是没有将本发明的范围限定在上述实施方式中,而能够实施组合了各个实施方式的方式、在不脱离本发明主旨的范围中实施了各种变更的方式。
<变形例1>
在上述各个实施方式中,将图像处理装置10a或图像处理装置10b和机器人控制装置20设为分开的装置,但是也可以一体地实现这些装置。
<变形例2>
另外,在上述各个实施方式中,图示了机器人控制装置20和图像处理装置10a或图像处理装置10b位于附近,但是这些也可以经由LAN(Local Area Network局域网)或英特网等网络位于远方。
另外,1台图像处理装置10a或图像处理装置10b可以与多台机器人控制装置20连接。而且,1台图像处理装置10a或图像处理装置10b也可以根据从该多台机器人控制装置分别取得的监督数据来进行学习。
<变形例3>
另外,在上述各个实施方式中,说明了三维测量机40被固定设置在预定位置的情况,但是不一定固定在预定位置。例如,三位测量机40也可以按以下方式设置,即如果知道用于控制机器人30的机器坐标系的位置,则可以安装在机器人30的臂上等在实施中变更设置位置。
<变形例4>
进一步,在上述各个实施方式中,假设了通过1台装置实现图像处理装置10a或图像处理装置10b,但也可以是将图像处理装置10a或图像处理装置10b的各个功能适当分散在多个装置中的分散处理系统。例如也可以是将图像处理装置10a的选择处理部11或图像处理装置10b的选择处理部15的功能和学习部14的功能适当分散在多个装置中的分散处理系统。此时,也可以是以学习部14种包括的各个功能块单位来适当分散到多个装置中的分散处理系统。另外,也可以使用云上的虚拟服务器功能等来实现图像处理装置10a或图像处理装置10b的各个功能。
<变形例5>
进一步,在上述第一实施方式中,进行匹配处理,根据在匹配后的位置中实际尝试取出结果的成败来构筑学习完毕模型。另外,使用这样通过匹配处理而构筑的学习模型,之后进行剪裁处理。
但是,在进行剪裁处理时,可以不使用通过匹配处理而构筑的学习模型。
此时,学习处理部141将通过用户示教的示教点的取出视为成功并构筑学习模型。即,学习部14将示教位置附近图像数据设为输入数据,将表示(视为)取出成功的评价值设为标签,生成监督数据。然后,学习处理部141通过基于该监督数据的学习来构筑学习模型。
选择处理部11能够使用这样构筑的学习模型进行剪裁处理。这样,选择处理部11能够不进行匹配处理和实际的取出而构筑学习模型,并选择取出位置。
另外,此时学习处理部141可以取得与来自用户的示教位置不同的位置(非示教位置)附近的数据即非示教位置附近图像数据。然后,学习处理部141将非示教位置附近图像数据设为输入数据,将表示(视为)取出失败的评价值设为标签,生成表示失败例的监督数据。然后,学习处理部141可以进一步使用表示该失败例的监督数据来进行学习。此时,非示教位置可以通过用户来选择,也可以从示教位置以外的位置随机选择。
Claims (12)
1.一种机器人系统,其特征在于,
该机器人系统具备:
测量机,其生成多个物体的图像;
机器人,其具有用于取出上述多个物体的至少一个的机械手;
接受部,其接受根据上述图像决定的用于由上述机械手进行取出的取出位置的示教;
学习部,其通过进行机器学习来学习用于输出关于作为输入数据而被输入的点群的信息的评价值的学习模型,其中,上述机器学习将所示教的上述取出位置以及其附近的点群的信息设为输入数据,并且将与针对作为上述输入数据的点群的信息的示教对应的评价值和与取出成败对应的评价值中的至少任意一方设为标签,
上述机器人根据所示教的上述取出位置,通过上述机械手取出上述多个物体的至少一个。
2.根据权利要求1所述的机器人系统,其特征在于,
该机器人系统还具有显示上述图像的显示部。
3.根据权利要求2所述的机器人系统,其特征在于,
上述显示部在所显示的上述图像上描绘所示教的上述取出位置。
4.根据权利要求1~3中任一项所述的机器人系统,其特征在于,
上述取出位置的示教是在点和区域的任一个指定取出位置。
5.根据权利要求1~3中任一项所述的机器人系统,其特征在于,
该机器人系统还具备:取出位置选择部,其存储所示教的上述取出位置以及其附近的点群的信息作为搜索用信息,对上述图像进行基于上述搜索用信息的搜索,从而选择新的取出位置,
上述机器人在通过上述取出位置选择部选择出的上述新的取出位置通过上述机械手来取出各个物体。
6.根据权利要求1~3中任一项所述的机器人系统,其特征在于,
该机器人系统还具备用于决定上述机械手的取出位置的学习模型。
7.根据权利要求1所述的机器人系统,其特征在于,
该机器人系统还具备:取出位置选择部,其从上述图像剪裁预定区域的图像,并根据通过将被剪裁的上述图像的点群的信息作为输入数据输入给上述学习模型而输出的、针对上述点群的信息的评价值,来选择新的取出位置,
上述机器人根据所示教的上述取出位置,通过上述机械手来取出上述多个物体的至少一个,在通过上述取出位置选择部选择出的上述新的取出位置通过上述机械手来取出各个物体。
8.一种机器人系统,其特征在于,
该机器人系统具备:
测量机,其生成多个物体的图像;
机器人,其具有用于取出上述多个物体的至少一个的机械手;
位置选择部,其根据通过将上述图像输入到学习模型而取得的、表示存在能够由上述机械手取出的物体的区域的评价值地图,来选择上述多个物体的至少一个的取出位置;
显示部,其显示上述图像;
接受部,其接受基于上述显示部所显示的上述图像的至少一个示教位置的示教;
注释处理部,其根据上述接受部接受的上述示教位置来生成表示至少一个示教位置的标签地图,将该标签地图与上述图像关联并作为数据组保存在监督数据存储部中;
学习处理部,其将存储在上述监督数据存储部中的上述数据组作为输入来进行机器学习,输出上述学习模型,
上述机器人根据选择出的上述取出位置,通过上述机械手取出上述多个物体的至少一个。
9.一种物体取出方法,由具备生成多个物体的图像的测量机和具有用于取出上述多个物体的至少一个的机械手的机器人的机器人系统进行该物体取出方法,该方法的特征在于,
具备:接受步骤,接受根据上述图像决定的用于由上述机械手进行取出的取出位置的示教;
学习步骤,通过进行机器学习来学习用于输出关于作为输入数据而被输入的点群的信息的评价值的学习模型,其中,上述机器学习将所示教的上述取出位置以及其附近的点群的信息作为输入数据,并且将与针对作为上述输入数据的点群的信息的示教对应的评价值和与取出成败对应的评价值中的至少任意一方设为标签,
上述机器人根据所示教的上述取出位置,通过上述机械手取出上述多个物体的至少一个。
10.根据权利要求9所述的物体取出方法,其特征在于,
上述机器人系统还具备学习模型,
上述接受步骤还接受根据上述图像使用上述学习模型决定的用于由上述机械手进行取出的取出位置的示教。
11.根据权利要求9所述的物体取出方法,其特征在于,
该方法还具备:取出位置选择步骤,从上述图像剪裁预定区域的图像,并根据通过将被剪裁的上述图像的点群的信息作为输入数据输入给上述学习模型而输出的、针对上述点群的信息的评价值,来选择新的取出位置,
上述机器人根据所示教的上述取出位置,通过上述机械手取出上述多个物体的至少一个,在通过上述取出位置选择步骤选择出的上述新的取出位置通过上述机械手取出各个物体。
12.一种物体取出方法,由具备生成多个物体的图像的测量机和具有用于取出上述多个物体的至少一个的机械手的机器人的机器人系统进行该物体取出方法,该方法的特征在于,
具备:位置选择步骤,根据通过将上述图像输入到学习模型而取得的表示存在能够由上述机械手取出的物体的区域的评价值地图来选择上述多个物体的至少一个的取出位置;
显示步骤,显示上述图像;
接受步骤,接受基于通过上述显示步骤显示的上述图像的至少一个示教位置的示教;
注释处理步骤,根据通过上述接受步骤接受的上述示教位置来生成表示至少一个示教位置的标签地图,将该标签地图与上述图像关联并作为数据组保存在监督数据存储部中;
学习处理步骤,将存储在上述监督数据存储部中的上述数据组作为输入来进行机器学习,输出上述学习模型,
上述机器人根据选择出的上述取出位置,通过上述机械手取出上述多个物体的至少一个。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310544742.XA CN116423478A (zh) | 2017-09-25 | 2018-09-20 | 处理装置以及方法 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017183593A JP6695843B2 (ja) | 2017-09-25 | 2017-09-25 | 装置、及びロボットシステム |
JP2017-183593 | 2017-09-25 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310544742.XA Division CN116423478A (zh) | 2017-09-25 | 2018-09-20 | 处理装置以及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109551459A CN109551459A (zh) | 2019-04-02 |
CN109551459B true CN109551459B (zh) | 2023-05-30 |
Family
ID=65638782
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310544742.XA Pending CN116423478A (zh) | 2017-09-25 | 2018-09-20 | 处理装置以及方法 |
CN201811101031.0A Active CN109551459B (zh) | 2017-09-25 | 2018-09-20 | 机器人系统以及工件取出方法 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310544742.XA Pending CN116423478A (zh) | 2017-09-25 | 2018-09-20 | 处理装置以及方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11845194B2 (zh) |
JP (1) | JP6695843B2 (zh) |
CN (2) | CN116423478A (zh) |
DE (1) | DE102018215826B4 (zh) |
Families Citing this family (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9393686B1 (en) * | 2013-03-15 | 2016-07-19 | Industrial Perception, Inc. | Moveable apparatuses having robotic manipulators and conveyors to facilitate object movement |
JP6453922B2 (ja) * | 2017-02-06 | 2019-01-16 | ファナック株式会社 | ワークの取り出し動作を改善するワーク取り出し装置およびワーク取り出し方法 |
DE102017207069A1 (de) * | 2017-04-27 | 2018-10-31 | Robert Bosch Gmbh | Prüfvorrichtung zur optischen Prüfung eines Objektes, Produktionsanlage mit der Prüfvorrichtung und Verfahren zur optischen Prüfung des Objektes mit der Prüfvorrichtung |
EP3606707A2 (en) * | 2017-06-28 | 2020-02-12 | Google LLC | Machine learning methods and apparatus for semantic robotic grasping |
JP6680750B2 (ja) * | 2017-11-22 | 2020-04-15 | ファナック株式会社 | 制御装置及び機械学習装置 |
JP6669713B2 (ja) * | 2017-11-28 | 2020-03-18 | ファナック株式会社 | ロボットおよびロボットシステム |
JP6857332B2 (ja) * | 2018-03-13 | 2021-04-14 | オムロン株式会社 | 演算装置、演算方法、及びそのプログラム |
JP2020025992A (ja) * | 2018-08-09 | 2020-02-20 | 株式会社東芝 | 制御装置、制御方法、およびプログラム |
US10408939B1 (en) * | 2019-01-31 | 2019-09-10 | StradVision, Inc. | Learning method and learning device for integrating image acquired by camera and point-cloud map acquired by radar or LiDAR corresponding to image at each of convolution stages in neural network and testing method and testing device using the same |
JP7277187B2 (ja) | 2019-03-13 | 2023-05-18 | キヤノン株式会社 | 画像処理装置、撮像装置、画像処理方法、およびプログラム |
WO2020206396A1 (en) * | 2019-04-04 | 2020-10-08 | Plus One Robotics, Inc. | Industrial robotics systems and methods for continuous and automated learning |
CN110228068A (zh) * | 2019-06-14 | 2019-09-13 | 广西科技大学 | 一种机器人平面作业点快速定位系统及其快速定位方法 |
JPWO2020261333A1 (zh) * | 2019-06-24 | 2020-12-30 | ||
JP2021005158A (ja) * | 2019-06-25 | 2021-01-14 | 三菱電機株式会社 | 境線検出装置及び水位計測装置 |
JP2021010970A (ja) * | 2019-07-05 | 2021-02-04 | 京セラドキュメントソリューションズ株式会社 | ロボットシステム及びロボット制御方法 |
US11491658B2 (en) | 2019-07-23 | 2022-11-08 | Toyota Research Institute, Inc. | Methods and systems for automatically annotating items by robots |
DE102019121889B3 (de) * | 2019-08-14 | 2020-11-19 | Robominds GmbH | Automatisierungssystem und Verfahren zur Handhabung von Produkten |
CN114080304B (zh) * | 2019-08-22 | 2024-05-14 | 欧姆龙株式会社 | 控制装置、控制方法及控制程序 |
WO2021039995A1 (ja) * | 2019-08-28 | 2021-03-04 | 株式会社DailyColor | ロボット制御装置 |
JP6784868B1 (ja) * | 2019-09-02 | 2020-11-11 | ヤマザキマザック株式会社 | 制御装置、工作機械、算出方法及びプログラム |
JP7319891B2 (ja) | 2019-10-31 | 2023-08-02 | ミネベアミツミ株式会社 | 画像処理装置及び画像処理方法 |
JP2021070122A (ja) * | 2019-10-31 | 2021-05-06 | ミネベアミツミ株式会社 | 学習データ生成方法 |
MX2022005289A (es) | 2019-11-30 | 2022-08-08 | Boston Polarimetrics Inc | Sistemas y metodos para segmentacion de objetos transparentes usando se?ales de polarizacion. |
JP7364778B2 (ja) * | 2020-02-19 | 2023-10-18 | ファナック株式会社 | 学習用データセット生成装置および学習用データセット生成方法 |
CN111325795B (zh) * | 2020-02-25 | 2023-07-25 | 深圳市商汤科技有限公司 | 一种图像处理方法、装置、存储介质及机器人 |
CN115243842A (zh) * | 2020-03-05 | 2022-10-25 | 发那科株式会社 | 机器学习装置 |
DE102020115628A1 (de) | 2020-06-12 | 2021-12-16 | Schunk Gmbh & Co. Kg Spann- Und Greiftechnik | Sensoreinrichtung für ein Greifsystem, Verfahren zur Erzeugung von optimalen Greifposen zur Ansteuerung einer Greifvorrichtung und zugehöriges Greifsystem |
CN112001967A (zh) * | 2020-08-14 | 2020-11-27 | 苏州华兴源创科技股份有限公司 | 相机指导机械手搬运物体的方法和装置 |
CN116057548A (zh) | 2020-09-25 | 2023-05-02 | 发那科株式会社 | 推论计算处理装置以及推论计算处理方法 |
CN116547706A (zh) * | 2020-12-08 | 2023-08-04 | 索尼集团公司 | 学习装置、学习系统和学习方法 |
TW202226071A (zh) * | 2020-12-25 | 2022-07-01 | 日商發那科股份有限公司 | 機械學習裝置、及機械學習方法 |
US20220410381A1 (en) * | 2021-06-29 | 2022-12-29 | Intrinsic Innovation Llc | Systems and methods for picking objects using 3-d geometry and segmentation |
DE102021209646B4 (de) | 2021-09-02 | 2024-05-02 | Robert Bosch Gesellschaft mit beschränkter Haftung | Robotervorrichtung, Verfahren zum computerimplementierten Trainieren eines Roboter-Steuerungsmodells und Verfahren zum Steuern einer Robotervorrichtung |
CN114952809B (zh) * | 2022-06-24 | 2023-08-01 | 中国科学院宁波材料技术与工程研究所 | 工件识别和位姿检测方法、系统及机械臂的抓取控制方法 |
EP4311632A1 (de) * | 2022-07-27 | 2024-01-31 | Siemens Aktiengesellschaft | Verfahren zum greifen eines objekts, computerprogramm und elektronisch lesbarer datenträger |
WO2024122206A1 (ja) * | 2022-12-07 | 2024-06-13 | ソニーグループ株式会社 | 情報処理装置、情報処理方法、及びプログラム |
CN117067219B (zh) * | 2023-10-13 | 2023-12-15 | 广州朗晴电动车有限公司 | 一种电车车身成型的钣金机械臂控制方法及系统 |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10180668A (ja) * | 1996-12-26 | 1998-07-07 | Nkk Corp | 廃棄物中の特定物を選別するロボットシステム |
JP5767464B2 (ja) | 2010-12-15 | 2015-08-19 | キヤノン株式会社 | 情報処理装置、情報処理装置の制御方法、およびプログラム |
JP5623358B2 (ja) | 2011-09-06 | 2014-11-12 | 三菱電機株式会社 | ワーク取り出し装置 |
US9002098B1 (en) * | 2012-01-25 | 2015-04-07 | Hrl Laboratories, Llc | Robotic visual perception system |
JP5642738B2 (ja) | 2012-07-26 | 2014-12-17 | ファナック株式会社 | バラ積みされた物品をロボットで取出す装置及び方法 |
JP5670397B2 (ja) | 2012-08-29 | 2015-02-18 | ファナック株式会社 | バラ積みされた物品をロボットで取出す装置及び方法 |
JP5754454B2 (ja) | 2013-03-18 | 2015-07-29 | 株式会社安川電機 | ロボットピッキングシステム及び被加工物の製造方法 |
JP6415026B2 (ja) * | 2013-06-28 | 2018-10-31 | キヤノン株式会社 | 干渉判定装置、干渉判定方法、コンピュータプログラム |
JP2015100874A (ja) * | 2013-11-25 | 2015-06-04 | セイコーエプソン株式会社 | ロボットシステム |
JP6361213B2 (ja) * | 2014-03-26 | 2018-07-25 | セイコーエプソン株式会社 | ロボット制御装置、ロボット、ロボットシステム、教示方法、及びプログラム |
JP6240689B2 (ja) | 2015-07-31 | 2017-11-29 | ファナック株式会社 | 人の行動パターンを学習する機械学習装置、ロボット制御装置、ロボットシステム、および機械学習方法 |
DE102016009030B4 (de) | 2015-07-31 | 2019-05-09 | Fanuc Corporation | Vorrichtung für maschinelles Lernen, Robotersystem und maschinelles Lernsystem zum Lernen eines Werkstückaufnahmevorgangs |
JP6522488B2 (ja) * | 2015-07-31 | 2019-05-29 | ファナック株式会社 | ワークの取り出し動作を学習する機械学習装置、ロボットシステムおよび機械学習方法 |
JP6572687B2 (ja) * | 2015-09-02 | 2019-09-11 | トヨタ自動車株式会社 | 把持可否判定方法 |
JP6117901B1 (ja) | 2015-11-30 | 2017-04-19 | ファナック株式会社 | 複数の物品の位置姿勢計測装置及び該位置姿勢計測装置を含むロボットシステム |
JP6298035B2 (ja) * | 2015-12-17 | 2018-03-20 | ファナック株式会社 | モデル生成装置、位置姿勢算出装置、およびハンドリングロボット装置 |
JP2017124450A (ja) | 2016-01-12 | 2017-07-20 | 株式会社ソフトサービス | ピックアップ装置 |
WO2017201023A1 (en) * | 2016-05-20 | 2017-11-23 | Google Llc | Machine learning methods and apparatus related to predicting motion(s) of object(s) in a robot's environment based on image(s) capturing the object(s) and based on parameter(s) for future robot movement in the environment |
US10058995B1 (en) * | 2016-07-08 | 2018-08-28 | X Development Llc | Operating multiple testing robots based on robot instructions and/or environmental parameters received in a request |
JP6846950B2 (ja) * | 2017-03-03 | 2021-03-24 | 株式会社キーエンス | ロボットシミュレーション装置、ロボットシミュレーション方法、ロボットシミュレーションプログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器 |
JP6546618B2 (ja) | 2017-05-31 | 2019-07-17 | 株式会社Preferred Networks | 学習装置、学習方法、学習モデル、検出装置及び把持システム |
US10773382B2 (en) * | 2017-09-15 | 2020-09-15 | X Development Llc | Machine learning methods and apparatus for robotic manipulation and that utilize multi-task domain adaptation |
-
2017
- 2017-09-25 JP JP2017183593A patent/JP6695843B2/ja active Active
-
2018
- 2018-08-30 US US16/117,612 patent/US11845194B2/en active Active
- 2018-09-18 DE DE102018215826.6A patent/DE102018215826B4/de active Active
- 2018-09-20 CN CN202310544742.XA patent/CN116423478A/zh active Pending
- 2018-09-20 CN CN201811101031.0A patent/CN109551459B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN109551459A (zh) | 2019-04-02 |
DE102018215826B4 (de) | 2023-07-13 |
DE102018215826A1 (de) | 2019-03-28 |
CN116423478A (zh) | 2023-07-14 |
JP6695843B2 (ja) | 2020-05-20 |
US20190091869A1 (en) | 2019-03-28 |
US11845194B2 (en) | 2023-12-19 |
JP2019058960A (ja) | 2019-04-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109551459B (zh) | 机器人系统以及工件取出方法 | |
JP6895563B2 (ja) | ロボットシステム、モデル生成方法、及びモデル生成プログラム | |
US10740606B2 (en) | Method for assigning particular classes of interest within measurement data | |
CN109870983B (zh) | 处理托盘堆垛图像的方法、装置及用于仓储拣货的系统 | |
US11227434B2 (en) | Map constructing apparatus and map constructing method | |
CN111695622B (zh) | 变电作业场景的标识模型训练方法、标识方法及装置 | |
CN108961144B (zh) | 图像处理系统 | |
CN113284109B (zh) | 管道缺陷识别方法、装置、终端设备及存储介质 | |
JP2019036167A (ja) | 画像処理装置、画像処理方法 | |
CN109753960A (zh) | 基于分形理论的孤立森林水下人工目标检测方法 | |
CN112446275A (zh) | 物体数量推定装置、物体数量推定方法以及存储介质 | |
CN111524113A (zh) | 提升链异常识别方法、系统、设备及介质 | |
CN113610968A (zh) | 目标检测模型的更新方法及装置 | |
WO2024044078A1 (en) | Systems and methods for rigging a point cloud for animation | |
WO2022024877A1 (ja) | 情報処理装置、及び情報処理方法 | |
CN115471731A (zh) | 图像处理方法、装置、存储介质及设备 | |
EP4367644A1 (en) | Synthetic dataset creation for object detection and classification with deep learning | |
CN113920087A (zh) | 基于深度学习的微小元器件缺陷检测系统及方法 | |
CN111008607A (zh) | 一种视觉伺服飞机舱门缝隙自动化激光扫描方法和系统 | |
CN110967741A (zh) | 基于图像学的同相轴检测方法及系统 | |
CN116756835B (zh) | 模板组合设计方法、装置、设备及存储介质 | |
US11436754B2 (en) | Position posture identification device, position posture identification method and position posture identification program | |
JP6831149B1 (ja) | ひも状柔軟物の画像認識方法及び画像認識装置 | |
JP5743147B2 (ja) | 画像処理ユニット、および画像処理プログラム | |
WO2024112833A1 (en) | Self-training object perception system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |