CN116157837A - Calibration method and device for robot - Google Patents
Calibration method and device for robot Download PDFInfo
- Publication number
- CN116157837A CN116157837A CN202080105042.5A CN202080105042A CN116157837A CN 116157837 A CN116157837 A CN 116157837A CN 202080105042 A CN202080105042 A CN 202080105042A CN 116157837 A CN116157837 A CN 116157837A
- Authority
- CN
- China
- Prior art keywords
- camera
- robot
- calibration
- coordinate system
- coordinates
- 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
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/80—Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
Abstract
Description
本公开涉及机器视觉领域,更具体地说,涉及用于机器人的标定方法、装置、计算设备、计算机可读存储介质和程序产品。The present disclosure relates to the field of machine vision, and more particularly, to a calibration method, device, computing device, computer-readable storage medium and program product for a robot.
随着机器人技术的发展,越来越多的机器人工作站被用于工业应用中,例如自动装卸、焊接、冲压、喷涂、以及其他各种处理。机器人可以灵活地与不同的设备组合,以满足艰苦的生产过程要求。它可以轻松实现多机联动自动化生产线和数字化工厂布局,最大程度地节省人力,提高企业效率。With the development of robot technology, more and more robot workstations are used in industrial applications, such as automatic loading and unloading, welding, stamping, spraying, and other various processes. Robots can be flexibly combined with different equipment to meet tough production process requirements. It can easily realize multi-machine linkage automatic production line and digital factory layout, save manpower to the greatest extent and improve enterprise efficiency.
尽管机器人在工业中的应用具有许多优势,但是对机器人应用中的集成、操作和维护的高技术和专业要求限制了它的使用。尤其是,包括视觉系统标定(相机标定)、TCP(工具中心点)标定、和手眼标定在内的标定已成为用户使用机器人的主要难题。Despite the many advantages of robotics in industrial applications, the highly technical and specialized requirements for integration, operation and maintenance in robotic applications limit its use. In particular, calibration including vision system calibration (camera calibration), TCP (tool center point) calibration, and hand-eye calibration has become a major challenge for users using robots.
发明内容Contents of the invention
机器人的标定是机器人作业过程中的关键技术之一,然而现有的标定方法对于一般的用户而言,需要用户具备相当的专业知识和花费大量时间和精力实现机器人的标定,以确定机器人的操作是否理想,这增加了用户的操作门槛。例如,现有的标定方法需要大量手动操作,标定效率较低且操作过程复杂,并高度依赖于操作者的主观判断和经验。The calibration of the robot is one of the key technologies in the process of robot operation. However, for ordinary users, the existing calibration methods require the user to have considerable professional knowledge and spend a lot of time and energy on the calibration of the robot to determine the operation of the robot. Whether it is ideal or not, this increases the user's operating threshold. For example, the existing calibration methods require a lot of manual operations, the calibration efficiency is low and the operation process is complicated, and highly dependent on the operator's subjective judgment and experience.
本公开的第一实施例提出了一种用于机器人的标定方法,所述标定方法包括执行相机标定过程,其中,执行所述相机标定个过程包括以下步骤:捕捉环境的图像并形成所述环境的三维虚拟对象;基于所捕捉的所述环境的图像和所述环境的三维虚拟对象,将标定物体放置在所述环境中的目标区域中;通过与机器人相关联的第一相机和所述标定物体之间的相对移动来使用所 述第一相机捕捉所述标定物体的图像,其中,所述第一相机为2D相机;以及基于所述第一相机所捕捉的所述标定物体的图像,确定用于标定的所述第一相机的参数。The first embodiment of the present disclosure proposes a calibration method for a robot, the calibration method includes performing a camera calibration process, wherein performing the camera calibration process includes the following steps: capturing an image of an environment and forming the environment the three-dimensional virtual object of the environment; based on the captured image of the environment and the three-dimensional virtual object of the environment, place the calibration object in the target area in the environment; through the first camera associated with the robot and the calibration relative movement between objects to capture an image of the calibration object using the first camera, wherein the first camera is a 2D camera; and based on the image of the calibration object captured by the first camera, determine The parameters of the first camera used for calibration.
在该实施例中,可以通过增强现实(AR)技术来引导用户进行相机标定,使得操作直观且便捷,有利地降低了操作复杂度并提高了准确性,从而有效降低了用户的操作门槛,使得不具备专业知识的用户也可容易实现相机标定。In this embodiment, the augmented reality (AR) technology can be used to guide the user to perform camera calibration, which makes the operation intuitive and convenient, advantageously reduces the operation complexity and improves the accuracy, thereby effectively reducing the user's operation threshold, making Camera calibration can be easily implemented by users without professional knowledge.
本公开的第二实施例提供了一种用于机器人的标定装置,所述标定装置包括相机标定单元,所述相机标定单元包括:环境捕捉模块,被配置为捕捉环境的图像并形成所述环境的三维虚拟对象;放置模块,被配置为基于所捕捉的所述环境的图像和所述环境的三维虚拟对象,将标定物体放置在所述环境中的目标区域中;第一相机捕捉模块,被配置为通过与机器人相关联的第一相机和所述标定物体之间的相对移动来使用所述第一相机捕捉所述标定物体的图像,其中,所述第一相机为2D相机;参数确定模块,被配置为基于所述第一相机所捕捉的所述标定物体的图像,确定用于标定的所述第一相机的参数。A second embodiment of the present disclosure provides a calibration device for a robot, the calibration device includes a camera calibration unit, the camera calibration unit includes: an environment capture module configured to capture an image of the environment and form the environment The three-dimensional virtual object of the environment; the placement module is configured to place the calibration object in the target area in the environment based on the captured image of the environment and the three-dimensional virtual object of the environment; the first camera capture module is configured to Configured to use the first camera associated with the robot to capture an image of the calibration object through relative movement between the first camera and the calibration object, wherein the first camera is a 2D camera; a parameter determination module , configured to determine parameters of the first camera used for calibration based on the image of the calibration object captured by the first camera.
本公开的第三实施例提供了一种计算设备,所述计算设备包括:处理器;以及存储器,其用于存储计算机可执行指令,当所述计算机可执行指令被执行时使得所述处理器执行第一实施例中所述的方法。A third embodiment of the present disclosure provides a computing device including: a processor; and a memory for storing computer-executable instructions that, when executed, cause the processor to The method described in the first embodiment is carried out.
本公开的第四实施例提出了一种计算机可读存储介质,所述计算机可读存储介质具有存储在其上的计算机可执行指令,所述计算机可执行指令用于执行第一实施例中所述的方法。A fourth embodiment of the present disclosure proposes a computer-readable storage medium having computer-executable instructions stored thereon for executing the computer-executable instructions described in the first embodiment. described method.
本公开的第五实施例提出了一种计算机程序产品,所述计算机程序产品被有形地存储在计算机可读存储介质上,并且包括计算机可执行指令,所述计算机可执行指令在被执行时使至少一个处理器执行第一实施例中所述的方法。A fifth embodiment of the present disclosure proposes a computer program product tangibly stored on a computer-readable storage medium and comprising computer-executable instructions that, when executed, use At least one processor executes the method described in the first embodiment.
结合附图并参考以下详细说明,本公开的各实施例的特征、优点及其他方面将变得更加明显,在此以示例性而非限制性的方式示出了本公开的若干 实施例,在附图中:The features, advantages and other aspects of the various embodiments of the present disclosure will become more apparent with reference to the following detailed description in conjunction with the accompanying drawings, which show several embodiments of the present disclosure by way of illustration and not limitation. In the attached picture:
图1示出了其中可以应用本公开的实施例的示例性场景。Fig. 1 shows an exemplary scenario in which embodiments of the present disclosure may be applied.
图2示出了其中可以应用本公开的实施例的另一个示例性场景。Fig. 2 illustrates another exemplary scenario in which embodiments of the present disclosure may be applied.
图3示出了根据本公开的实施例的用于机器人的标定方法的流程图。Fig. 3 shows a flowchart of a calibration method for a robot according to an embodiment of the present disclosure.
图4示出了根据本公开的实施例的可用于机器人的相机标定过程的示例性布置。Fig. 4 shows an exemplary arrangement of a camera calibration process usable for a robot according to an embodiment of the present disclosure.
图5示出了根据本公开的实施例的用于机器人的标定方法的另一个流程图。Fig. 5 shows another flowchart of a calibration method for a robot according to an embodiment of the present disclosure.
图6示出了根据本公开的实施例的用于TCP标定的示例性标定工件。FIG. 6 illustrates exemplary calibration artifacts for TCP calibration according to an embodiment of the disclosure.
图7示出了根据本公开的实施例的可用于机器人的TCP标定过程的示例性布置。Fig. 7 shows an exemplary arrangement of a TCP calibration process usable for a robot according to an embodiment of the present disclosure.
图8示出了根据本公开的实施例的用于机器人的标定方法的另一个流程图。Fig. 8 shows another flowchart of a calibration method for a robot according to an embodiment of the present disclosure.
图9示出了根据本公开的实施例的可用于机器人的手眼标定过程的示例性布置。Fig. 9 shows an exemplary arrangement of a hand-eye calibration process that may be used for a robot according to an embodiment of the present disclosure.
图10示出了根据本公开的实施例的用于机器人的示例性标定装置的框图。Fig. 10 shows a block diagram of an exemplary calibration device for a robot according to an embodiment of the present disclosure.
图11示出了根据本公开的实施例的用于机器人标定的示例性计算设备的框图。Figure 11 shows a block diagram of an exemplary computing device for robot calibration according to an embodiment of the disclosure.
以下参考附图详细描述本公开的各个示例性实施例。虽然以下所描述的示例性方法、装置包括在其它组件当中的硬件上执行的软件和/或固件,但是应当注意,这些示例仅仅是说明性的,而不应看作是限制性的。例如,考虑在硬件中独占地、在软件中独占地、或在硬件和软件的任何组合中可以实施任何或所有硬件、软件和固件组件。因此,虽然以下已经描述了示例性的方法和装置,但是本领域的技术人员应容易理解,所提供的示例并不用于限制用于实现这些方法和装置的方式。Various exemplary embodiments of the present disclosure are described in detail below with reference to the accompanying drawings. While the example methods, apparatus described below include software and/or firmware executing on hardware, among other components, it should be noted that these examples are illustrative only and should not be viewed as limiting. For example, it is contemplated that any or all hardware, software, and firmware components may be implemented exclusively in hardware, exclusively in software, or in any combination of hardware and software. Therefore, although exemplary methods and apparatuses have been described below, those skilled in the art will readily understand that the examples provided are not intended to limit the manner in which these methods and apparatuses are implemented.
此外,附图中的流程图和框图示出了根据本公开的各个实施例的方法和系统的可能实现的体系架构、功能和操作。应当注意,方框中所标注的功能 也可以按照不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,或者它们有时也可以按照相反的顺序执行,这取决于所涉及的功能。同样应当注意的是,流程图和/或框图中的每个方框、以及流程图和/或框图中的方框的组合,可以使用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以使用专用硬件与计算机指令的组合来实现。在不同的附图中,相同的标记表示相同或类似的元件。Furthermore, the flowchart and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of methods and systems according to various embodiments of the present disclosure. It should be noted that the functions noted in the blocks may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or they may sometimes be executed in the reverse order, depending upon the functionality involved. It should also be noted that each block in the flowchart and/or block diagrams, and combinations of blocks in the flowchart and/or block diagrams, can be implemented using a dedicated hardware-based system that performs the specified functions or operations , or can be implemented using a combination of dedicated hardware and computer instructions. In the different drawings, the same reference numerals indicate the same or similar elements.
本文所使用的术语“包括”、“包含”及类似术语是开放性的术语,即“包括/包含但不限于”,表示还可以包括其它内容。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”等等。The terms "including", "comprising" and similar terms used herein are open-ended terms, that is, "including/including but not limited to", which means that other contents may also be included. The term "based on" is "based at least in part on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one further embodiment" and so on.
本文涉及机器人系统的多种坐标系,例如机器人的基坐标系、工具坐标系、相机坐标系。机器人的基坐标系是以机器人安装基座为基准,用来描述机器人本体运动的坐标系。工具坐标系TCS是以工具中心点(TCP)为原点建立的坐标系,在未装配工具前,默认TCP为机器人末端法兰中心点,在装配工具后,机器人TCP移动至工具末端。相机坐标系是以相机为基准,用来描述物体运动的坐标系。This article involves various coordinate systems of the robot system, such as the base coordinate system of the robot, the tool coordinate system, and the camera coordinate system. The base coordinate system of the robot is the coordinate system used to describe the motion of the robot body based on the robot installation base. The tool coordinate system TCS is a coordinate system established with the tool center point (TCP) as the origin. Before the tool is not assembled, the default TCP is the center point of the robot end flange. After the tool is assembled, the robot TCP moves to the end of the tool. The camera coordinate system is the coordinate system used to describe the motion of the object based on the camera.
图1示出了其中可以应用本公开的实施例的示例性场景100。场景100包括机器人101和相关联的第一相机102,第一相机102固定在机器人101上。例如,机器人101可以是面向工业领域的多关节机械手或多自由度的机器装置。机器人101包括可移动的末端103,第一相机102可以固定在末端103上并随机器人101的末端103的移动而一起移动。也就是说,在该场景100中,由于机器人101的末端和第一相机102固定在一起,称为眼在手中(eye in hand)。机器人101的末端103上还可具有工具部104,用于装配(例如,吸附、插入等)对目标工件进行处理的工具或部件(例如,焊枪、喷嘴、螺栓等)。场景100还布置有目标物体105。目标物体105可以是待处理的实际物体(例如,目标工件)或标定物体(例如,标定板等)。第一相机102为2D相机,并且场景100中还布置有第二相机106。第二相机106为3D相机,其可以是双目相机、结构光相机、或能够返回深度信息的任何相机。在场景100中,第二相机106可以相对地布置在机器人101的上方,以捕捉和跟踪机器人101(例如,其末端等)等的移动。在场景100中,用户107可 以携带(例如,手持、在头部佩戴等)AR设备108,AR设备108可以包括但不限于智能手机、平板电脑、示教器(teach pendant)、或头戴式设备。AR设备108可以通过设置在其上或其外部的多个摄像头,在其视野109内从各自不同的位置以不同的角度针对真实环境或环境中物体进行摄像,以形成三维虚拟对象。AR设备108可以具有显示器以在虚拟环境中显示真实环境或环境中物体的相应三维虚拟对象。FIG. 1 illustrates an
图2示出了其中可以应用本公开的实施例的示例性场景200。场景200类似于场景100,除了相关联的第一相机102固定在机器人101外部。也就是说,在该场景200中,第一相机102位于机器人101外部并且不随机器人101的末端103的移动而一起移动,称为眼在手外(eye to hand)。FIG. 2 illustrates an
图3示出了根据本公开的实施例的用于机器人的标定方法300的流程图,图4示出了根据本公开的实施例的可用于机器人的相机标定过程的示例性布置400。方法300可以应用于如图1所示的示例性场景100(眼在手中)和如图2所示的示例性场景200(眼在手外)。下面结合图3和图4来描述方法300。FIG. 3 shows a flowchart of a
参考图3,方法300包括用于执行相机标定过程的步骤301-304。此外,方法300还可以包括用于执行TCP标定过程(参见图5)和用于执行手眼标定过程(参见图8)的步骤。Referring to FIG. 3,
在图像测量过程以及机器视觉应用中,为确定空间物体表面某点的三维几何位置与其在图像中对应点之间的相互关系,必须建立相机成像的几何模型,这些几何模型参数就是相机参数(例如,相机的内、外参数、畸变参数)。这些参数通常通过实验与计算才能得到,这个求解参数的过程就称之为相机标定。通过相机标定确定相机参数,可以校正镜头畸变,生成矫正后的图像,并根据获得的图像重构三维场景。In the process of image measurement and machine vision applications, in order to determine the relationship between the three-dimensional geometric position of a point on the surface of a space object and its corresponding point in the image, it is necessary to establish a geometric model of camera imaging, and these geometric model parameters are camera parameters (such as , internal and external parameters of the camera, distortion parameters). These parameters are usually obtained through experiments and calculations, and the process of solving the parameters is called camera calibration. By determining camera parameters through camera calibration, lens distortion can be corrected, corrected images can be generated, and 3D scenes can be reconstructed from the obtained images.
方法300开始于步骤301,捕捉环境的图像并形成环境的三维虚拟对象。
在一些实施例中,步骤301可以包括:从不同的位置以不同的角度针对环境进行摄像,从而针对每个场景得到至少两个图像;基于立体图像的三角测量方法测量得出所述图像中的各个像素的深度信息,以及基于深度信息及图像包含的二维信息形成环境的三维虚拟对象。例如,由用户107持有的AR设备可配备有多个摄像头或与多个摄像头连接,该多个摄像头从各自不 同的位置以不同的角度针对真实环境进行摄像。以两个摄像头为例,当两个摄像头从不同的位置对真实环境拍下同一场景的照片,因两个摄像头的拍摄角度的不同,因而可以根据同一场景的两个图像中像素的不同位置,对二维的图像中的各个像素的深度进行三角测量。由此,尽管单个摄像头拍摄得到的图像本身是二维的,但在此基础上补充经由三角测量所得出的深度信息,即可获得形成真实环境的三维虚拟对象所需的三维信息。In some embodiments,
接着,方法300行进到步骤302。在步骤302中,基于所捕捉的环境的图像和环境的三维虚拟对象,将标定物体放置在环境中的目标区域中。例如,目标区域可以是工作台中的特定区域。Next, the
在一些实施例中,步骤302可以包括:从所捕捉的环境的图像中检测布置在环境中的视觉标记物;基于检测到的视觉标记物,确定目标区域;捕捉标定物体的图像并形成标定物体的三维虚拟对象;将标定物体的三维虚拟对象叠加在环境的三维虚拟对象上以作为增强现实图像进行显示;以及移动标定物体以使得标定物体的三维虚拟对象位于目标区域的三维虚拟对象中。例如,环境中的目标区域可以由可识别的多个视觉标记物限定,通过检测视觉标记物可以快速确定目标区域。多个视觉标记物可以被布置为覆盖在第一相机的视野内以便被第一相机捕捉。类似地,可以由用户107持有的AR设备108通过多个摄像头捕捉标定物体的图像并形成标定物体的三维虚拟对象。当将标定物体的三维虚拟对象叠加在环境的三维虚拟对象上以作为增强现实图像进行显示(例如,实时跟踪显示)后,可以通过例如语音、文字、图像来引导用户107或引导机器人101移动标定物体。例如,当标定物体的三维虚拟对象至少部分地位于目标区域的三维虚拟对象外部时,AR设备108可以提示用户107或引导机器人101继续移动标定物体,直到标定物体的三维虚拟对象位于目标区域的三维虚拟对象中。In some embodiments,
参考图4,示例性布置400包括限定目标区域401的多个视觉标记物402(例如,图示为4个)。视觉标记物402可以具有特征颜色(例如,与环境中的其他部分不同的颜色)和/或特征图案(例如,特定图形码(条形码、二维码等)等)。例如,AR设备108可以通过摄像头捕捉到环境的图像,并从图像中识别出视觉标记物402,从而确定由视觉标记物402限定的目标区域401。示例性布置400还包括已被放置在目标区域401中的标定物体403(例 如,标定板)。标定物体403可以具有附着在表面上的参考图案以用于相机标定,该参考图案包括但不限于棋盘格图案、圆阵列图案、非圆阵列图案等。Referring to FIG. 4 , an
接着,方法300行进到步骤303。在步骤303中,通过与机器人相关联的第一相机和标定物体之间的相对移动来使用第一相机捕捉标定物体的图像,其中,第一相机为2D相机。Next, the
在一些实施例中,当第一相机固定于机器人外部时,步骤303可以包括:获得用于在目标区域中放置标定物体的多个实际位置,该多个实际位置对应于环境的三维虚拟对象中的多个虚拟位置;移动标定物体以使得标定物体的三维虚拟对象分别位于该多个虚拟位置处;以及使用第一相机分别在该多个实际位置捕捉标定物体的图像。例如,当第一相机102固定于机器人101外部(即,眼在手外)时,需要在目标区域401中的合适位置摆放标定物体403,使得标定物体403上的角点覆盖在第一相机102的视野中,并且相机参数之间的相关性和标定物体403的不同位姿都会影响相机特定参数的确定。在一个示例中,可以基于标定物体403的角点是否覆盖在第一相机102的视野中、相机参数之间的相关性以及不同位姿等因素,计算出在目标区域401中放置标定物体403的多个实际位置,并通过AR设备108指定用户107或机器人101将标定物体403放置在计算出的多个实际位置。类似于步骤302,可以通过确定标定物体403的三维虚拟对象是否放置在与多个实际位置相对应的多个虚拟位置,来将标定物体403放置在多个实际位置,并使用第一相机102分别在多个实际位置处捕捉标定物体403的图像。In some embodiments, when the first camera is fixed outside the robot,
在一些实施例中,当第一相机固定于机器人上时,步骤303可以通过使第一相机围绕标定物体移动到多个实际位置,使用第一相机分别在多个实际位置处捕捉标定物体的图像。In some embodiments, when the first camera is fixed on the robot, in
接着,方法300行进到步骤304。在步骤304中,基于第一相机所捕捉的标定物体的图像,确定用于标定的第一相机的参数。如前所述,所述第一相机的参数可以包括内参数、外参数、畸变参数中的至少一个。在一个示例中,可以使用经典的张正友标定法(参见“A Flexible New Technique for Camera Calibration”,IEEE TRANSACTIONS ANALYSIS AND MACHINE INTELLIGENCE,Volume 22,Issue 11,2000)来确定第一相机的参数,所使用的棋盘格格点数为p x q,每摆放一次标定板,对应的相机参数会有变化, 检测所捕捉的标定板的图像中的特征点(例如,棋盘格图案的角点),形成p x q个方程。当摆放n次标定板以后,形成n x p x q个方程,估算理想无畸变的情况下内参和所有外参,随后应用最小二乘法估算实际存在径向畸变下的畸变系数,最后通过极大似然法、优化估计来提升估计精度。在其他示例中,还可以根据任何适用的现有相机标定方法来确定第一相机的参数,不再详述。Next, the
与传统相机标定过程相比,根据方法300的相机标定过程,可以在相机标定期间基于AR技术向用户提供引导,使得操作直观且便捷,有利地降低了操作复杂度并提高了准确性,从而有效降低了用户的操作门槛,使得不具备专业知识的用户也可容易实现相机标定。Compared with the traditional camera calibration process, the camera calibration process according to the
图5示出了根据本公开的实施例的用于机器人的标定方法500的流程图,图6示出了根据本公开的实施例的用于TCP标定的示例性标定工件600,图7示出了根据本公开的实施例的可用于机器人的TCP标定过程的示例性布置700。方法500可以应用于如图1所示的示例性场景100(眼在手中)和如图2所示的示例性场景200(眼在手外)。下面结合图5、图6和图7来描述方法500。FIG. 5 shows a flowchart of a
参考图5,方法500包括用于执行TCP标定过程的步骤501-504。方法500可以包括在方法300中或独立于方法300来执行。Referring to FIG. 5,
如前所述,机器人101的末端103上的工具部104可以装配工具来处理目标工件。为了描述工具在空间的位姿,在工具上绑定(定义)一个坐标系,即工具坐标系TCS,工具坐标系TCS的原点即TCP。在未装配工具前,默认TCP位于机器人101的末端103上,例如工具部104的法兰中心点。例如,可以从机器人控制器获得机器人末端法兰中心点的坐标。或者,可以从示教器上获得机器人末端法兰中心点的坐标,其中,示教器是进行机器人的手动操纵、程序编写、参数配置以及监控用的手持装置。在装配工具后,需要对机器人TCP(例如,位于工具末端上)进行标定,并将工具坐标系TCS的原点从默认TCP设置为机器人TCP。As previously described, the
方法500开始于步骤501,使用第二相机来分别捕捉以多个位姿放置的第一工件的多个图像,其中,该多个位姿具有不同的空间倾斜角,第一工件安装于机器人的末端上,第二相机是3D相机并且固定于机器人外部。例如, 第一工件可以是例如如图6和图7所示的标定工件600,用于模拟实际使用的工具。图6中分别示出了标定工件600的侧视图601和俯视图602,标定工件具有顶端611和末端612。标定工件600可以通过顶端612安装于机器人101的末端103的工具部104。参考图7,示例性布置700包括第二相机106和以多个不同位姿(例如,图7中的四个位姿701、702、703、704)放置的标定工件600,每个位姿具有不同的空间倾斜角。The
接着,方法500行进到步骤502。在步骤502中,基于所捕捉的多个图像,确定在多个位姿下所述第一工件的末端在所述第二相机的3D相机坐标系中的多个工件末端坐标。如前所述,在装配工具前,默认TCP为机器人末端法兰中心点,而在装配工具/工件后,需要对机器人TCP(例如,位于工具/工件末端上)进行标定。在该步骤中,以3D相机为基准,确定工件末端在3D相机坐标系中的位置。在一些实施例中,位姿的数量可以是至少四个。Next, the
在一些实施例中,步骤502可以包括:从所捕捉的多个图像中检测布置在第一工件上的标记点以获得标记点在3D相机坐标系中的多个标记点坐标;以及基于多个标记点坐标,确定第一工件的末端在3D相机坐标系中的多个工件末端坐标。如图6所示,标定工件600可以具有一个或多个标记点613(例如,图6中为4个),标记点613可以用于例如使标定工件600或其至少一部分(例如,包括标记点613和末端612)覆盖在第二相机106的视野中。通过在捕捉的图像中识别标记点613之后,可以获得在不同位姿下标记点在3D相机坐标系中的多个标记点坐标。通过标定工件600上的标记点613和末端612之间的刚性关系(例如,标记点到机器人TCP是刚性连接的,因此彼此之间的距离是确定的),可以获得末端612在3D相机坐标系中的相应的多个工件末端坐标。In some embodiments,
在一些实施例中,标记点可以具有特征颜色和/或特征图案。例如,标记点613可以具有特征颜色(例如,与标定工件600的其他部分不同的颜色)和/或特征图案(例如,特定图形码(条形码、二维码等)等)以便识别/检测。In some embodiments, the marker points may have a characteristic color and/or a characteristic pattern. For example, marking
接着,方法500行进到步骤503。在步骤503中,获得在多个位姿下机器人的末端在机器人的基坐标系中的多个机器人末端坐标。例如,可以从机 器人控制器或示教器获得在不同位姿下机器人的末端在机器人的基坐标系中的多个机器人末端坐标。Next, the
接着,方法500行进到步骤504。在步骤504中,基于多个工件末端坐标和多个机器人末端坐标,确定在机器人的一个姿态下待标定的机器人TCP在机器人的基坐标系中的坐标,并确定机器人TCP与位于机器人的末端上的默认TCP之间的相对关系。下面结合图7来描述示例性TCP标定过程。Next, the
参考图7,机器人101摆出4种不同的位姿,第二相机106识别出标定工件600上的标记点613,得到标记点613在3D相机坐标系中的坐标,推导出标定工件600的末端612在3D相机坐标系中的坐标,同时从例如机器人控制器获得机器人101的末端法兰中心点的坐标。可以得到如下坐标:Referring to FIG. 7 , the
在第一位姿701:机器人末端在机器人基坐标系中坐标(x1,y1,z1),标定工件末端在3D相机坐标系中的坐标(mx1,my1,mz1)。In the first pose 701 : coordinates (x1, y1, z1) of the robot end in the robot base coordinate system, and calibrate the coordinates (mx1, my1, mz1) of the workpiece end in the 3D camera coordinate system.
在第二位姿702:机器人末端在机器人基坐标系中坐标(x2,y2,z2),标定工件末端在3D相机坐标系中的坐标(mx2,my2,mz2)。In the second pose 702 : coordinates (x2, y2, z2) of the robot end in the robot base coordinate system, and calibrate the coordinates (mx2, my2, mz2) of the workpiece end in the 3D camera coordinate system.
在第三位姿703:机器人末端在机器人基坐标系中坐标(x3,y3,z3),标定工件末端在3D相机坐标系中的坐标(mx3,my3,mz3)。In the third pose 703 : coordinates (x3, y3, z3) of the robot end in the robot base coordinate system, and calibrate the coordinates (mx3, my3, mz3) of the workpiece end in the 3D camera coordinate system.
在第四位姿704:机器人末端在机器人基坐标系中坐标(x4,y4,z4),标定工件末端在3D相机坐标系中的坐标(mx3,my3,mz3)。In the fourth pose 704 : coordinates (x4, y4, z4) of the end of the robot in the robot base coordinate system, and coordinates (mx3, my3, mz3) of the end of the workpiece in the 3D camera coordinate system.
对上述坐标进行数学意义上的平移变换,以使得标定工件末端在3D相机坐标系中的坐标相同。可以得到如下坐标:Mathematically translate the above coordinates so that the coordinates of the end of the calibration workpiece in the 3D camera coordinate system are the same. The following coordinates can be obtained:
在第一位姿701:机器人末端在机器人基坐标系中坐标(x1,y1,z1),标定工件末端在3D相机坐标系中的坐标(mx1,my1,mz1)。In the first pose 701 : coordinates (x1, y1, z1) of the robot end in the robot base coordinate system, and calibrate the coordinates (mx1, my1, mz1) of the workpiece end in the 3D camera coordinate system.
在第二位姿702:机器人末端在机器人基坐标系中坐标(x2-mx2+mx1,y2-my2+my1,z2-mz2+mz1),标定工件末端在3D相机坐标系中的坐标(mx1,my1,mz1)。In the second pose 702: the coordinates of the end of the robot in the robot base coordinate system (x2-mx2+mx1, y2-my2+my1, z2-mz2+mz1), and the coordinates of the end of the workpiece in the 3D camera coordinate system (mx1, my1, mz1).
在第三位姿703:机器人末端在机器人基坐标系中坐标(x3-mx3+mx1,y3-my3+my1,z3-mz3+mz1),标定工件末端在3D相机坐标系中的坐标(mx1,my1,mz1)。In the third pose 703: the coordinates of the end of the robot in the robot base coordinate system (x3-mx3+mx1, y3-my3+my1, z3-mz3+mz1), and the coordinates of the end of the workpiece in the 3D camera coordinate system (mx1, my1, mz1).
在第四位姿704:机器人末端在机器人基坐标系中坐标(x4-mx4+mx1,y4-my4+my1,z4-mz4+mz1),标定工件末端在3D相机坐标系中的坐标(mx1, my1,mz1)。In the fourth pose 704: coordinates of the end of the robot in the robot base coordinate system (x4-mx4+mx1, y4-my4+my1, z4-mz4+mz1), calibrate the coordinates of the end of the workpiece in the 3D camera coordinate system (mx1, my1, mz1).
在平移变换后,机器人TCP在机器人基坐标系中的坐标(x0,y0,z0)处于球心,默认TCP点(末端法兰中心坐标点从示教器上获得)位于球面,可以根据以下方程(1)-(4)来求解机器人TCP的坐标(x0,y0,z0):After the translation transformation, the coordinates (x0, y0, z0) of the robot TCP in the robot base coordinate system are at the center of the sphere, and the default TCP point (the center coordinate point of the end flange is obtained from the teach pendant) is located on the sphere, which can be calculated according to the following equation (1)-(4) to solve the coordinates (x0, y0, z0) of the robot TCP:
(x1-x0) 2+(y1-y0) 2+(z1-z0) 2=R 2 (1) (x1-x0) 2 +(y1-y0) 2 +(z1-z0) 2 =R 2 (1)
(x2-mx2+mx1-x0) 2+(y2-my2+my1-y0) 2 (2) (x2-mx2+mx1-x0) 2 +(y2-my2+my1-y0) 2 (2)
+(z2-mz2+mz1-z0) 2=R2 +(z2-mz2+mz1-z0) 2 =R2
(x3-mx3+mx1-x0) 2+(y3-my3+my1,-y0) 2 (3) (x3-mx3+mx1-x0) 2 +(y3-my3+my1,-y0) 2 (3)
+(z3-mz3+mz1-z0) 2=R 2 +(z3-mz3+mz1-z0) 2 =R 2
(x4-mx4+mx1-x0) 2+(y4-my4+my1-y0) 2 (4) (x4-mx4+mx1-x0) 2 +(y4-my4+my1-y0) 2 (4)
+(z4-mz4+mz1-z0) 2=R 2 +(z4-mz4+mz1-z0) 2 =R 2
根据求解出的(x0,y0,z0)以及第一个机器人姿态时的机器人状态(x1,y1,z1,rx1,ry1,rz1)就能求得TCP值(x tcp,y tcp,z tcp,rx tcp,ry tcp,rz tcp),即可以确定机器人TCP与位于机器人的末端上的默认TCP之间的相对关系。 The TCP value (x tcp , y tcp , z tcp , rx tcp , ry tcp , rz tcp ), that is, the relative relationship between the robot TCP and the default TCP located on the end of the robot can be determined.
传统的TCP标定过程通常使用3、4或5点方法,用户需要使用不同的姿态将TCP移动到参考点(例如,在机器人的工作空间内放置的一个固定点)3、4或5次使TCP与参考点重合。然而,此类传统的TCP标定方法需要用户的手动参与,需要用户熟悉操作和掌握专业知识,并且存在标定速度慢和标定精度不足等缺点。与传统的TCP标定过程相比,根据方法500的TCP标定过程,可以自动进行TCP标定,无需人工参与,有效地降低了操作复杂度,可以快速实现TCP标定,同时避免了由手动参与引起的误差,提高了标定准确性。The traditional TCP calibration process usually uses 3, 4 or 5 points method, the user needs to use different poses to move the TCP to a reference point (for example, a fixed point placed within the robot's workspace) 3, 4 or 5 times to make the TCP coincident with the reference point. However, such a traditional TCP calibration method requires manual participation of the user, requires the user to be familiar with the operation and professional knowledge, and has the disadvantages of slow calibration speed and insufficient calibration accuracy. Compared with the traditional TCP calibration process, according to the TCP calibration process of
图8示出了根据本公开的实施例的用于机器人的标定方法800的另一个流程图,图9示出了根据本公开的实施例的可用于机器人的手眼标定过程的示例性布置900。方法800可以应用于如图1所示的示例性场景100(眼在手中)和如图2所示的示例性场景200(眼在手外)。下面结合图8和图9来描述方法800。FIG. 8 shows another flowchart of a
参考图8,方法800包括用于执行手眼标定过程的步骤801-805。方法800可以包括在方法300中或独立于方法300来执行。Referring to FIG. 8,
手眼标定的目的就是获取机器人坐标系和相机坐标系的关系,最后将视 觉识别的结果转移到机器人坐标系下。如前所述,根据相机固定的地方不同,手眼标定可以分为两种形式,如果相机和机器人末端固定在一起,就称之为眼在手中,如果相机固定在机器人外部的底座上,则称之为眼在手外。The purpose of hand-eye calibration is to obtain the relationship between the robot coordinate system and the camera coordinate system, and finally transfer the results of visual recognition to the robot coordinate system. As mentioned earlier, depending on where the camera is fixed, hand-eye calibration can be divided into two forms. If the camera and the end of the robot are fixed together, it is called eye-in-hand; if the camera is fixed on the outer base of the robot, it is called The eye is out of the hand.
方法800开始于步骤801,使用第一相机来捕捉待由机器人处理的第二工件的第一目标图像,并使用第二相机来捕捉所述第二工件的第二目标图像。第二工件可以是例如如图9所示的待由机器人101处理的目标工件901。可以由第一相机102捕捉目标工件901的第一目标图像,并且可以由第二相机106捕捉目标工件901的第二目标图像。
接着方法800行进到步骤802。在步骤802中,基于第一目标图像和第二目标图像,确定第一相机的2D相机坐标系和第二相机的3D相机坐标系之间的第一变换关系。在该步骤中,可以确定不同相机坐标系之间的变换关系,即确定第一目标图像中的点的坐标到第二目标图像中的对应点的坐标之间的映射关系。
在一些实施例中,步骤802可以包括:从第一目标图像和第二目标图像中检测布置在第二工件中的多个特征点,以获得该多个特征点在2D相机坐标系中的第一多个特征坐标和在3D相机坐标系中的第二多个特征坐标。在一些实施例中,特征点的数量可以是至少四个。例如,第一相机102的2D相机坐标系的坐标可以是基于对第一相机102进行相机标定后获得的相机参数(该相机标定可以是例如本文描述的相机标定过程或任何其他适用的相机标定过程),使用目标图像中的二维信息来计算出的。In some embodiments,
参考图9,目标工件901上可以布置有多个特征点902(例如,图中为4个),特征点902可以具有例如特定的形状、尺寸、标记等,以便从捕捉的图像中识别/检测特征点。例如,目标工件901可以是PCB板,特征点902可以是布置在PCB板上的CAD标记的螺丝孔。第一相机102和第二相机106可以分别从捕捉的目标图像中识别特征点902,可以如下得到多个特征点902在第一相机102的2D相机坐标系和第二相机106的3D相机坐标系中的坐标:Referring to FIG. 9, a plurality of feature points 902 (for example, 4 in the figure) can be arranged on the
第一特征点902,3D相机坐标系坐标(x1,y1,z1),2D相机坐标系坐标(X1,Y1,Z1)。The
第二特征点902,3D相机坐标系坐标(x2,y2,z2),2D相机坐标系坐标 (X2,Y2,Z2)。The
第三特征点903,3D相机坐标系坐标(x3,y3,z3),2D相机坐标系坐标(X3,Y3,Z3)。The third feature point 903, the coordinates of the 3D camera coordinate system (x3, y3, z3), and the coordinates of the 2D camera coordinate system (X3, Y3, Z3).
第四特征点902,3D相机坐标系坐标(x4,y4,z4),2D相机坐标系坐标(X4,Y4,Z4)。The
2D相机和3D相机坐标系中坐标转换关系满足以下方程(5):The coordinate transformation relationship in the 2D camera and 3D camera coordinate system satisfies the following equation (5):
根据P
3D=H1·P
2D,其中,P
3D和P
2D分别为同一个点在不同相机坐标系中的坐标,可以求得两个相机坐标系间的单应矩阵H1,即,确定第一相机102的2D相机坐标系和第二相机106的3D相机坐标系之间的第一变换关系。
According to P 3D = H1·P 2D , where P 3D and P 2D are the coordinates of the same point in different camera coordinate systems, the homography matrix H1 between the two camera coordinate systems can be obtained, that is, the first A first transformation relationship between the 2D camera coordinate system of the
接着方法800行进到步骤803。在步骤803中,移动机器人的末端到多个位置,确定机器人TCP在机器人的基坐标系中的第一多个工具坐标,并确定机器人TCP在3D相机坐标系中的第二多个工具坐标。在该步骤中,可以例如通过第二相机捕捉机器人的末端的图像,来确定机器人TCP在机器人的基坐标系中的第一多个工具坐标(例如,采用本文描述的TCP标定过程或或任何其他适用的TCP标定过程)和在3D相机坐标系中的第二多个工具坐标。在一些实施例中,位置的数量可以是至少四个。Then the
例如,通过将机器人的末端103移动(例如,平移、或摆出不同位姿)到多个位置(例如,四个),分别确定机器人TCP在机器人101的基坐标系和第二相机106的相机坐标系中的坐标。For example, by moving the
在一些实施例中,步骤803可以包括:针对所述多个位置中的至少一个位置,在所述机器人的所述一个姿态下平移至所述至少一个位置,基于所述机器人TCP与所述默认TCP之间的相对关系,确定所述机器人TCP在所述机器人的基坐标系中的至少一个工具坐标。例如,为了方便计算,可以基于在机器人的某个姿态下已获得的机器人TCP与所述默认TCP之间的相对关系,在机器人的该姿态下平移机器人的末端到至少一个位置,根据从机器人控制器获得的默认TCP在机器人基坐标系中的坐标来确定机器人TCP在机器人基坐标系中的坐标。In some embodiments,
接着方法800行进到步骤804。在步骤804中,使用第一多个工具坐标和第二多个工具坐标来确定机器人的基坐标系和3D相机坐标系之间的第二变换关系。
机器人101的基坐标系和3D相机坐标系中坐标转换关系满足以下方程(6):The coordinate transformation relationship between the base coordinate system of the
P 3D=H2·P robot (6) P 3D =H2·P robot (6)
P 3D和P robot分别为同一个点在3D相机坐标系和机器人基坐标系中的坐标,由此可以求得3D相机坐标系和机器人基坐标系间的单应矩阵H2,即,确定机器人的基坐标系和3D相机坐标系之间的第二变换关系。 P 3D and P robot are the coordinates of the same point in the 3D camera coordinate system and the robot base coordinate system respectively, thus the homography matrix H2 between the 3D camera coordinate system and the robot base coordinate system can be obtained, that is, the robot’s The second transformation relationship between the base coordinate system and the 3D camera coordinate system.
接着方法800行进到步骤805。在步骤805中,基于第一变换关系和第二变换关系,确定机器人的基坐标系和2D相机坐标系之间的第三变换关系。The
基于方程(5)和(6),机器人基坐标系和3D相机坐标系中坐标转换关系满足以下方程(7):Based on equations (5) and (6), the coordinate transformation relationship between the robot base coordinate system and the 3D camera coordinate system satisfies the following equation (7):
P robot=H2 -1·H1·P 2D (7) P robot = H2-1 ·H1·P 2D (7)
P robot和P 2D分别为同一个点在机器人基坐标系和2D相机坐标系中的坐标,由此可以求得机器人基坐标系和2D相机标系间的单应矩阵H2 -1·H1,即,确定机器人的基坐标系和2D相机坐标系之间的第三变换关系(手眼关系)。 P robot and P 2D are the coordinates of the same point in the robot base coordinate system and the 2D camera coordinate system respectively, so the homography matrix H2 -1 H1 between the robot base coordinate system and the 2D camera coordinate system can be obtained, namely , determine the third transformation relationship (hand-eye relationship) between the base coordinate system of the robot and the 2D camera coordinate system.
在一些实施例中,该至少一个位置在该至少一个特征点处或其附近。例如,为了减少手眼标定误差,该至少一个位置可以在可识别的至少一个特征点处或其附近。在一些实施例中,可以采用如本文先前所描述的AR技术来直观且便捷地引导机器人的末端移动到可识别的至少一个特征点处或其附近,例如将标定工件600的末端612插入特征点902中,以进一步降低手眼标定误差。In some embodiments, the at least one location is at or near the at least one feature point. For example, in order to reduce hand-eye calibration errors, the at least one position may be at or near at least one identifiable feature point. In some embodiments, the AR technology as previously described herein can be used to intuitively and conveniently guide the end of the robot to move to or near at least one recognizable feature point, for example, insert the
与传统的手眼标定过程相比,根据方法800的手眼标定过程,可以自动进行手眼标定,无需人工参与,有效地降低了操作复杂度,并且计算简单,可以快速实现手眼标定,同时避免了由手动参与引起的误差,提高了标定准确性。Compared with the traditional hand-eye calibration process, according to the hand-eye calibration process of
图10示出了根据本公开的实施例的用于机器人的示例性标定装置1000的框图。装置1000包括相机标定单元1010、TCP标定单元1020和手眼标 定单元1030。装置1000还包括可以通信单元(未示出)以与外部其他装置通信(例如,从和/或向外部装置接收/发送指令和数据)。FIG. 10 shows a block diagram of an
相机单元1010包括环境捕捉模块1011、放置模块1012、第一相机捕捉模块1013和参数确定模块1014。The
环境捕捉模块1011被配置为:捕捉环境的图像并形成环境的三维虚拟对象。在一些实施例中,环境捕捉模块1011可以被进一步配置为:从不同的位置以不同的角度针对环境进行摄像,从而针对每个场景得到至少两个图像;基于立体图像的三角测量方法测量得出图像中的各个像素的深度信息;以及基于深度信息及图像包含的二维信息形成环境的三维虚拟对象。The
放置模块1012被配置为:基于所捕捉的环境的图像和环境的三维虚拟对象,将标定物体放置在环境中的目标区域中。在一些实施例中,放置模块1012可以被进一步被配置为:从所捕捉的环境的图像中检测布置在环境中的视觉标记物;基于检测到的视觉标记物,确定目标区域;捕捉标定物体的图像并形成标定物体的三维虚拟对象;将标定物体的三维虚拟对象叠加在环境的三维虚拟对象上以作为增强现实图像进行显示;移动所述标定物体以使得所述标定物体的三维虚拟对象位于所述目标区域的三维虚拟对象中。在一些实施例中,视觉标记物具有特征颜色和/或图案。The
第一相机捕捉模块1013被配置为:通过与机器人相关联的第一相机和标定物体之间的相对移动来使用第一相机捕捉标定物体的图像,其中,第一相机为2D相机。在一些实施例中,当第一相机固定于机器人外部时,第一相机捕捉模块1013可以被进一步配置为:获得用于在目标区域中放置标定物体的多个实际位置,该多个实际位置对应于环境的三维虚拟对象中的多个虚拟位置;移动标定物体以使得标定物体的三维虚拟对象分别位于多个虚拟位置处;以及使用第一相机分别在多个实际位置捕捉标定物体的图像。The first
参数确定模块1014被配置为:基于第一相机所捕捉的标定物体的图像,确定用于标定的第一相机的参数。The
TCP标定单元1020包括第一工件捕捉模块1021、工件坐标确定模块1022、机器人坐标获取模块1023和TCP坐标确定模块1024。The
第一工件捕捉模块1021被配置为:使用第二相机来分别捕捉以多个位姿放置的第一工件的多个图像,其中,所述第一工件安装于机器人的末端上, 第二相机是3D相机并且固定于机器人外部。The first
工件坐标确定模块1022被配置为:基于所捕捉的多个图像,确定在多个位姿下第一工件的末端在第二相机的3D相机坐标系中的多个工件末端坐标。在一些实施例中,工件坐标确定模块1022可以被配置为:从所捕捉的多个图像中检测布置在第一工件上的标记点以获得标记点在3D相机坐标系中的多个标记点坐标;以及基于多个标记点坐标,确定第一工件的末端在3D相机坐标系中的多个工件末端坐标。在一些实施例中,标记点具有特征颜色和/或特征图案。The workpiece coordinate
机器人坐标获取模块1023被配置为:获得在多个位姿下机器人的末端在机器人的基坐标系中的多个机器人末端坐标。The robot coordinate acquiring
TCP坐标确定模块1024被配置为:基于多个工件末端坐标和多个机器人末端坐标,确定在机器人的一个姿态下待标定的机器人TCP在机器人的基坐标系中的坐标,并确定机器人TCP与位于机器人的末端上的默认TCP之间的相对关系。The TCP coordinate determining
手眼标定单元1030包括第二工件捕捉模块1031、第一变换确定模块1032、工具坐标确定模块1033、第二变换确定模块1034和第三变换确定模块1035。The hand-
第二工件捕捉模块1031被配置为:使用第一相机来捕捉待由机器人处理的第二工件的第一目标图像,并使用第二相机来捕捉第二工件的第二目标图像。The second
第一变换确定模块1032被配置为:基于第一目标图像和第二目标图像,确定第一相机的2D相机坐标系和第二相机的3D相机坐标系之间的第一变换关系。在一些实施例中,第一变换确定模块1032可以被进一步配置为:从第一目标图像和第二目标图像中检测布置在第二工件中的多个特征点,以获得多个特征点在2D相机坐标系中的第一多个特征坐标和在3D相机坐标系中的第二多个特征坐标;以及使用所述第一多个特征坐标和所述第二多个特征坐标来确定所述第一变换关系。The first
工具坐标确定模块1033被配置为:移动机器人的末端到多个位置,确定机器人TCP在机器人的基坐标系中的第一多个工具坐标,并确定机器人TCP在3D相机坐标系中的第二多个工具坐标。在一些实施例中,工具坐标 确定模块1033可以被进一步配置为:针对多个位置中的至少一个位置,在机器人的一个姿态下平移至该至少一个位置,基于机器人TCP与默认TCP之间的相对关系,确定机器人TCP在所述机器人的基坐标系中的至少一个工具坐标。在一些实施例中,该至少一个位置在至少一个特征点处或其附近。The tool coordinate
第二变换确定模块1034被配置为:使用第一多个工具坐标和第二多个工具坐标来确定机器人的基坐标系和3D相机坐标系之间的第二变换关系。The second
第三变换确定模块1035被配置为:基于第一变换关系和第二变换关系,确定机器人的基坐标系和2D相机坐标系之间的第三变换关系。The third
虽然在图10的示例中将相机标定单元1010、TCP标定单元1020和手眼标定单元1030示出为集成在装置1000中,但是应当理解,装置1000可以包括这些单元中的至少一个来单独实现相应的标定过程。Although the
图11示出了根据本公开的实施例的用于实现工业相机对焦的示例性计算设备1100的框图。计算设备1100包括处理器1101和与处理器1101耦合的存储器1102。存储器1102用于存储计算机可执行指令,当计算机可执行指令被执行时使得处理器1101执行以上实施例中的方法(例如,前述的方法300、500或800中的任何一个或多个步骤)。FIG. 11 shows a block diagram of an
此外,替代地,上述方法能够通过计算机可读存储介质来实现。计算机可读存储介质上载有用于执行本公开的各个实施例的计算机可读程序指令。计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。In addition, alternatively, the above method can be implemented by a computer-readable storage medium. A computer-readable storage medium carries computer-readable program instructions for implementing various embodiments of the present disclosure. A computer readable storage medium may be a tangible device that can retain and store instructions for use by an instruction execution device. A computer readable storage medium may be, for example, but is not limited to, an electrical storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of computer-readable storage media include: portable computer diskettes, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM), or flash memory), static random access memory (SRAM), compact disc read only memory (CD-ROM), digital versatile disc (DVD), memory stick, floppy disk, mechanically encoded device, such as a printer with instructions stored thereon A hole card or a raised structure in a groove, and any suitable combination of the above. As used herein, computer-readable storage media are not to be construed as transient signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media (e.g., pulses of light through fiber optic cables), or transmitted electrical signals.
因此,在另一个实施例中,本公开提出了一种计算机可读存储介质,该计算机可读存储介质具有存储在其上的计算机可执行指令,计算机可执行指令用于执行本公开的各个实施例中的方法。Accordingly, in another embodiment, the present disclosure provides a computer-readable storage medium having computer-executable instructions stored thereon for performing various implementations of the present disclosure. method in the example.
在另一个实施例中,本公开提出了一种计算机程序产品,该计算机程序产品被有形地存储在计算机可读存储介质上,并且包括计算机可执行指令,该计算机可执行指令在被执行时使至少一个处理器执行本公开的各个实施例中的方法。In another embodiment, the present disclosure provides a computer program product tangibly stored on a computer-readable storage medium and comprising computer-executable instructions that, when executed, cause At least one processor executes the methods in various embodiments of the present disclosure.
一般而言,本公开的各个示例实施例可以在硬件或专用电路、软件、固件、逻辑,或其任何组合中实施。某些方面可以在硬件中实施,而其他方面可以在可以由控制器、微处理器或其他计算设备执行的固件或软件中实施。当本公开的实施例的各方面被图示或描述为框图、流程图或使用某些其他图形表示时,将理解此处描述的方框、装置、系统、技术或方法可以作为非限制性的示例在硬件、软件、固件、专用电路或逻辑、通用硬件或控制器或其他计算设备,或其某些组合中实施。In general, the various example embodiments of the present disclosure may be implemented in hardware or special purpose circuits, software, firmware, logic, or any combination thereof. Certain aspects may be implemented in hardware, while other aspects may be implemented in firmware or software, which may be executed by a controller, microprocessor or other computing device. When aspects of the embodiments of the present disclosure are illustrated or described as block diagrams, flowcharts, or using some other graphical representation, it is to be understood that the blocks, devices, systems, techniques, or methods described herein may serve as non-limiting Examples are implemented in hardware, software, firmware, special purpose circuits or logic, general purpose hardware or controllers or other computing devices, or some combination thereof.
用于执行本公开的各个实施例的计算机可读程序指令或者计算机程序产品也能够存储在云端,在需要调用时,用户能够通过移动互联网、固网或者其他网络访问存储在云端上的用于执行本公开的一个实施例的计算机可读程序指令,从而实施依据本公开的各个实施例所公开的技术方案。The computer-readable program instructions or computer program products used to execute various embodiments of the present disclosure can also be stored in the cloud, and when called, the user can access the program stored on the cloud for execution through the mobile Internet, fixed network or other networks. The computer-readable program instructions of an embodiment of the present disclosure implement the technical solutions disclosed in accordance with various embodiments of the present disclosure.
虽然已经参考若干具体实施例描述了本公开的实施例,但是应当理解,本公开的实施例并不限于所公开的具体实施例。本公开的实施例旨在涵盖在所附权利要求的精神和范围内所包括的各种修改和等同布置。权利要求的范围符合最宽泛的解释,从而包含所有这样的修改及等同结构和功能。While embodiments of the present disclosure have been described with reference to several specific embodiments, it is to be understood that the embodiments of the present disclosure are not limited to the specific embodiments disclosed. Embodiments of the present disclosure are intended to cover various modifications and equivalent arrangements included within the spirit and scope of the appended claims. The scope of the claims is accorded the broadest interpretation to encompass all such modifications and equivalent structures and functions.
Claims (27)
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/CN2020/117538 WO2022061673A1 (en) | 2020-09-24 | 2020-09-24 | Calibration method and device for robot |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN116157837A true CN116157837A (en) | 2023-05-23 |
Family
ID=80846046
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202080105042.5A Pending CN116157837A (en) | 2020-09-24 | 2020-09-24 | Calibration method and device for robot |
Country Status (2)
| Country | Link |
|---|---|
| CN (1) | CN116157837A (en) |
| WO (1) | WO2022061673A1 (en) |
Families Citing this family (32)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN112399145A (en) * | 2020-11-05 | 2021-02-23 | 通号通信信息集团有限公司 | A system and method for synchronizing 3D roaming and video inspection in a computer room |
| CN115170646A (en) * | 2022-05-30 | 2022-10-11 | 清华大学 | Target tracking method and system and robot |
| CN114833822B (en) * | 2022-03-31 | 2023-09-19 | 西安航天时代精密机电有限公司 | Rapid hand-eye calibration method for robot |
| CN114972525B (en) * | 2022-04-21 | 2024-05-14 | 浙江理工大学 | A spatial target pose estimation method for robot grasping and augmented reality |
| CN114770502A (en) * | 2022-04-25 | 2022-07-22 | 深圳市超准视觉科技有限公司 | Quick calibration method for tail end pose of mechanical arm tool |
| CN117011373A (en) * | 2022-04-29 | 2023-11-07 | 中国电建集团郑州泵业有限公司 | A method for drilling and positioning workpieces based on machine vision |
| CN115194761B (en) * | 2022-06-14 | 2024-11-15 | 杭州景吾智能科技有限公司 | Cleaning robot zero position and hand-eye matrix calibration method and system |
| CN115115712B (en) * | 2022-06-29 | 2026-01-16 | 上海柏楚电子科技股份有限公司 | Camera calibration system and method in galvanometer processing |
| CN115294028A (en) * | 2022-07-08 | 2022-11-04 | 杭州三坛医疗科技有限公司 | Registration plate calibration method and device |
| CN115179289B (en) * | 2022-07-18 | 2024-09-20 | 天津大学 | Digital twinning-oriented robot calibration method |
| CN115070770B (en) * | 2022-07-18 | 2025-01-28 | 上海捷勃特机器人有限公司 | Tool coordinate system calibration method, system, device and storage medium |
| CN115122337B (en) * | 2022-08-16 | 2025-02-14 | 深圳市华成工业控制股份有限公司 | Multi-axis robot calibration method, system, electronic device and readable storage medium with ground track |
| CN115284297B (en) * | 2022-08-31 | 2023-12-12 | 深圳前海瑞集科技有限公司 | Workpiece positioning method, robot and robot operation method |
| CN116269775A (en) * | 2022-09-08 | 2023-06-23 | 汕头大学 | A hand-eye calibration method and system for hair transplant robot |
| CN115519547A (en) * | 2022-10-25 | 2022-12-27 | 江苏图知天下科技有限公司 | Hand-eye calibration method and system for steel bar binding |
| CN115533918B (en) * | 2022-11-02 | 2025-03-18 | 上海术航机器人有限公司 | Calibration method, device, computer equipment and storage medium |
| CN115847397A (en) * | 2022-11-03 | 2023-03-28 | 昂视智能(深圳)有限公司 | Calibration method and system for camera and manipulator |
| CN115847401B (en) * | 2022-11-24 | 2025-07-22 | 浙江大学台州研究院 | Visual robot system |
| CN118123802B (en) * | 2022-12-02 | 2025-09-23 | 广州视源电子科技股份有限公司 | Robotic arm grasping method, system, device, electronic device and storage medium |
| CN116079734B (en) * | 2023-02-01 | 2025-10-03 | 中国科学院宁波材料技术与工程研究所 | An assembly control system and method for a collaborative robot based on dual vision detection |
| CN116237939B (en) * | 2023-02-15 | 2025-08-29 | 联宝(合肥)电子科技有限公司 | Method, device and electronic equipment for correcting position of a robotic arm |
| CN116175580A (en) * | 2023-03-10 | 2023-05-30 | 浙江西子势必锐航空工业有限公司 | A method for on-line positioning of the reference hole of the vision unit for the robot hole making system |
| CN116524022B (en) * | 2023-04-28 | 2024-03-26 | 神力视界(深圳)文化科技有限公司 | Offset data calculation method, image fusion device and electronic equipment |
| CN116222384B (en) * | 2023-05-08 | 2023-08-04 | 成都飞机工业(集团)有限责任公司 | An omnidirectional measurement and calibration method, system, equipment and medium |
| CN116619363B (en) * | 2023-05-19 | 2025-07-08 | 上海仙工智能科技股份有限公司 | Robot TCP calibration method, system and storage medium based on simple geometric elements |
| CN116423526B (en) * | 2023-06-12 | 2023-09-19 | 上海仙工智能科技有限公司 | An automatic calibration method, system and storage medium for robot arm tool coordinates |
| CN117893618A (en) * | 2024-01-11 | 2024-04-16 | 长春众鼎科技有限公司 | Advanced driver assistance system camera software calibration and training |
| CN118682775B (en) * | 2024-07-25 | 2025-10-03 | 江淮前沿技术协同创新中心 | A robot calibration method based on LM and ARO algorithms |
| CN119014860B (en) * | 2024-08-30 | 2025-11-07 | 清华大学 | Head and neck activity measuring method and related device |
| CN119188218B (en) * | 2024-11-28 | 2025-02-28 | 成都宇俊盛科技有限公司 | A product assembly method based on machine vision and SCARA manipulator |
| CN119658701B (en) * | 2025-02-18 | 2025-04-22 | 暨南大学 | Robot automatic hand-eye calibration method and system based on deep reinforcement learning |
| CN119779152B (en) * | 2025-03-10 | 2025-06-03 | 杭州海康机器人股份有限公司 | A method, device and system for detecting position |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN103400409A (en) * | 2013-08-27 | 2013-11-20 | 华中师范大学 | 3D (three-dimensional) visualization method for coverage range based on quick estimation of attitude of camera |
| CN108972559A (en) * | 2018-08-20 | 2018-12-11 | 上海嘉奥信息科技发展有限公司 | Hand and eye calibrating method based on infrared stereoscopic vision positioning system and mechanical arm |
| CN109671122A (en) * | 2018-12-14 | 2019-04-23 | 四川长虹电器股份有限公司 | Trick camera calibration method and device |
| CN110834333A (en) * | 2019-11-14 | 2020-02-25 | 中科新松有限公司 | A robot hand-eye calibration method and storage medium |
| US20200238525A1 (en) * | 2019-01-28 | 2020-07-30 | Cognex Corporation | System and method for automatic hand-eye calibration of vision system for robot motion |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN100526024C (en) * | 2007-12-07 | 2009-08-12 | 北京航空航天大学 | A robot extended hand-eye calibration method |
| CN104715479A (en) * | 2015-03-06 | 2015-06-17 | 上海交通大学 | Scene reproduction detection method based on augmented virtuality |
| CN107481288A (en) * | 2017-03-31 | 2017-12-15 | 触景无限科技(北京)有限公司 | The inside and outside ginseng of binocular camera determines method and apparatus |
| JP7102115B2 (en) * | 2017-09-15 | 2022-07-19 | キヤノン株式会社 | Calibration method, calibration device, 3D measuring device, 3D visual measuring device, robot end effector, program, recording medium |
-
2020
- 2020-09-24 CN CN202080105042.5A patent/CN116157837A/en active Pending
- 2020-09-24 WO PCT/CN2020/117538 patent/WO2022061673A1/en not_active Ceased
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN103400409A (en) * | 2013-08-27 | 2013-11-20 | 华中师范大学 | 3D (three-dimensional) visualization method for coverage range based on quick estimation of attitude of camera |
| CN108972559A (en) * | 2018-08-20 | 2018-12-11 | 上海嘉奥信息科技发展有限公司 | Hand and eye calibrating method based on infrared stereoscopic vision positioning system and mechanical arm |
| CN109671122A (en) * | 2018-12-14 | 2019-04-23 | 四川长虹电器股份有限公司 | Trick camera calibration method and device |
| US20200238525A1 (en) * | 2019-01-28 | 2020-07-30 | Cognex Corporation | System and method for automatic hand-eye calibration of vision system for robot motion |
| CN110834333A (en) * | 2019-11-14 | 2020-02-25 | 中科新松有限公司 | A robot hand-eye calibration method and storage medium |
Non-Patent Citations (1)
| Title |
|---|
| 张云剑;李世成;王石刚;梁庆华;韩明晓;: "隔离断路器连接金具装拆机器人视觉定位方法研究", 机电一体化, no. 01, 15 January 2017 (2017-01-15) * |
Also Published As
| Publication number | Publication date |
|---|---|
| WO2022061673A1 (en) | 2022-03-31 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN116157837A (en) | Calibration method and device for robot | |
| JP6966582B2 (en) | Systems and methods for automatic hand-eye calibration of vision systems for robot motion | |
| CA3067515C (en) | Automatic calibration for a robot optical sensor | |
| CN113379849B (en) | Robot autonomous recognition intelligent grabbing method and system based on depth camera | |
| JP7292829B2 (en) | Systems and methods for combining machine vision coordinate spaces in a guided assembly environment | |
| CN110202573B (en) | Full-automatic hand-eye calibration and working plane calibration method and device | |
| JP6703812B2 (en) | 3D object inspection device | |
| JP2018169403A5 (en) | ||
| US11090810B2 (en) | Robot system | |
| US20160288333A1 (en) | Robot, robot control device, and robotic system | |
| JP2015136770A (en) | Data creation system of visual sensor, and detection simulation system | |
| CN107428009A (en) | Method, the industrial robot system using this method and control system for industrial robot debugging | |
| CN108098762A (en) | A kind of robotic positioning device and method based on novel visual guiding | |
| JP2005515910A (en) | Method and apparatus for single camera 3D vision guide robotics | |
| CN111360821A (en) | Picking control method, device and equipment and computer scale storage medium | |
| WO2018043524A1 (en) | Robot system, robot system control device, and robot system control method | |
| CN110238851B (en) | A mobile robot and its rapid calibration method and system | |
| CN109940604A (en) | Workpiece 3 D positioning system and method based on point cloud data | |
| CN120036928A (en) | Relative position positioning method of drilling robot end effector and target object based on machine vision | |
| CN112743546A (en) | Robot hand-eye calibration pose selection method and device, robot system and medium | |
| JP7660686B2 (en) | ROBOT CONTROL DEVICE, ROBOT CONTROL SYSTEM, AND ROBOT CONTROL METHOD | |
| CN114750151B (en) | Calibration method, calibration device, electronic equipment and computer readable storage medium | |
| CN118537402A (en) | Mobile robot grabbing and positioning method guided by point cloud under stacked desktop scene | |
| CN118003334A (en) | A fast hand-eye calibration method for multi-camera collaborative positioning | |
| CN114939867A (en) | Calibration method and system for mechanical arm external irregular asymmetric tool based on stereoscopic vision |
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 |