CN105313126B - 控制***、机器人***、以及控制方法 - Google Patents

控制***、机器人***、以及控制方法 Download PDF

Info

Publication number
CN105313126B
CN105313126B CN201510445742.XA CN201510445742A CN105313126B CN 105313126 B CN105313126 B CN 105313126B CN 201510445742 A CN201510445742 A CN 201510445742A CN 105313126 B CN105313126 B CN 105313126B
Authority
CN
China
Prior art keywords
shooting
image
coordinate
point
projected
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
CN201510445742.XA
Other languages
English (en)
Other versions
CN105313126A (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.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
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 Seiko Epson Corp filed Critical Seiko Epson Corp
Publication of CN105313126A publication Critical patent/CN105313126A/zh
Application granted granted Critical
Publication of CN105313126B publication Critical patent/CN105313126B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/521Depth or shape recovery from laser ranging, e.g. using interferometry; from the projection of structured light
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/593Depth or shape recovery from multiple images from stereo images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/42Global feature extraction by analysis of the whole pattern, e.g. using frequency domain transformations or autocorrelation
    • G06V10/421Global feature extraction by analysis of the whole pattern, e.g. using frequency domain transformations or autocorrelation by analysing segments intersecting the pattern
    • 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
    • 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/35Nc in input of data, input till input file format
    • G05B2219/35315Projection, two, three section views
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/46Sensing device
    • Y10S901/47Optical

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Optics & Photonics (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Image Processing (AREA)
  • Manipulator (AREA)
  • Image Analysis (AREA)

Abstract

本发明涉及控制***、机器人***、以及控制方法。上述控制***包括:投影部,其将规定的图案光投影到对象物;第一拍摄部,其拍摄由投影部投影了规定的图案光的对象物;第二拍摄部,其配置在与第一拍摄部不同的位置,并拍摄由投影部投影了规定的图案光的对象物;以及计算部,其根据第一拍摄部拍摄到的第一拍摄图像上的第一点、和第二拍摄部拍摄到的第二拍摄图像上的第二点,计算对象物的三维形状。

Description

控制***、机器人***、以及控制方法
技术领域
该发明涉及控制***、机器人***、以及控制方法。
背景技术
近年,关于正确的三维形状测量的技术的需求提高。通过能够进行正确的三维形状测量,从而能够考虑工业产品等的瑕疵的检查、箱柜取放、测量结果的向三维打印机的利用等各种应用。
以往,作为三维形状测量的方法,已知有各使用一台投影仪和照相机的使用了位移法的三维形状测量(参照专利文献1)。该方法是通过利用照相机拍摄由投影仪投影的正弦波图案,来计算拍摄图像与投影图像的像素间的对应(即,投影仪与照相机的像素间的对应),并通过三角测量,计算其深度的方法。
专利文献1:日本特开2009‐115612号公报
但是,在以往的方法中,由于投影仪和照相机各为一台,所以针对利用照相机不能够拍摄到的阴影的部分、投影仪的光不能到达的阴影的部分,测量三维形状较困难。
发明内容
因此本发明是鉴于上述以往技术的问题而完成的,提供能够进行多样的三维形状的测量的控制***、机器人***、以及控制方法。
本发明的一方式是控制***,包含:投影部,其将规定的图案光投影到对象物;第一拍摄部,其拍摄由上述投影部投影了上述规定的图案光的上述对象物;第二拍摄部,其配置在与上述第一拍摄部不同的位置,并拍摄由上述投影部投影了上述规定的图案光的上述对象物;以及计算部,其根据上述第一拍摄部拍摄到的第一拍摄图像上的第一点、和上述第二拍摄部拍摄到的第二拍摄图像上的第二点,计算上述对象物的三维形状。
根据该结构,控制***将规定的图案光投影到对象物,通过第一拍摄部拍摄由投影部投影了规定的图案光的对象物,并通过配置在与第一拍摄部不同的位置的第二拍摄部拍摄由投影部投影了规定的图案光的对象物,并根据第一拍摄部拍摄到的第一拍摄图像上的第一点、和第二拍摄部拍摄到的第二拍摄图像上的第二点,来计算对象物的三维形状。由此,控制***能够进行多样的三维形状的测量。
另外,本发明的其他的方式也可以使用如下结构,即在控制***中,包含:置信度计算部,其基于上述第一拍摄图像和上述第二拍摄图像,计算成为上述第一拍摄图像上的某个点示出的位置、和上述第二拍摄图像上的各点示出的位置表示同一位置的概率的指标的置信度;和建立对应部,其基于由上述置信度计算部计算出的上述置信度,使上述第一拍摄图像上的各点与上述第二拍摄图像上的各点建立对应。
根据该结构,控制***基于第一拍摄图像和第二拍摄图像,计算成为第一拍摄图像上的某个点示出的位置、和第二拍摄图像上的各点示出的位置表示同一位置的概率的指标的置信度,并基于计算出的置信度,使第一拍摄图像上的各点与第二拍摄图像上的各点建立对应。由此,控制***能够进行两个拍摄部之间的校准。
另外,本发明的其他的方式也可以使用如下结构,即在控制***中,上述置信度计算部导出与上述第一拍摄图像的各点分别对应的第一似然函数、和与上述第二拍摄图像的各点分别对应的第二似然函数,并基于导出的第一似然函数以及第二似然函数计算上述置信度。
根据该结构,控制***导出与第一拍摄图像的各点对应的第一似然函数、和与第二拍摄图像的各点对应的第二似然函数,并基于导出的第一似然函数以及第二似然函数计算置信度。由此,控制***能够基于似然函数计算置信度,并基于计算出的置信度进行两个拍摄部之间的校准。
另外,本发明的其他的方式也可以使用如下结构,即在控制***中,上述图案光是亮度或者色相在某个方向上周期性地变化的图案光,上述置信度计算部计算上述第一拍摄图像上的各点的上述图案光的亮度或者色相的变化所涉及的第一相位、和上述第二拍摄图像上的各点的上述图案光的亮度或者色相的变化所涉及的第二相位,并基于计算出的上述第一相位导出上述第一似然函数,基于上述第二相位导出上述第二似然函数。
根据该结构,控制***计算第一拍摄图像上的各点的图案光的亮度或者色相的变化所涉及的第一相位、和第二拍摄图像上的各点的图案光的亮度或者色相的变化所涉及的第二相位,并基于计算出的第一相位导出第一似然函数,基于第二相位导出第二似然函数。由此,控制***能够基于图案光的亮度或者色相的变化所涉及的相位导出似然函数来计算置信度。
另外,本发明的其他的方式是机器人***,其为具备上述中任意一个控制***、和机器人的机器人***,上述控制***具备基于由上述计算部计算出的上述对象物的上述三维形状,控制上述机器人的机器人控制部。
根据该结构,机器人***基于通过计算部计算出的上述对象物的上述三维形状控制上述机器人。由此,机器人***能够进行稳健的三维形状的测量。
另外,本发明的其他的方式是控制方法,包含:将规定的图案光投影到对象物;通过第一拍摄部拍摄投影了上述规定的图案光的上述对象物;通过配置在与上述第一拍摄部不同的位置的第二拍摄部拍摄投影了上述规定的图案光的上述对象物;根据上述第一拍摄部拍摄到的第一拍摄图像上的第一点、和上述第二拍摄部拍摄到的第二拍摄图像上的第二点,计算上述对象物的三维形状。
根据该结构,控制方法将规定的图案光投影到对象物,通过第一拍摄部拍摄由投影部投影了规定的图案光的对象物,并通过配置在与第一拍摄部不同的位置的第二拍摄部拍摄由投影部投影了规定的图案光的对象物,并根据第一拍摄部拍摄到的第一拍摄图像上的第一点、和第二拍摄部拍摄到的第二拍摄图像上的第二点,计算对象物的三维形状。由此,控制方法能够进行稳健的三维形状的测量。
根据以上,控制***、机器人***、以及控制方法将规定的图案光投影到对象物,通过第一拍摄部拍摄由投影部投影了规定的图案光的对象物,并通过配置在与第一拍摄部不同的位置的第二拍摄部拍摄由投影部投影了规定的图案光的对象物,并根据第一拍摄部拍摄到的第一拍摄图像上的第一点、和第二拍摄部拍摄到的第二拍摄图像上的第二点,计算对象物的三维形状。由此,控制***、机器人***、以及控制方法能够进行稳健的三维形状的测量。
附图说明
图1是表示本实施方式所涉及的机器人***1的一个例子的结构图。
图2是例示由投影部5投影的投影图像PA以及投影图像PB的图。
图3是表示控制装置30的硬件构成的一个例子的图。
图4是表示控制装置30的功能构成的一个例子的图。
图5是表示到控制装置30进行拍摄部间校准为止的处理的流程的一个例子的流程图。
图6是表示置信度计算部40的置信度计算处理的流程的一个例子的流程图。
图7是用于说明置信度计算部40的步骤S220的处理的图。
图8是表示似然函数的函数形式的一个例子的图。
图9是表示控制装置30使机器人20进行规定的作业的处理的流程的一个例子的流程图。
具体实施方式
实施方式
以下,参照附图对本发明的本实施方式进行说明。图1是表示本实施方式所涉及的机器人***1的一个例子的结构图。机器人***1具备投影部5、拍摄部10、机器人20、以及控制装置30。另外,拍摄部10是具备第一拍摄部11、和第二拍摄部12的立体相机。此外,拍摄部10也可以是具备三台以上的拍摄部的结构。
另外,在图1中,在桌子TB上设置有对象物O。这里,所谓的桌子TB是指设置了对象物O的平台等。所谓的对象物O是指由机器人20进行的作业所涉及的物体,例如,是螺丝、螺栓、齿轮、夹具等工业用的部件、收纳工业部件等的容器等,但并不现定于这些物体,只要是由机器人20进行的作业所涉及的物体则也可以是其他的物体。此外,对象物O是整体包含在投影范围P1与拍摄范围P2重合的区域的内侧的程度的大小。在图1中,将该对象物O表示为立方体形状的物体。
机器人***1从预先存储的图像即一方为四个另一方为四个总共八个图像逐个地选择图像作为投影图像。然后,机器人***1控制投影部5,以便将选择的投影图像投影至包含设置在桌子TB上的对象物O的投影范围P1。这里,上述的八个图像是在各个的图像平面上亮度周期性地变化且表示亮度的周期性变化的波向图像平面上的水平方向延伸的图像。此外,这八个图像也可以分别是表示该亮度的周期性变化的波向图像平面上的垂直方向、倾斜方向等延伸的图像。
这里,对于预先存储的八个图像中的一方的四个图像来说,表示亮度的周期性变化的波是规定的波数A的波。在这四个图像中,表示亮度的周期性变化的波彼此相位相差π/2。更具体而言,将成为基准的图像设为n=0,在n=1的图像中相位与成为基准的图像相差π/2,在n=2的图像中相位与成为基准的图像相差π,在n=3的图像中相位与成为基准的图像相差3π/2。这里,以下,为了方便说明,将n=0的图像称为投影图像PA0,将n=1的图像称为投影图像PA1,将n=2的图像称为投影图像PA2,并将n=3的图像称为投影图像PA3进行说明。另外,以下,只要不需要区别投影图像PA0~PA3进行说明,就集中这些投影图像称为投影图像PA进行说明。此外,投影图像PA也可以彼此相位相差与π/2不同的值。
另外,对于预先存储的八个投影图像中的另一方的四个图像来说,表示亮度的周期性变化的波是波数为与波数A不同的规定的波数B的波。在这四个图像中,表示亮度的周期性变化的波彼此相位相差π/2。更具体而言,将成为基准的图像设为n=0,在n=1的图像中相位与成为基准的图像相差π/2,在n=2的图像中相位与成为基准的图像相差π,在n=3的图像中相位与成为基准的图像相差3π/2。这里,以下,为了方便说明,将n=0的图像称为投影图像PB0,将n=1的图像称为投影图像PB1,将n=2的图像称为投影图像PB2,并将n=3的图像称为投影图像PB3进行说明。另外,以下,只要不需要区别投影图像PB0~PB3进行说明,就集中这些投影图像称为投影图像PB进行说明。此外,投影图像PB也可以彼此相位相差与π/2不同的值。
这里,参照图2,对由投影部5投影的投影图像进行说明。图2是例示由投影部5投影的投影图像PA以及投影图像PB的图。投影图像PA0~PA3的表示亮度的周期性变化的波的相位彼此相差π/2。投影图像PA0~PA3中的明度较高的点是亮度值高的点,明度较低的点是亮度值低的点。
表示投影图像PA0~PA3中的亮度的周期性变化的波是向投影图像平面上的水平方向行进的平面波(正弦波),但如上述那样也可以是向垂直方向行进的平面波,也可以是向倾斜方向行进1平面波,也可以是球面波等。这里,投影图像PA0~PA3也可以代替亮度周期性地变化的图像,而是色彩周期性地变化的图像等。
另外,投影图像PB0~PB3示出的亮度的变化的波与投影图像PA0~PA3示出的亮度的变化的波波数不同。对于投影图像PB0~PB3来说,表示亮度的周期性变化的波的相位彼此相差π/2。投影图像PB0~PB3中的明度较高的点是亮度值高的点,明度较低的点是亮度值低的点。表示投影图像PB0~PB3中的亮度的周期性变化的波如上述那样是向投影图像平面上的水平方向行进的平面波(正弦波),但也可以是向垂直方向行进的平面波,也可以是向倾斜方向行进的平面波,也可以是球面波等。
这里,投影图像PB0~PB3也可以代替亮度周期性地变化的图像,而是色彩周期性地变化的图像等。此外,投影图像PA与投影图像PB中任意一方或者双方也可以代替相位彼此不同的四个图像,而是相位彼此不同的三个以上的其他的个数的图像。该情况下,期望相互不同的相位是与π/2不同的值。这些投影图像PA以及投影图像PB是规定的图案光的一个例子。
从预先存储的八个图像中选择的某一个投影图像投影至包含设置在桌子TB上的对象物O的投影范围P1之后,机器人***1通过拍摄部10的第一拍摄部11以及第二拍摄部12拍摄包含设置在桌子TB上的对象物O的拍摄范围P2。以下,为了方便说明,将由第一拍摄部11拍摄到的拍摄图像称为第一拍摄图像,并将由第二拍摄部12拍摄到的拍摄图像称为第二拍摄图像进行说明。
机器人***1对上述的预先存储的八个图像的各个进行这些投影部5的投影、和拍摄部10的第一拍摄部11以及第二拍摄部12的拍摄。由此,机器人***1获取八个第一拍摄图像(投影图像PA的第一拍摄图像为四个,投影图像PB的第一拍摄图像为四个)、和八个第二拍摄图像(投影图像PA的第二拍摄图像为四个,投影图像PB的第二拍摄图像为四个)。
机器人***1基于使用了由第一拍摄部11拍摄到的八个第一拍摄图像、和由第二拍摄部12拍摄到的八个第二拍摄图像的双相移法,进行用于使由第一拍摄部11拍摄到的第一拍摄图像平面上的坐标、和由第二拍摄部12拍摄到的第二拍摄图像平面上的坐标建立对应的校准。此外,在本实施方式中,所谓的第一拍摄图像平面上的坐标是指表示由第一拍摄部11拍摄到的第一拍摄图像的各点的坐标,例如,是指第一拍摄部11的拍摄元件平面上的坐标。另外,所谓的第二拍摄图像平面上的坐标是指表示由第二拍摄部12拍摄到的第二拍摄图像的各点的坐标,例如,是指第二拍摄部12的拍摄元件平面上的坐标。
此外,以下,为了方便说明,将投影图像PA0~PA3所涉及的第一拍摄图像分别依次称为第一拍摄图像1A0~1A3,并将投影图像PB0~PB3的第一拍摄图像分别依次称为第一拍摄图像1B0~1B3进行说明。另外,以下,将投影图像PA0~PA3的第二拍摄图像分别依次称为第二拍摄图像2A0~2A3,并将投影图像PB0~PB3的第二拍摄图像分别依次称为第二拍摄图像2B0~2B3进行说明。
与机器人***1经由与通过投影部5投影的投影图像平面上的坐标的建立对应(预先进行的拍摄部与投影部之间的校准)使第一拍摄图像平面上的坐标与第二拍摄图像平面上的坐标建立对应的情况相比,能够以更高的精度使第一拍摄图像平面上的坐标与第二拍摄图像平面上的坐标建立对应。此外,在本实施方式中,所谓的投影图像平面上的坐标是指表示由投影部5投影的各种的投影图像的各点的坐标,例如,是指投影部5的液晶面板平面上的坐标。
结束了该校准之后,机器人***1通过第一拍摄部11以及第二拍摄部12对设置在桌子TB上的对象物O进行立体拍摄,并通过基于拍摄到的第一拍摄图像以及第二拍摄图像的立体法来生成对象物O的三维点群。然后,机器人***1基于生成的三维点群计算对象物O的三维位置以及姿势。由此,机器人***1即使在对象物O中存在投影部5的光不能到达的阴影的部分的情况下,也能够代替主动立体法,而通过基于第一拍摄图像和第二拍摄图像的立体法来精度良好地计算对象物O的位置以及姿势。以下,为了方便说明,将对象物O的三维位置以及姿势称为对象物位置姿势进行说明。
另外,机器人***1在对象物O中存在以第一拍摄部11和第二拍摄部12中任意一方不能够拍摄的阴影的部分的情况下(即,不能够进行通过第一拍摄部11以及第二拍摄部12的立体拍摄的情况下),通过基于由第一拍摄部11与第二拍摄部12中任意一方拍摄到的拍摄图像、和由投影部5投影的投影图像的主动立体法来计算对象物位置姿势。由此,机器人***1即使在对象物O中存在以第一拍摄部11和第二拍摄部12中任意一方不能够拍摄的阴影的部分的情况下,也能够代替立体法,而通过基于第一拍摄部11与第二拍摄部12中任意一方、和投影部5的主动立体法来精度良好地计算对象物位置姿势。
若机器人***1计算出对象物位置姿势,则例如,基于计算出的对象物位置姿势使机器人20把持对象物O。然后,机器人***1使机器人20将对象物O配置到未图示的规定的配置位置X。以下,为了方便说明,将校准之后从通过第一拍摄部11以及第二拍摄部12的对象物O的立体拍摄开始,到使对象物O配置到配置位置X为止的机器人***1的一系列的动作称为规定的作业进行说明。
投影部5例如,是具备用于对投影图像进行投影的液晶光阀、投影透镜、液晶驱动部、作为光源的超高压水银灯、金属卤化物灯等的投影仪。投影部5例如通过电缆以能够通信的方式与控制装置30连接。经由电缆的有线通信例如,根据以太网(注册商标)、USB(Universal Serial Bus:通用串行总线)等标准进行。
此外,投影部5与控制装置30也可以通过根据Wi-Fi(注册商标)等通信标准进行的无线通信连接。投影部5通过通信从控制装置30获取各种图像,并将获取的各种图像作为投影图像投影到投影范围P1。在图1中,投影部5以投影范围P1在内侧包含拍摄范围P2的方式设置,但也可以投影范围P1与拍摄范围P2的大小相反,也可以投影范围P1与拍摄范围P2部分重合。
第一拍摄部11例如,是具备了作为将聚光后的光转换为电信号的拍摄元件的CCD(Charge Coupled Device:电荷耦合元件)、CMOS(Complementary Metal OxideSemiconductor:互补金属氧化物半导体)等的照相机。第一拍摄部11通过电缆以能够通信的方式与控制装置30连接。经由电缆的有线通信例如,根据以太网(注册商标)、USB等标准进行。
此外,第一拍摄部11与控制装置30也可以是通过根据Wi-Fi(注册商标)等通信标准进行的无线通信连接的结构。第一拍摄部11设置在能够拍摄比投影范围P1狭窄的范围即通过投影部5投影了投影图像的包含对象物O的拍摄范围P2的位置。
第二拍摄部12例如是具备了作为将聚光后的光转换为电信号的拍摄元件的CCD、CMOS等的照相机。第二拍摄部12通过电缆以能够通信的方式与控制装置30连接。经由了电缆的有线通信例如,根据以太网(注册商标)、USB等标准进行。
此外,第二拍摄部12与控制装置30也可以是通过根据Wi-Fi(注册商标)等通信标准进行的无线通信连接的结构。第二拍摄部12设置在与第一拍摄部11不同且能够拍摄上述的拍摄范围P2的位置。
机器人20例如是具备了具备能够把持物体的爪部的把持部HND、机械手MNP、以及未图示的多个促动器的单臂的机器人。单臂的机器人是指具有由把持部HND和机械手MNP构成的一条臂的机器人。另外,机器人***1也可以代替具备单臂的机器人的构成,而是标量机器人(水平多关节机器人)、双臂的机器人等。标量机器人是机械手仅向水平方向移动,而仅机械手的前端的滑动轴向上下移动的机器人。另外,双臂的机器人是指具有分别由把持部HND和机械手MNP构成的两条臂的机器人。
机器人20的臂为六轴垂直多关节型,支承台、机械手MNP以及把持部HND通过利用促动器的配合的动作能够进行六轴的自由度的动作。此外,机器人20的臂也可以以五自由度(五轴)以下进行动作,也可以以七自由度(七轴)以上进行动作。以下,对通过具备了把持部HND以及机械手MNP的臂进行的机器人20的动作进行说明。
机器人20例如通过电缆以能够通信的方式与控制装置30连接。经由了电缆的有线通信例如,根据以太网(注册商标)、USB等标准进行。此外,机器人20与控制装置30也可以通过根据Wi-Fi(注册商标)等通信标准进行的无线通信连接。另外,在机器人***1中,机器人20如图1所示那样为与设置在机器人20的外部的控制装置30连接的结构,但也可以代替该结构,而为控制装置30内置于机器人20的结构。机器人20从控制装置30获取控制信号,并基于获取的控制信号把持物体O,将把持的物体O配置到配置位置X。
控制装置30从预先存储的八个图像逐个选择投影图像,并以将选择的投影图像投影到投影范围P1的方式控制投影部5。在投影范围P1投影了选择的投影图像之后,控制装置30控制第一拍摄部11,以便对拍摄范围P2的静止图像进行拍摄作为第一拍摄图像。另外,控制装置30控制第二拍摄部12,以便对拍摄范围P2的静止图像进行拍摄作为第二拍摄图像。通过对这些处理反复投影图像的个数(在该一个例子中为八个),控制装置30获取八个第一拍摄图像、和八个第二拍摄图像。
然后,控制装置30基于使用了八个第一拍摄图像、和八个第二拍摄图像的双相移法,进行用于使由第一拍摄部11拍摄到的第一拍摄图像平面上的坐标、和由第二拍摄部12拍摄到的第二拍摄图像平面上的坐标建立对应的校准。以下,为了方便说明,将该校准称为拍摄部间校准进行说明。
此外,由投影部5投影的投写图像平面上的坐标、和由第一拍摄部11拍摄到的第一拍摄图像平面上的坐标通过预先校准而建立对应。另外,由投影部5投影的投影图像平面上的坐标、和由第二拍摄部12拍摄到的第二拍摄图像平面上的坐标通过预先校准而建立对应。此外,这些校准是处理内容与上述的拍摄部间校准不同的校准。
控制装置30在结束了拍摄部间校准之后,控制第一拍摄部11以及第二拍摄部12,以便对设置在桌子TB上的对象物O进行立体拍摄。然后,控制装置30通过基于拍摄到的第一拍摄图像以及第二拍摄图像的主动立体法来生成对象物O的三维点群。控制装置30基于生成的三维点群计算对象物位置姿势。控制装置30若计算出对象物位置姿势,则例如,基于计算出的对象物位置姿势使机器人20把持对象物O。然后,控制装置30使机器人20将对象物O配置到未图示的规定的配置位置X。此外,投影部5、拍摄部10、以及控制装置30的组合是控制***的一个例子。
接下来,参照图3,对控制装置30的硬件构成进行说明。图3是表示控制装置30的硬件构成的一个例子的图。控制装置30例如,具备CPU(Central Processing Unit:中央处理器)31、存储部32、输入接受部33、以及通信部34,并经由通信部34与机器人20进行通信。这些构成要素经由总线Bus以彼此能够通信的方式连接。CPU31执行储存于存储部32的各种程序。
存储部32例如包括HDD(Hard Disk Drive:硬盘驱动器)、SSD(Solid StateDrive:固态硬盘)、EEPROM(Electrically Erasable Programmable Read-Only Memory:带点可擦可编程只读存储器)、ROM(Read-Only Memory:只读存储器)、RAM(Random AccessMemory:随机存储器)等,储存控制装置30处理的各种信息、图像、程序、用于使投影部5投影的八个图像(投影图像PA、以及投影图像PB)等。此外,存储部32也可以代替内置于控制装置30的存储装置,而是通过USB等数字输入输出端口等连接的外置型的存储装置。
输入接受部33例如,是键盘、鼠标、触摸板、其他的输入装置。此外,输入接受部33也可以作为显示部发挥作用从而作为触摸面板构成。
通信部34例如,包括USB等数字入输出端口、以太网(注册商标)端口等构成。
接下来,参照图4,对控制装置30的功能构成进行说明。图4是表示控制装置30的功能构成的一个例子的图。控制装置30具备存储部32、图像获取部35、以及控制部36。控制部36具备的功能部中一部分或者全部例如,通过CPU31执行存储于存储部32的各种程序来实现。另外,这些功能部中一部分或者全部也可以是LSI(Large Scale Integration:大规模集成电路)、ASIC(Application Specific Integrated Circuit:专用集成电路)等硬件功能部。
图像获取部35从拍摄部10获取拍摄图像。更具体而言,图像获取部35从第一拍摄部11获取第一拍摄图像。图像获取部35将获取的第一拍摄图像输出给控制部36。另外,图像获取部35从第二拍摄部12获取第二拍摄图像。图像获取部35将获取的第二拍摄图像输出给控制部36。
控制部36控制控制装置30的整体。控制部36具备拍摄控制部37、投影控制部38、相位计算部39、置信度计算部40、建立对应部41、三维点群生成部42、三维位置姿势导出部43、以及机器人控制部44。
拍摄控制部37使拍摄部10对拍摄范围P2进行拍摄。更具体而言,拍摄控制部37使第一拍摄部11对拍摄范围P2进行拍摄。另外,拍摄控制部37使第二拍摄部12对拍摄范围P2进行拍摄。
投影控制部38从存储部32读入图像,将读入的图像作为投影图像输出给投影部5,并以将投影图像投影到投影范围P1的方式控制投影部5。
相位计算部39基于从图像获取部35获取的八个第一拍摄图像中的第一拍摄图像1A0~1A3,计算为了使第一拍摄部11的第一拍摄图像平面上的坐标与投影部5的投影图像平面上的坐标建立对应所需要的相位。这里所说的相位是投影了图2所示的四个投影图像PA0~PA3中成为基准的n=0的投影图像(在该一个例子中是投影图像PA0)时,表示投影图像平面上的坐标示出的各点的亮度的周期性变化的波的相位。以下,将基于投影图像PA所涉及的第一拍摄图像计算出的该相位称为第1A相位θ1A进行说明。
另外,相位计算部39基于从图像获取部35获取的八个第一拍摄图像中的第一拍摄图像1B0~1B3,计算为了使第一拍摄部11的第一拍摄图像平面上的坐标与投影部5的投影图像平面上的坐标建立对应所需要的相位。这里所说的相位是在投影了四个投影图像PB0~PB3中成为基准的n=0的投影图像(在该一个例子中是投影图像PB0)时,表示投影图像平面上的坐标示出的各点的亮度的周期性变化的波的相位。以下,将基于投影图像PB所涉及的第一拍摄图像计算出的该相位称为第1B相位进行说明。
另外,相位计算部39基于从图像获取部35获取的八个第二拍摄图像中的第二拍摄图像2A0~2A3,计算为了使第二拍摄部12的第二拍摄图像平面上的坐标与投影部5的投影图像平面上的坐标建立对应所需要的相位。这里所说的相位是在投影了四个投影图像PA0~PA3中成为基准的n=0的投影图像(在该一个例子中是投影图像PA0)时,表示投影图像平面上的坐标示出的各点的亮度的周期性变化的波的相位。以下,将基于投影图像PA所涉及的第二拍摄图像计算出的该相位称为第2A相位θ2A进行说明。
另外,相位计算部39基于从图像获取部35获取的八个第二拍摄图像中的第二拍摄图像2B0~2B3,计算为了使第二拍摄部12的第二拍摄图像平面上的坐标与投影部5的投影图像平面上的坐标建立对应所需要的相位。这里所说的相位是在投影了四个投影图像PB0~PB3中成为基准的n=0的投影图像(在该一个例子中是投影图像PB0)时,表示投影图像平面上的坐标示出的各点的亮度的周期性变化的波的相位。以下,将基于投影图像PB所涉及的第二拍摄图像计算出的该相位称为第2B相位进行说明。
置信度计算部40基于由相位计算部39计算出的第1A相位θ1A、第1B相位第2A相位θ2A、以及第2B相位计算成为表示第一拍摄图像平面上的某个坐标示出的位置、和第二拍摄图像平面上的各坐标所示出的位置为同一位置的概率的指标的置信度。以下,为了方便说明,将示出了与第一拍摄图像平面上的某个坐标M示出的位置相同的位置的第二拍摄图像平面上的某个坐标N称为与第一拍摄图像平面上的坐标M对应的第二拍摄图像平面上的坐标N进行说明。置信度计算部40通过反复计算该置信度的处理,基于由相位计算部39计算出的第1A相位θ1A、第1B相位第2A相位θ2A、以及第2B相位对第一拍摄图像坐标的各坐标,全部计算与第二拍摄图像坐标的各坐标之间的置信度。
建立对应部41基于由置信度计算部40计算出的置信度,检测与第一拍摄图像平面上的各坐标对应的第二拍摄图像平面上的坐标。然后,建立对应部41通过使检测出的与第一拍摄图像平面上的各坐标对应的第二拍摄图像平面上的坐标与第一拍摄图像平面上的各坐标建立对应来进行拍摄部间校准。
更具体而言,建立对应部41基于由置信度计算部40计算出的置信度即相对于第一拍摄图像平面上的各坐标的与第二拍摄图像平面上的各坐标之间的置信度,对第一拍摄图像平面上的每个坐标,检测第一拍摄图像平面上的坐标与第二拍摄图像平面上的坐标的组合中置信度最高的组合。然后,建立对应部41通过对第一拍摄图像平面上的每个坐标,使第一拍摄图像平面上的坐标和第二拍摄图像平面上的坐标的组合中置信度最高的组合所涉及的两个坐标(即,第一拍摄图像平面上的坐标、和第二拍摄图像平面上的坐标)彼此建立对应来进行拍摄部间校准。
三维点群生成部42基于从图像获取部35获取的通过第一拍摄部11以及第二拍摄部12的立体拍摄图像来生成对象物O的三维点群。
三维位置姿势导出部43基于由三维点群生成部42生成的对象物O的三维点群来计算对象物位置姿势。
机器人控制部44以基于由三维位置姿势导出部43计算出的对象物位置姿势并通过把持部HND把持对象物O的方式控制机器人20。机器人20通过把持部HND把持对象物O之后,机器人控制部44控制机器人20,以便将对象物O配置到配置位置X。
以下,参照图5,对到控制装置30进行拍摄部间校准为止的处理进行说明。图5是表示到控制装置30进行拍摄部间校准为止的处理的流程的一个例子的流程图。首先,投影控制部38从存储部32读入预先存储于存储部32的八个图像(即、上述的四个投影图像PA以及四个投影图像PB)(步骤S100)。
接下来,投影控制部38逐个选择读入的投影图像,并对每个选择的投影图像反复进行从步骤S120到步骤S140的处理(步骤S110)。此外,投影控制部38是在从四个投影图像PA逐个选择了投影图像之后,从四个投影图像PB逐个选择投影图像的结构,但也可以代替此结构而为以其他的顺序选择投影图像的结构。
在步骤S110选择了投影图像之后,投影控制部38控制投影部5,以便将选择的投影图像投影到投影范围P1(步骤S120)。接下来,拍摄控制部37控制第一拍摄部11以及第二拍摄部12,以便对拍摄范围P2进行拍摄(步骤S130)。此外,拍摄控制部37可以控制第一拍摄部11以及第二拍摄部12,以便第一拍摄部11和第二拍摄部12中任意一方先进行拍摄,也可以控制第一拍摄部11以及第二拍摄部12,以便第一拍摄部11和第二拍摄部12同时进行拍摄。
接下来,图像获取部35从第一拍摄部11获取第一拍摄图像,并从第二拍摄部12获取第二拍摄图像(步骤S140)。然后,图像获取部35向控制部36输出由第一拍摄部11和第二拍摄部12获取的第一拍摄图像以及第二拍摄图像。
在通过从步骤S110到步骤S140的处理,而八个第一拍摄图像、和八个第二拍摄图像被输出到控制部36之后,相位计算部39基于获取的八个第一拍摄图像,计算为了使第一拍摄部11的第一拍摄图像平面上的坐标与投影部5的投影图像平面上的坐标建立对应所需要的相位,并基于获取的八个第二拍摄图像,计算为了使第二拍摄部12的第二拍摄图像平面上的坐标与投影部5的投影图像平面上的坐标建立对应所需要的相位(步骤S150)。
更具体而言,相位计算部39基于获取的八个第一拍摄图像中第一拍摄图像1A0~1A3并通过位移法来计算拍摄了第一拍摄图像1A0时的第一拍摄图像平面上的各坐标的相位。以下,将投影了第一拍摄图像1A0时的第一拍摄图像平面上的各坐标的相位集中称为第1A相位θ1A进行说明。
另外,相位计算部39基于获取的八个第一拍摄图像中第一拍摄图像1B0~1B3,计算拍摄了第一拍摄图像1B0时的第一拍摄图像平面上的各坐标的相位。以下,将投影了第一拍摄图像1B0时的第一拍摄图像平面上的各坐标的相位集中称为第1B相位进行说明。
另外,相位计算部39基于获取的八个第二拍摄图像中第二拍摄图像2A0~2A3,计算拍摄了第二拍摄图像2A0时的第二拍摄图像平面上的各坐标的相位。以下,将投影了第二拍摄图像2A0时的第二拍摄图像平面上的各坐标的相位集中称为第2A相位θ2A进行说明。
另外,相位计算部39基于获取的八个第二拍摄图像中第二拍摄图像2B0~2B3,计算拍摄了第二拍摄图像2B0时的第二拍摄图像平面上的各坐标的相位。以下,将投影了第二拍摄图像2B0是的第二拍摄图像平面上的各坐标的相位集中称为第2B相位进行说明。
在步骤S150通过相位计算部39计算出各相位之后,置信度计算部40进行基于在步骤S150通过相位计算部39计算出的第1A相位θ1A、第1B相位第2A相位θ2A、以及第2B相位计算成为表示第一拍摄图像平面上的某个坐标示出的位置、和第二拍摄图像平面上的各坐标的各个所示出的位置为同一位置的概率的指标的置信度的置信度计算处理(步骤S160)。在该置信度计算处理中,置信度计算部40通过反复计算该置信度的处理,从而基于由相位计算部39计算出的第1A相位θ1A、第1B相位第2A相位θ2A、以及第2B相位对第一拍摄图像平面上的各坐标全部计算与第二拍摄图像平面上的各坐标之间的置信度。这里,第1A相位θ1A和第1B相位是第一相位的一个例子。另外,第2A相位θ2A和第2B相位是第二相位的一个例子。
接下来,建立对应部41通过基于在步骤S160通过置信度计算部40计算出的置信度即对于第一拍摄图像平面上的各坐标的与第二拍摄图像平面上的各坐标之间的置信度,对第一拍摄图像平面上的每个坐标,使第一拍摄图像平面上的坐标与第二拍摄图像平面上的坐标的组合中涉及置信度最高的坐标组合彼此建立对应来进行上述的拍摄部间校准(步骤S170)。
这里,参照图6,对置信度计算部40的置信度计算处理进行说明。图6是表示置信度计算部40的置信度计算处理的流程的一个例子的流程图。若首先对简单的概要进行说明,则在置信度计算处理中,置信度计算部40基于从步骤S200到步骤S220提取的最近邻组坐标、和从步骤S230到步骤S250提取的最近邻组坐标,计算上述的置信度。
首先,置信度计算部40逐个选择第一拍摄图像平面上的坐标,并对每个选择的坐标反复进行从步骤S210到步骤S220的处理(步骤S200)。在步骤S200选择了一个第一拍摄图像平面上的坐标之后,置信度计算部40提取与选择的坐标示出的点对应的投影图像平面上的坐标(步骤S210)。更具体而言,置信度计算部40提取示出了具有与选择的坐标示出的点即第一拍摄图像1A0上的点的第1A相位θ1A相同的相位的投写图像PA0上的点的坐标亦即投写图像平面上的X坐标(即,与上述的选择的坐标示出的点对应的投影图像平面上的坐标)。以下,为了方便说明,以将提取的这些坐标称为坐标X1_θ1A~X4_θ1A,且提取的坐标仅为这四个的方式进行说明,但实际上提取了更多的坐标。
这里,投写图像PA0平面上的每个X坐标的相位使用投写图像PA通过位移法预先计算。此外,由于表示投影图像PA的亮度的周期性变化的波是向投影图像平面上的水平方向行进的平面波,所以置信度计算部40构成为提取投写图像平面上的X坐标,但也可以代替此结构,而构成为提取与表示投影图像PA的亮度的周期性变化的波的进行方向对应的其他的坐标轴的坐标。
另外,置信度计算部40提取示出了具有与选择的坐标示出的点即第一拍摄图像1B0上的点的第1B相位相同的相位的投写图像PB0平面上的点的坐标亦即投写图像平面上的X坐标(即,与上述的选择的坐标示出的点对应的投影图像平面上的坐标)。以下,为了方便说明,以提取的这些坐标仅为坐标的三个的方式进行说明,但实际上提取了更多的坐标。
接下来,置信度计算部40在按X坐标的值的顺序排列在步骤S210提取的X坐标X1_θ1A~X4_θ1A、和提取的X坐标时,提取最邻近的组合即X坐标X1_θ1A~X4_θ1A中的任意一个与X坐标中的任意一个的组合(步骤S220)。
这里,参照图7,对该提取处理进行说明。图7是用于说明置信度计算部40的步骤S220的处理的图。图7(A)示出了在表示投影图像平面上的X坐标的坐标轴XP上按基于坐标值的顺序排列提取的X坐标X1_θ1A~X4_θ1A、和提取的X坐标并绘图后的图的一个例子。
置信度计算部40根据图7(A)所示的图,提取邻近的组合亦即X坐标X1_θ1A~X4_θ1A中的任意一个、和X坐标中的任意一个的组合。在图7(A)中,置信度计算部40提取X坐标X1_θ1A与X坐标X坐标与X坐标X2_θ1A、X坐标X2_θ1A与X坐标X坐标与X坐标X3_θ1A、X坐标X3_θ1A与X坐标以及X坐标与X坐标X4_θ1A六个组合。然后,置信度计算部40对提取的每个组合,计算组合所涉及的X坐标区间的距离(即,图7(A)中的区间L1~L6的距离)。
置信度计算部40基于计算出的距离,提取具有距离最小的区间的X坐标的组合(在该一个例子中,是具有区间L6的X坐标与X坐标X4_θ1A的组合),作为最邻近的X坐标的组合。以下,为了方便说明,将提取该最邻近的X坐标的组合(以下,称为最近邻组坐标)的处理称为最近邻坐标组提取处理进行说明。
此外,以下,以L_1(XA)表示利用步骤S220中的最近邻坐标组提取处理提取的最邻近组坐标所涉及的区间的距离。这里,自变量XA是示出了距离L_1(XA)所涉及的区间的位置的坐标轴XP上的X坐标,例如,是最邻近的X坐标的组合所涉及的两个X坐标的值的平均值。例如,在该一个例子中,
这样,通过反复从步骤S200到步骤S220的处理,置信度计算部40对第一拍摄图像平面上的各坐标进行最近邻坐标组提取处理。
接下来,置信度计算部40逐个选择第二拍摄图像平面上的坐标,并对选择的每个坐标反复进行从步骤S240到步骤S250的处理(步骤S230)。
在步骤S230选择了一个第二拍摄图像平面上的坐标之后,置信度计算部40提取与选择的坐标示出的点对应的投影图像平面上的坐标(步骤S240)。更具体而言,置信度计算部40提取示出了具有与选择的坐标示出的点即第二拍摄图像2A0上的点的第2A相位θ2A相同的相位的投写图像PA0上的点的坐标亦即投写图像平面上的X坐标(即,与上述的选择的坐标示出的点对应的投影图像平面上的坐标)。为了方便说明,以提取的这些X坐标仅为X坐标X8_θ2A~X11_θ2A的四个的方式进行说明,但实际上提取了更多的X坐标。
这里,投写图像PA0平面上的每个X坐标的相位使用投写图像PA通过位移法预先计算。此外,由于表示投影图像PA的亮度的周期性变化的波是向投影图像平面上的水平方向行进的平面波,所以置信度计算部40构成为提取投写图像平面上的X坐标,但也可以代替此结构,而构成为提取与表示投影图像PA的亮度的周期性变化的波的进行方向对应的其他的坐标轴的坐标。
另外,置信度计算部40提取示出了具有与选择的坐标示出的点即第二拍摄图像2B0上的点的第2B相位相同的相位的投写图像PB0上的点的坐标亦即投写图像平面上的X坐标(即,与上述的选择的坐标示出的点对应的投影图像平面上的坐标)。为了方便说明,以提取的这些X坐标仅为X坐标三个的方式进行说明,但实际上提取了更多的坐标。
接下来,置信度计算部40进行在按坐标值的顺序排列在步骤S240提取的X坐标X8_θ2A~X11_θ2A、和提取的X坐标 时,提取最邻近的组合亦即X坐标X8_θ2A~X11_θ2A中的任意一个、和X坐标中的任意一个的组合的最近邻坐标组提取处理(步骤S250)。
这里,再次参照图7,对步骤S250中的最近邻坐标组提取处理进行说明。图7(B)示出了在表示投影图像平面上的X坐标的坐标轴XP上按坐标值的顺序排列提取的X坐标X8_θ2A~X11_θ2A、和提取的X坐标并绘图后的图的一个例子。此外,图7(A)所示的图、和图7(B)所示的图的原点建立对应,能够在图7(A)所示的图、和图7(B)所示的图比较表示投影图像平面上的X坐标的坐标轴XP上的位置。
置信度计算部40根据图7(B)所示的图,提取邻近的组合亦即X坐标X8_θ2A~X11_θ2A中的任意一个、和X坐标 中的任意一个的组合。在图7(B)中,置信度计算部40提取X坐标X8_θ2A与X坐标X坐标与X坐标X9_θ2A、X坐标X9_θ2A与X坐标X坐标与X坐标X10_θ2A、X坐标X10_θ2A与X坐标以及X坐标与X坐标X11_θ2A六个组合。然后,置信度计算部40对提取的每个组合,计算组合所涉及的X坐标区间的距离(即,图7(B)中的区间L7~L12的距离)。
置信度计算部40基于计算出的距离,提取具有距离最小的区间的X坐标的组合(在该一个例子中,是具有区间L12的X坐标与X坐标X11_θ2A的组合),作为最邻近组坐标。此外,该提取时,置信度计算部40在提取的最邻近组坐标所涉及的区间的距离比规定的阈值ε大的情况下,放弃提取出的最近邻组坐标,并返回到步骤S230选择下一个第二拍摄图像平面上的坐标。
此外,以下,以L_2(XA)表示利用步骤S250中的最近邻坐标组提取处理提取出的最邻近组坐标所涉及的区间的距离。自变量XA与距离L_1(XA)的情况相同,所以省略说明。
这样,通过反复从步骤S230到步骤S250的处理,置信度计算部40对第二拍摄图像平面上的各坐标进行最近邻坐标组提取处理。
这里,图7(A)所示的区间L6所涉及的第一拍摄图像平面上的坐标示出的位置、和图7(B)所示的区间L12所涉及的第二拍摄图像平面上的坐标示出的位置表示同一位置的情况下,区间L6与区间L12应该在坐标轴XP上重合。但是,这是没有各种误差的情况,一般来说由于误差的影响,即使在区间L6所涉及的第一拍摄图像平面上的坐标示出的位置、和区间L12所涉及的第二拍摄图像平面上的坐标示出的位置表示同一位置的情况下,区间L6和区间L12也不如图7所示那样在坐标轴XP上不重合而偏离。
但是,即使存在由于误差的影响而偏离的情况,在图7(A)所示的区间L6所涉及的第一拍摄图像平面上的坐标示出的位置、和图7(B)所示的区间L12所涉及的第二拍摄图像平面上的坐标示出的位置表示同一位置的情况下,区间L6与区间L12在坐标轴XP上也一部分或者全部重合,或邻近的可能性较高。因此,置信度计算部40通过从步骤S260到步骤S270的处理,基于区间L_1(XA)和区间L_2(XA)计算表示在步骤S220提取的区间(距离L_1(XA)所涉及的区间)所涉及的第一拍摄图像平面上的坐标示出的位置、和第二拍摄图像平面上的坐标示出的位置表示同一位置的概率的指标的置信度。
接下来,置信度计算部40基于在步骤S220计算出的第一拍摄图像平面上的各坐标所涉及的区间的距离L_1(XA),导出第一拍摄图像平面上的各坐标所涉及的似然函数P_1(XA)。另外,置信度计算部40基于在步骤S250计算出的第二拍摄图像平面上的各坐标所涉及的区间的距离L_2(XA),导出第二拍摄图像平面上的各坐标所涉及的似然函数P_2(XP)。这里,对似然函数P_1(XP)以及似然函数P_2(XP)进行说明。
在步骤S220计算出的区间的距离L_1(XA)所涉及的第一拍摄图像平面上的两个坐标是根据第一拍摄图像平面上的相同的坐标所涉及的相位得到的组合,所以在第一拍摄部11与投影部5之间的校准的误差、位移法的计算的误差为0这样的理想的环境下,该组合的区间的距离L_1(XA)应该为0,即被重合地检测出。若将在理想的环境下被重合地检测出的位置作为真实的位置,则该真实的位置在计算出的距离L_1(XA)所涉及的区间之间的概率较高。表示该概率的概率密度函数为似然函数P_1(XP)。
另外,在步骤S250计算出的区间的距离L_2(XA)所涉及的第二拍摄图像平面上的两个坐标是根据第二拍摄图像平面上的相同的坐标所涉及的相位得到的组合,所以在第二拍摄部12与投影部5之间的校准的误差、位移法的计算的误差为0这样的理想的环境下,该组合的区间的距离L_2(XA)应该为0,即被重合地检测出。若将在理想的环境下被重合地检测出的位置作为真实的位置,则该真实的位置在计算出的距离L_2(XA)之间的概率较高。表示该概率的概率密度函数是似然函数P_2(XP)。
似然函数P_1(XP)以及似然函数P_2(XP)是概率密度函数,所以满足由以下的式(1)、式(2)表示的条件。
式1
式2
P_i(XP)>0…(2)
这里,i=1、2。另外,XP表示坐标轴XP上的X坐标。另外,积分区间0~XL表示投影图像平面上的X坐标的整个区间。式(1)是要求在上述的整个区间的概率的总和为1的条件。另外,式(2)是要求概率为正的常数的条件。并且,似然函数P_1(XP)以及似然函数P_2(XP)例如,能够以除了上述的式(1)以及式(2)之外,还满足附加的条件的方式生成。在本实施方式中,作为这样的一个例子,对以满足以下的式(3)以及式(4)的方式使用似然函数P_1(XP)以及似然函数P_2(XP)的情况进行说明,但也可以使用满足其他的条件的似然函数P_1(XP)以及似然函数P_2(XP)。此外,似然函数P_1(XP)是第一似然函数的一个例子。另外,似然函数P_2(XP)是第二似然函数的一个例子。
式3
式4
这里,X11以及X12表示区间L_i(XA)所涉及的第i拍摄图像平面上的两个坐标。这里,i=1、2。另外,j、k分别是表示第J个X坐标的下标,表示第K个X坐标的下标。式(3)是要求上述的真实的位置在计算出的区间L_2(XA)之间的概率变得最高的条件。另外,式(4)是要求若远离表示计算出的区间L_2(XA)之间的中心的坐标XA,则上述的真实的位置存在的概率变低的条件。
作为满足由上述的式(1)~式(4)表示的条件的似然函数P_1(XP)以及似然函数P_2(XP),置信度计算部40例如,导出图8所示那样的函数形式的函数。图8是表示似然函数的函数形式的一个例子的图。如图8所示,似然函数P_1(XP)以及似然函数P_2(XP)的函数形式通过阶梯函数的函数形式表示。似然函数P_i(XP)是仅在上述的阈值ε的范围内具有值的阶梯函数,是在阈值ε示出的区间的范围内,图7所示的距离L_i(XA)所涉及的区间的内侧成为最高的值的阶梯函数。这里,r是决定距离L_i(XA)所涉及的区间的外侧,且为阈值ε示出的区间的内侧的似然函数的值的因子,是预先登记于控制部36的值,但也可以代替此值,而是能够由用户登记的值。Ar是决定区间L_i(XA)的内侧的似然函数的值的因子,基于上述的式(3),由Ar=L_i(XA)+r(ε-L_i(XA))计算出。
在步骤S260导出了第一拍摄图像平面上的各坐标的似然函数P_1(XP)、和第二拍摄图像平面上的各坐标的似然函数P_2(XP)之后,置信度计算部40从第一拍摄图像平面上的坐标逐个选择坐标,并对选择的每个坐标基于以下的式(5),全部计算与所有的第二拍摄图像平面上的坐标之间的置信度C(r1,r2)(步骤S270)。
式5
这里,r1表示第一拍摄图像平面上的坐标。另外,r2表示第二拍摄图像平面上的坐标。上述的式(5)中的置信度C(r1,r2)是选择的第一拍摄图像平面上的坐标所涉及的似然函数与所有的第二拍摄图像平面上的坐标所涉及的似然函数至间的相关函数。即,该置信度C(r1,r2)的值最高的第二拍摄图像平面上的坐标所示出的位置表示与选择的第一拍摄图像平面上的坐标示出的位置相同的位置的可能性最高。由于这样的理由,在步骤S170中建立对应部41通过使置信度C(r1,r2)最高的第二拍摄图像平面上的坐标示出的位置与选择的第一拍摄图像平面上的坐标建立对应,能够进行拍摄部间校准。
以下,参照图9,对控制装置30使机器人20进行规定的作业的处理进行说明。图9是表示控制装置30使机器人20进行规定的作业的处理的流程的一个例子的流程图。以下,以通过图5以及图6所示的流程图所涉及的处理结束了拍摄部间校准为前提进行说明。首先,拍摄控制部37控制拍摄部10,以便对包含对象物O的拍摄范围P2进行立体拍摄(步骤S300)。
接下来,图像获取部35从拍摄部10获取由拍摄部10立体拍摄的第一拍摄图像以及第二拍摄图像(步骤S310)。接下来,三维点群生成部42基于在步骤S310由图像获取部35获取的第一拍摄图像以及第二拍摄图像,生成对象物O的三维点群(步骤S320)。接下来,三维位置姿势导出部43基于在步骤S320由三维点群生成部42生成的对象物O的三维点群,计算对象物位置姿势(步骤S330)。
接下来,机器人控制部44基于在步骤S330由三维位置姿势导出部43计算出的对象物位置姿势,控制机器人20,以便通过把持部HND把持对象物O。然后,机器人控制部44控制机器人20,以便将由把持部HND把持的对象物O配置到规定的配置位置X(步骤S340)。
如以上所说明的那样,本实施方式中的机器人***1将投影图像投影到对象物O,通过第一拍摄部11拍摄由投影部5投影了投影图像的对象物O,并通过配置在与第一拍摄部11不同的位置的第二拍摄部12拍摄由投影部5投影了投影图像的对象物O,并根据第一拍摄部11拍摄的第一拍摄图像上的第一点和第二拍摄部12拍摄的第二拍摄图像上的第二点,计算对象物O的三维位置以及姿势。由此,机器人***1能够进行多样的三维形状的测量。
另外,机器人***1基于第一拍摄图像和第二拍摄图像,计算成为第一拍摄图像上的某个点示出的位置和第二拍摄图像上的各点示出的位置表示同一位置的概率的指标的置信度,并基于计算出的置信度,使第一拍摄图像上的各点与第二拍摄图像上的各点建立对应。由此,机器人***1能够以较高的精度进行拍摄部间校准。
另外,机器人***1导出与第一拍摄图像的各点对应的似然函数P_1(XP)和与第二拍摄图像的各点对应的似然函数P_2(XP),并基于导出的这些似然函数计算置信度。由此,机器人***1能够基于似然函数计算置信度,并基于计算出的置信度以较高的精度进行拍摄部间校准。
另外,机器人***1计算第一拍摄图像上的各点上的投影图像的亮度或者色相的变化所涉及的相位和第二拍摄图像上的各点上的投影图像的亮度或者色相的变化所涉及的相位,并基于计算出的第一拍摄图像所涉及的相位导出似然函数P_1(XP),基于第二拍摄图像所涉及的相位导出第二似然函数。由此,控制***能够基于图案光的亮度或者色相的变化所涉及的相位导出似然函数来计算置信度。
以上,参照附图对该发明的实施方式进行了详述,但具体的构成并不限定于该实施方式,只要不脱离该发明的主旨,也可以进行变更、置换、删除等。
另外,也可以将用于实现以上所说明的装置(例如,机器人***1的控制装置30)中的任意的构成部的功能的程序记录于计算机能够读取的记录介质,并使计算机***读入该程序并执行。此外,这里所说的“计算机***”包含OS(Operating System:操作***)、周边设备等硬件。另外,“计算机能够读取的记录介质”是指软盘、光磁盘、ROM(Read OnlyMemory:只读存储器)、CD(Compact Disk:光盘)-ROM等便携式介质、内置于计算机***的硬盘等存储装置。并且“计算机能够读取的记录介质”也包含经由因特网等网络、电话线路等通信线路发送了程序的情况下的服务器、像成为客户端的计算机***内部的易失性存储器(RAM:Random Access Memory:随机存储器)那样,保持程序恒定时间的存储装置。
另外,上述的程序也可以从将该程序储存于存储装置等的计算机***,经由传输介质,或者,通过传输介质中的传输波传输到其他的计算机***。这里,传输程序的“传输介质”是指因特网等网络(通信网)、电话线路等通信线路(通信线)那样具有传输信息的功能的介质。
另外,上述的程序也可以是用于实现上述的功能的一部分的程序。并且,上述的程序也可以是通过与已经记录于计算机***的程序的组合能够实现上述的功能的程序,即所谓的差分文件(差分程序)。
附图标记的说明:1…机器人***;5…投影部;10…拍摄部;11…第一拍摄部;12…第二拍摄部;20…机器人;30…控制装置;31…CPU;32…存储部;33…输入接受部;34…通信部;35…图像获取部;36…控制部;37…拍摄控制部;38…投影控制部;39…相位计算部;40…置信度计算部;41…建立对应部;42…三维点群生成部;43…三维位置姿势导出部;44…机器人控制部。

Claims (4)

1.一种控制***,其特征在于,包括:
投影部,其将规定的图案光投影到对象物;
第一拍摄部,其拍摄由所述投影部投影了所述规定的图案光的所述对象物;
第二拍摄部,其配置在与所述第一拍摄部不同的位置,并拍摄由所述投影部投影了所述规定的图案光的所述对象物;
置信度计算部,其导出与所述第一拍摄图像的各点分别对应的第一似然函数和与所述第二拍摄图像的各点分别对应的第二似然函数,并基于导出的第一似然函数以及第二似然函数,计算成为所述第一拍摄图像上的某个点示出的位置和所述第二拍摄图像上的各点示出的位置表示同一位置的概率的指标的置信度;
建立对应部,其基于由所述置信度计算部计算出的所述置信度,使所述第一拍摄图像上的各点与所述第二拍摄图像上的各点建立对应;以及
计算部,其根据所述第一拍摄部拍摄到的第一拍摄图像上的第一点和所述第二拍摄部拍摄到的第二拍摄图像上的第二点,计算所述对象物的三维形状。
2.根据权利要求1所述的控制***,其特征在于,
所述图案光是亮度或者色相在某个方向上周期性地变化的图案光,
所述置信度计算部计算所述第一拍摄图像上的各点的所述图案光的亮度或者色相的变化所涉及的第一相位和所述第二拍摄图像上的各点的所述图案光的亮度或者色相的变化所涉及的第二相位,并基于计算出的所述第一相位导出所述第一似然函数,基于所述第二相位导出所述第二似然函数。
3.一种机器人***,其特征在于,
是具备权利要求1或者2所述的控制***、和机器人的机器人***,
所述控制***具备:
机器人控制部,其基于由所述计算部计算出的所述对象物的所述三维形状,控制所述机器人。
4.一种控制方法,其特征在于,包含:
将规定的图案光投影到对象物,
通过第一拍摄部拍摄投影了所述规定的图案光的所述对象物,
通过配置在与所述第一拍摄部不同的位置的第二拍摄部拍摄投影了所述规定的图案光的所述对象物,
导出与所述第一拍摄图像的各点分别对应的第一似然函数和与所述第二拍摄图像的各点分别对应的第二似然函数,并基于导出的第一似然函数以及第二似然函数,计算成为所述第一拍摄图像上的某个点示出的位置和所述第二拍摄图像上的各点示出的位置表示同一位置的概率的指标的置信度,
基于计算出的所述置信度,使所述第一拍摄图像上的各点与所述第二拍摄图像上的各点建立对应,
根据所述第一拍摄部拍摄到的第一拍摄图像上的第一点和所述第二拍摄部拍摄到的第二拍摄图像上的第二点,计算所述对象物的三维形状。
CN201510445742.XA 2014-07-29 2015-07-27 控制***、机器人***、以及控制方法 Active CN105313126B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2014153750A JP6357949B2 (ja) 2014-07-29 2014-07-29 制御システム、ロボットシステム、及び制御方法
JP2014-153750 2014-07-29

Publications (2)

Publication Number Publication Date
CN105313126A CN105313126A (zh) 2016-02-10
CN105313126B true CN105313126B (zh) 2019-01-01

Family

ID=55180358

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510445742.XA Active CN105313126B (zh) 2014-07-29 2015-07-27 控制***、机器人***、以及控制方法

Country Status (3)

Country Link
US (1) US9652660B2 (zh)
JP (1) JP6357949B2 (zh)
CN (1) CN105313126B (zh)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6636252B2 (ja) * 2015-03-19 2020-01-29 株式会社メガチップス 投影システム、プロジェクター装置、撮像装置、および、プログラム
US9965881B2 (en) * 2015-08-28 2018-05-08 Panasonic Intellectual Property Corporation Of America Method for generating image and image generation system
CN107442973B (zh) * 2016-05-30 2020-06-16 上海气焊机厂有限公司 基于机器视觉的焊道定位方法及装置
JP7071054B2 (ja) * 2017-01-20 2022-05-18 キヤノン株式会社 情報処理装置、情報処理方法およびプログラム
JP6897398B2 (ja) * 2017-07-31 2021-06-30 セイコーエプソン株式会社 三次元形状測定装置、ロボットシステム、及び三次元形状測定方法
JP2019058993A (ja) 2017-09-27 2019-04-18 セイコーエプソン株式会社 ロボットシステム
JP2019059004A (ja) * 2017-09-28 2019-04-18 セイコーエプソン株式会社 ロボットシステム
US10565719B2 (en) * 2017-10-13 2020-02-18 Microsoft Technology Licensing, Llc Floor detection in virtual and augmented reality devices using stereo images
EP3483780A1 (en) * 2017-11-10 2019-05-15 Skidata Ag Classification and identification systems and methods
JP6970376B2 (ja) * 2017-12-01 2021-11-24 オムロン株式会社 画像処理システム、及び画像処理方法
JP7000254B2 (ja) * 2018-06-01 2022-01-19 トヨタ自動車株式会社 ホイールアライメント調整システム
CN108748149B (zh) * 2018-06-04 2021-05-28 上海理工大学 一种复杂环境下基于深度学习的无标定机械臂抓取方法
JP7212240B2 (ja) * 2018-06-11 2023-01-25 オムロン株式会社 計測システムおよび計測方法
JP7172305B2 (ja) * 2018-09-03 2022-11-16 セイコーエプソン株式会社 三次元計測装置およびロボットシステム
JP6923574B2 (ja) * 2019-02-01 2021-08-18 ファナック株式会社 3次元形状計測システムおよび3次元形状計測方法
WO2020240836A1 (ja) * 2019-05-31 2020-12-03 日本電信電話株式会社 画像処理装置、画像処理方法及びプログラム
JP6841297B2 (ja) * 2019-05-31 2021-03-10 株式会社デンソー ビジュアルサーボシステム
JP2021076531A (ja) * 2019-11-12 2021-05-20 Juki株式会社 3次元計測装置及び3次元計測方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1293752A (zh) * 1999-03-19 2001-05-02 松下电工株式会社 三维物体识别方法及使用该方法的零件抓取***
JP2008241643A (ja) * 2007-03-29 2008-10-09 Fujinon Corp 3次元形状測定装置
CN101726261A (zh) * 2008-10-13 2010-06-09 株式会社高永科技 使用多波长测量三维形状的设备和方法
CN101825445A (zh) * 2010-05-10 2010-09-08 华中科技大学 一种动态物体的三维测量***
CN102954770A (zh) * 2011-08-15 2013-03-06 佳能株式会社 三维测量设备和三维测量方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1472052A2 (en) * 2002-01-31 2004-11-03 Braintech Canada, Inc. Method and apparatus for single camera 3d vision guided robotics
US7349104B2 (en) * 2003-10-23 2008-03-25 Technest Holdings, Inc. System and a method for three-dimensional imaging systems
JP4230525B2 (ja) * 2005-05-12 2009-02-25 有限会社テクノドリーム二十一 3次元形状計測方法およびその装置
WO2008036354A1 (en) * 2006-09-19 2008-03-27 Braintech Canada, Inc. System and method of determining object pose
US7957583B2 (en) * 2007-08-02 2011-06-07 Roboticvisiontech Llc System and method of three-dimensional pose estimation
JP4836086B2 (ja) * 2007-09-10 2011-12-14 三菱電機株式会社 3次元形状検出装置
US8103085B1 (en) * 2007-09-25 2012-01-24 Cognex Corporation System and method for detecting flaws in objects using machine vision
JP5032943B2 (ja) 2007-11-06 2012-09-26 パナソニック株式会社 3次元形状計測装置及び3次元形状計測方法
US9124873B2 (en) * 2010-12-08 2015-09-01 Cognex Corporation System and method for finding correspondence between cameras in a three-dimensional vision system
CN102760234B (zh) * 2011-04-14 2014-08-20 财团法人工业技术研究院 深度图像采集装置、***及其方法
JP6351201B2 (ja) * 2012-12-06 2018-07-04 キヤノン株式会社 距離計測装置および方法
JP6299150B2 (ja) 2013-10-31 2018-03-28 セイコーエプソン株式会社 制御装置、ロボット、制御システム、制御方法、及び制御プログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1293752A (zh) * 1999-03-19 2001-05-02 松下电工株式会社 三维物体识别方法及使用该方法的零件抓取***
JP2008241643A (ja) * 2007-03-29 2008-10-09 Fujinon Corp 3次元形状測定装置
CN101726261A (zh) * 2008-10-13 2010-06-09 株式会社高永科技 使用多波长测量三维形状的设备和方法
CN101825445A (zh) * 2010-05-10 2010-09-08 华中科技大学 一种动态物体的三维测量***
CN102954770A (zh) * 2011-08-15 2013-03-06 佳能株式会社 三维测量设备和三维测量方法

Also Published As

Publication number Publication date
CN105313126A (zh) 2016-02-10
US9652660B2 (en) 2017-05-16
JP2016031284A (ja) 2016-03-07
JP6357949B2 (ja) 2018-07-18
US20160034746A1 (en) 2016-02-04

Similar Documents

Publication Publication Date Title
CN105313126B (zh) 控制***、机器人***、以及控制方法
WO2019205299A1 (zh) 视觉测量***结构参数标定和仿射坐标系构建方法与***
CN102278946B (zh) 摄像装置以及长度测量方法
CN107003109B (zh) 校准装置、校准方法、光学装置、摄影装置、投影装置、测量***以及测量方法
CN107702695B (zh) 摄像模组镜头与图像传感器相对位置的测试方法
JP5746477B2 (ja) モデル生成装置、3次元計測装置、それらの制御方法及びプログラム
JPWO2019049421A1 (ja) キャリブレーション装置、キャリブレーションシステム、およびキャリブレーション方法
CN109155070A (zh) 使用平面镜校准立体成像***的方法和计算机程序产品
CN105654547B (zh) 三维重建方法
Martynov et al. Projector calibration by “inverse camera calibration”
CN106256124B (zh) 结构化立体
CN109272555B (zh) 一种rgb-d相机的外部参数获得及标定方法
JP6071363B2 (ja) 距離計測装置及び方法
CN108292431A (zh) 光场数据表示
CN109993798A (zh) 多摄像头检测运动轨迹的方法、设备及存储介质
CN111678459A (zh) 三维扫描方法、三维扫描***和计算机可读存储介质
CN109297680A (zh) 光轴偏移误差值的检测方法及装置
CN109341718B (zh) 基于多目视觉的标定方法和装置
CN115797461A (zh) 基于双目视觉的火焰空间定位***标定与校正方法
CN114299156A (zh) 无重叠区域下多相机的标定与坐标统一方法
CN112229323A (zh) 基于手机单目视觉的棋盘格合作目标的六自由度测量方法及其应用
CN106813595B (zh) 三相机组特征点匹配方法、测量方法及三维检测装置
CN106476015A (zh) 机器人、控制装置以及机器人***
CN104677911B (zh) 用于机器视觉检验的检验设备和方法
Yamauchi et al. Calibration of a structured light system by observing planar object from unknown viewpoints

Legal Events

Date Code Title Description
C06 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