CN117999153A - 图像处理装置、元件把持系统、图像处理方法和元件把持方法 - Google Patents
图像处理装置、元件把持系统、图像处理方法和元件把持方法 Download PDFInfo
- Publication number
- CN117999153A CN117999153A CN202180102303.2A CN202180102303A CN117999153A CN 117999153 A CN117999153 A CN 117999153A CN 202180102303 A CN202180102303 A CN 202180102303A CN 117999153 A CN117999153 A CN 117999153A
- Authority
- CN
- China
- Prior art keywords
- image
- patch
- patch image
- range
- plaque
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012545 processing Methods 0.000 title claims description 54
- 238000000034 method Methods 0.000 title claims description 28
- 238000003672 processing method Methods 0.000 title claims description 4
- 238000012937 correction Methods 0.000 claims abstract description 66
- 230000006870 function Effects 0.000 claims description 34
- 230000002194 synthesizing effect Effects 0.000 claims description 12
- 238000013527 convolutional neural network Methods 0.000 claims description 11
- 239000002131 composite material Substances 0.000 abstract description 22
- 238000013528 artificial neural network Methods 0.000 description 42
- 238000010586 diagram Methods 0.000 description 17
- 235000019557 luminance Nutrition 0.000 description 16
- 238000004364 calculation method Methods 0.000 description 11
- 238000005192 partition Methods 0.000 description 10
- 210000000078 claw Anatomy 0.000 description 9
- 230000005856 abnormality Effects 0.000 description 7
- 230000013011 mating Effects 0.000 description 7
- 238000001914 filtration Methods 0.000 description 6
- 239000011218 binary composite Substances 0.000 description 4
- 230000015572 biosynthetic process Effects 0.000 description 4
- 230000005484 gravity Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000003786 synthesis reaction Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 230000000644 propagated effect Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000002950 deficient Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000004308 accommodation Effects 0.000 description 1
- 230000010485 coping Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000010363 phase shift Effects 0.000 description 1
Classifications
-
- 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
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J19/00—Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
- B25J19/02—Sensing devices
- B25J19/04—Viewing devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Human Computer Interaction (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Manipulator (AREA)
- Image Processing (AREA)
Abstract
当切出针对一个元件(P)设定的切出范围(Rc)(对象范围)的图像而得到的斑块图像(Ip)(第一斑块图像)被输入到位置对准网络部(45)时,从位置对准网络部(45)输出用于对斑块图像(Ip)所包含的一个元件(P)校正切出范围(Rc)的位置的校正量(Δx,Δy,Δθ)(步骤(S304))。然后,生成从合成图像(Ic)(收纳元件图像)切出将切出范围(Rc)校正该校正量(Δx,Δy,Δθ)后的校正切出范围(Rcc)的图像而得到的包含一个元件(P)的校正斑块图像(Ipc)(第二斑块图像)(步骤(S305)),并针对该校正斑块图像(Ipc)计算把持成功概率(步骤(S307))。
Description
技术领域
本发明涉及利用机械手把持收纳于容器的多个元件的技术,特别是能够优选地适用于料箱取物。
背景技术
在非专利文献1中公开了如下技术:在料箱取物中,计算由机械手把持元件的情况下的把持成功概率。具体而言,从对堆积在箱内的多个元件进行拍摄而得到的箱图像切出包含对象元件的规定尺寸的斑块图像。然后,计算由位于该斑块图像的位置(切出位置)的机械手尝试斑块图像所包含的对象元件的把持的情况下的把持成功概率。该把持成功概率针对不同的对象元件的每一个计算出。
而且,作为把持元件的机器人的位置分量,不仅存在X方向或Y方向这样的平移方向,还存在旋转方向。因此,为了反映机器人的旋转位置的差异,通过进行使箱图像旋转的运算而生成与相互不同的角度对应的多个箱图像,并针对多个箱图像的每一个执行斑块图像的切出和把持成功概率的计算。
现有技术文献
非专利文献
非专利文献1:Improving DataEfficiency ofSelf-supervised Learning forRobotic Grasping(2019)(提高机器人抓取的自监督学习的数据效率)
发明内容
发明所要解决的课题
根据上述方法,取得将机械手的旋转角度的数量与对象元件的数量相乘而得到的张数的斑块图像,并针对各斑块图像计算把持成功概率。因此,存在运算负荷过大的问题。
本发明是鉴于上述课题而完成的,其目的在于提供一种能够降低由机械手尝试元件的把持的情况下的把持成功概率的计算所需的运算负荷的技术。
用于解决课题的技术方案
本发明所涉及的图像处理装置具备:位置对准部,当被输入了第一斑块图像时,输出用于对第一斑块图像所包含的一个元件校正对象范围的位置的校正量,所述第一斑块图像是将针对表示收纳于容器的多个元件的收纳元件图像所包含的多个元件中的一个元件设定的对象范围的图像切出而得到的;校正图像生成部,生成包含一个元件的第二斑块图像,该第二斑块图像是从收纳元件图像切出将对象范围校正校正量后的范围的图像而得到的;及把持分类部,计算由位于设定第二斑块图像的范围的机械手尝试第二斑块图像所包含的一个元件的把持的情况下的把持成功概率。
本发明所涉及的图像处理方法包括如下工序:当输入了第一斑块图像时,输出用于对第一斑块图像所包含的一个元件校正对象范围的位置的校正量的工序,所述第一斑块图像是将针对表示收纳于容器的多个元件的收纳元件图像所包含的多个元件中的一个元件设定的对象范围的图像切出而得到的;生成包含一个元件的第二斑块图像的工序,所述第二斑块图像是从收纳元件图像切出将对象范围校正校正量后的范围的图像而得到的;及计算由位于设定第二斑块图像的范围的机械手尝试第二斑块图像所包含的一个元件的把持的情况下的把持成功概率的工序。
在这样构成的图像处理装置和方法中,当输入了将针对一个元件设定的对象范围的图像切出而得到的第一斑块图像时,输出用于对第一斑块图像所包含的一个元件校正对象范围的位置的校正量。然后,生成包含一个元件的第二斑块图像,并针对该第二斑块图像计算把持成功概率,该第二斑块图像是从收纳元件图像切出将对象范围校正该校正量后的范围的图像而得到的。因此,能够基于根据第一斑块图像求出的校正量,得到在能够以高的成功概率把持一个元件的位置包含元件的第二斑块图像。因此,不需要针对与机械手在相互不同的多个位置(特别是旋转位置)把持一个元件的情况对应的多个斑块图像的每一个计算把持成功概率。这样,能够降低在由机械手尝试元件的把持的情况下的把持成功概率的计算所需的运算负荷。
另外,也可以将图像处理装置构成为,位置对准部将表示元件在对象范围内的适当位置的位置判定掩模与第一斑块图像所包含的元件的位置之差作为教师数据,对第一斑块图像与校正量的关系进行学习。在该结构中,能够利用位置判定掩模简便地评价第一斑块图像所示的元件从适当位置的偏移并进行学习。
另外,也可以将图像处理装置构成为,位置对准部基于第一斑块图像所包含的元件的形状生成位置判定掩模。在该结构中,能够使用符合元件的形状的适当的位置判定掩模进行学习。
另外,也可以将图像处理装置构成为,位置对准部执行如下学习:将第一斑块图像所包含的元件与位置判定掩模的位置的均方误差作为损失函数并进行误差反向传播,更新对第一斑块图像与校正量的关系进行规定的参数。在该结构中,能够利用均方误差准确地评价第一斑块图像所示的元件从适当位置的偏移并进行学习。
另外,也可以将图像处理装置构成为,位置对准部变更第一斑块图像并反复进行学习。在该结构中,能够得到高精度的学习结果。
另外,作为结束学习的条件,能够设想各种条件。例如,也可以将图像处理装置构成为,位置对准部在反复进行学习的次数达到规定次数时结束学习。或者,也可以将图像处理装置构成为,位置对准部根据损失函数的收敛状况结束学习。
另外,也可以将图像处理装置构成为,把持分类部使用卷积神经网络根据第二斑块图像计算把持成功概率。由此,能够根据第二斑块图像准确地计算出把持成功概率。
另外,也可以将图像处理装置构成为,把持分类部通过对从卷积神经网络输出的特征量映射添加注意掩模而对特征量映射进行加权,注意掩模表示关注在机械手把持元件的把持方向上延伸且通过第二斑块图像的中心的区域、和与把持方向正交且通过第二斑块图像的中心的区域。由此,能够在将元件的朝向、元件的周围的状况(其他元件的有无)对机械手的把持造成的影响纳入考虑的同时,准确地计算出把持成功概率。
另外,也可以将图像处理装置构成为,还具备:图像取得部,取得表示多个元件的亮度图像和表示多个元件的深度图像;图像合成部,通过将图像取得部所取得的亮度图像与深度图像合成而生成收纳元件图像;及斑块图像生成部,根据收纳元件图像生成第一斑块图像并输入到位置对准部。在该结构中,通过将分别表示多个元件的亮度图像与深度图像合成而生成合成图像。在这样生成的合成图像中,多个元件中的相对较高的位置的元件的形状容易残留,有利于识别该元件(换言之,把持成功概率高的元件)。
本发明所涉及的元件把持系统具备:上述的图像处理装置;及机械手,图像处理装置使机械手在基于计算出的把持成功概率决定的位置把持元件。
本发明所涉及的元件把持方法包括:当输入了第一斑块图像时,输出用于对第一斑块图像所包含的一个元件校正对象范围的位置的校正量的工序,所述第一斑块图像是将针对表示收纳于容器的多个元件的收纳元件图像所包含的多个元件中的一个元件设定的对象范围的图像切出而得到的;生成包含一个元件的第二斑块图像的工序,该第二斑块图像是从收纳元件图像切出将对象范围校正校正量后的范围的图像而得到的;计算由位于设定第二斑块图像的范围的机械手尝试第二斑块图像所包含的一个元件的把持的情况下的把持成功概率的工序;及使机械手在基于把持成功概率决定的位置把持元件的工序。
在这样构成的元件把持系统和方法中,不需要针对与机械手在相互不同的多个位置(特别是旋转位置)把持一个元件的情况对应的多个斑块图像的每一个计算把持成功概率。其结果是,能够降低在由机械手尝试元件的把持的情况下的把持成功概率的计算所需的运算负荷。
发明效果
根据本发明,能够降低在由机械手尝试元件的把持的情况下的把持成功概率的计算所需的运算负荷。
附图说明
图1是示意性地表示本发明所涉及的元件把持系统的一例的俯视图。
图2是示意性地表示在图1的元件把持系统中用于元件的把持的机械手的立体图。
图3是表示控制装置所具备的电结构的一例的框图。
图4A是表示在图1的元件把持系统中执行的料箱取物的一例的流程图。
图4B是表示在图4A的料箱取物中执行的斑块图像处理的一例的流程图。
图4C是表示在图4A的料箱取物中执行的把持推断的一例的流程图。
图4D是表示在图4C的把持推断中执行的把持对象元件的决定的一例的流程图。
图5A是示意性地表示在图4B的斑块图像处理中执行的动作的图。
图5B是示意性地表示在图4B的斑块图像处理中执行的动作的图。
图5C是示意性地表示在图4B的斑块图像处理中执行的动作的图。
图5D是示意性地表示在图4B的斑块图像处理中执行的动作的图。
图5E是示意性地表示在图4B的斑块图像处理中执行的动作的图。
图6A是示意性地表示在图4C的把持推断中执行的动作的图。
图6B是示意性地表示在图4C的把持推断中执行的动作的图。
图6C是示意性地表示在图4C的把持推断中执行的动作的图。
图7是示意性地表示在图4C的把持推断中执行的动作的图。
图8A是表示位置对准神经网络的学习数据的收集方法的一例的流程图。
图8B是示意性地表示根据斑块图像生成的位置判定掩模的一例的图。
图9A是使位置对准神经网络学习在图8A中收集到的学习数据的流程图的一例。
图9B是示意性地表示掩模的使用对损失函数的计算有利的一例的图。
图10A是使把持分类神经网络执行学习的流程图的一例。
图10B是使把持分类神经网络执行学习的流程图的一例。
图10C是使把持分类神经网络执行学习的流程图的一例。
图11是表示把持分类网络部的把持分类神经网络的再学习方法的一例的流程图。
图12是把持分类网络部的把持分类神经网络的变形例。
具体实施方式
图1是示意地表示本发明所涉及的元件把持系统的一例的俯视图,图2是示意地表示在图1的元件把持系统中用于元件的把持的机械手的立体图。在这些图和以下的图中,适当地示出作为水平方向的X方向、作为与X方向正交的水平方向的Y方向和作为铅垂方向的Z方向。这些X方向、Y方向和Z方向构成全局坐标系。如图1所示,元件把持系统1具备控制装置3和作业机器人5,作业机器人5基于控制装置3的控制执行作业(料箱取物)。
具体而言,在作业机器人5的作业空间配置有元件箱91和配套托盘92。元件箱91具有收纳元件的多个分区收纳911,在各分区收纳911中堆积有多个元件。配套托盘92具有收纳元件的多个分区收纳921,在各分区收纳921载置规定个数的元件。并且,作业机器人5从元件箱91的分区收纳911把持元件(料箱取物),并移载到配套托盘92的分区收纳921。另外,在元件箱91与配套托盘92之间配置有垃圾箱93,在检测到不良元件的情况下,作业机器人5将该不良元件废弃到垃圾箱93。
作业机器人5是具备设置于前端的机械手51的SCARA机器人,通过由机械手51抓住元件并使机械手51移动,从而执行元件从元件箱91向配套托盘92的移载、元件向垃圾箱93的废弃。如图2所示,该机械手51在X方向、Y方向、Z方向和θ方向上具有自由度。在此,θ方向是以与Z方向平行的旋转轴为中心的旋转方向。另外,机械手51具有在把持方向G上排列的两根爪511,各爪511具有与把持方向G正交的平板形状。机械手51能够使两根爪511的间隔在把持方向G上扩大、缩小,通过利用这些爪511从把持方向G夹持元件来把持元件。另外,在图2中,把持方向G与X方向平行,但根据机械手51在θ方向上的位置,把持方向G当然能够相对于X方向倾斜。
而且,元件把持系统1具备两台相机81、83和质量计85。相机81是从Z方向(上方)对堆积于元件箱91的分区收纳911的多个元件进行拍摄的俯视相机,从Z方向与作业机器人5的作业空间相对。该相机81拍摄以亮度表示拍摄对象(元件)的灰度图像(二维图像)和表示到拍摄对象为止的距离的深度图像(三维图像)。作为取得深度图像的具体方法,可以使用相移法或立体匹配法。相机83是从Y方向对由机械手51所把持的元件进行拍摄的侧视相机,水平地安装于机械手51的基座。该相机83拍摄以亮度表示拍摄对象(元件)的灰度图像(二维图像)。另外,质量计85对载置到配套托盘92的分区收纳921的元件的质量进行测量。
图3是表示控制装置所具备的电结构的一例的框图。控制装置3是具备运算部31、存储部35和UI(User Interface:用户接口)39的例如个人计算机。运算部31例如是具备CPU(Central Processing Unit:中央处理器)等的处理器,具有主控制部311和图像处理部4。这些主控制部311和图像处理部4通过执行规定的程序而在运算部31展开。主控制部311执行上述的机械手51、相机81、83和质量计85这样的硬件的控制,图像处理部4执行用于识别作为机械手51的把持对象的元件的图像处理。特别是图像处理部4具有图像合成部41、斑块图像生成部43、位置对准网络部45和把持分类网络部47。这些功能将在后面详细叙述。
存储部35是HDD(Hard Disk Drive:硬盘驱动器)或SSD(Solid State Drive:固态驱动器)等存储装置,例如存储用于在运算部31展开上述主控制部311或图像处理部4的程序、数据。另外,UI39具有键盘、鼠标等输入设备和显示器等输出设备,将由操作者通过输入设备所输入的信息传输到运算部31、UI39,或者将与来自运算部31的指令对应的图像显示于显示器。
图4A是表示在图1的元件把持系统中执行的料箱取物的一例的流程图,图4B是表示在图4A的料箱取物中执行的斑块图像处理的一例的流程图,图4C是表示在图4A的料箱取物中执行的把持推断的一例的流程图,图4D是表示在图4C的把持推断中执行的把持对象元件的决定的一例的流程图。
在图4A的料箱取物的步骤S101中,利用相机81拍摄在元件料箱91的分区收纳911中堆积的多个元件的俯视图像。作为该俯视图像,如上述那样拍摄灰度图像Ig和深度图像Id。主控制部311将从相机81所取得的这些图像Id、Ig传输到图像处理部4的图像合成部41,图像合成部41执行斑块图像处理(步骤S102)。
图5A~图5E是示意性地表示在图4B的斑块图像处理中执行的动作的图。在图4B的斑块图像处理的步骤S201中,图像合成部41通过合成灰度图像Ig(图5A)与深度图像Id(图5B)而生成合成图像Ic(图5C)。
如图5A所示,灰度图像Ig由在X方向和Y方向上二维排列的多个像素PX构成,是针对多个像素PX的每一个表示像素PX的亮度Vg的图像数据。另外,在图5A中,使用通过表示行编号的“m”与表示列编号的“n”的组合(m,n)来确定一个像素PX的标记,灰度图像Ig的像素PX(m,n)具有亮度Vg(m,n)。另外,对应部位越亮,亮度Vg(m,n)具有越大的值。
如图5B所示,深度图像Id与灰度图像Ig同样地由多个像素PX构成,是针对多个像素PX的每一个表示像素PX的深度(距离)的图像数据。在图5B中也使用与图5A同样的标记,深度图像Id的像素PX(m,n)具有深度Vd(m,n)。另外,对应部位的深度越浅(换言之,相对部位的位置越高),深度Vd(m,n)具有越大的值。
如图5C所示,合成图像Ic与灰度图像Ig同样地由多个像素PX构成,是针对多个像素PX的每一个表示像素PX的合成值Vc的图像数据。在图5C中也使用与图5A同样的标记,合成图像Ic的像素PX(m,n)具有合成值Vc(m,n)。
该合成值Vc(m,n)基于下式来计算:
Vc(m,n)=Vd(m,n)×(1+Vg(m,n)/max(Vg))
max(Vg)是灰度图像Ig所包含的亮度Vg中的最大亮度。即,合成值Vc是以深度Vd进行加权而得到的亮度Vg,合成图像Ic成为深度加权灰度图像。另外,在上式中,对以最大亮度标准化后的亮度Vg乘以深度Vd(权重)。但是,标准化不是必须的,也可以对原来的亮度Vg乘以深度Vd(权重)来计算合成值Vc。总之,只要以依赖于亮度Vg和深度Vd这两者的方式决定合成值Vc即可。
在图5D中,示出了从灰度图像Ig和深度图像Id生成合成图像Ic的实验结果。灰度图像Ig(滤波前)是相机81所取得的二维图像数据,灰度图像Ig(滤波后)是利用滤波器去除相机81所取得的二维图像数据的规定成分(高频成分)而得到的二维图像数据。另外,深度图像Id(滤波前)是相机81所取得的三维图像数据,深度图像Id(滤波前)是利用滤波器去除相机81所取得的三维图像数据的规定成分(高频成分)而得到的三维图像数据。并且,合成图像Ic成为通过上式将滤波后的灰度图像Ig与深度图像Id合成而得到的深度加权灰度图像。这里,当关注在“灰度图像Ig(滤波后)”和“合成图像Ic”的各栏中由箭头指定的范围(椭圆的范围)时,在灰度图像Ig(滤波后)中清楚地显现的元件在合成图像Ic中未显现。这是该元件的深度深(换言之,高度低),对该元件的亮度Vg进行了小的加权的结果。这样,灰度图像Ig与深度图像Id的合成具有使高的位置的元件醒目的效果。另外,图5D中所使用的滤波器不是必须的,即使适当省略也能够得到同样的效果。
在图4B的步骤S201中所生成的合成图像Ic从图像合成部41输出到斑块图像生成部43,斑块图像生成部43对合成图像Ic执行步骤S202~S204的图像处理。该图像处理的具体内容在图5E中例示。在步骤S202中,通过以规定的阈值对合成图像Ic进行二值化而得到二值合成图像Ic。在该二值合成图像Ic中,具有高亮度(白色)的闭合区域与元件对应地显现,换言之,能够将二值合成图像Ic中的闭合区域识别为元件P。在步骤S203中,斑块图像生成部43执行对二值合成图像Ic的各元件P(闭合区域Rc)关联相互不同的标签(编号)的标注。
在步骤S204中,设定用于从二值合成图像Ic切出包含元件P的图像的切出范围Rc。特别是,切出范围Rc被设定为表示把持元件P时的机械手51的位置。该切出范围Rc相当于机械手51作为把持的对象的范围(把持对象范围),机械手51能够把持存在于切出范围Rc的元件P。例如,在图5E的“斑块图像Ip”的栏中,与为了把持元件P而从上侧与元件P(2)相对的机械手51的两个爪511对应的部分由切出范围Rc的白实线(与Y方向平行)表示,各爪511的两端移动的轨迹用白虚线(与X方向平行)表示。从该例可知,爪511与Y方向平行,θ方向上的机械手51的旋转角度为0度。即,切出范围Rc的设定在θ方向上的机械手51的旋转角度为0度的状态下执行。然后,斑块图像生成部43取得二值合成图像Ic中的切出范围Rc的图像作为斑块图像Ip(斑块图像生成)。该斑块图像Ip针对在步骤S203中被附加了标签的各元件P而生成。
如图4A所示,当步骤S102中的斑块图像处理完成时,执行步骤S103中的把持推断(图4C)。图6A~6C和图7是示意性地表示在图4C的把持推断中执行的动作的图。在开始图4C的把持推断时,将表示在步骤S102中的斑块图像处理中所取得的多个斑块图像Ip的斑块图像信息(图6A)从图像合成部41输出到位置对准网络部45。如图6A所示,斑块图像信息将斑块图像Ip、该斑块图像Ip的标签的编号与该斑块图像Ip的切出范围Rc的位置对应起来表示。切出范围Rc的形状在各斑块图像Ip中相同,切出范围Rc的位置(切出位置)由切出范围Rc的几何重心的X坐标、Y坐标和θ坐标确定。
与此相对,在图4C的步骤S301中,位置对准网络部45将对斑块图像信息所示的多个斑块图像Ip的标签进行计数的计数值复位为0(步骤S301),并使该计数值增加(步骤S302)。
在步骤S303中,位置对准网络部45判定当前计数值的斑块图像Ip所包含的物体(白色闭合区域)的面积是否适当。具体而言,将下侧阈值和比该下侧阈值大的上侧阈值分别与物体面积进行比较。然后,在物体面积小于下侧阈值或大于上侧阈值的情况下,判定为物体面积不适当(在步骤S303中为“否”),并返回到步骤S302。另一方面,在物体面积为下侧阈值以上且上侧阈值以下的情况下,判定为物体面积适当(在步骤S303中为“是”),并进入步骤S304。
在步骤S304中,位置对准网络部45基于当前计数值的斑块图像Ip,计算对切出范围Rc的位置进行校正的校正量。即,位置对准网络部45具有位置对准神经网络,该位置对准神经网络在被输入了斑块图像Ip时,输出切出范围Rc的校正量(Δx,Δy,Δθ)。使用图6C对斑块图像Ip与切出范围Rc的校正量的关系进行说明。
在图6C的“切出范围Rc”的栏中,示出了切出范围Rc和以该切出范围Rc切出的斑块图像Ip,在“校正切出范围Rcc”的栏中,将根据校正量(Δx,Δy,Δθ)对切出范围Rc的位置进行校正而得到的校正切出范围Rcc与它们重叠地示出。切出范围Rc和校正切出范围Rcc具有相同的形状,执行以下的各操作而得到的切出范围Rc与校正切出范围Rcc一致:
·在X方向上平行移动校正距离Δx…X方向平行操作;
·在Y方向上平行移动校正距离Δy…Y方向平行操作;
·在θ方向上旋转移动校正角度Δθ…θ方向旋转操作。
另外,相比于切出范围Rc的中心与元件P的位置偏移,校正切出范围Rcc的中心与元件P的位置偏移得到改善。即,切出范围Rc的校正是改善切出范围Rc与元件P的位置偏移的校正,进一步而言,是将切出范围Rc转换为校正切出范围Rcc以使元件P定心的校正。然后,位置对准网络部45的位置对准神经网络针对斑块图像Ip的输入,输出用于校正该斑块图像Ip的切出范围Rc而计算校正切出范围Rcc的校正量(Δx,Δy,Δθ)。顺便提及,将切出范围Rc校正该校正量而转换为校正切出范围Rcc的运算能够通过在θ方向上旋转Δθ的旋转矩阵与在X方向上平行移动Δx且在Y方向上平行移动Δy的平行移动矩阵之积来执行。另外,在需要考虑图像的放大、缩小的情况下,只要进一步乘以缩放矩阵即可。
另外,如图6C的例子那样,在元件P具有在规定方向上较长的形状的情况下,优选进行定心以使元件P的长轴方向与机械手51的把持方向G正交。由此,能够由机械手51准确地把持元件P。
在步骤S305中,位置对准网络部45通过基于位置对准神经网络所输出的校正量对切出范围Rc进行校正,由此创建校正切出范围Rcc,并取得二值合成图像Ic中的校正切出范围Rcc的图像作为校正斑块图像Ipc(校正斑块图像生成)。然后,重复步骤S302~S305,直到针对斑块图像信息所包含的全部标签(换言之,全部斑块图像Ip)完成步骤S302~S305为止(直到在步骤S306中成为“是”为止)。
当针对全部标签完成时,表示多个校正斑块图像Ipc的校正斑块图像信息(图6B)从位置对准网络部45输出到把持分类网络部47。如图6B所示,校正斑块图像信息将校正斑块图像Ipc、该校正斑块图像Ipc的标签的编号与该校正斑块图像Ipc的校正切出范围Rcc的位置对应起来表示。校正切出范围Rcc的形状在各校正斑块图像Ipc中相同,校正切出范围Rcc的位置(切出位置)由校正切出范围Rcc的几何重心的X坐标、Y坐标和θ坐标确定。
在步骤S307中,把持分类网络部47针对校正斑块图像信息所示的多个校正斑块图像Ipc的每一个,计算把持成功概率。具体而言,计算在使机械手51位于校正切出范围Rcc的位置(x+Δx,y+Δy,θ+Δθ)的状态下,尝试以校正切出范围Rcc所切出的校正斑块图像Ipc所示的元件P的把持的情况下的成功概率(把持成功概率)。即,把持分类网络部47具有把持分类神经网络,该把持分类神经网络在被输入了校正斑块图像Ipc时,输出与校正斑块图像Ipc对应的把持成功概率。这样,取得图7所示的把持成功概率信息。如图7所示,把持成功概率信息将校正斑块图像Ip、该校正斑块图像Ipc的标签的编号、该校正斑块图像Ipc的校正切出范围Rcc的位置与该校正斑块图像Ipc的把持成功概率对应起来表示。另外,把持成功概率在图7的例子中由0~1的值表示,但也可以由百分比表示。
在步骤S308中,主控制部311基于从把持分类网络部47输出的把持成功概率信息,决定作为把持对象的元件P。在图4D的把持对象元件的决定中,把持成功概率信息的各校正斑块图像Ipc按照把持成功概率以降序排序(步骤S401)。即,把持成功概率越高的校正斑块图像Ipc,被排序在越高位。
另外,对于把持成功概率相同的校正斑块图像Ipc,按照校正斑块图像Ipc所包含的物体面积以降序排序。即,物体面积越大的校正斑块图像Ipc,被排序在越高位。在步骤S403中,排序顺序的计数值被复位为0,在步骤S404中,该计数值被增加。
在步骤S405中,判定当前计数值的校正斑块图像Ipc所包含的元件P是否接近元件箱91的分区收纳911(容器)的端部。具体而言,如果切出校正斑块图像Ipc的校正切出范围Rcc的位置与分区收纳911的壁面的距离小于规定值,则判定为接近容器的端部(在步骤S405中为“是”),并返回到步骤S404。另一方面,如果该距离为规定值以上,则判定为未接近容器的端部(在步骤S405中为“否”),并进入步骤S406。在步骤S406中,当前计数值的校正斑块图像Ipc被选择为表示把持对象的元件P的一个校正斑块图像Ipc。然后,返回到图4A的流程图。
在图4A的步骤S104中,机械手51移动到与在步骤S103中所选择的一个校正斑块图像Ipc对应的校正切出范围Rcc所示的位置,把持一个校正斑块图像Ipc所示的元件P。在步骤S105中,由相机83拍摄被机械手51把持的元件P的图像,在步骤S106中,主控制部311根据由相机83拍摄到的图像,判定由机械手51所把持的元件P。然后,主控制部311判定所把持的元件P的个数是否为一个(步骤S107),在不为一个的情况(在步骤S107中为“否”的情况)下,使机械手51将该元件P返还到元件箱91的分区收纳911(步骤S108)。另外,在所把持的元件P的个数为一个的情况(在步骤S107中为“是”的情况)下,主控制部311判定所把持的元件P是否正常(步骤S109),在具有表示元件P的面积过小等异常的情况(在步骤S109中为“否”的情况)下,使机械手51将该元件P废弃到垃圾箱93(步骤S110)。
另一方面,在元件P正常的情况(在步骤S109中为“是”的情况)下,主控制部311使机械手51将该元件P载置到配套托盘92的分区收纳921(步骤S111)。接着,主控制部311利用质量计85测量质量(步骤S112),判定质量计85所示的质量是否合适(步骤S113)。具体而言,能够基于是否增加了与载置到配套托盘92的元件P相当的质量来进行判定。然后,在质量不合适的情况下(在步骤S113中为“否”的情况下),主控制部311使用UI39向作业者通知异常,另一方面,在质量合适的情况下(在步骤S113中为“是”的情况下),主控制部311返回到步骤S101。
以上是在元件把持系统1中执行的料箱取物的内容。在上述的把持推断中,位置对准网络部45基于从切出范围Rc切出的斑块图像Ip,计算对该切出范围Rc进行校正的校正量(Δx,Δy,Δθ)。特别是,位置对准网络部45使用位置对准神经网络根据斑块图像Ip计算切出范围Rc的校正量。接着,对使该位置对准神经网络学习斑块图像Ip与切出范围Rc的校正量的关系的方法进行说明。
图8A是表示位置对准神经网络的学习数据的收集方法的一例的流程图。该流程图由控制装置3的运算部31执行。在执行该流程图时,在运算部31构成模拟器,该模拟器在通过运算而虚拟构建的元件把持系统1(以下,适当称为“虚拟元件把持系统1”)中执行料箱取物。该模拟器基于重力加速度、摩擦系数等物理参数,通过运算虚拟地执行机械手51从元件箱91的分区收纳911把持元件P的动作。
在步骤S501中,确认是否取得了学习所需的数量的数据。该所需数量例如能够由作业者预先设定。在已经取得所需数量的数据的情况(在步骤S501中为“是”的情况)下,图8A的流程图结束,另一方面,在所取得的数据的数量小于所需数量的情况(在步骤S501中为“否”的情况)下,进入步骤S502。
在步骤S502中,判定在配置于虚拟元件把持系统1的元件箱91的分区收纳911是否收纳有足够的元件P。具体而言,能够基于元件P的个数是否为规定数量以上进行判定。在元件箱91的分区收纳911内的元件P的数量小于规定数量的情况(在步骤S502中为“否”的情况)下,通过将元件箱91的分区收纳911内的元件P的个数复位而增加到初始值(步骤S503),并返回到步骤S501。另一方面,在元件箱91的分区收纳911内的元件P的数量为规定数量以上的情况(在步骤S502中为“是”的情况)下,进入步骤S504。
在步骤S504中,以与上述的现实的元件把持系统1的情况相同的方式,在虚拟元件把持系统1中生成合成图像Ic。接着,对该合成图像Ic进行二值化而生成二值合成图像Ic,并对该二值合成图像Ic所包含的各元件P执行标注(步骤S505)。然后,对被标注的各元件P设定切出范围Rc,切出斑块图像Ip(步骤S506)。
在步骤S507中,将对各斑块图像Ip进行计数的计数值复位,在步骤S508中,使计数值增加。然后,与上述同样地,判定当前计数值的斑块图像Ip所包含的物体(白色闭合区域)的面积是否适当(步骤S509)。在物体的面积不适当的情况(在步骤S509中为“否”的情况)下,返回到步骤S508,另一方面,在物体的面积适当的情况(在步骤S509中为“是”的情况)下,进入步骤S510。
当这样选择了物体的面积适当的一个斑块图像Ip时,主控制部311根据该一个斑块图像Ip生成位置判定掩模Mp(图8B)(步骤S510)。图8B是示意性地表示根据斑块图像生成的位置判定掩模的一例的图。该位置判定掩模Mp具有与斑块图像Ip(换言之,切出范围Rc)相同形状的轮廓,在位置判定掩模Mp的中央配置有与斑块图像Ip所包含的元件P相同形状的元件基准图案Pr。该元件基准图案Pr被生成为具有斑块图像Ip所包含的元件P(换言之,白色闭合区域)的纵、横各自的像素数。该位置判定掩模Mp是元件P位于中央的理想的斑块图像Ip的模型。然后,将斑块图像Ip与根据该斑块图像Ip所生成的位置判定掩模Mp对应起来,存放于斑块图像列表(步骤S511)。
当这样完成了到步骤S511为止的各步骤时,返回到步骤S501。然后,反复执行步骤S501~S511,直到取得所需数量的数据为止,换言之,直到存放到斑块图像列表的斑块图像Ip与位置判定掩模Mp的对的数量达到所需数量为止。
图9A是使位置对准神经网络学习在图8A中收集到的学习数据的流程图的一例。该流程图由控制装置3的运算部31执行。在步骤S601中,判定学习次数是否达到规定数量。该规定数量例如能够由作业者预先设定。
在步骤S602中,使从斑块图像列表中选择出的未学习的斑块图像Ip正向传播到位置对准网络部45的位置对准神经网络。由此,与斑块图像Ip对应的校正量(Δx,Δy,Δθ)从位置对准网络部45的神经网络输出。然后,位置对准网络部45通过将利用该校正量对切出范围Rc进行校正而得到的校正切出范围Rcc内的二值合成图像Ic(在步骤S505中生成)切出,由此生成校正斑块图像Ipc(步骤S603)。
在步骤S604中,位置对准网络部45将与在步骤S602中选择出的斑块图像Ip对应的位置判定掩模Mp和校正斑块图像Ipc以各自的轮廓一致的方式进行重叠,并计算位置判定掩模Mp的元件基准图案Pr与校正斑块图像Ipc所包含的元件P的均方误差作为损失函数。然后,在步骤S605中,通过在位置对准神经网络中使该损失函数反向传播(误差反向传播),从而更新位置对准神经网络的参数。
另外,损失函数的计算也可以不使用位置判定掩模Mp。即,也可以根据元件P的图像的矩计算主轴角,并将该主轴角与规定的基准角度的均方误差作为损失函数。另一方面,在图9B所例示的情况下,使用位置判定掩模Mp是有利的。图9B是示意性地表示掩模的使用对损失函数的计算有利的一例的图。图9B所示的校正斑块图像Ipc所包含的元件P具有锯齿形状,难以根据该元件P的图像的矩适当地求出主轴角。因此,从应对多种形状的元件P的观点出发,在此使用了位置判定掩模Mp。
在步骤S606中,通过使存放到斑块图像列表的斑块图像Ip中的预先确保为测试用而未用于学习的斑块图像Ip(测试数据)正向传播到更新了参数的位置对准神经网络,来计算校正量。然后,基于该校正量,以与上述步骤S603~S604相同的要领,使用与该测试数据对应的位置判定掩模Mp来计算损失函数。
运算部31在每次执行步骤S606时存储在步骤S606中计算出的损失函数,并且计算这样存储的多个损失函数中的最小值。然后,运算部31确认最近计算出的损失函数是否更新了该最小值。特别地,在步骤S607中,判定是否连续10次未更新最小值,即是否连续10次计算出比最小值大的损失函数。然后,在过去10次中计算出最小值以下的损失函数的情况(在步骤S607中为“否”的情况)下,返回到步骤S601,另一方面,在连续10次计算出比最小值大的损失函数的情况(在步骤S607中为“是”的情况)下,图9A的流程图结束。另外,次数不限于10次,可以根据需要适当变更。
另外,在上述的把持推断中,当校正斑块图像Ipc被输入到把持分类网络部47时,把持分类网络部47计算由校正斑块图像Ipc所示的位置的机械手51把持校正斑块图像Ipc所包含的元件P的情况下的把持成功概率。特别是,把持分类网络部47使用把持分类神经网络,根据校正斑块图像Ipc计算把持成功概率。接着,对使该把持分类神经网络学习校正斑块图像Ipc与把持成功概率的关系的方法进行说明。
图10A~图10C是使把持分类神经网络执行学习的流程图的一例。该流程图由控制装置3的运算部31执行。在把持分类神经网络的学习中,也与上述位置对准神经网络的学习同样地,使用构建虚拟元件把持系统1的模拟器。
在图10A的流程图中,与图8A的流程图同样地执行学习数据的收集。即,图10A的步骤S701~S709除了以下的点之外,与图8A的步骤S501~S509相同。即,在步骤S701中,不是判定数据的取得数量,而是判定学习次数是否达到规定数量。该规定数量例如能够由作业者预先设定。
然后,在图10A的流程图中,当通过步骤S701~S709的执行而选择了物体的面积适当的一个斑块图像Ip时,位置对准网络部45使用完成了上述学习的位置对准神经网络计算与斑块图像Ip对应的校正量(步骤S710),并将斑块图像Ip与校正量相对应地存放于校正量列表(步骤S711)。然后,重复步骤S708~S711,直到计数值达到最大为止(直到在步骤S712中成为“是”为止),并将斑块图像Ip与校正量的对依次存放于校正量列表。当计数值达到最大时(在步骤S712中为“是”),进入图10B的步骤S712。
在步骤S712中,位置对准网络部45针对存放到校正量列表的斑块图像Ip与校正量的各对执行如下处理:基于校正量对斑块图像Ip的切出范围Rc进行校正而生成校正切出范围Rcc,并基于该校正切出范围Rcc生成校正斑块图像Ipc。由此,生成多个校正斑块图像Ipc。另外,生成校正斑块图像Ipc的具体过程如上所述。
在步骤S713中,确认是否取得了学习所需的数量的数据。该所需数量例如能够由作业者预先设定。在已经取得所需数量的数据的情况(在步骤S713中为“是”的情况)下,进入后述的步骤S717(图10C),另一方面,在所取得的数据的数量小于所需数量的情况(在步骤S713中为“否”的情况)下,进入步骤S714。
在步骤S714中,从在步骤S712中所生成的多个校正斑块图像Ipc中随机(例如,基于随机数生成器的输出)选择一个校正斑块图像Ipc。然后,在步骤S715中,在虚拟元件把持系统1中,利用位于该一个校正斑块图像Ipc的位置的机械手51尝试该一个校正斑块图像Ipc所包含的元件P的把持。另外,所谓校正斑块图像Ipc的位置,与切出该校正斑块图像Ipc的校正切出范围Rcc的位置相当。然后,将把持尝试成功与否的结果(成功的情况下为1,失败的情况下为0)与该一个校正斑块图像Ipc对应起来,存放于成功与否结果列表(步骤S716),并返回到图10A的步骤S701。
另一方面,当在步骤S713中判定为已经取得所需数量的数据(是)时,如上所述,进入图10C的步骤S717。在步骤S717中,生成使校正斑块图像Ipc左右反转而得到的横反转校正斑块图像Ipc、使校正斑块图像Ipc上下反转而得到的纵反转校正斑块图像Ipc和使校正斑块图像Ipc左右上下反转而得到的纵横反转校正斑块图像Ipc。由此,针对成功与否结果列表的各校正斑块图像Ipc,准备横反转校正斑块图像Ipc、纵反转校正斑块图像Ipc和纵横反转校正斑块图像Ipc这三种图像。即,准备存放于成功与否结果列表的校正斑块图像Ipc的张数的三倍的张数的多个校正斑块图像Ipc。
在步骤S718中,在步骤S717中所生成的多个校正斑块图像Ipc的每一个在把持分类网络部47的把持分类神经网络中被正向传播,针对各校正斑块图像Ipc计算把持成功概率。然后,在步骤S719中,计算根据同一校正斑块图像Ipc所生成的横反转校正斑块图像Ipc、纵反转校正斑块图像Ipc和纵横反转校正斑块图像Ipc各自的把持成功概率的平均值。由此,针对存放于成功与否结果列表的各校正斑块图像Ipc,计算出把持成功概率的平均值。
在步骤S720中,由随机数生成器生成“0”、“1”和“2”中的一个值。然后,在随机数生成中得到“0”的情况下,从在步骤S719中计算出把持成功概率的各校正斑块图像Ipc中随机地选择一个校正斑块图像Ipc(步骤S721),在随机数生成中得到“1”的情况下,从该各校正斑块图像Ipc中选择把持成功概率最接近“0.5”(换言之,50%)的一个校正斑块图像Ipc(步骤S722),在随机数生成中得到“2”的情况下,从该各校正斑块图像Ipc中选择把持成功概率最高的一个校正斑块图像Ipc(步骤S723)。
在步骤S724中,在虚拟元件把持系统1中,利用位于一个校正斑块图像Ipc的位置的机械手51尝试该一个校正斑块图像Ipc所示的元件P的把持。然后,基于元件把持的成功与否结果(成功的情况下为1,失败的情况下为0)、和在步骤S719中针对该一个校正斑块图像Ipc计算出的把持成功概率的平均值,计算损失函数。作为损失函数,例如可以使用交叉熵误差等公知的各种函数。
另外,运算部31在每次执行步骤S725时存储在步骤S725中计算出的损失函数,并且计算这样存储的多个损失函数中的最小值。然后,运算部31确认最近计算出的损失函数是否更新了该最小值。特别地,在步骤S726中,判定是否连续10次未更新最小值,即是否连续10次计算出比最小值大的损失函数。然后,在过去10次中计算出最小值以下的损失函数的情况(在步骤S726中为“否”的情况)下,将步骤S724的把持成功与否结果与一个校正斑块图像Ipc相对应地存放于成功与否结果列表(步骤S727)。然后,在步骤S728中,通过使在步骤S725中计算出的损失函数在把持分类神经网络中反向传播(误差反向传播),来更新把持分类神经网络的参数。另一方面,在步骤S726中,在连续10次计算出比最小值大的损失函数的情况(“否”的情况)下,返回到图10A的步骤S701。另外,次数不限于10次,可以根据需要适当变更。
在以上所示的实施方式中,当切出针对一个元件P设定的切出范围Rc(对象范围)的图像而得到的斑块图像Ip(第一斑块图像)被输入到位置对准网络部45时,从位置对准网络部45输出用于对斑块图像Ip所包含的一个元件P校正切出范围Rc的位置的校正量(Δx,Δy,Δθ)(步骤S304)。然后,生成从合成图像Ic(收纳元件图像)切出将切出范围Rc校正该校正量(Δx,Δy,Δθ)后的校正切出范围Rcc的图像而得到的包含一个元件P的校正斑块图像Ipc(第二斑块图像)(步骤S305),并针对该校正斑块图像Ipc计算把持成功概率(步骤S307)。因此,能够基于根据斑块图像Ip求出的校正量(Δx,Δy,Δθ),得到在能够以高的成功概率把持一个元件P的位置包含元件P的校正斑块图像Ipc。因此,不需要针对与机械手51在相互不同的多个位置(特别是旋转位置)把持一个元件P的情况对应的多个斑块图像Ip的每一个计算把持成功概率。这样,能够降低在由机械手51尝试元件P的把持的情况下的把持成功概率的计算所需的运算负荷。
另外,位置对准网络部45(位置对准部)将表示元件P在切出范围Rc内的适当位置的位置判定掩模Mp与斑块图像Ip所包含的元件P的位置之差作为教师数据,对斑块图像Ip与校正量(Δx,Δy,Δθ)的关系进行学习(步骤S601~S607)。在该结构中,能够利用位置判定掩模Mp简便地评价斑块图像Ip所示的元件P从适当位置的偏移并进行学习。
另外,位置对准网络部45基于斑块图像Ip所包含的元件P的形状生成斑块图像Ip(步骤S510)。在该结构中,能够使用符合元件P的形状的适当的位置判定掩模Mp进行学习。
另外,位置对准网络部45执行如下学习:将斑块图像Ip所包含的元件P与位置判定掩模Mp(的元件基准图案Pr)的位置的均方误差作为损失函数并进行误差反向传播,更新对斑块图像Ip与校正量(Δx,Δy,Δθ)的关系进行规定的参数(步骤S604~S605)。在该结构中,能够利用均方误差准确地评价斑块图像Ip所示的元件P从适当位置的偏移并进行学习。
另外,位置对准网络部45变更斑块图像Ip并反复进行学习(步骤S601~S607)。在该结构中,能够得到高精度的学习结果。
另外,作为结束学习的条件,能够设想各种条件。在上述的例子中,位置对准网络部45在反复进行学习的次数达到规定次数时结束学习(步骤S601)。另外,位置对准网络部45根据在步骤S607中判定损失函数的收敛状况的结果结束学习。具体而言,在规定次数(10次)连续地没有更新损失函数的最小值的情况下,判定为损失函数收敛,学习结束。
另外,设置有取得表示多个元件P的灰度图像Ig(亮度图像)和表示多个元件P的深度图像Id的主控制部311(图像取得部)、和通过将主控制部311所取得的灰度图像Ig与深度图像Id合成而生成合成图像Ic的图像合成部41。并且,斑块图像生成部43根据合成图像Ic生成斑块图像Ip并输入到位置对准网络部45。即,通过将分别表示多个元件P的灰度图像Ig与深度图像Id合成而生成合成图像Ic。在这样生成的合成图像Ic中,多个元件P中的相对较高的位置的元件P的形状容易残留,有利于识别该元件(换言之,把持成功概率高的元件)。
这样,在上述实施方式中,元件把持系统1相当于本发明的“元件把持系统”的一例,控制装置3相当于本发明的“图像处理装置”的一例,主控制部311相当于本发明的“图像取得部”的一例,图像合成部41相当于本发明的“图像合成部”的一例,斑块图像生成部43相当于本发明的“斑块图像生成部”的一例,位置对准网络部45相当于本发明的“位置对准部”的一例,位置对准网络部45相当于本发明的“校正图像生成部”的一例,把持分类网络部47相当于本发明的“把持分类部”的一例,机械手51相当于本发明的“机械手”的一例,元件箱91的分区收纳911相当于本发明的“容器”的一例,合成图像Ic相当于本发明的“收纳元件图像”的一例,深度图像Id相当于本发明的“深度图像”的一例,灰度图像Ig相当于本发明的“亮度图像”的一例,斑块图像Ip相当于本发明的“第一斑块图像”的一例,校正斑块图像Ipc相当于本发明的“第二斑块图像”的一例,位置判定掩模Mp相当于本发明的“位置判定掩模”的一例,元件P相当于本发明的“元件”的一例,切出范围Rc相当于本发明的“对象范围”的一例,校正量(Δx、Δy、Δθ)相当于本发明的“校正量”的一例。
另外,本发明并不限定于上述实施方式,只要不脱离其主旨,就能够对上述的实施方式加以各种变更。例如,在步骤S105中,也可以由相机83从相互不同的方向对被机械手51把持的元件P进行拍摄而取得多个侧视图像。这些侧视图像例如能够通过一边使把持元件P的机械手51在θ方向上旋转一边对元件P进行拍摄而取得。由此,能够从多个方向执行步骤S107中的元件P的个数的确认、步骤S109中的元件P的异常(面积过小)的确认。
另外,关于把持分类神经网络的学习,也可以执行图11的流程图。在此,图11是表示把持分类网络部的把持分类神经网络的再学习方法的一例的流程图。该流程图例如在计划的料箱取物结束的定时等,由主控制部311执行。
在步骤S801中,主控制部311确认在过去执行的料箱取物中检测到基于侧视图像的异常(在步骤S107、S108中为“否”)、基于质量测量的异常(在步骤S113中为“否”)的历史。然后,当检测到异常的次数为规定次数以上时(在步骤S802中为“是”),执行把持分类网络部47的把持分类神经网络的再学习(步骤S803)。在该再学习中,使用表示被检测到异常的元件P的校正斑块图像Ipc和把持成功与否结果(即,失败)作为教师数据。具体而言,基于使校正斑块图像Ipc在把持分类神经网络中正向传播而求出的把持成功与否概率和把持成功与否结果(失败)计算误差函数,在把持分类神经网络中使该误差函数反向传播,由此更新把持分类神经网络的参数(再学习)。
即,在图11的例子中,基于针对机械手51把持的元件P取得把持状态信息(侧视图像、质量)的结果,使把持分类神经网络执行再学习。在该结构中,根据基于针对校正斑块图像Ipc求出的把持成功概率所选择的元件P的把持的实际的成功与否结果,执行把持分类神经网络的再学习,能够提高基于把持分类神经网络的把持成功概率的计算精度。
图12是把持分类网络部的把持分类神经网络的变形例。在该把持分类神经网络471中,多层的卷积神经网络472和全连接层473串联排列。另外,在各卷积神经网络472的输出侧设置有空间注意模块474和信道注意模块475,从卷积神经网络472输出的特征量映射经过基于空间注意模块474和信道注意模块475的加权,被输入到下一级的卷积神经网络472或全连接层473。
特别是,空间注意模块474对特征量映射添加的注意掩模Ma具有通过校正斑块图像Ipc(换言之,校正切出范围Rcc)的中心位置的两个关注区域Pg、Pp。即,注意掩模Ma中的关注区域Pg和关注区域Pp的权重比其他区域的权重大,这些权重被添加到特征量映射。在此,关注区域Pg与把持方向G平行,关注区域Pp与把持方向G正交。特别是,如上述的例子那样,在元件P的长轴方向与把持方向G正交的情况下,关注区域Pp与元件P的长轴方向平行。即,该注意掩模Ma关注与校正斑块图像Ipc中的元件P的理想位置对应的关注区域Pp、和与机械手51的爪511接近该元件P的路径对应的关注区域Pg。
在把持分类神经网络中,将该结构的注意掩模Ma添加到从卷积神经网络472输出的特征量映射,对特征量映射进行加权。因此,能够将元件P的长轴方向相对于把持方向G的角度、把持元件P的机械手51的移动路径的状况(其他元件的有无)准确地反映到基于把持分类神经网络的判断。
即,在该变形例中,把持分类网络部47使用卷积神经网络472根据校正斑块图像Ipc计算把持成功概率。由此,能够根据校正斑块图像Ipc准确地计算出把持成功概率。
另外,把持分类网络部47通过对从卷积神经网络472输出的特征量映射添加注意掩模Ma而对特征量映射进行加权。特别是,注意掩模Ma表示关注在机械手51把持元件P的把持方向G上延伸且通过校正斑块图像Ipc的中心的关注区域Pg、和与把持方向G正交且通过校正斑块图像Ipc的中心的关注区域Pp。由此,能够在将元件P的朝向、元件P的周围的状况(其他元件P的有无)对机械手51的把持造成的影响纳入考虑的同时,准确地计算出把持成功概率。
另外,合成图像Ic的生成方法并不限于使用上述式的例子,也可以通过利用深度图像Id的深度Vd对灰度图像Ig的亮度Vg进行加权而计算合成图像Ic的合成值Vc的其他式来生成合成图像Ic。
另外,在上述的例子中,将灰度图像Ig与深度图像Id合成而生成合成图像Ic。此时,也可以将使灰度图像Ig的亮度反转而得到的反转灰度图像Ig(亮度图像)与深度图像Id合成而生成合成图像Ic。特别是在把持具有被实施了镀黑处理的表面的元件P的情况下,优选使用反转灰度图像Ig生成合成图像Ic。
另外,不需要从二值化后的合成图像Ic切出斑块图像Ip,也可以在不执行二值化地从合成图像Ic切出斑块图像Ip。对于校正斑块图像Ipc,也同样。
另外,关于斑块图像处理中的针对元件P的切出范围Rc的设定方式,能够设想各种方式。例如,切出范围Rc的设定能够以切出范围Rc的几何重心与元件P的几何重心一致的方式进行。但是,并不限于该例,总之,只要以包含对象元件P的方式设定切出范围Rc即可。
另外,机械手51的具体结构并不限于上述的例子。例如,机械手51的爪511的根数并不限于两根,也可以是三根以上。另外,也可以使用通过负压或磁力进行吸附的机械手51。即使在这些情况下,也能够将切出范围Rc设定在机械手51作为把持的对象的范围,并从切出范围Rc切出斑块图像Ip。
另外,在上述实施方式中,根据将灰度图像Ig与深度图像Id合成而得到的合成图像Ic创建斑块图像Ip。但是,也可以构成为根据灰度图像Ig和深度图像Id中的一方创建斑块图像Ip,并基于该斑块图像Ip执行由位置对准网络部45进行的校正量(Δx、Δy、Δθ)的计算和由把持分类网络部47进行的把持成功概率的计算。
标号说明
1…元件把持系统;
3…控制装置(图像处理装置);
311…主控制部(图像取得部);
41…图像合成部;
43…斑块图像生成部;
45…位置对准网络部(位置对准部、校正图像生成部);
47…把持分类网络部(把持分类部);
51…机械手;
91…元件箱;
911…分区收纳(容器);
Ic…合成图像(收纳元件图像);
Id…深度图像;
Ig…灰度图像(亮度图像);
Ip…斑块图像(第一斑块图像);
Ipc…校正斑块图像(第二斑块图像);
Mp…位置判定掩模;
P…元件;
Rc…切出范围(对象范围);
(Δx,Δy,Δθ)…校正量。
Claims (13)
1.一种图像处理装置,具备:
位置对准部,当被输入了第一斑块图像时,输出用于对所述第一斑块图像所包含的一个元件校正对象范围的位置的校正量,所述第一斑块图像是将针对表示收纳于容器的多个元件的收纳元件图像所包含的所述多个元件中的所述一个元件设定的所述对象范围的图像切出而得到的;
校正图像生成部,生成包含所述一个元件的第二斑块图像,该第二斑块图像是从所述收纳元件图像切出将所述对象范围校正所述校正量后的范围的图像而得到的;及
把持分类部,计算由位于设定所述第二斑块图像的范围的机械手尝试所述第二斑块图像所包含的所述一个元件的把持的情况下的把持成功概率。
2.根据权利要求1所述的图像处理装置,其中,
所述位置对准部将表示所述元件在所述对象范围内的适当位置的位置判定掩模与所述第一斑块图像所包含的所述元件的位置之差作为教师数据,对所述第一斑块图像与所述校正量的关系进行学习。
3.根据权利要求2所述的图像处理装置,其中,
所述位置对准部基于所述第一斑块图像所包含的所述元件的形状生成所述位置判定掩模。
4.根据权利要求2或3所述的图像处理装置,其中,
所述位置对准部执行如下学习:将所述第一斑块图像所包含的所述元件与所述位置判定掩模的位置的均方误差作为损失函数并进行误差反向传播,更新对所述第一斑块图像与所述校正量的关系进行规定的参数。
5.根据权利要求4所述的图像处理装置,其中,
所述位置对准部变更所述第一斑块图像并反复进行所述学习。
6.根据权利要求5所述的图像处理装置,其中,
所述位置对准部在反复进行所述学习的次数达到规定次数时结束所述学习。
7.根据权利要求5所述的图像处理装置,其中,
所述位置对准部根据所述损失函数的收敛状况结束所述学习。
8.根据权利要求1至7中的任一项所述的图像处理装置,其中,
所述把持分类部使用卷积神经网络根据所述第二斑块图像计算所述把持成功概率。
9.根据权利要求8所述的图像处理装置,其中,
所述把持分类部通过对从所述卷积神经网络输出的特征量映射添加注意掩模而对所述特征量映射进行加权,
所述注意掩模表示关注在所述机械手把持所述元件的把持方向上延伸且通过所述第二斑块图像的中心的区域、和与所述把持方向正交且通过所述第二斑块图像的中心的区域。
10.根据权利要求1至9中任一项所述的图像处理装置,其中,还具备:
图像取得部,取得表示所述多个元件的亮度图像和表示所述多个元件的深度图像;
图像合成部,通过将所述图像取得部所取得的所述亮度图像与所述深度图像合成而生成所述收纳元件图像;及
斑块图像生成部,根据所述收纳元件图像生成所述第一斑块图像并输入到所述位置对准部。
11.一种元件把持系统,具备:
权利要求1至10中任一项所述的图像处理装置;及
机械手,
所述图像处理装置使所述机械手在基于计算出的所述把持成功概率决定的位置把持元件。
12.一种图像处理方法,包括如下工序:
当输入了第一斑块图像时,输出用于对所述第一斑块图像所包含的一个元件校正对象范围的位置的校正量的工序,所述第一斑块图像是将针对表示收纳于容器的多个元件的收纳元件图像所包含的所述多个元件中的所述一个元件设定的所述对象范围的图像切出而得到的;
生成包含所述一个元件的第二斑块图像的工序,所述第二斑块图像是从所述收纳元件图像切出将所述对象范围校正所述校正量后的范围的图像而得到的;及
计算由位于设定所述第二斑块图像的范围的机械手尝试所述第二斑块图像所包含的所述一个元件的把持的情况下的把持成功概率的工序。
13.一种元件把持方法,包括如下工序:
当输入了第一斑块图像时,输出用于对所述第一斑块图像所包含的一个元件校正对象范围的位置的校正量的工序,所述第一斑块图像是将针对表示收纳于容器的多个元件的收纳元件图像所包含的所述多个元件中的所述一个元件设定的所述对象范围的图像切出而得到的;
生成包含所述一个元件的第二斑块图像的工序,所述第二斑块图像是从所述收纳元件图像切出将所述对象范围校正所述校正量后的范围的图像而得到的;
计算由位于设定所述第二斑块图像的范围的机械手尝试所述第二斑块图像所包含的所述一个元件的把持的情况下的把持成功概率的工序;及
使所述机械手在基于所述把持成功概率决定的位置把持元件的工序。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2021/033962 WO2023042306A1 (ja) | 2021-09-15 | 2021-09-15 | 画像処理装置、部品把持システム、画像処理方法および部品把持方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117999153A true CN117999153A (zh) | 2024-05-07 |
Family
ID=85602545
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180102303.2A Pending CN117999153A (zh) | 2021-09-15 | 2021-09-15 | 图像处理装置、元件把持系统、图像处理方法和元件把持方法 |
Country Status (4)
Country | Link |
---|---|
JP (1) | JP7551940B2 (zh) |
CN (1) | CN117999153A (zh) |
DE (1) | DE112021008230T5 (zh) |
WO (1) | WO2023042306A1 (zh) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
LU92074B1 (en) * | 2012-09-18 | 2014-03-19 | Iee Sarl | Depth image enhancement method |
JP6522488B2 (ja) | 2015-07-31 | 2019-05-29 | ファナック株式会社 | ワークの取り出し動作を学習する機械学習装置、ロボットシステムおよび機械学習方法 |
JP6457421B2 (ja) * | 2016-04-04 | 2019-01-23 | ファナック株式会社 | シミュレーション結果を利用して学習を行う機械学習装置,機械システム,製造システムおよび機械学習方法 |
JP6724499B2 (ja) * | 2016-04-05 | 2020-07-15 | 株式会社リコー | 物体把持装置及び把持制御プログラム |
AU2018326171A1 (en) | 2017-09-01 | 2020-04-23 | The Regents Of The University Of California | Robotic systems and methods for robustly grasping and targeting objects |
JP7191569B2 (ja) | 2018-07-26 | 2022-12-19 | Ntn株式会社 | 把持装置 |
-
2021
- 2021-09-15 DE DE112021008230.2T patent/DE112021008230T5/de active Pending
- 2021-09-15 CN CN202180102303.2A patent/CN117999153A/zh active Pending
- 2021-09-15 JP JP2023548005A patent/JP7551940B2/ja active Active
- 2021-09-15 WO PCT/JP2021/033962 patent/WO2023042306A1/ja active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2023042306A1 (ja) | 2023-03-23 |
DE112021008230T5 (de) | 2024-09-19 |
JPWO2023042306A1 (zh) | 2023-03-23 |
JP7551940B2 (ja) | 2024-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109483573B (zh) | 机器学习装置、机器人系统以及机器学习方法 | |
CN109483554B (zh) | 基于全局和局部视觉语义的机器人动态抓取方法及系统 | |
JP6546618B2 (ja) | 学習装置、学習方法、学習モデル、検出装置及び把持システム | |
CN106393102B (zh) | 机器学习装置、机器人系统及机器学习方法 | |
JP5458885B2 (ja) | 物体検出方法と物体検出装置およびロボットシステム | |
CN108748149B (zh) | 一种复杂环境下基于深度学习的无标定机械臂抓取方法 | |
JP7481427B2 (ja) | 取り出しシステム及び方法 | |
CN111331607B (zh) | 一种基于机械臂的自主抓取与码垛方法及系统 | |
JP2020082322A (ja) | 機械学習装置、機械学習システム、データ処理システム及び機械学習方法 | |
CN113496525A (zh) | 通过2d相机的3d姿态估计 | |
US12017355B2 (en) | Grasp learning using modularized neural networks | |
CN110216671A (zh) | 一种基于计算机仿真的机械抓手训练方法及系统 | |
WO2021085561A1 (ja) | 学習データ生成方法 | |
JP2022187983A (ja) | 高次元のロボット作業を学習するためのネットワークモジュール化 | |
CN113496524A (zh) | 通过深度学习和矢量场估计的特征检测 | |
US20210241476A1 (en) | Training a pose detection algorithm, and deriving an object pose using a trained pose detection algorithm | |
JP7051751B2 (ja) | 学習装置、学習方法、学習モデル、検出装置及び把持システム | |
CN113808201B (zh) | 一种目标物体检测方法及引导抓取方法 | |
CN114627359A (zh) | 一种乱序堆叠工件抓取优先级评估方法 | |
WO2023042306A1 (ja) | 画像処理装置、部品把持システム、画像処理方法および部品把持方法 | |
CN117916771A (zh) | 图像处理装置、元件把持系统、图像处理方法和元件把持方法 | |
CN109816728A (zh) | 基于生成查询网络的机械臂抓取点定位检测的方法 | |
CN113436293B (zh) | 一种基于条件生成式对抗网络的智能抓取图像生成方法 | |
JP7395451B2 (ja) | ハンドリング装置、処理装置、コントローラ及びプログラム | |
Suzui et al. | Toward 6 dof object pose estimation with minimum dataset |
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 |