CN112643718B - 图像处理设备及其控制方法和存储其控制程序的存储介质 - Google Patents
图像处理设备及其控制方法和存储其控制程序的存储介质 Download PDFInfo
- Publication number
- CN112643718B CN112643718B CN202011073354.0A CN202011073354A CN112643718B CN 112643718 B CN112643718 B CN 112643718B CN 202011073354 A CN202011073354 A CN 202011073354A CN 112643718 B CN112643718 B CN 112643718B
- Authority
- CN
- China
- Prior art keywords
- robot
- image
- area
- imaging
- specified
- 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
- 238000012545 processing Methods 0.000 title claims abstract description 153
- 238000000034 method Methods 0.000 title claims abstract description 64
- 238000003860 storage Methods 0.000 title claims abstract description 43
- 238000003384 imaging method Methods 0.000 claims abstract description 261
- 230000008569 process Effects 0.000 claims abstract description 27
- 230000036544 posture Effects 0.000 claims description 170
- 238000012937 correction Methods 0.000 claims description 111
- 230000003287 optical effect Effects 0.000 claims description 22
- 238000010586 diagram Methods 0.000 description 29
- 238000005259 measurement Methods 0.000 description 24
- 238000004364 calculation method Methods 0.000 description 20
- 230000006870 function Effects 0.000 description 12
- 238000011156 evaluation Methods 0.000 description 8
- 238000003825 pressing Methods 0.000 description 8
- 230000008859 change Effects 0.000 description 7
- 230000009466 transformation Effects 0.000 description 7
- 239000011159 matrix material Substances 0.000 description 6
- 230000004044 response Effects 0.000 description 6
- 238000006243 chemical reaction Methods 0.000 description 5
- 239000012636 effector Substances 0.000 description 5
- 238000007689 inspection Methods 0.000 description 3
- 230000007704 transition Effects 0.000 description 3
- 238000007476 Maximum Likelihood Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000006073 displacement reaction Methods 0.000 description 2
- 229910044991 metal oxide Inorganic materials 0.000 description 2
- 150000004706 metal oxides Chemical class 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 241000208340 Araliaceae Species 0.000 description 1
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 1
- 235000003140 Panax quinquefolius Nutrition 0.000 description 1
- 208000028752 abnormal posture Diseases 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 235000008434 ginseng Nutrition 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
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/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
- 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/021—Optical sensing devices
- B25J19/023—Optical sensing devices including video camera means
-
- 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/06—Control stands, e.g. consoles, switchboards
-
- 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
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
- B25J9/161—Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
-
- 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
-
- 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/39057—Hand eye calibration, eye, camera on hand, end effector
-
- 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/39391—Visual servoing, track end effector with camera image feedback
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Automation & Control Theory (AREA)
- Fuzzy Systems (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Human Computer Interaction (AREA)
- Evolutionary Computation (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Manipulator (AREA)
- Numerical Control (AREA)
Abstract
本发明提供一种图像处理设备及其控制方法和存储其控制程序的存储介质。该图像处理设备能够简化用于确定附接至机器人的摄像设备的摄像姿势的操作。该图像处理设备处理附接至机器人的摄像设备拍摄的图像。该图像处理设备包括:第一指定部件,用于基于示出多个指定的教导点的教导点信息来指定所述机器人的作业区域;第二指定部件,用于指定所述摄像设备的摄像区域,以包括所指定的作业区域;以及第一确定部件,用于基于所指定的摄像区域来确定所述机器人的摄像姿势。
Description
技术领域
本发明涉及图像处理设备、其控制方法及存储其控制程序的存储介质,其中图像处理设备处理由附接至机器人的摄像设备所拍摄的图像。
背景技术
附接有照相机的机器人用于产品生产、质量识别、运输等的目的。例如通过对由照相机拍摄的图像应用图像处理而对作为作业对象的工件进行检查和测量。机器人能够在预定作业区域内自由地工作。因而,当机器人在预定作业区域内操作工件时,应当以照相机可以适当地拍摄机器人工作于的作业区域的方式确定机器人的摄像姿势。
作为相关技术,美国专利7,720,573(日本专利4221014)公开了机器人控制设备。该机器人控制设备具有固定地安装并连接至机器人的控制设备主体和连接至控制设备主体的便携式教导操作盘。然后,用户能够利用教导操作盘操作机器人。
为了确定照相机能够适当地拍摄机器人的作业区域的机器人的摄像姿势,例如,重复地进行用户的视觉观察的检查和机器人的摄像姿势的调整。在这种情况下,用户检查照相机拍摄的图像并且调整照相机所附接至的机器人的臂的倾斜和位置。需要用户重复检查图像并调整机器人,直到附接至机器人的照相机适当地拍摄机器人的作业区域为止。这是麻烦的。
此外,机器人能够在通过将照相机拍摄的结果反馈至机器人的控制来进行与工件的变化和位移相对应的校正的同时工作。然而,当将图像中的工件的变化量和位移量反馈至机器人的控制时,需要确定用于将图像中的机器人的位置和姿势转换成机器人坐标中的位置和姿势的校正参数。
作为相关技术,日本专利5272617公开了机器人控制设备。该机器人控制设备检测操纵器的手指对作业对象所放置于的平面上的接触点的接触,并且通过利用照相机拍摄设置在该平面上的标记来校正机器人的位置。
例如,使用光学标记的校准已知为用于确定用于将图像中的机器人的位置和姿势转换成机器人坐标中的位置和姿势的校正参数的方法之一。当使用光学标记的校准被使用时,用户在作业区域内安装形状已知的光学标记。然后,通过对照相机拍摄的图像应用预定的图像处理来确定校正参数。在这种情况下,由于用户需要制作光学标记并且使用光学标记进行校准工作,因此校正变得复杂。
发明内容
本发明提供一种简化用于确定附接至机器人的摄像设备的摄像姿势的操作的图像处理设备。而且,本发明的一个实施例提供一种简化用于确定用以将拍摄图像的坐标转换成机器人的坐标的校正参数的操作的图像处理设备。
因此,本发明的第一方面提供一种图像处理设备,用于处理附接至机器人的摄像设备所拍摄的图像。所述图像处理设备包括:第一指定部件,用于基于示出多个指定的教导点的教导点信息来指定所述机器人的作业区域;第二指定部件,用于以包括所指定的作业区域的方式来指定所述摄像设备的摄像区域;以及第一确定部件,用于基于所指定的摄像区域来确定所述机器人的摄像姿势。
因此,本发明的第二方面提供一种图像处理设备,用于处理附接至机器人的摄像设备所拍摄的图像。所述图像处理设备包括:第一显示控制部件,用于显示包括用以输入教导点的输入栏和第一按钮的画面,所述第一按钮用以指定用于确定所述机器人的摄像姿势的处理的执行;第一指定部件,用于基于示出多个指定的教导点的教导点信息来指定所述机器人的作业区域;第二指定部件,用于以包括所指定的作业区域的方式来指定所述摄像设备的摄像区域;以及第一确定部件,用于在所述第一按钮被操作的情况下,基于所指定的摄像区域来确定所述机器人的摄像姿势。
因此,本发明的第三方面提供一种图像处理设备的控制方法,所述图像处理设备用于处理附接至机器人的摄像设备所拍摄的图像,所述控制方法包括以下步骤:基于示出多个指定的教导点的教导点信息来指定所述机器人的作业区域;以包括所指定的作业区域的方式来指定所述摄像设备的摄像区域;以及基于所指定的摄像区域来确定所述机器人的摄像姿势。
因此,本发明的第四方面提供一种存储有控制程序的非暂时性计算机可读存储介质,所述控制程序使计算机执行第三方面的控制方法。
根据本发明,简化了用于确定附接至机器人的摄像设备的摄像姿势的操作。根据本发明的一个实施例,简化了用于确定用以将拍摄图像的坐标转换成机器人的坐标的校正参数的操作。
通过以下参考附图对典型实施例的描述,本发明的其它特征将变得明显。
附图说明
图1是示出关于本发明的第一实施例的机器人系统的整体结构的图。
图2A至图2C是示出关于第一实施例的机器人系统中的确定摄像姿势的流程的图。
图3是示出关于第一实施例的包括图像处理设备、机器人和摄像设备的机器人系统的硬件结构图。
图4是示出关于第一实施例的机器人系统中的图像处理设备、机器人和摄像设备的功能的框图。
图5是示出在图像处理设备的显示装置上显示的摄像姿势确定画面的示例的图。
图6是示出关于第一实施例的机器人系统中的用于存储摄像姿势的处理流程的流程图。
图7A至图7D是示出关于第一实施例的机器人系统中的机器人和摄像设备的模型的示例的图。
图8是详细示出关于第一实施例的机器人系统中的从作业区域的指定到摄像姿势的确定的处理流程的流程图。
图9A和图9B是示出关于第一实施例的机器人系统中的作业区域的指定的示例的图。
图10是示出关于第一实施例的机器人系统中的摄像姿势确定方法的示例的图。
图11A至图11D是示出关于本发明的第二实施例的机器人系统中的直到摄像姿势的确定为止的流程的图。
图12是示出关于第二实施例的机器人系统中的图像处理设备、机器人和摄像设备的功能的框图。
图13是示出关于第二实施例的机器人系统中的校正参数确定画面的示例的图。
图14是示出关于第二实施例的机器人系统中的确定校正参数的处理流程的流程图。
图15是示出关于第二实施例的机器人系统中的直到确定校正参数为止所进行的处理流程的详情的流程图。
图16A和图16B是示出关于第二实施例的机器人系统中的测量范围信息的生成的图。
具体实施方式
以下,参考附图详细说明根据本发明的实施例。
以下实施例中描述的结构仅是示例,并且本发明的范围不受实施例中描述的结构的限制。
在下文中,将描述本发明的第一实施例。图1是示出关于本发明的第一实施例的机器人系统10的整体结构的图。机器人系统10作为整体可以被称为机器人装置。机器人系统10具有图像处理设备100、机器人110和摄像设备(照相机)120。机器人系统10的结构不限于图1的示例。摄像设备120是获得摄像区域160中的电磁波信息(光信息)作为图像(拍摄图像、照相机图像)的照相机。摄像设备120附接至机器人110的预定位置。在图1的示例中,摄像设备120附接在机器人110的前端附近。
摄像设备120对机器人110的附接位置和摄像设备120的位置之间的相对关系是固定的。在图1的示例中,机器人110具有多个关节臂并且可在预定作业区域中工作。用户可以手动地改变机器人110的位置和姿势,并且稍后提到的驱动单元214也可以改变它们。在该实施例中,机器人110的位置应通过预定坐标系(X,Y,Z)表示机器人110的臂的前端的位置,并且机器人110的姿势应通过预定坐标系(俯仰、侧倾、横摆)表示臂的前端的姿势。
图像处理设备100、机器人110和摄像设备120被连接以能够通信以交换信息。通过估计机器人110操作工件150来准备作业区域140。工件150是由机器人110操作的对象并且以各种状态(方向)布置在作业区域140内。摄像设备120从预定的摄像位置拍摄工件150的图像。图像处理设备100基于所获得的拍摄图像来估计工件的位置、姿势或类型。
图像处理设备100进行各种处理,并将控制量发送至机器人110,以将臂的前端移动至工件150的位置。机器人110基于所接收到的控制量将臂的前端移动至工件150的位置。图像处理设备100控制机器人110,以通过根据工件150的状态改变控制量来进行与工件150的状态相对应的不同操作。两个或更多个工件150可以包括在作业区域140中。
在下文中,将描述上述摄像姿势。摄像姿势是在拍摄用于识别工件150的图像时机器人110的前端的位置和姿势,并且将在操作工件150之前确定。此外,可以考虑臂的关节的姿势。本实施例中的机器人110在拍摄图像时总是变换到该摄像姿势,并以相同的视场角拍摄图像。
将工件150在照相机坐标中的位置(工件在图像中的位置)转换成工件在机器人坐标中的位置,以使得机器人110能够对工件150进行操作。稍后将提及详情。摄像姿势离工件150越近,即,摄像设备120离作业区域140的表面越近,工件150的拍摄图像的分辨率越高,这提高了识别的精度。另一方面,摄像设备120离作业区域140的表面越近,摄像视场角越窄,这增加了工件150不能被包括在视场角中的可能性。即,优选地以工件150可以肯定被包括在视场角中并且工件150可以在尽可能近的位置处被拍摄的方式确定摄像姿势。
将基于以上描述第一实施例中的摄像姿势的确定方法的概述。图2A至图2C是示出直到确定摄像姿势为止的流程的图。用户将机器人110安装在机器人110可在作业区域140内操作工件150的期望位置处。即,用户将机器人110安装在作业区域140被估计为机器人110的可移动区域的位置处(图2A)。
在本实施例中,机器人110应是用户可以移动的20kg或更少的便携式机器人。然而,机器人110可以不是便携式机器人。在安装机器人110之后,用户检查机器人110是否能够在作业区域(机器人作业区域)140内工作。此时,用户通过操作机器人110来检查(图2B)。例如,用户将臂依次移动到作业区域140的四个角并且检查臂是否在各个角处采取可操作的姿势。然后,通过本实施例的处理来确定摄像姿势(图2C)。稍后将提及确定摄像姿势的详情。
用户可以将在图2B中所示的操作中将机器人110的臂移动到的点(例如,作业区域140的四个角)登记为教导点。图像处理设备100从这些教导点中指定示出作业区域的摄像区域信息,并且指定示出摄像区域160的摄像区域信息,其中该摄像区域160包括所指定的作业区域信息示出的区域。图像处理设备100基于所指定的摄像区域信息确定机器人110的摄像姿势。即,以与作业区域140相对应的区域包括在摄像区域160中的方式自动确定摄像姿势。这是因为精确包括作业区域140的视场角是肯定包括工件150并且能够在附近拍摄工件150的视场角。因此,唯一地确定机器人110的摄像姿势,而无需重复用户的视觉观察的结果和通过重复机器人110的操作获得的图像处理的结果的反馈。
图3是示出实施例的图像处理设备100、机器人110和摄像设备120的硬件结构图。图像处理设备100、机器人110和摄像设备120通过信号传输单元130连接,以使得能够进行信息的相互通信。
图像处理设备100是具有图像处理功能的计算机。图像处理设备100具有计算单元201、存储单元202、显示单元203、输入单元204、外部接口205和内部总线206。接口在图3中表示为“I/F”。计算单元201由CPU(中央处理单元)和GPU(图形处理单元)构成。存储单元202由诸如ROM(只读存储器)、RAM(随机存取存储器)、HDD(硬盘驱动器)和SSD(固态驱动器)等的存储装置构成。显示单元203是LCD单元、或投影仪等。输入单元204可包括鼠标、键盘、触摸面板等。外部接口205由USB(通用串行总线)、Ethernet(注册商标)等构成,并且用于信息的输入和输出。内部总线206是用于连接图像处理设备100内部的单元的诸如数据总线和地址总线等的控制线。
存储单元202存储实现实施例的各种控制的程序。例如,当计算单元201运行程序时,实现本实施例的各种处理。由此,例如,图像处理设备100进行图像处理,将机器人操作命令发送到机器人110,并从摄像设备120获得图像。此外,用户能够使用显示单元203和输入单元204进行各种设置和处理的指示执行。
接着,将描述机器人110。机器人110具有计算单元211、存储单元212、输入单元213、驱动单元214、外部接口215和内部总线216。由于除驱动单元214之外的单元与图像处理设备100的单元相同,因此省略其描述。驱动单元214具有致动器、减速齿轮、连杆机构等。计算单元211通过运行存储在存储单元212中的程序来进行诸如驱动单元214的控制和对外部接口215的响应等的各种控制。
存储单元212存储控制机器人110所需的信息,包括连杆的长度、连接连杆的关节的可移动方向和可移动范围。计算单元211根据向机器人110的关节和致动器发出的操作命令值来估计机器人110的手(臂的前端)的位置和姿势。此外,机器人110的手的位置和姿势是可指定的。计算单元211基于指定给机器人110的手的位置和姿势来估计向机器人110的各个关节发出的操作命令值。
此外,存储单元212存储与机器人110的手的位置和姿势有关的信息,从而存储机器人110的教导点。与机器人110的手的位置和姿势有关的信息可作为数值从用户使用输入单元213的操作或从外部设备输入。此外,存储单元212响应于用户的操作存储机器人110的手的当前位置和姿势。教导点是用于指定机器人110的位置和姿势的信息,其中通过机器人坐标系中的相对于原点(机器人原点)的XYZ直角坐标或欧拉角的姿势表达式、冗余姿势的关节方向标志和各轴的关节角度来表示机器人110的位置和姿势。
接着,将描述摄像设备120。摄像设备120具有外部接口221、计算单元222、存储单元223、图像传感器224和光学仪器225。由于除图像传感器224和光学仪器225之外的单元与图像处理设备100和机器人110的单元相同,因此省略它们的描述。图像传感器224由CCD(电荷耦合器件)图像传感器、CMOS(互补金属氧化物半导体)图像传感器或MOS(金属氧化物半导体)图像传感器构成。光学仪器225将进入摄像设备120的光引导至图像传感器224。计算单元222响应于外部接口221,基于从图像传感器224获得的信息生成图像,并且控制例如光学仪器225的诸如焦点和视场角等的光学特性。
尽管图1和图3示出图像处理设备100、机器人110和摄像设备120被构造为独立组件的示例,但是这些设备可被构造为一个组件。此外,可以通过预定的外部设备(例如,云服务器、边缘计算机等)进行实施例的各个处理。例如,图像处理设备100将可与预定的外部设备进行通信。图像处理设备100将实施例的处理所需的信息发送到预定的外部设备。预定的外部设备进行实施例的处理,并将处理结果发送到图像处理设备100。这样的结构也实现了实施例的处理。此外,本实施例的处理也可以通过如模拟器等的虚拟环境来实现。
接着,将描述图像处理设备100、机器人110和摄像设备120的功能。图4是示出图像处理设备100、机器人110和摄像设备120的功能的框图。机器人110具有机器人教导模块311、机器人控制模块313和驱动模块315。机器人教导模块311和机器人控制模块313的功能通过计算单元211运行的程序来实现。
首先将描述机器人控制模块313。机器人控制模块313向驱动模块315发送针对机器人110的各个致动器的控制量。驱动模块315对应于图3中的驱动单元214。机器人110的存储单元212预先存储包括机器人110的连杆的长度、连接连杆的关节的可移动方向和可移动范围的机器人参数信息。机器人控制模块313使用机器人参数信息和预定的运动学方法(正向运动学、反向运动学等)双向地转换各个致动器的控制量以及机器人110的手的位置和姿势。
当预定的输入终端连接到机器人110的外部接口215时,用户能够通过操作输入终端将机器人110的臂的前端设置在期望的位置和姿势处。例如,输入终端是教导操作盘或具有教导操作盘的功能的平板终端。机器人控制模块313接收对输入终端的操作并且将机器人110的臂的前端设置在期望的位置和姿势处。
诸如执行器或工具等的预定仪器可以附接在机器人110的前端(臂的前端)处。在这种情况下,机器人110的前端的位置和姿势根据附接在机器人110的臂的前端处的仪器的形状而变化。在这种情况下,可以进行将从机器人110的前端位置到仪器的位置的长度作为偏移添加的校正。此外,机器人控制模块313可以通过改变在运动学计算中使用的关节的长度来将仪器的前端的位置和姿势控制为机器人110的手的位置和姿势。
接着,将描述机器人教导模块311。机器人教导模块311将与机器人110的特定位置和姿势有关的信息作为教导点信息(示出教导点的信息)存储在存储单元212中。由此,登记教导点。此外,当机器人教导模块311读取存储单元212中所存储的教导点信息时,机器人控制模块313能够使机器人110以可以再现所读取的教导点信息示出的机器人110的位置和姿势的方式工作。例如,当用户手动移动机器人110的臂并操作以登记教导点时,将操作时机器人110的臂的前端的位置和姿势登记为教导点。应当注意,要登记的教导点不限于机器人110的臂的前端的当前位置和姿势。教导点可以通过输入数值来登记,或者可以通过虚拟空间中的模拟来登记。
接着,将描述图像处理设备100。图像处理设备100获得摄像设备120拍摄的拍摄图像,并进行图像处理。此外,图像处理设备100具有摄像姿势确定模块301、作业区域指定模块303、摄像区域指定模块305和第一显示控制模块307。首先,说明摄像区域指定模块305。摄像区域指定模块305对应于第二指定部件。摄像区域指定模块305通过使用存储单元202中所存储的各种信息来指定包括作业区域140的摄像区域160。在下文中,将用于指定摄像区域160的各种信息描述为图像处理设备100的存储单元202中所存储的信息。另一方面,用于指定摄像区域160的各种信息可被存储在外部设备中。在这种情况下,图像处理设备100通过通信来获得各种信息。
图像处理设备100的存储单元202存储用于估计当摄像设备120的摄像单元321拍摄图像时视野内的三维空间中的点和摄像图像中的该点所投影到的位置之间的关系的各种信息。由摄像单元321拍摄的三维空间中的位置和拍摄图像中的位置之间的关系通过由摄像单元321的位置和姿势确定的内部参数和外部参数来表示。摄像设备120通过机械连接器370固定到机器人110的预定连杆。
驱动模块315基于到连接器370所附接至的连杆的机器人参数信息以及摄像设备120相对于连接器370所附接至的连杆的相对位置和姿势,通过预定运动学方法来求得外部参数。存储单元202中所存储的各种信息包括由光学仪器225的光学特性确定的内部参数。此外,各种信息包括上述机器人参数信息和关于由连接器370固定的摄像设备120的坐标系原点相对于机器人110的连杆的位置和姿势的信息。例如,连接器370是连接机器人110的连杆和摄像设备120的轴。
上述各种信息可从设计值中求得并且可通过任意识别方法来求得。机器人参数信息包括在机器人控制模块313和摄像区域指定模块305之间共享的信息(用于假定外部参数的机器人参数信息)。机器人参数信息可以存储在图像处理设备100的存储单元202和机器人110的存储单元212中的任一个中,或者可以存储在这两者中。当机器人参数信息存储在一个存储单元中时,图像处理设备100或机器人110可以参考存储在另一设备的存储单元中的机器人参数信息。
作业区域指定模块303使用与用户指定的多个教导点有关的信息来生成作业区域信息。作业区域指定模块303对应于第一指定部件。作业区域信息是由教导点构成的机器人教导点组或者通过延伸、连接或近似机器人教导点组而生成的点组、面信息或深度信息。作业区域信息的详情稍后提及。图像处理设备100的第一显示控制模块307在显示单元203上显示如图5所示的GUI(图形用户界面)的操作画面。当输入用于生成作业区域信息的教导点信息时,使用GUI。
在上述GUI中,可以指定与教导点相关联的编号,并且作业区域指定模块303使用多边形网格或各种近似方法,基于与所指定的教导点有关的信息来生成作业区域信息。此外,在上述GUI中,可以任意指定对作业区域140的裕度,并且作业区域指定模块303根据所指定的裕度来扩大或缩小作业区域信息。例如,作为图像处理检测的对象的工件150的特征部分可能由于工件150的宽度而在作业区域之外。即使在这种情况下,通过指定裕度,这样的工件150可以被视为在作业区域内。此外,作业区域指定模块303可以使用与作为检测对象的工件150有关的大小信息和附接至机器人110的仪器的大小来扩大或缩小作业区域信息。由此,节省了设置的时间和精力。
接着,将描述摄像姿势确定模块301。摄像姿势确定模块301对应于第一确定部件。摄像姿势确定模块301基于作业区域信息和摄像区域信息来确定机器人110的摄像姿势。在本实施例中,摄像姿势确定模块301基于作业区域信息、机器人参数信息和摄像区域信息,求得定义作业区域140在图像中投影的区域相对于机器人110的姿势的关系。由此,摄像姿势确定模块301确定机器人110的摄像姿势。稍后将提及摄像姿势的确定方法。摄像姿势定义机器人110的适合于拍摄由作业区域信息示出的区域的位置和姿势。当机器人110处于摄像姿势时,摄像区域160包括由作业区域信息示出的整个区域。如上所述,最佳摄像姿势定义如下的机器人110的位置和姿势,在该位置和姿势处,摄像区域160包括整个作业区域140并且拍摄图像的分辨率高。
例如,摄像姿势确定模块301可以使用投影到拍摄图像的作业区域140的大小和未投影的区域的大小作为评价指标,分析地或数字地求得摄像姿势。此外,摄像姿势确定模块301可以通过在通过投影到接近平面上来限制摄像姿势的同时求得对作业区域140的视野的最小外接矩形来求得摄像姿势。摄像姿势确定模块301可以确定满足输入到GUI中的条件的摄像姿势,该GUI允许在任意姿势确定中选择限制条件、解决方案等。
图5是示出上述GUI的操作画面(摄像姿势确定画面400)的示例的图。第一显示控制模块307进行对显示单元203上显示的画面的显示控制。第一显示控制模块307对应于第一显示控制部件。用户通过在显示单元203上显示摄像姿势确定画面400的状态下操作输入单元204,能够输入和选择各种值。摄像姿势确定画面400包括图像显示区域401、第一界面402、执行按钮403和第二界面404。第一界面402和第二界面404被提供作为设置项。
摄像姿势确定画面400的画面示例不限于图5的示例。在图像显示区域401上显示摄像设备120的摄像单元321正在拍摄的拍摄图像。在图5的示例中,拍摄图像被示为照相机图像。第一界面402是用于指定作业区域140的界面。第一界面402包括教导点输入栏411、单选按钮412、裕度设置栏413、第一复选框414和第二复选框415。
教导点输入栏411是用于输入用于生成作业区域信息的教导点的框。教导点输入栏411对应于输入单元。机器人110的存储单元212存储关于多个教导点的信息。在本实施例中,存储单元212存储分别关联了编号的多个教导点。当教导点的编号被输入到教导点输入栏411中时,作业区域指定模块303指定作业区域140。在图5的示例中,由与编号“6”、“9”、“10”和“15”相对应的教导点构成的区域成为由作业区域信息表示的区域。
教导点可以通过输入到教导点输入栏411的编号来指定,或者可以通过从列表形式对话框中进行选择来指定。可以使用逗号或连字符将教导点的编号输入到教导点输入栏411。当使用连字符输入编号时,可以统一指定教导点的编号。
单选按钮412用于选择与执行按钮403的按下相对应的机器人110的行为。在图5的示例中,两个选择“设置为摄像姿势”和“登记为教导点”中的一个是可选择的。当在选择“设置为摄像姿势”的状态下按下执行按钮403时,机器人110被设置为所确定的摄像姿势。当在选择“登记为教导点”的状态下按下执行按钮403时,机器人不工作,并且所确定的摄像姿势被登记为教导点。
提供裕度设置栏413以将作业区域140的裕度输入到摄像区域160。裕度的初始值被设置为“0”。当裕度为“0”时,由从输入到教导点输入栏411中的教导点求得的作业区域信息所示的区域成为摄像区域160。可以将正值或负值输入到裕度设置栏413中。当将正值输入到裕度设置栏413中时,由从教导点求得的作业区域信息示出的区域被扩大,并且扩大后的区域成为摄像区域160。在这种情况下,尽管作业区域140以足够的裕度被包括在摄像区域160内的可能性变高,但是拍摄图像的分辨率变低。
另一方面,当将负值输入到裕度设置栏413中时,由从教导点求得的作业区域信息示出的区域缩小,并且缩小后的区域成为摄像区域160。在这种情况下,作业区域140变得大于摄像区域160的可能性变高。
在第一实施例中,摄像区域160需要覆盖机器人110工作所在的作业区域140。基于教导点指定作业区域140。例如,如图1所示,当作为机器人110的作业对象的工件150安装在安装基座(例如,托盘)上时,托盘的边缘140A大致不会成为机器人110的作业区域。此时,当在托盘的边缘140A处指定教导点时(当用户将机器人的臂的前端移动至图2B中的托盘的边缘上的位置时),由教导点指定的作业区域比实际作业区域140更宽。因而,允许至摄像姿势确定画面400中的裕度设置栏413的用以缩小摄像区域160的输入。当摄像区域160缩小时,拍摄的图像的分辨率变得更高。
图5中的摄像姿势确定画面400包括第一复选框414和第二复选框415。第一复选框414用于指定在重新计算摄像姿势时是否允许摄像姿势的倾斜。例如,当在机器人110周围存在障碍物等时,可能优选地,机器人110仅在垂直方向上移动臂。在这种情况下,不选中第一复选框414。即,不允许摄像姿势的倾斜。另一方面,当选中第一复选框414时,允许摄像姿势的倾斜。
如上所述,图像处理设备100将机器人110控制成摄像区域160包括由作业区域信息示出的区域的位置和姿势。当允许摄像姿势的倾斜时,摄像设备120能够从各种角度拍摄作业区域140的图像。因而,当允许摄像姿势的倾斜时,与不允许摄像姿势的倾斜的情况相比,设置包括由作业区域信息示出的区域的摄像区域160的可能性变得更高。
第二复选框415用于指定摄像设备120的摄像单元321的变焦值是否固定。当第二复选框415被选中时,变焦值是固定的。一些用户喜欢固定的变焦值。另一方面,当变焦值不固定时,摄像区域160可通过改变变焦值来扩大和缩小。这增加了设置包括作业区域140的摄像区域160的可能性。
执行按钮403是用于执行用于确定摄像姿势的处理的第一按钮。如上所述,在第一界面402中设置用于指定作业区域140的各种设置内容。当图像处理设备100接收到执行按钮403的按下操作时,作业区域指定模块303根据在第一界面402中设置的内容生成作业区域信息。摄像姿势确定模块301基于所生成的作业区域信息和所存储的摄像区域信息来确定摄像姿势。
第二界面404用于教导点的登记。第二界面404具有登记按钮416和移动按钮417。例如,教导点的编号可利用第二界面404中的文本框指定。在图5的示例中,教导点的编号被指定为“1”。登记按钮416用于将机器人110的臂的前端的当前位置和姿势登记为教导点。
当按下登记按钮416时,机器人110的臂的前端的当前位置和姿势登记至教导点“1”中。用户能够在检查图像显示区域401上当前显示的照相机图像(摄像设备120正在拍摄的拍摄图像)的同时登记教导点。当用户在图2B所示的操作期间将机器人110的臂的前端移动到作业区域140的四个角并且登记为编号“6”、“9”、“10”和“15”时,登记与作业区域140相对应的教导点。应当注意,移动按钮417用于将机器人110的臂的前端移动至指定的教导点(图5中的“1”)。
由于摄像姿势确定画面400共同显示图像显示区域401、第一界面402、执行按钮403和第二界面404,因此能够减少画面转变的次数。如上所述,在图像显示区域401中显示摄像设备120正在拍摄的拍摄图像。图像处理设备100可以在图像显示区域401中当前显示的照相机图像上通过叠加来以任何状态显示由作业区域信息示出的区域。在本实施例中,由作业区域信息示出的区域将被显示为主要叠加在作业区域140上。
此外,第一显示控制模块307可以在图像显示区域401中当前显示的照相机图像上通过叠加来以任何状态显示示出教导点的教导点信息。由此,用户能够快速地识别作业区域信息或教导点信息的设置误差以及照相机图像上的作业区域140未处于期望状态的情况。
接着,将描述第一实施例中的用于存储摄像姿势的处理。图6是示出用于存储摄像姿势的处理的流程的流程图。例如,当诸如平板终端等的输入终端连接到图像处理设备100的外部接口205时,用户操作输入终端。当用户操作输入终端时,机器人110根据对输入终端的操作来工作。
如上所述,用户操作机器人110以处于要登记的教导点的位置和姿势,并且进行登记教导点的操作。当接收到该操作时,机器人教导模块311将教导点信息存储到存储单元212。由此,登记教导点(S501)。教导点的登记方法不限于上述示例。例如,可以在用户手动地将机器人110移动到教导点的位置和姿势之后通过进行登记来登记教导点。此外,可以通过输入数值等来登记教导点。
接着,当用户通过操作图像处理设备100的输入单元204进行操作以显示摄像姿势确定画面400时,第一显示控制模块307在显示单元203上显示摄像姿势确定画面400。用户对第一界面402进行指定作业区域140的操作。此时,用户至少进行将教导点输入到教导点输入栏411中的操作。此外,用户还可以对单选按钮412、裕度设置栏413、第一复选框414和第二复选框415进行指定操作。用户也可以使用摄像姿势确定画面400直接指定教导点。在这种情况下,可以共同地进行S501的处理和S502的处理。
当按下执行按钮403时,作业区域指定模块303基于输入到第一界面402中的教导点指定作业区域(S502)。当在S501中正确地指定作业区域140时,在S502中指定的作业区域与作业区域140匹配。然后,生成与指定的作业区域相对应的作业区域信息。作业区域信息由实际三维空间中的坐标系表示。摄像区域信息由摄像设备120的坐标系表示。因而,可以使用上述各种信息(内部参数等)从作业区域信息指定摄像区域信息。
当在S502中指定作业区域时,摄像区域指定模块305根据作业区域信息指定摄像区域(S503)。当指定摄像区域时,摄像姿势确定模块301根据所指定的摄像区域确定摄像姿势(S504)。下面将描述S502至S504的处理的详情。当在选择“设置为摄像姿势”的单选按钮412的状态下按下执行按钮403时,机器人110被设置为所确定的摄像姿势。在图像显示区域401中显示摄像设备120正在拍摄的拍摄图像。用户能够通过检查拍摄图像来检查机器人110的所确定的摄像姿势是否是用户期望的摄像姿势。
当接收到用户对第二界面404中的登记按钮416的按下操作时,计算单元201将关于与第二界面404中指定的教导点的编号相对应的教导点的信息存储在存储单元202中(S505)。当在选择“登记为教导点”的单选按钮412的状态下按下执行按钮403时,可共同地进行S503和S504的处理以及S505的处理。
接着,将描述机器人110和摄像设备120的模型。图7A至图7D示出机器人110和摄像设备120的模型示例。在图7A至图7D的示例中,机器人110是六轴机器人,并且摄像设备120附接至第五连杆L5。机器人110的结构和摄像设备120的固定位置都不限于本示例。图7A是示出机器人110和摄像设备120的整体模型的图。图7B是示出模型中的坐标系的图。机器人坐标系601是机器人110的坐标系。此外,机器人手坐标系602是机器人手的坐标系。摄像设备坐标系603是摄像设备120的坐标系。
当已知机器人110的连杆L0至L6和关节J1至J6的参数时,可通过正向运动学计算求得从机器人坐标系601到机器人手坐标系602的同时变换矩阵rHh。同样地,当已知机器人110的连杆L0至L5'和关节J1至J5的参数时,通过正向运动学计算可以求得从机器人坐标系601到摄像设备坐标系603的同时变换矩阵rH(c)。
此外,可以通过摄像设备的各种校准方法来求得示出摄像面上的坐标(u,v)与摄像设备坐标系603中的三维位置(x,y,z)之间的对应关系的内部参数Mi。图7C是示出摄像设备120的照相机原点的图。图7D是示出摄像面上的坐标与摄像设备坐标系603中的三维位置之间的关系的图。使用内部参数Mi,通过以下公式(1)示出摄像面上的坐标(u,v)与摄像设备坐标系中的三维位置(x,y,z)之间的关系。
[公式1]
比例因子“s”示出摄像面上的位置与像素之间的关系。然后,机器人坐标系601中的位置“p”与位置“p”在摄像面上的投影位置(up,vp)之间的关系由以下公式(2)表示。
[公式2]
接着,将详细描述从作业区域140的指定到机器人110的摄像姿势的确定的处理流程。图8是详细示出从作业区域的指定到摄像姿势的确定的处理流程的流程图。在选择“设置为摄像姿势”的单选按钮412的状态下按下执行按钮403之后,图8的处理开始。
然而,可在按下执行按钮403之前进行处理的一部分。例如,如果预定的设置内容被设置到第一界面402中,则可以在不按下执行按钮403的情况下执行S502的处理(用于指定作业区域的处理)。以这种方式,如果在按下执行按钮403之前图像处理设备100预先在后台进行S502的处理,则可以缩短整个处理时间。
作业区域指定模块303根据关于与输入到教导点输入栏411中的教导点的编号相关联的教导点的信息生成作业区域信息(S701)。图9A和图9B是示出作业区域的具体示例的图。图9A是示出三维空间中的教导点的图。图9B是示出模型中的教导点的图。在图9A和图9B的示例中,指定了五个教导点801至805。
作业区域指定模块303通过诸如Derosne三角划分等的各种网格方法生成用于连接教导点801至805的网格面。所生成的网格面成为作业区域信息。如上所述,裕度可以设置到裕度设置栏413。当将正值或负值设置到裕度设置栏413时,作业区域指定模块303根据设置的裕度来扩大或缩小由作业区域信息示出的区域。
将在2个以下的教导点输入到教导点输入栏411中并且正值设置到裕度设置栏413中的状态下按下执行按钮403。在这种情况下,作业区域指定模块303可以通过围绕预定点或线在法线与机器人110的前端方向匹配的面的方向上以指定的裕度扩大网格面来生成作业区域信息。
作业区域指定模块303可以通过平坦面或高阶弯曲面使用近似来生成作业区域信息。尽管在下面的描述中作业区域信息被视为三维空间中的面信息,但是所指定的教导点的组可以被视为与机器人110的位置和姿势有关的组信息的原始形式的作业区域信息。此外,作业区域信息可以被视为从指定的教导点组所生成的三维空间中的深度信息。
机器人控制模块313基于工件150在所估计的作业区域140中的位置和姿势以及工件的类型将机器人110的控制量发送至机器人110。然后,机器人110基于所接收到的控制量工作。以摄像区域160将包括整个作业区域140并且拍摄图像的分辨率将变得高的方式定义机器人110的适当的摄像姿势。摄像姿势确定模块301可提取满足这样的条件的多个摄像姿势。在这种情况下,摄像姿势确定模块301可以从所提取的多个摄像姿势中选择摄像区域160包括整个作业区域140并且图像的分辨率成为最高的摄像姿势。
上述公式(2)清晰说明了在摄像姿势下作业区域与拍摄图像的投影关系。因此,摄像姿势确定模块301可以通过基于蒙特卡罗法(Monte Carlo)等的各种估计方法使用投影到拍摄图像的作业区域的分辨率作为评价指标来求得摄像姿势。
接着,将描述姿势平面的计算。摄像姿势确定模块301计算相对于作业区域的姿势平面(S702)。参考图10描述如何计算相对于作业区域304的姿势平面901。图10是示出关于本实施例的摄像姿势的确定方法的示例的图。图10的示例的作业区域304是在高度方向上具有空间的四棱锥。摄像姿势确定模块301调整摄像设备120的摄像单元321的目标姿势以处于与姿势平面901正对的状态。这有利于摄像姿势的估计。在“正对状态”下,摄像单元321的投影模型上的投影面平行于姿势平面901。例如,当摄像设备120是使用多个摄像单元321拍摄图像的立体照相机时,存在多个投影面。在这种情况下,当投影面的平均值平行于姿势平面901时,摄像姿势确定模块301确定“正对状态”被实现。
在第一实施例中,摄像姿势确定模块301通过使用各种近似方法(诸如最大似然法等)相对与作业区域304有关的教导点组、面信息或深度信息近似姿势平面901来确定姿势平面901。姿势平面901对应于使用教导点近似的平面。为了减少由于教导点信息中的误差引起的影响,摄像姿势确定模块301可以通过对位于外周或具有高平坦度的教导点加权来进行近似。此外,当作业区域304是三维空间中的面信息时,摄像姿势确定模块301可以通过应用各种近似方法(诸如最大似然法等)将姿势平面901确定为连续量。另一方面,当确定姿势平面901时,摄像姿势确定模块301可使用离散化,或者可以通过假设误差方差与高斯分布一致而使用最小二乘法。这提高了处理速度。
以这种方式,摄像姿势确定模块301不直接从摄像区域160估计摄像姿势,通过指定如图10所示的条件而以高速确定合适的摄像姿势。在本实施例中,基于示出作业区域140的作业区域信息和示出摄像区域160的摄像区域信息,通过任意计算方法来确定摄像姿势。
接着,摄像姿势确定模块301搜索满足条件的摄像姿势(S703)。摄像姿势确定模块301在机器人可移动范围910中搜索处于与姿势平面901正对的状态并且视野包括整个作业区域304的摄像姿势。机器人可移动范围910是机器人110的可移动范围,并且通过将公知的运动学方法应用于机器人参数信息来确定。
摄像姿势确定模块301使用通过姿势平面901的调节以及使用上述公式(2)求得的作业区域304到拍摄图像的投影作为评价指标。与没有调节的搜索相比,这使得能够进行高速搜索。摄像姿势确定模块301可使用作业区域304的中心位置与机器人可移动范围910之间的位置关系来限制搜索范围。搜索范围的限制提高了摄像姿势确定模块301的处理的效率。
摄像姿势确定模块301判断S703的搜索是否成功(S704)。当S703的搜索没有成功时(S704中为“否”),摄像姿势确定模块301判断是否选中图5中的第一复选框414(指定在重新计算摄像姿势时是否允许摄像姿势的倾斜的复选框)。即,摄像姿势确定模块301判断是否重新计算姿势(S705)。当S705中的判断结果为“否”时,在摄像姿势确定画面400上显示表示搜索失败的信息。然后,处理结束。
另一方面,当S705中的判断结果为“是”时,摄像姿势确定模块301重新计算摄像姿势(S706)。即,摄像姿势确定模块301再次搜索姿势平面901。此时,摄像姿势确定模块301可使用作业区域304的中心位置与机器人可移动范围910之间的位置关系来限制搜索范围。例如,摄像姿势确定模块301可以假定当从作业区域304的中心位置观看时姿势平面901的法线902朝向机器人可移动范围910倾斜的机器人110的姿势。然后,摄像姿势确定模块301在姿势平面901倾斜的状态下通过重新计算姿势在限制搜索条件的同时在易于满足条件的方向上搜索机器人可移动范围910。例如,即使在姿势平面901未倾斜的状态下不能找到满足S703的条件的姿势,也可以在姿势平面901倾斜的状态下找到满足S703的条件的姿势。因而,通过倾斜姿势平面901,满足S703的条件的摄像姿势的搜索变得高效。
当搜索成功时(S704中为“是”),摄像姿势确定模块301基于评价指标确定摄像姿势(S707)。评价指标可以根据摄像条件任意设置。例如,摄像姿势确定模块301从在S703或S706中获取到的多个摄像姿势中选择拍摄图像的分辨率最高的摄像姿势。摄像姿势确定模块301可从获取到的多个摄像姿势中选择分辨率大于预定水平并且作业区域信息到拍摄图像的投影区域大于预定区域的摄像姿势。摄像姿势确定模块301可基于作业区域304的中心位置和拍摄图像的中心之间的距离来确定摄像姿势。摄像姿势确定模块301可通过组合各种评价指标(诸如将机器人110的臂的前端从预定摄像姿势移动到作业区域304所需的时间段(变换时间))和机器人110的可操作性度量来确定摄像姿势。
摄像姿势确定模块301可通过在获取的摄像姿势附近重新搜索机器人可移动范围910基于评价指标来确定摄像姿势。此外,摄像姿势确定模块301可通过进行递归搜索来确定摄像姿势。此时,各种算法适用于使评价指标最大的最大化问题。如上所述,图像处理设备100进行图像处理,并且缩短了机器人110实际操作工件150的时间段。此外,可避免机器人110接近异常姿势的操作。
示出在S707中确定的摄像姿势的信息是摄像姿势信息。图像处理设备100将摄像姿势信息作为控制量发送到机器人110。机器人控制模块313通过控制驱动模块315操作机器人110以处于所确定的摄像姿势(S708)。当按下图5的摄像姿势确定画面400中的执行按钮403时,机器人110进行工作。然而,当选择“登记为教导点”的单选按钮412时,在不使机器人110工作的情况下登记教导点。由此,结束本处理。本实施例的处理不一定包括图8中的S701至S708的处理。机器人110的摄像姿势可以使用作业区域信息、摄像区域信息等通过任意方法来确定。
如上所述,当指定教导点时,图像处理设备100基于所指定的教导点指定作业区域,并且使用预先存储的各种信息来指定包括作业区域的摄像区域。然后,图像处理设备100从指定的摄像区域确定机器人110的摄像姿势。因此,由于在不重复检查和调整的情况下自动确定机器人110的合适的摄像姿势,因此简化了用于确定摄像姿势的操作。
尽管上述第一实施例描述了指定一个作业区域和一个摄像区域的示例,但是可以指定多个作业区域或摄像姿势。例如,机器人110可以进行操作以保持放置在第一作业区域A中的工件150并且将工件150放入放置在不同于第一作业区域A的第二作业区域B中的盒中。在这种情况下,摄像姿势确定模块301确定在保持工件150的第一作业区域A中的第一摄像姿势C。同样地,摄像姿势确定模块301确定放置工件150的第二作业区域B中的第二摄像姿势D。然后,摄像姿势确定模块301将关于第一作业区域A的信息和关于第一摄像姿势C的信息彼此相关联地存储在存储单元202中。同样地,摄像姿势确定模块301将关于第二作业区域B的信息和关于第二摄像姿势D的信息彼此相关联地存储在存储单元202中。通过表格格式等存储这些信息。因而,本实施例甚至可适用于一个机器人110在不同的作业区域中工作的情况。
接着,将描述本发明的第二实施例。与第一实施例的元素相同的元素由相同的附图标记表示,并且省略其描述。第二实施例的机器人系统10的结构与图1所示的第一实施例的结构相同。
在第二实施例中,确定用于将拍摄图像中的位置和姿势转换成机器人坐标中的位置和姿势的校正参数。使用校正参数以校正机器人110的控制。在下文中,将描述校正参数的确定方法。
图11A至图11D是示出直到确定摄像姿势的流程的图。用户将机器人110安装在机器人110可在作业区域140内操作工件150的期望位置处。即,用户在作业区域140被估计为机器人110的可移动区域的位置处安装机器人110(图11A)。
在安装机器人110之后,用户检查机器人110是否能够在作业区域(机器人作业区域)140内工作。此时,用户通过操作机器人110来进行检查(图11B)。例如,用户将臂依次移动到作业区域140的四个角并且检查臂是否在各个角处采取可操作的姿势。然后,图像处理设备100指定作业区域140被包括在摄像区域160中的摄像姿势,并登记所指定的摄像姿势(图11C)。之后,图像处理设备100响应于用户的操作,基于作业区域信息和摄像区域信息,确定用于将拍摄图像中的位置和姿势转换成机器人坐标中的位置和姿势的校正参数(图11D)。
用户可以将机器人110的臂在图11B所示的操作中被移动到的点(例如,作业区域140的四个角)登记为教导点。图像处理设备100从这些教导点指定示出作业区域的作业区域信息。此外,图像处理设备100根据图11C中登记的摄像姿势来指定摄像区域160。示出摄像区域160的信息是上面提到的摄像区域信息。图像处理设备100基于所指定的摄像区域信息和作业区域信息来确定用于将拍摄图像中的位置和姿势转换成机器人坐标中的位置和姿势的校正参数。
即,图像处理设备100通过计算如何将作业区域信息的区域投影到拍摄图像来确定从图像坐标到机器人坐标的转换参数。这基于工件150位于作业区域中的思考。因此,图像处理设备100能够在不需要光学标记的情况下确定用于将拍摄图像中的位置和姿势转换成机器人坐标中的位置和姿势的校正参数。
第二实施例的图像处理设备100、机器人110和摄像设备120的硬件结构与图3所示的第一实施例的硬件结构相同。
接着,将描述图像处理设备100、机器人110和摄像设备120的功能。图12是示出图像处理设备100、机器人110和摄像设备120的功能的框图。在第二实施例中,分别代替第一实施例中的摄像姿势确定模块301和第一显示控制模块307,图像处理设备100设置有校正参数确定模块302和第二显示控制模块308。其它结构与第一实施例的结构相同。
图像处理设备100的存储单元202存储用于估计视野中的三维空间中的点和当摄像设备120的摄像单元321拍摄图像时该点所投影的摄像图像中的位置之间的关系的各种信息。由摄像单元321拍摄的三维空间中的位置和拍摄图像中的位置之间的关系通过由摄像单元321的位置和姿势确定的内部参数和外部参数来表示。此外,内部参数可根据摄像设备120的光学仪器225的光学特性(诸如视场角)的变化而变化。存储单元202可将上述各种信息存储为对应于各个光学特性的表,或者可将信息存储为使用光学特性作为系数的值。
接着,将描述校正参数确定模块302。校正参数确定模块302对应于第二确定部件。校正参数确定模块302基于指定的摄像区域信息和作业区域信息来确定用于将拍摄图像中的位置和姿势转换成机器人坐标中的位置和姿势的校正参数。在该实施例中,校正参数确定模块302基于作业区域信息、机器人参数信息和摄像区域信息求得限定作业区域140在图像中投影的区域相对于机器人110的姿势的关系。由此,校正参数确定模块302指定与图像坐标相对应的作业区域并确定校正参数。稍后将描述校正参数的确定方法。
校正参数确定模块302可以确定满足输入到GUI中的条件的校正参数,在GUI中可选择附接在机器人110的臂的前端处的任意效果器的约束条件和解决方案。图13是示出上述GUI的操作画面(校正参数确定画面500)的示例的图。第二显示控制模块308进行在显示单元203上显示的画面的显示控制。第二显示控制模块308对应于第二显示控制部件。用户能够通过在显示单元203上显示校正参数确定画面500的状态下操作输入单元204来输入和选择各种值。校正参数确定画面500包括图像显示区域501、区域设置界面502、执行按钮503、摄像姿势设置界面504和校正条件设置界面505。在校正参数确定画面500中,提供区域设置界面502、摄像姿势设置界面504和校正条件设置界面505作为设置项。
校正参数确定画面500的画面示例不限于图13的示例。在图像显示区域501上显示摄像设备120的摄像单元321正在拍摄的拍摄图像。在图13的示例中,拍摄图像被表示为照相机图像。区域设置界面502是用于指定作业区域140的界面。区域设置界面502包括教导点输入栏511和裕度设置栏513。
教导点输入栏511是输入用于生成作业区域信息的教导点的框。虽然在图13的示例中教导点输入栏511示出框的示例,但是教导点输入栏511不限于框。机器人110的存储单元212存储关于多个教导点的信息。在本实施例中,存储单元212存储关于分别与编号相关联的多个教导点的信息。当将教导点的编号输入到教导点输入栏511中时,作业区域指定模块303指定作业区域140。在图13的示例中,由关于与编号“P6”、“P9”、“P10”和“P15”相对应的教导点的信息构成的区域成为由作业区域信息表示的区域。教导点可以通过输入到教导点输入栏511的编号来指定,或者可以通过从列表形式对话框中的选择来指定。可以使用逗号或连字符将教导点的编号输入到教导点输入栏511。当以连字符输入编号时,可以统一指定教导点的编号。
提供裕度设置栏513以将作业区域140的裕度输入到摄像区域160。裕度的初始值被设置为“0”。当裕度为“0”时,从输入到教导点输入栏511中的教导点求得的作业区域信息所示的区域成为摄像区域160。可以将正值或负值输入到裕度设置栏513中。当正值被输入到裕度设置栏513中时,由从教导点求得的作业区域信息示出的区域被扩大。另一方面,当负值被输入到裕度设置栏513中时,由从教导点求得的作业区域信息示出的区域被缩小。
基于教导点指定作业区域140。例如,如图1所示,当作为机器人110的作业对象的工件150安装在安装基座(例如,托盘)上时,托盘的边缘140A大致不会成为机器人110的作业区域。此时,当在托盘的边缘140A处指定教导点时(当在图11B中用户将机器人的臂的前端移动至托盘的边缘上的位置时),由教导点指定的作业区域比实际作业区域140宽。因此,允许向校正参数确定画面500中的裕度设置栏513输入缩小摄像区域信息。这使得能够容易地匹配存储在图像处理设备100中的作业区域信息和实际作业区域140。
每当区域设置界面502的输入被更新时,作业区域指定模块303可以生成作业区域信息。在这种情况下,每当区域设置界面502的输入被更新时,第二显示控制模块308可以进行控制,以将作业区域信息和用于生成作业区域信息的教导点中的至少一个叠加在图像显示区域501中的照相机图像上。因此,由于区域设置界面502的设置内容被图形化地通知给用户,因此设置误差降低并且工作效率提高。
执行按钮503是用于执行确定校正参数的处理的第二按钮。如上所述,在区域设置界面502中设置用于指定作业区域140的各种设置内容。当图像处理设备100接收到执行按钮503的按下操作时,校正参数确定模块302基于作业区域信息和摄像区域信息来确定校正参数。
摄像姿势设置界面504是用于摄像姿势的登记的界面。摄像姿势设置界面504具有计算按钮516和移动按钮517。在摄像姿势设置界面504中,例如,教导点的编号可通过文本框来指定。在图13的示例中,教导点的编号被指定为“P1”。计算按钮516用于将基于摄像区域信息计算出的摄像姿势登记到所选择的教导点。当按下计算按钮516时,计算单元201计算摄像区域信息包括在摄像区域中并且分辨率最大化的摄像位置和姿势,并且将它们登记到教导点“P1”中。应当注意,可以手动地设置摄像姿势。移动按钮517用于将机器人110的臂的前端移动至指定的教导点(图13中的“P1”)。
校正条件设置界面505是用于设置用于求得校正参数的条件的界面。校正条件设置界面505包括相位输入栏521、高度输入栏522、模型登记按钮523和高级设置按钮524。在校正条件设置界面505中,例如,可以相对于作业区域304和工件150的匹配结果来设置机器人110在获得工件150时(例如,在把持工件150时)的姿势。
提供相位输入栏521,以相对于匹配结果输入获得工件150时的相位。计算单元201可以根据输入到相位输入栏421中的相位来设置机器人110的姿势。例如,即使在获得工件150时将机器人110的前端的姿势重要的效果器(例如,双指手等)附接至机器人110的前端,也通过设置相位来进行适当的校正。
提供高度输入栏522以求得工件150的上面与机器人110的前端的坐标位置之间的差。工件150的上面的高度应输入到高度输入栏522中。计算单元201计算机器人110的前端的坐标位置与输入到高度输入栏522中的工件150的上面的高度之间的差。校正参数确定模块302可以基于所计算出的高度差考虑由于高度差引起的投影误差来确定校正参数。上述高度差可以被直接输入到高度输入栏522中。在这种情况下,校正参数确定模块302考虑所输入的高度差来确定校正参数。模型登记按钮523用于登记利用校正条件设置界面505设置的匹配模型。本实施例中应登记多个匹配模型。图13示出将“模型A”设置为匹配模型的示例。当设置其它模型时,可以从下拉菜单中选择对象模型。高级设置按钮525用于详细设置校正条件。
由于校正参数确定画面500共同显示图像显示区域501、区域设置界面502、执行按钮503和第二界面504,因此能够减少画面转变的次数。如上所述,在图像显示区域501中显示摄像设备120正在拍摄的拍摄图像。图像处理设备100可以在图像显示区域501中当前显示的照相机图像上通过叠加来以任意状态显示由作业区域信息示出的区域。在本实施例中,由作业区域信息示出的区域将被显示为大部分叠加在作业区域140上。在图13的图像显示区域501中显示包括工件和双指手的图像。
此外,第二显示控制模块308可以在图像显示区域501中当前显示的照相机图像上通过叠加来以任意状态显示示出教导点的教导点信息。由此,用户能够快速地识别作业区域信息或教导点信息的设置误差以及照相机图像上的作业区域140未处于期望状态的情形。此外,第二显示控制模块308可以在图像显示区域501中当前显示的照相机图像上通过叠加以任意状态显示通过校正条件设置界面505指定的姿势的假想手(前端)和匹配模型。例如,在图13的示例中,通过叠加来显示基于通过在校正参数确定画面500中设置的内容所确定的校正参数的假想双指手。由此,用户能够快速地检查用户的设置内容是否与预期的设置内容匹配。
接着,将描述关于本实施例中的校正参数的确定的处理。图14是示出与校正参数的确定有关的处理的流程的流程图。用户操作机器人110以处于要登记的教导点的位置和姿势,并且进行登记教导点的操作。当接收到该操作时,机器人教导模块311将教导点信息存储到存储单元212。由此,登记教导点(S801)。
接着,当用户操作图像处理设备100的输入单元204以显示校正参数确定画面500时,第二显示控制模块308在显示单元203上显示校正参数确定画面500。用户进行向区域设置界面502指定作业区域140的操作。此时,用户至少进行向教导点输入栏511输入教导点的操作。此外,用户还可以对裕度设置栏513等进行指定操作。当在校正参数确定画面500的区域设置界面502中提供教导点登记功能时,用户也可以直接指定教导点。在这种情况下,可以统一进行S801的处理和S802的处理。
在按下执行按钮503之后开始图14中的处理。然而,可以在按下执行按钮503之前进行该处理的一部分。例如,如果将预定的设置内容设置到区域设置界面502中,则可以在不按下执行按钮503的情况下执行S802的处理(用于指定作业区域的处理)。以这种方式,如果图像处理设备100在按下执行按钮403之前在后台预先进行S802的处理,则可以缩短整个处理时间。
当教导点被输入到区域设置界面502时,作业区域指定模块303基于输入的教导点从教导点信息中指定作业区域(S802)。当在S801中正确地指定作业区域140时,在S802中指定的作业区域与作业区域140匹配。然后,生成与所指定的作业区域相对应的作业区域信息。作业区域信息由实际三维空间中的坐标系表示。
接着,当按下摄像姿势设置界面504的计算按钮516时,计算单元201计算摄像区域信息包括在摄像区域中并且分辨率最大化的摄像位置和姿势作为摄像姿势,并且登记所计算出的摄像姿势(S803)。当在S803中登记摄像姿势时,摄像区域指定模块305使用上述各种信息(内部参数等)根据摄像姿势指定摄像区域信息(S804)。
然后,校正参数确定模块302基于所指定的作业区域信息和摄像区域信息来确定校正参数(S805)。当接收到用户对执行按钮403的按下操作时,计算单元201将与所指定的作业区域信息和摄像区域信息相关联的校正参数存储在存储单元202中(S806)。
下面将描述S802至S805的处理的详情。如上所述,当按下移动按钮517时,机器人110将臂的前端移动到所确定的摄像姿势。在图像显示区域501中显示摄像设备120正在拍摄的拍摄图像。用户能够通过检查拍摄图像来检查所确定的机器人110的摄像姿势是否是用户期望的摄像姿势。当在操作区域设置界面502之前操作摄像姿势设置界面504时,可以在S801和S802的处理之前进行S803和S804的处理。
第二实施例的机器人110和摄像设备120的模型与第一实施例中通过参考图7A至图7D描述的模型相同。
接着,将描述从指定作业区域140的处理到确定用于将图像中的位置和姿势转换成机器人坐标中的位置和姿势的校正参数的处理的流程。图15是示出与校正参数的确定有关的处理的流程的流程图。在按下执行按钮503之后,开始图15中的处理。此外,图15中的各处理可以响应于对区域设置界面502、摄像姿势设置界面504或校正条件设置界面505的操作(值的改变等)作为触发来执行。
作业区域指定模块303根据关于与输入到教导点输入栏511中的教导点的编号相关联的教导点的信息生成作业区域信息(S901)。该处理与在第一实施例中描述的图8中的S701的处理相同。
在向教导点输入栏511输入了2个以下的教导点并且向裕度设置栏513设置正值的状态下,应停止对区域设置界面502的操作。例如,在上述状态下,输入单元204将为鼠标,并且响应于鼠标操作,光标(焦点)将远离区域设置界面502移动。在这种情况下,作业区域指定模块303可以通过在第一实施例中描述的方法生成作业区域信息。
接着,校正参数确定模块302生成与如图16A所示的作业区域304相对应的测量区域901(S902)。图16A和图16B是用于描述示出测量区域901的测量区域信息的生成的图。在图16A的示例中,当进行作业区域304与工件150的匹配时,在作业区域304与工件(对象)150的上面之间出现差。校正参数确定模块302通过使作业区域304在高度方向上偏移高度差对作业区域304中的教导点组、面信息和深度信息计算测量区域901。即,考虑到工件150相对于作业区域304的高度来计算测量区域901。作业区域304与测量区域901之间的高度差基于如上所述输入到高度输入栏522中的工件150的高度的值来计算。应当注意,在图16A中,工件150被表示为“对象”并且附接至机器人110的前端的效果器被表示为“手”。
当作业区域304是三维空间中的面信息时,校正参数确定模块302可以通过在法线方向上偏移作业区域304来计算测量区域901。此外,校正参数确定模块302可以通过在朝向机器人110的前端的方向上偏移在生成作业区域304时使用的教导点组、并且然后使用与用于指定作业区域304的方法同样的方法来计算测量区域901。由于基于作业区域信息生成示出测量区域901的测量区域信息,因此容易计算两条信息的相关性。此外,当附接至机器人110的前端的吸附手吸附薄的工件(诸如布或纸)时,作业区域304和测量区域901大致相同。在这种情况下,作业区域304和测量区域901可以被视为相同的区域。第二显示控制模块308可以在图像显示区域501中显示的照相机图像上通过叠加来显示测量区域901。在图16B的示例中,测量区域901被示为“对象的上面”。
如图15所示,校正参数确定模块302根据摄像姿势生成摄像区域信息(S903)。校正参数确定模块302基于上述的各种信息(内部参数等)和摄像姿势(可以通过正向运动学方法根据机器人参数信息求得的外部参数等)指定摄像区域信息。上述公式(2)阐明了测量区域信息、作业区域信息和教导点向拍摄图像的投影关系。然后,校正参数确定模块302生成姿势转换信息(S904)。如上所述,校正条件设置界面505包括相位输入栏521。校正参数确定模块302基于在获得工件150时机器人110相对于输入到相位输入栏521中的匹配结果的姿势来生成将图像上的测量结果转换成机器人坐标中的姿势的姿势转换信息。
例如,估计如双指手一样的效果器附接至机器人110的前端并且工件150的姿势具有预定相位的情况。在这种情况下,当机器人110的双指手从正上方保持工件150时,图像中的工件150的姿势被转换成作业区域信息中的机器人110的手尖方向上的旋转姿势。由此,机器人110的双指手可以以预定相位保持工件150。当如吸附手一样的效果器附接至机器人110的前端时,不需要考虑相位。在这种情况下,由于可以省略S904的处理和指定姿势的处理,因此处理速度变高。
校正参数确定模块302在S901中生成作业区域信息,在S902中生成测量区域信息,在S903中生成摄像区域信息,并且在S904中生成关于测量结果的姿势转换信息。然后,校正参数确定模块302基于所生成的各种信息确定用于将拍摄图像中的位置和姿势转换成机器人坐标中的位置和姿势的校正参数(S907)。在本实施例中,校正参数确定模块302基于所生成的摄像区域信息和测量区域信息,使用上述公式(2)来计算将坐标从图像变换至测量区域信息的变换矩阵。然后,校正参数确定模块302计算将坐标从测量区域信息变换到作业区域信息的变换矩阵,并且将计算出的变换矩阵与上述将坐标从图像变换到测量区域信息的变换矩阵组合。由此,校正参数确定模块302可以确定将拍摄图像中的位置和姿势转换成机器人坐标中的位置和姿势的校正参数。
此外,校正参数确定模块302可以根据上述变换矩阵的组合结果向作业区域信息给出机器人110的手尖方向上的姿势约束。例如,可以根据机器人110和作业区域304之间的位置关系来限制机器人110的姿势。在这种情况下,校正参数确定模块302可以基于机器人110和作业区域304的位置关系考虑机器人110的姿势的限制来确定校正参数。然后,根据给出姿势约束的方法,校正参数确定模块302可以向机器人110的姿势给出冗余。此外,校正参数确定模块302可以基于姿势转换信息对测量结果的限制来唯一地确定校正参数。
此外,校正参数确定模块302可以基于机器人110的操作时间和机器人110的可操作性中的至少一个来唯一地确定校正参数。机器人110的操作时间(例如,臂移动期间的时间段)成为用于确定校正参数的因素。此外,机器人110的可操作性也成为用于确定校正参数的因素。因此,校正参数确定模块302可以基于机器人110的操作时间和可操作性来确定校正参数。
如上所述,当指定教导点时,图像处理设备100基于所指定的教导点来指定作业区域,并且使用预先存储的各种信息和所指定的摄像姿势来指定摄像区域。图像处理设备100基于所指定的摄像区域和作业区域来确定用于将拍摄图像中的位置和姿势转换成机器人坐标中的位置和姿势的校正参数。由此,图像处理设备100能够自动地将拍摄图像的坐标转换成机器人的坐标,而不需要创建光学标记并且不需要使用光学标记进行校准。因此,简化了确定用于将拍摄图像的坐标转换成机器人的坐标的校正参数的操作,并且校正了机器人110的控制。
此外,由于本实施例不需要光学标记,因此不存在拍摄作业平面的摄像方向上的限制(例如,为了使用光学标记而保持摄像设备120与作业平面垂直的限制)。此外,由于本实施例根据所指定的作业区域和摄像区域来确定校正参数,因此即使作业区域不平坦也可适用。
尽管上述实施例描述了指定一个作业区域和一个校正参数的示例,但是可以指定多个作业区域或校正参数。例如,机器人110可以进行操作以保持放置在第一作业区域A中的工件150并且将工件150放入放置在不同于第一作业区域A的第二作业区域B中的盒中。在这种情况下,校正参数确定模块302确定保持工件150的第一作业区域A中的第一校正参数。同样地,校正参数确定模块302确定放置工件150的第二作业区域B中的第二校正参数。然后,校正参数确定模块302将关于第一作业区域A的信息和关于第一校正参数的信息彼此相关联地存储在存储单元202中。此外,校正参数确定模块302将关于第二作业区域B的信息和关于第二校正参数的信息彼此相关联地存储在存储单元202中。通过表格格式等存储这些信息。因此,本实施例甚至可适用于一个机器人110在不同的作业区域中工作的情况。
此外,尽管上述实施例描述了摄像设备120附接至机器人110的示例,但是摄像设备可以附接至除了工作的机器人之外的机器人,只要坐标系的推定可用即可。然后,摄像设备120可以改变焦点、视场角等,并且还可以任意地改变摄像设备120与机器人110的附接位置。
其它实施例
本发明的实施例还可以通过如下的方法来实现,即,通过网络或者各种存储介质将执行上述实施例的功能的软件(程序)提供给系统或装置,该系统或装置的计算机或是中央处理单元(CPU)、微处理单元(MPU)读出并执行程序的方法。
虽然已经参考典型实施例描述了本发明,但是应当理解,本发明不限于所公开的典型实施例。所附权利要求的范围应被赋予最宽泛的解释,以涵盖所有这样的修改以及等同的结构和功能。
本申请要求2019年10月9日提交的日本专利申请2019-186153和2020年3月26日提交的日本专利申请2020-056366的权益,在此通过引用将其全部内容合并于此。
Claims (16)
1.一种图像处理设备,用于处理附接至机器人的摄像设备所拍摄的图像,所述图像处理设备包括:
第一指定部件,用于基于示出多个指定的教导点的教导点信息来指定所述机器人的作业区域,其中,所述多个指定的教导点中的各教导点已经通过用户操作所述机器人以处于要登记的教导点的位置并且进行登记教导点的操作而被登记,
其中,在显示包括所述摄像设备当前拍摄的图像和用于指定所述作业区域的设置项的画面的状态下,能够指定用于指定所述作业区域的教导点,
其中,将用于示出所述作业区域的信息和与所述教导点有关的信息中的至少一个以叠加在所述图像上的方式而显示在所述画面上;
第二指定部件,用于以包括所指定的作业区域的方式来指定所述摄像设备的摄像区域;以及
第一确定部件,用于基于所指定的摄像区域来确定所述机器人的摄像姿势。
2.根据权利要求1所述的图像处理设备,其中,所述第一指定部件基于附接至所述机器人的所述摄像设备的位置和所述摄像设备进行拍摄的视场角来指定所述作业区域。
3.根据权利要求1或2所述的图像处理设备,其中,所述第一确定部件确定所拍摄的图像的分辨率被最大化的摄像姿势。
4.根据权利要求1或2所述的图像处理设备,其中,能够指定相对于所述摄像区域的所述作业区域的裕度。
5.根据权利要求4所述的图像处理设备,其中,能够指定比所述摄像区域宽的所述作业区域。
6.根据权利要求1、2和5之一所述的图像处理设备,其中,在确定所述摄像姿势时,能够指定是否允许所述机器人的姿势的倾斜。
7.根据权利要求1、2和5之一所述的图像处理设备,其中,所述第一确定部件将与多个作业区域有关的信息和与多个摄像姿势有关的信息彼此关联地存储在存储单元中。
8.根据权利要求1所述的图像处理设备,还包括第二确定部件,所述第二确定部件用于基于指定的所述作业区域和所述摄像区域来确定校正所述机器人的控制所用的校正参数。
9.根据权利要求8所述的图像处理设备,其中,对应于多个光学特性中的各光学特性来存储用于指定所述摄像区域的信息。
10.根据权利要求8所述的图像处理设备,其中,在所述机器人在获得工件时的相位被指定的情况下,所述第二确定部件基于该相位来确定所述校正参数。
11.根据权利要求8所述的图像处理设备,其中,将与所述作业区域中的各作业区域有关的信息与对应的校正参数相关联地存储。
12.根据权利要求8所述的图像处理设备,其中,所述摄像设备相对于所述机器人的附接位置、所述摄像设备的视场角和所述摄像设备的焦点是能够变化的。
13.一种图像处理设备,用于处理附接至机器人的摄像设备所拍摄的图像,所述图像处理设备包括:
第一显示控制部件,用于显示包括用以输入教导点的输入栏和第一按钮的画面,所述第一按钮用以指定用于确定所述机器人的摄像姿势的处理的执行;
第一指定部件,用于基于示出多个指定的教导点的教导点信息来指定所述机器人的作业区域;
第二指定部件,用于以包括所指定的作业区域的方式来指定所述摄像设备的摄像区域;以及
第一确定部件,用于在所述第一按钮被操作的情况下,基于所指定的摄像区域来确定所述机器人的摄像姿势,
其中,所述多个指定的教导点中的各教导点已经通过用户操作所述机器人以处于要登记的教导点的位置并且进行登记教导点的操作而被登记,
其中,所述画面还包括所述摄像设备当前拍摄的图像和用于指定所述作业区域的设置项,并且在显示所述画面的状态下能够指定用于指定所述作业区域的教导点,以及
其中,将用于示出所述作业区域的信息和与所述教导点有关的信息中的至少一个以叠加在所述图像上的方式而显示在所述画面上。
14.根据权利要求13所述的图像处理设备,还包括:
第二显示控制部件,用于显示包括用以输入所述教导点的输入栏和第二按钮的画面,所述第二按钮用以指定用于确定校正所述机器人的控制所用的校正参数的处理的执行;以及
第二确定部件,用于在所述第二按钮被操作的情况下,基于所述作业区域和所述摄像区域来确定所述校正参数。
15.一种图像处理设备的控制方法,所述图像处理设备用于处理附接至机器人的摄像设备所拍摄的图像,所述控制方法包括以下步骤:
基于示出多个指定的教导点的教导点信息来指定所述机器人的作业区域,
其中,所述多个指定的教导点中的各教导点已经通过用户操作所述机器人以处于要登记的教导点的位置并且进行登记教导点的操作而被登记,
其中,在显示包括所述摄像设备当前拍摄的图像和用于指定所述作业区域的设置项的画面的状态下,能够指定用于指定所述作业区域的教导点,
其中,将用于示出所述作业区域的信息和与所述教导点有关的信息中的至少一个以叠加在所述图像上的方式而显示在所述画面上;
以包括所指定的作业区域的方式来指定所述摄像设备的摄像区域;以及
基于所指定的摄像区域来确定所述机器人的摄像姿势。
16.一种存储有控制程序的非暂时性计算机可读存储介质,所述控制程序使计算机执行图像处理设备的控制方法,所述图像处理设备用于处理附接至机器人的摄像设备所拍摄的图像,所述控制方法包括以下步骤:
基于示出多个指定的教导点的教导点信息来指定所述机器人的作业区域,
其中,所述多个指定的教导点中的各教导点已经通过用户操作所述机器人以处于要登记的教导点的位置并且进行登记教导点的操作而被登记,
其中,在显示包括所述摄像设备当前拍摄的图像和用于指定所述作业区域的设置项的画面的状态下,能够指定用于指定所述作业区域的教导点,
其中,将用于示出所述作业区域的信息和与所述教导点有关的信息中的至少一个以叠加在所述图像上的方式而显示在所述画面上;
以包括所指定的作业区域的方式来指定所述摄像设备的摄像区域;以及
基于所指定的摄像区域来确定所述机器人的摄像姿势。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019-186153 | 2019-10-09 | ||
JP2019186153A JP7401250B2 (ja) | 2019-10-09 | 2019-10-09 | 画像処理装置、制御方法およびプログラム |
JP2020056366A JP7483455B2 (ja) | 2020-03-26 | 2020-03-26 | 画像処理装置、画像処理装置の制御方法およびプログラム |
JP2020-056366 | 2020-03-26 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112643718A CN112643718A (zh) | 2021-04-13 |
CN112643718B true CN112643718B (zh) | 2024-06-07 |
Family
ID=72811647
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011073354.0A Active CN112643718B (zh) | 2019-10-09 | 2020-10-09 | 图像处理设备及其控制方法和存储其控制程序的存储介质 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11478936B2 (zh) |
EP (1) | EP3804916A1 (zh) |
CN (1) | CN112643718B (zh) |
TW (1) | TWI834918B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3946825A1 (en) * | 2019-03-25 | 2022-02-09 | ABB Schweiz AG | Method and control arrangement for determining a relation between a robot coordinate system and a movable apparatus coordinate system |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5297238A (en) * | 1991-08-30 | 1994-03-22 | Cimetrix Incorporated | Robot end-effector terminal control frame (TCF) calibration method and device |
CN103020952A (zh) * | 2011-07-08 | 2013-04-03 | 佳能株式会社 | 信息处理设备和信息处理方法 |
CN109551472A (zh) * | 2017-09-27 | 2019-04-02 | 精工爱普生株式会社 | 机器人系统 |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5579444A (en) * | 1987-08-28 | 1996-11-26 | Axiom Bildverarbeitungssysteme Gmbh | Adaptive vision-based controller |
US4891767A (en) * | 1988-06-02 | 1990-01-02 | Combustion Engineering, Inc. | Machine vision system for position sensing |
WO1997004370A1 (de) * | 1995-07-22 | 1997-02-06 | Kuka Roboter Gmbh | Steuer- und programmiereinrichtung |
JP2000135689A (ja) * | 1998-10-30 | 2000-05-16 | Fanuc Ltd | ロボット用画像処理装置 |
DE19854011A1 (de) * | 1998-11-12 | 2000-05-25 | Knoll Alois | Einrichtung und Verfahren zum Vermessen von Mechanismen und ihrer Stellung |
DE10305384A1 (de) * | 2003-02-11 | 2004-08-26 | Kuka Roboter Gmbh | Verfahren und Vorrichtung zur Visualisierung rechnergestützter Informationen |
WO2004096502A1 (en) * | 2003-04-28 | 2004-11-11 | Stephen James Crampton | Cmm arm with exoskeleton |
JP3819883B2 (ja) * | 2003-08-27 | 2006-09-13 | ファナック株式会社 | ロボットプログラム位置修正装置 |
JP2005111607A (ja) * | 2003-10-07 | 2005-04-28 | Fanuc Ltd | ロボット物流トラッキング装置 |
JP2005138223A (ja) * | 2003-11-06 | 2005-06-02 | Fanuc Ltd | ロボット用位置データ修正装置 |
JP4137862B2 (ja) * | 2004-10-05 | 2008-08-20 | ファナック株式会社 | 計測装置及びロボット制御装置 |
EP3530420B1 (en) * | 2006-03-03 | 2023-09-06 | Universal Robots A/S | Joint for a robot |
JP4221014B2 (ja) | 2006-06-20 | 2009-02-12 | ファナック株式会社 | ロボット制御装置 |
WO2008036354A1 (en) * | 2006-09-19 | 2008-03-27 | Braintech Canada, Inc. | System and method of determining object pose |
JP5272617B2 (ja) | 2008-09-26 | 2013-08-28 | 株式会社Ihi | ロボット装置及びロボット装置の制御方法 |
US8559699B2 (en) * | 2008-10-10 | 2013-10-15 | Roboticvisiontech Llc | Methods and apparatus to facilitate operations in image based systems |
EP2537645B1 (en) * | 2011-06-20 | 2017-10-25 | Kabushiki Kaisha Yaskawa Denki | Robot System |
JP6108860B2 (ja) * | 2013-02-14 | 2017-04-05 | キヤノン株式会社 | ロボットシステム及びロボットシステムの制御方法 |
JP6126067B2 (ja) * | 2014-11-28 | 2017-05-10 | ファナック株式会社 | 工作機械及びロボットを備えた協働システム |
JP6676286B2 (ja) * | 2015-05-12 | 2020-04-08 | キヤノン株式会社 | 情報処理方法、および情報処理装置 |
JP6762148B2 (ja) * | 2015-07-09 | 2020-09-30 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | 地図生成方法、移動ロボット及び地図生成システム |
US11230011B2 (en) * | 2016-02-02 | 2022-01-25 | Abb Schweiz Ag | Robot system calibration |
JP6880982B2 (ja) * | 2017-04-21 | 2021-06-02 | セイコーエプソン株式会社 | 制御装置およびロボットシステム |
JP2019102047A (ja) * | 2017-11-28 | 2019-06-24 | Thk株式会社 | 画像処理装置、移動ロボットの制御システム、移動ロボットの制御方法 |
JP7337495B2 (ja) * | 2018-11-26 | 2023-09-04 | キヤノン株式会社 | 画像処理装置およびその制御方法、プログラム |
JP7326911B2 (ja) * | 2019-06-20 | 2023-08-16 | オムロン株式会社 | 制御システムおよび制御方法 |
-
2020
- 2020-10-06 US US17/064,524 patent/US11478936B2/en active Active
- 2020-10-07 TW TW109134698A patent/TWI834918B/zh active
- 2020-10-08 EP EP20200711.8A patent/EP3804916A1/en active Pending
- 2020-10-09 CN CN202011073354.0A patent/CN112643718B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5297238A (en) * | 1991-08-30 | 1994-03-22 | Cimetrix Incorporated | Robot end-effector terminal control frame (TCF) calibration method and device |
CN103020952A (zh) * | 2011-07-08 | 2013-04-03 | 佳能株式会社 | 信息处理设备和信息处理方法 |
CN109551472A (zh) * | 2017-09-27 | 2019-04-02 | 精工爱普生株式会社 | 机器人系统 |
Non-Patent Citations (2)
Title |
---|
Automatic camera placement for robot vision tasks;Bill Triggs & Christian Laugier;PROCEEDINGS OF 1995 IEEE INTERNATIONAL CONFERENCE ON ROBOTICS AND AUTOMATION;第1-3卷;第1732-1737页 * |
Bruno Siciliano ET AL.Robotics : modelling, planning and control.Springer,2009,第419-424页. * |
Also Published As
Publication number | Publication date |
---|---|
US11478936B2 (en) | 2022-10-25 |
TWI834918B (zh) | 2024-03-11 |
US20210107161A1 (en) | 2021-04-15 |
CN112643718A (zh) | 2021-04-13 |
EP3804916A1 (en) | 2021-04-14 |
TW202117283A (zh) | 2021-05-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200061837A1 (en) | Method for industrial robot commissioning, industrial robot system and control system using the same | |
TWI670153B (zh) | 機器人及機器人系統 | |
JP5949242B2 (ja) | ロボットシステム、ロボット、ロボット制御装置、ロボット制御方法、およびロボット制御プログラム | |
JP5257335B2 (ja) | 3次元視覚センサにおける計測有効領域の表示方法および3次元視覚センサ | |
JP6812095B2 (ja) | 制御方法、プログラム、記録媒体、ロボット装置、及び物品の製造方法 | |
EP2082850A2 (en) | Generating device of processing robot program | |
JP2018111165A (ja) | 視覚センサのキャリブレーション装置、方法及びプログラム | |
CN111801198A (zh) | 一种手眼标定方法、系统及计算机存储介质 | |
JP6885856B2 (ja) | ロボットシステムおよびキャリブレーション方法 | |
US11446822B2 (en) | Simulation device that simulates operation of robot | |
JP2020047049A (ja) | 画像処理装置及び画像処理方法 | |
JP6410411B2 (ja) | パターンマッチング装置及びパターンマッチング方法 | |
JP7190552B1 (ja) | ロボット教示システム | |
CN112643718B (zh) | 图像处理设备及其控制方法和存储其控制程序的存储介质 | |
JP2019077026A (ja) | 制御装置、ロボットシステム、制御装置の動作方法及びプログラム | |
TWI806761B (zh) | 標誌檢測裝置以及機器人示教系統 | |
JP7381758B2 (ja) | 検出装置及び検出方法 | |
JP7401250B2 (ja) | 画像処理装置、制御方法およびプログラム | |
JP7483455B2 (ja) | 画像処理装置、画像処理装置の制御方法およびプログラム | |
JP7533265B2 (ja) | 支援システム、画像処理装置、支援方法およびプログラム | |
JP2023011319A (ja) | 調整支援システムおよび調整支援方法 | |
WO2022181500A1 (ja) | 視覚センサの出力から得られる3次元位置情報を用いるシミュレーション装置 | |
WO2023248353A1 (ja) | ワークの位置データを取得する装置、制御装置、ロボットシステム、方法、及びコンピュータプログラム | |
KR100784734B1 (ko) | 산업용 로봇 시스템의 타원 보간방법 | |
JP2010186219A (ja) | テンプレート生成システム、テンプレートマッチングシステムおよびテンプレート生成方法 |
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 |