Symmetrical calibration method and device for symmetrical workpiece point locations

By acquiring point cloud data under the base coordinate system of the robot arm for symmetric transformation and adjusting the homogeneous transformation matrix, and combining with a three-dimensional camera to obtain real point cloud data, the problems of low accuracy and low efficiency of symmetric calibration of robot arm points are solved, and high-precision automated calibration is achieved.

CN120245008AActive Publication Date: 2025-07-04SHENZHEN XINRUN FULIAN DIGITAL TECH CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202510737550.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-06-04
Publication Date
2025-07-04
Estimated Expiration
2045-06-04

AI Technical Summary

Technical Problem

In the prior art, symmetric calibration of robotic arm points relies on manual observation, with low accuracy and low efficiency, and cannot meet the calibration requirements of high-precision and complex tasks.

Method used

By acquiring point cloud data under the base coordinate system of the robot arm, symmetric transformation processing is performed to generate virtual point cloud data, and adjust the homogeneous transformation matrix based on camera internal reference and hand-eye matrix. Use a three-dimensional camera to obtain real point cloud data to realize automated symmetric calibration of workpiece points.

Benefits of technology

Improve the accuracy and efficiency of workpiece point calibration, and realize automated symmetric settings without manual methods.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120245008A_ABST
    Figure CN120245008A_ABST
Patent Text Reader

Abstract

The invention relates to a symmetric calibration method and device for symmetric workpiece point locations, and the method comprises the steps: obtaining first point cloud data of a first workpiece under a mechanical arm base coordinate system, and carrying out the symmetric transformation processing of the first point cloud data to generate virtual second point cloud data of a second workpiece; the mechanical arm six-dimensional point location of the first workpiece is converted into a first homogeneous transformation matrix, a second homogeneous transformation matrix is obtained based on the first homogeneous transformation matrix and a hand-eye matrix of a two-dimensional camera on the mechanical arm, and then an initial mechanical arm six-dimensional point location of a second workpiece is obtained; symmetrically processing the first point cloud data in combination with the internal reference of the camera, converting the first point cloud data into virtual third point cloud data of the second workpiece, and adjusting the second homogeneous transformation matrix based on the deviation between the second point cloud data and the third point cloud data to obtain a third homogeneous transformation matrix; and real point cloud data of the second workpiece are obtained through the three-dimensional camera, and the real mechanical arm six-dimensional point location of the second workpiece is determined in combination with the third point cloud data and the third homogeneous transformation matrix.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of robotic arm workpiece detection, and in particular, to a method and device for symmetric calibration of symmetric workpiece points. Background Art

[0002] In the scenario of robotic arm workpiece defect detection, point setting is one of the key steps. Taking a steering knuckle workpiece as an example, usually more than a hundred points need to be set so that the robotic arm can carry a 2D camera to take pictures of the workpiece from all directions. After the point setting of one workpiece is completed, the points of the symmetric workpiece can be directly obtained through symmetry, thus reducing the workload of repeated setting. Currently, manual point symmetry calibration is adopted, that is, the robotic arm point symmetry calibration is carried out by an operator using a 2D camera to take pictures of the symmetric workpiece and comparing them with the pre-taken reference images. If the two images roughly match in symmetry, it is considered that the points are calibrated. However, the method of manually performing robotic arm point symmetry relies on visual observation, has low accuracy and strong subjectivity, cannot quantify the deviation, is greatly affected by environmental factors, has low efficiency and is difficult to automate, and is only applicable to simple symmetric workpieces and cannot meet the calibration requirements of high precision and complex tasks. Summary of the Invention

[0003] The present application provides a method and device for symmetric calibration of symmetric workpiece points to solve the problems of low calibration accuracy and low calibration efficiency caused by manually performing robotic arm point symmetry calibration in the prior art.

[0004] In a first aspect, the present application provides a symmetric calibration method for symmetric workpiece points, including: obtaining first point cloud data of a first workpiece in the base coordinate system of a robotic arm, and performing symmetric transformation processing on the first point cloud data to generate virtual second point cloud data of a second workpiece, where the first workpiece and the second workpiece are symmetric workpieces to be symmetrically calibrated; converting the 6D robotic arm position of the first workpiece into a first homogeneous transformation matrix, and obtaining a second homogeneous transformation matrix at the end of the robotic arm of the second workpiece based on the first homogeneous transformation matrix, the hand-eye matrix of a two-dimensional camera on the robotic arm, and the symmetric relationship between the first workpiece and the second workpiece; where the 6D robotic arm position of the first workpiece includes the coordinates corresponding to the point cloud data of the first workpiece; determining an initial 6D robotic arm position of the second workpiece based on the second homogeneous transformation matrix; where the initial 6D robotic arm position includes the coordinates corresponding to the point cloud data of the second workpiece; combining the internal parameters of the camera to convert the symmetrically processed first point cloud data into virtual third point cloud data of the second workpiece, and adjusting the second homogeneous transformation matrix based on the deviation between the second point cloud data and the third point cloud data to obtain a third homogeneous transformation matrix at the end of the robotic arm of the second workpiece; obtaining real point cloud data of the second workpiece through a three-dimensional camera, and determining the real 6D robotic arm position of the second workpiece based on the real point cloud data, the third point cloud data, and the third homogeneous transformation matrix, where the real 6D robotic arm position of the second workpiece includes the coordinates corresponding to the real point cloud data obtained by correcting the point cloud data corresponding to the initial position.

[0005] Second aspect, the present application provides a symmetric calibration device for symmetric workpiece points, including: a first processing module, configured to obtain first point cloud data of a first workpiece in the base coordinate system of a robotic arm, and perform symmetric transformation processing on the first point cloud data to generate virtual second point cloud data of a second workpiece, wherein the first workpiece and the second workpiece are symmetric workpieces to be symmetrically calibrated; a second processing module, configured to convert the 6D point position of the robotic arm of the first workpiece into a first homogeneous transformation matrix, and based on the first homogeneous transformation matrix, the hand-eye matrix of a two-dimensional camera on the robotic arm, and the symmetric relationship between the first workpiece and the second workpiece, obtain a second homogeneous transformation matrix at the end of the robotic arm of the second workpiece; wherein, the 6D point position of the robotic arm of the first workpiece includes the coordinates corresponding to the point cloud data of the first workpiece; a third processing module, configured to determine an initial 6D point position of the robotic arm of the second workpiece based on the second homogeneous transformation matrix; wherein, the initial 6D point position of the robotic arm includes the coordinates corresponding to the point cloud data of the second workpiece; a fourth processing module, configured to symmetrically process the first point cloud data and convert it into virtual third point cloud data of the second workpiece in combination with the internal parameters of the camera, and adjust the second homogeneous transformation matrix based on the deviation between the second point cloud data and the third point cloud data to obtain a third homogeneous transformation matrix at the end of the robotic arm of the second workpiece; a fifth processing module, configured to obtain real point cloud data of the second workpiece through a three-dimensional camera, and determine the real 6D point position of the robotic arm of the second workpiece based on the real point cloud data, the third point cloud data, and the third homogeneous transformation matrix, wherein, the real 6D point position of the robotic arm of the second workpiece includes the coordinates corresponding to the real point cloud data obtained by correcting the point cloud data corresponding to the initial point position.

[0006] Third aspect, the present application provides a device, including: at least one communication interface; at least one bus connected to the at least one communication interface; at least one processor connected to the at least one bus; at least one memory connected to the at least one bus, wherein, the processor is configured to execute the symmetric calibration method for symmetric workpiece points described in the first aspect of the present application above.

[0007] Fourth aspect, the present application further provides a computer storage medium, storing computer-executable instructions, and the computer-executable instructions are used to execute the symmetric calibration method for symmetric workpiece points described in the first aspect of the present application above.

[0008] The above technical solution provided by the embodiments of the present application has the following advantages compared with the prior art: Through the method provided by the embodiments of the present application, for the first workpiece and the second workpiece to be calibrated, first obtain the first point cloud data of the first workpiece in the base coordinate system of the robotic arm, and determine the virtual second point cloud data of the second workpiece based on the first point cloud data and symmetric transformation processing; then, convert the 6D position of the robotic arm of the first workpiece into the first homogeneous transformation matrix, and based on the first homogeneous transformation matrix, the hand-eye matrix of the 2D camera on the robotic arm, and the symmetric relationship between the first workpiece and the second workpiece, obtain the second homogeneous transformation matrix at the end of the robotic arm of the second workpiece, and then the initial 6D position of the robotic arm of the second workpiece can be obtained. Finally, obtain the real point cloud data of the second workpiece through the 3D camera, and determine the real 6D position of the robotic arm of the second workpiece based on the real point cloud data, the third point cloud data, and the third homogeneous transformation matrix. The real 6D position of the robotic arm is obtained after calibrating the initial 6D position of the robotic arm. Obtaining the real 6D position of the robotic arm of the second workpiece realizes the position calibration of the second workpiece, that is, the real 6D position of the robotic arm of the second workpiece is the position where the second workpiece is currently located, so that the first workpiece and the second workpiece are symmetrically arranged. It can be seen that in the present application, through the above method, the automatic symmetric setting of the workpiece position is realized, without manual symmetric calibration, improving the efficiency of workpiece position calibration, and having higher symmetric calibration accuracy compared with the manual method. BRIEF DESCRIPTION OF THE DRAWINGS The accompanying drawings herein are incorporated into the specification and form a part of the specification, showing embodiments consistent with the present invention and, together with the specification, are used to explain the principles of the present invention.

[0009] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the following will briefly introduce the drawings required for use in the description of the embodiments or the prior art. Obviously, for those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts.

[0010] One or more embodiments are illustrated by way of example in the accompanying drawings, and these exemplary illustrations do not limit the embodiments. Elements with the same reference numerals in the drawings are represented as similar elements, unless otherwise stated, and the drawings in the figures do not constitute a proportional limitation.

[0011] Figure 1 It is a flowchart of a symmetric calibration method for symmetric workpiece positions provided by the embodiments of the present application; Figure 2 It is a schematic diagram of a robotic arm workpiece symmetric calibration system provided by the embodiments of the present application; Figure 3 It is a schematic structural diagram of a symmetric calibration device for symmetric workpiece positions provided by the embodiments of the present application; Figure 4 This is a schematic structural diagram of the device provided by the embodiment of the present application. Specific embodiments

[0012] To make the objectives, technical solutions and advantages of the embodiments of the present application clearer, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present application. Apparently, the described embodiments are some, but not all, of the embodiments of the present application. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present application without creative efforts shall fall within the scope of protection of the present application.

[0013] The following disclosure provides many different embodiments or examples for implementing different structures of the present invention. To simplify the disclosure of the present invention, components and settings of specific examples are described below. Of course, they are only examples and are not intended to limit the present invention. In addition, the present invention may repeat reference numerals and / or letters in different examples. This repetition is for the purpose of simplification and clarity and does not in itself indicate the relationship between the various embodiments and / or settings discussed.

[0014] To solve the problem that in the prior art, manual methods are used for symmetric calibration of the positions of the robotic arm, resulting in low calibration accuracy and low calibration efficiency, the present application provides a symmetric calibration method for symmetric workpiece positions, as Figure 1 shown, the method includes: Step 101, obtaining first point cloud data of a first workpiece in the base coordinate system of the robotic arm, and performing symmetric transformation processing on the first point cloud data to generate virtual second point cloud data of a second workpiece, where the first workpiece and the second workpiece are symmetric workpieces to be symmetrically calibrated; The calibration method in this application can be processed by devices such as terminal devices and processors in the system. Specifically, the system includes a six-axis robotic arm, a 2D camera installed at the end of the robotic arm, a 3D camera fixed on a bracket, and a left workpiece and a right workpiece placed within the field of view of the 3D camera, and the left and right workpieces are symmetrical. In this regard, the left workpiece and the right workpiece correspond to the above-mentioned first workpiece and second workpiece. For example, if the left workpiece is the first workpiece, then the right workpiece is the second workpiece; if the left workpiece is the second workpiece, then the right workpiece is the first workpiece, that is, the first workpiece and the second workpiece in this application are symmetrical. It should be noted that the left workpiece and the right workpiece are only an example, and in other application scenarios, they can be an upper workpiece and a lower workpiece, or two workpieces with a symmetrical relationship. Based on this, in this application, the 3D camera can collect point cloud data of the left workpiece, and then filter the collected point cloud data to remove the outlier points to improve the data quality. Then, using the known 3D hand-eye matrix (i.e., the transformation matrix from the 3D camera coordinate system to the robotic arm base coordinate system), the filtered point cloud data is transformed from the 3D camera coordinate system to the robotic arm base coordinate system.

[0015] In addition, the first workpiece and the second workpiece in this application have a symmetrical relationship under normal circumstances. For example, the first workpiece and the second workpiece are symmetrical about the central plane from left to right. However, in actual situations, the symmetrical relationship between the two may deviate due to certain reasons. Therefore, it is necessary to perform symmetry calibration on the two.

[0016] Step 102: Convert the 6D pose of the robotic arm of the first workpiece into a first homogeneous transformation matrix, and based on the first homogeneous transformation matrix, the hand-eye matrix of the 2D camera on the robotic arm, and the symmetrical relationship between the first workpiece and the second workpiece, obtain the second homogeneous transformation matrix at the end of the robotic arm of the second workpiece; among them, the 6D pose of the robotic arm of the first workpiece includes the coordinates corresponding to the point cloud data of the first workpiece. It should be noted that the 6D pose of the robotic arm of the first workpiece is preset, that is, the 6D pose of the robotic arm of the first workpiece is known, and the 6D pose of the robotic arm of the first workpiece is converted into a homogeneous transformation matrix T end (corresponding to the first homogeneous transformation matrix) to represent the pose of the end of the robotic arm in the base coordinate system. Among them, is the translation vector, It is the RPY angle (Roll-Pitch-Yaw angle), which needs to be converted into a rotation matrix. The 6D position of the robotic arm is calculated from the point cloud data of the corresponding workpiece. Since in this scenario, the robotic arm carries a 2D camera to take pictures around the workpiece, the robotic arm and the workpiece can be regarded as a whole. Any pose transformation of the workpiece should also be correspondingly transformed by the robotic arm. That is to say, by calculating the transformation of the workpiece, the transformation of the robotic arm can be deduced, that is, the position of the corresponding robotic arm can be determined through the point cloud of the workpiece. In addition, the hand-eye matrix of the 2D camera and the hand-eye matrix of the 3D camera in this application are also preset, that is, the hand-eye matrix of the 2D camera and the hand-eye matrix of the 3D camera in this application are also known.

[0017] In addition, the symmetry relationship between the first workpiece and the second workpiece in this application may mean that the two are symmetric based on a certain plane, that is, the plane can be determined in advance, but due to certain reasons, the first workpiece and the second workpiece may not be symmetric based on this plane, so it is necessary to perform symmetry calibration on it.

[0018] Based on this, in this application, the 6D position of the robotic arm and the homogeneous transformation matrix can be mutually converted through corresponding formulas. For example, the 6D position is , where is the translation vector, is the RPY angle. In a specific example, if the order of the RPY angles is rz, ry, rx, the calculation formula for the rotation matrix R is as follows:

[0019] where, R x , R y , R z are the rotation matrices around x, y, and z respectively, and the specific forms are:

[0020] Furthermore, combining the rotation matrix R and the translation vector forms the homogeneous transformation matrix T end (the first homogeneous transformation matrix), and its form is:

[0021] After obtaining the homogeneous transformation matrix T end , since the hand-eye matrix of the 2D camera on the robotic arm is known, therefore, based on the symmetry relationship between the first workpiece and the second workpiece, the homogeneous transformation matrix T end can be converted to obtain the homogeneous transformation matrix at the end of the robotic arm of the second workpiece, that is, the second homogeneous transformation matrix.

[0022] Step 103: Determine the initial 6D robot arm positions of the second workpiece based on the second homogeneous transformation matrix. Among them, the initial 6D robot arm positions include the coordinates corresponding to the point cloud data of the second workpiece. As can be seen from the above Step 102, the 6D robot arm positions of the first workpiece can be converted into the first homogeneous transformation matrix. Therefore, after obtaining the second homogeneous transformation matrix of the second workpiece, the second homogeneous transformation matrix can also be converted into the 6D robot arm positions of the second workpiece. However, the 6D robot arm positions of the second workpiece are only initial positions. Because when the first workpiece and the second workpiece are not completely symmetrical, the optical center of the camera may not be the central position of both. Therefore, it is necessary to correct the initial 6D robot arm positions of the second workpiece to obtain more accurate 6D robot arm positions of the second workpiece.

[0023] Step 104: Combine the internal parameters of the camera to symmetrically process the first point cloud data and convert it into the virtual third point cloud data of the second workpiece, and adjust the second homogeneous transformation matrix based on the deviation between the second point cloud data and the third point cloud data to obtain the third homogeneous transformation matrix at the end of the robot arm of the second workpiece. Since the optical center of the camera is not strictly centered, there is a deviation in the virtual second point cloud data of the second workpiece generated directly through symmetric transformation. The third point cloud data is obtained by symmetrically processing the first point cloud data in combination with the internal parameters of the camera, which is equivalent to the correct reference when the optical center of the camera is strictly centered. By calculating the deviation between the second point cloud data and the third point cloud data, the pose error caused by the camera installation error (optical center offset) can be quantified, providing a basis for the correction of the robot arm trajectory. It can be seen that in this step, the correction of the virtual point cloud data of the second workpiece is completed, that is, the homogeneous transformation matrix obtained from the virtual point cloud data is corrected, that is, the second homogeneous transformation matrix is adjusted to obtain the third homogeneous transformation matrix.

[0024] Step 105: Obtain the real point cloud data of the second workpiece through a 3D camera, and determine the real 6D robot arm positions of the second workpiece based on the real point cloud data, the third point cloud data, and the third homogeneous transformation matrix. Among them, the real 6D robot arm positions of the second workpiece include the coordinates corresponding to the real point cloud data after correcting the point cloud data corresponding to the initial positions.

[0025] As can be seen from the above Step 104, after realizing the correction of the virtual point cloud data of the second workpiece, the corrected virtual third homogeneous transformation matrix is obtained. Then, after correcting the virtual point cloud data (the third point cloud data) and the virtual third homogeneous transformation matrix based on the real point cloud data of the second workpiece, the current real and accurate 6D robot arm positions of the second workpiece symmetrical to the first workpiece are obtained.

[0026] Through the above steps 101 to 105 of the present application, for the first workpiece and the second workpiece to be calibrated, first obtain the first point cloud data of the first workpiece in the robot base coordinate system, and determine the virtual second point cloud data of the second workpiece based on the first point cloud data and symmetric transformation processing; then, convert the 6D pose of the robot for the first workpiece into the first homogeneous transformation matrix, and based on the first homogeneous transformation matrix, the hand-eye matrix of the 2D camera on the robot, and the symmetric relationship between the first workpiece and the second workpiece, obtain the second homogeneous transformation matrix at the end of the robot for the second workpiece, and then the initial 6D pose of the robot for the second workpiece can be obtained. Finally, obtain the real point cloud data of the second workpiece through the 3D camera, and determine the real 6D pose of the robot for the second workpiece based on the real point cloud data, the third point cloud data, and the third homogeneous transformation matrix. This real 6D pose of the robot is obtained after calibrating the initial 6D pose of the robot. Obtaining the real 6D pose of the robot for the second workpiece realizes the pose calibration of the second workpiece, that is, the real 6D pose of the robot for the second workpiece is the position where the second workpiece is currently located, so that the first workpiece and the second workpiece are symmetrically arranged. It can be seen that in the present application, through the above method, the automatic symmetric setting of the workpiece pose is realized, without manual symmetric calibration, improving the efficiency of workpiece pose calibration, and having higher symmetric calibration accuracy compared with the manual method.

[0027] In the present application, for the method of obtaining the first point cloud data of the first workpiece in the robot base coordinate system involved in the above step 101 and performing symmetric transformation on the first point cloud data to generate the virtual second point cloud data of the second workpiece, it may further include: Step 11, collect the point cloud data of the first workpiece through the 3D camera, and convert the collected point cloud data into the first point cloud data in the robot base coordinate system in combination with the 3D hand-eye matrix; Taking Figure 2 as an example, the method involved in this step 11 may specifically be: collect the point cloud data of the left workpiece (the first workpiece) through the 3D camera. First, perform filtering processing on the collected point cloud data to remove the outlier points therein to improve the data quality. Then, use the known 3D hand-eye matrix (that is, the conversion matrix from the 3D camera coordinate system to the robot base coordinate system) to convert the filtered point cloud data from the 3D camera coordinate system to the first point cloud data in the robot base coordinate system. This conversion process can be represented by the following formula (1):

[0028] where P 3d is the point cloud data in the 3D camera coordinate system, T 3d is the 3D hand-eye matrix, and P base is the converted point cloud data (the first point cloud data) in the robot base coordinate system.

[0029] Step 12: Obtain the equation of the symmetry plane, and map the first point cloud data to the other side of the symmetry plane based on the equation to generate the second point cloud data in the base coordinate system of the robotic arm.

[0030] In this application, for the convenience of calculation and analysis, a simple reference plane can be arbitrarily selected. For example, if the symmetry plane is the yz plane, it is used as the assumed symmetry plane. Based on this symmetry plane, after mirroring the left workpiece with respect to this plane, its mirror image result will be compared and matched with the actual right workpiece, so as to verify the correctness of symmetry or calculate the necessary adjustment parameters. Therefore, choosing a simple reference plane will not affect the final matching accuracy and can simplify the calculation process. In addition, the virtual second point cloud data in this application is used to generate the initial 6D position points of the robotic arm for the subsequent initial second workpiece.

[0031] Regarding this, still taking Figure 2 as an example, the method involved in this step 12 can specifically be: Calculate the centroid center of the left workpiece through formula (2) and use it as a point on the plane. The calculation formula for the centroid is:

[0032] where, is the coordinate of the i-th point in the point cloud, and n is the total number of points in the point cloud. The calculated centroid is used as a point on the plane c. At the same time, the x-axis direction vector is selected as the normal vector of the plane c.

[0033] According to the plane equation formula (3) as follows:

[0034] where, (A, B, C) is the normal vector of the plane, is a point on the plane. Substitute the known centroid Center coordinates and the normal vector (1, 0, 0) into it, and the equation of the symmetry plane is obtained as formula (4):

[0035] Use the symmetry plane equation , and perform a symmetry transformation on the point cloud data of the left workpiece. For each point in the point cloud of the left workpiece, the calculation formula for its symmetric point is:

[0036] Through the above transformation, map the point cloud data (left_cloud) of the left workpiece to the other side of the symmetry plane to generate a virtual point cloud (right_cloud1) of the right workpiece. The virtual point cloud data of this right workpiece is spatially symmetric with the point cloud of the left workpiece with respect to the symmetry plane Completely symmetric.

[0037] In an alternative implementation manner of the embodiment of the present application, the method for obtaining the second homogeneous transformation matrix at the end of the manipulator of the second workpiece based on the first homogeneous transformation matrix, the hand-eye matrix of the 2D camera on the manipulator, and the symmetry relationship between the first workpiece and the second workpiece in step 102 of the embodiment of the present application may further include: Step 21: Obtain the first position of the origin of the camera coordinate system of the 2D camera in the base coordinate system of the manipulator based on the first homogeneous transformation matrix and the hand-eye matrix of the 2D camera on the manipulator; For this, first, the first homogeneous transformation matrix needs to be determined, that is, the 6D position of the manipulator of the first workpiece is converted into the first homogeneous transformation matrix. Figure 2 Taking the left workpiece (the first workpiece) as an example, the 6D position of the manipulator is converted into the homogeneous transformation matrix T end , which is used to represent the pose of the end of the manipulator in the base coordinate system. Among them, is the translation vector, is the RPY angle (Roll-Pitch-Yaw angle), and it needs to be converted into a rotation matrix. For example, if the order of the RPY angle is rz, ry, rx, the calculation formula for the rotation matrix R is:

[0038] Among them, , , are the rotation matrices around the x, y, and z axes respectively, and the specific forms are:

[0039] The rotation matrix R and the translation vector are combined into the homogeneous transformation matrix T end (the first homogeneous transformation matrix), and its form is:

[0040] After obtaining T end , multiply the manipulator matrix T end by the hand-eye matrix T 2d of the 2D camera to obtain the position of the origin of the camera coordinate system in the base coordinate system of the manipulator (the first position), and its calculation formula is:

[0041] Step 22: Multiply the first position by the unit vectors corresponding to the three axis directions in the camera coordinate system respectively to obtain the three positions of the three axis points in the three axis directions in the base coordinate system of the manipulator; Based on this, on the basis of step 21, continue to extract the translation vector t camera_origin from T camera_origin , which is the position of the origin of the camera coordinate system in the base coordinate system of the robotic arm:

[0042] To determine the three-axis directions of the camera coordinate system, multiply the robotic arm matrix T end by the hand-eye matrix T 2d of the 2D camera, and then multiply by the unit vectors , , respectively, to obtain the positions of the three axis points of the camera coordinate system in the base coordinate system of the robotic arm. These three positions can be any point on the X-axis, any point on the Y-axis, and any point on the Z-axis. The calculation formula is:

[0043] Step 23, based on the equation of the symmetry plane, map the first position and the three positions to the other side of the symmetry plane to determine the positions corresponding to the origin position and the three axis points in the three axis directions of the second workpiece in the camera coordinate system of the 2D camera in the base coordinate system of the robotic arm; By using the plane equation formulas (4) and (5) to symmetric the origin and the three axis points to one side of the plane, the origin and the axis points , , of the conceived, i.e., virtual right workpiece (second workpiece) camera coordinate system can be obtained. Further, based on how the origin position and the three positions in the three axis directions of the first workpiece in the camera coordinate system are mapped to the base coordinate system of the robotic arm in steps 21 to 22 above, the origin and the axis points , , of the right workpiece (second workpiece) camera coordinate system can be mapped to the base coordinate system of the robotic arm.

[0044] Step 24, based on the corresponding positions, determine the origin position and the three axis points in the three axis directions of the second workpiece in the camera coordinate system of the 2D camera, and construct the fourth homogeneous transformation matrix of the second workpiece in the camera coordinate system; In this regard, taking Figure 2 as an example, according to the origin and the three axis points , , of the right workpiece camera coordinate system obtained in the above steps, the rotation matrix R right and the translation vector t right of the right workpiece camera coordinate system can be calculated., and then construct the homogeneous transformation matrix T camera_oright (the fourth homogeneous transformation matrix):

[0045] Step 25, multiply the fourth homogeneous transformation matrix by the inverse matrix of the hand-eye matrix to obtain the second homogeneous transformation matrix.

[0046] Regarding this, taking Figure 2 as an example, multiply the matrix T camera_oright of the right workpiece camera coordinate system by the inverse matrix of the 2D camera hand-eye matrix to obtain the homogeneous transformation matrix (the second homogeneous transformation matrix) of the end of the right workpiece robotic arm:[[]]

[0047] It can be seen that through the above steps 21 to 25, the homogeneous transformation matrix (the second homogeneous transformation matrix) of the end of the second workpiece robotic arm can be obtained. Based on the transformation relationship between the homogeneous transformation matrix and the 6D position of the robotic arm, the initial 6D position of the robotic arm of the second workpiece can be obtained based on this homogeneous transformation matrix of the end of the second workpiece robotic arm. Because, due to the installation of the lens, the optical center of the camera may not be located at the center of the image, so the image obtained by symmetry about the optical center is not symmetric about the width of the image resolution. Therefore, the position obtained at this time is only a preliminary position of the right workpiece robotic arm, and it is necessary to further combine the image information of the 2D camera to correct this position through feature point comparison and deviation calculation to obtain a more accurate robotic arm position.

[0048] In an alternative embodiment of the present application, for the method of symmetrically processing the first point cloud data in combination with the internal parameters of the camera in step 104 above and converting it into the virtual third point cloud data of the second workpiece, and determining the third homogeneous transformation matrix of the end of the robotic arm of the second workpiece based on the second point cloud data and the third point cloud data, it may further include:[[]] Step 31, obtain the pixel coordinates of the first workpiece based on the first point cloud data and the internal parameters of the 2D camera, and generate the first image and the first depth map of the first workpiece; Step 32, perform symmetric processing on the first image and the first depth map to obtain the second image and the second depth map of the virtual second workpiece; Regarding steps 31 and 32, in a specific example, for each point in the point cloud data of the left workpiece,[[]] project it onto the image plane using the internal parameters of the camera to obtain the corresponding pixel coordinates

[0049] Among them,​​​ is the focal length of the camera, and is the optical center of the camera.

[0050] Based on the pixel coordinates, the corresponding left workpiece can be generated, and the generated left workpiece image and the depth map are symmetrically processed with respect to the width of the image resolution to obtain the symmetric image and depth map of the right workpiece. Specifically, for each pixel point in the image , its symmetric point is calculated as follows:

[0051] where width refers to the horizontal resolution of the camera; Step 33: Based on the internal parameters of the two-dimensional camera and in combination with the second image and the second depth map, obtain the third point cloud data of the second workpiece; In this regard, in a specific example, in combination with the internal parameters of the camera, the symmetric image and depth map are re-converted into point cloud data to generate a completely symmetric right workpiece point cloud 2 (right_cloud2) (i.e., the third point cloud data). The specific process is as follows: For each pixel point in the symmetric image and depth map , calculate its three-dimensional coordinates in the camera coordinate system using the camera internal parameters and the depth value. The calculation formula is:

[0052] Combine all the three-dimensional coordinates into point cloud data to obtain right_cloud2. Through T 2d and T end_right1 transform right_cloud2 from the camera coordinate system to the robotic arm base coordinate system.

[0053] Step 34: Determine the corresponding first rigid body transformation matrix based on the deviation between the second point cloud data and the third point cloud data; In this regard, in a specific example, for right_cloud1 (the second point cloud data) and right_cloud2 (the third point cloud data), calculate the rigid body transformation matrix Match1 through closest point matching and error minimization.

[0054] It should be noted that the closest point matching and error minimization of the above right_cloud1 and right_cloud2 can be calculated using the ICP (Iterative Closest Point) matching algorithm.

[0055] Step 35: Multiply the second homogeneous transformation matrix by the first rigid body transformation matrix to obtain the third homogeneous transformation matrix.

[0056] In this regard, multiply Tend_right1 Multiply by Match1 on the left to obtain T end_right2 . The specific formula is:

[0057] Since the second point cloud data is the basis for determining the initial 6D position of the second workpiece, and the deviation between the second point cloud data and the third point cloud data is determined through the above steps 31 to 35 to adjust the second homogeneous transformation matrix to obtain the third homogeneous transformation matrix. Based on the conversion between the homogeneous transformation matrix and the 6D position of the robotic arm, the corresponding 6D position of the robotic arm can be obtained based on the third homogeneous transformation matrix, that is, the first adjustment of the initial 6D position of the robotic arm is realized. Subsequently, the deviation between the virtual point cloud and the real point cloud will be used to perform the second adjustment on the 6D position of the robotic arm to obtain the real and accurate 6D position of the robotic arm of the second workpiece.

[0058] In an alternative embodiment of the present application, for the method of obtaining the real point cloud data of the second workpiece through the 3D camera and determining the real 6D position of the robotic arm of the second workpiece based on the real point cloud data, the third point cloud data, and the third homogeneous transformation matrix in step 105, it may further include: Step 41, photograph the second workpiece through the 3D camera to obtain the real fourth point cloud data of the second workpiece; Step 42, convert the fourth point cloud data to the robotic arm base coordinate system to obtain the corresponding fifth point cloud data; Step 43, determine the corresponding second rigid body transformation matrix based on the fifth point cloud data and the third point cloud data; Step 44, multiply the third homogeneous transformation matrix by the second rigid body transformation matrix to obtain the real fifth homogeneous transformation matrix at the end of the robotic arm of the second workpiece; Step 45, convert the fifth homogeneous transformation matrix into the real robotic arm position of the second workpiece.

[0059] For the above steps 41 to 45, taking Figure 2 as an example, in a specific example, it may be: Use a 3D camera to photograph the real right workpiece to obtain the point cloud of the actual right workpiece (real_right_cloud). Use the hand-eye matrix of the 3D camera and convert it to the robotic arm base coordinate system through formula (1). Calculate the rigid body transformation matrix Match2 for right_cloud2 and real_right_cloud through closest point matching and minimizing the error. Multiply T end_right2 by Match2 on the left to obtain T end_real_right . The specific formula is:

[0060] Finally, based on the relationship between the end of the robotic arm and the robotic arm points, the points of the real right workpiece robotic arm are finally obtained.

[0061] In the embodiment of the present application, after determining the points of the robotic arm of the real second workpiece, the result can also be verified. Therefore, the method of the embodiment of the present application may further include: Step 51: Determine the sixth point cloud data of the second workpiece in the two-dimensional camera coordinate system based on the real point cloud data, and determine the image point cloud of the second workpiece based on the sixth point cloud data; Step 52: Determine the seventh point cloud data of the second workpiece in the two-dimensional camera coordinate system based on the first point cloud data, and determine the image point cloud of the first workpiece based on the seventh point cloud data; Step 53: Determine the point cloud overlap degree between the image point cloud of the second workpiece and the image point cloud of the first workpiece; Step 54: When the overlap degree exceeds a preset threshold, determine that the real robotic arm points of the second workpiece meet the calibration standard of the preset symmetric workpiece points.

[0062] For the above steps 51 to 54, in a specific example, it can be: Multiply the point cloud real_right_cloud in the robotic arm coordinate system of the right workpiece by and then multiply by to obtain the point cloud of the right workpiece in the 2D camera coordinate system:

[0063] Project it onto the pixel coordinate system according to formula (16) in combination with the camera internal parameters to obtain the image of the right workpiece . Then, symmetric the image of the right workpiece with respect to the width of the resolution according to formula (17) to obtain the symmetric image of the right workpiece . Convert the image to an image point cloud according to the resolution and set .

[0064] Similarly, convert to an image point cloud according to the resolution and set z = 0. Calculate the overlap degree Overlap of the left workpiece image points and the right workpiece image point cloud according to formula (22):

[0065] where Overlap is and the ratio of the number of points N with the same (x, y) coordinates in overlap to the total number of points N total .

[0066] In a specific example, taking the preset threshold as 0.95, if the overlap degree is greater than 0.95, it indicates that the accuracy of the workpiece point position symmetry result of this application reaches the required standard.

[0067] It can be seen from the above description of this application that the symmetry calibration process of the workpiece point position in this application includes two processes: 1) Preliminary symmetry: That is, based on a symmetry plane, perform a symmetry operation on the point cloud of the left workpiece to generate a virtual right workpiece point cloud (cloud1), which will be used for subsequent registration and deviation correction. At the same time, according to the position of the 2D camera on the left workpiece in the robot base coordinate system, combined with this symmetry plane, calculate the position of the corresponding 2D camera of the right workpiece on cloud1. Finally, using the known coordinate transformation relationship (i.e., the hand-eye matrix of the 2D camera) between the 2D camera and the end of the robot arm, the pose of the end of the right workpiece robot arm in the robot base coordinate system can be deduced to obtain a preliminarily estimated right workpiece point position (i.e., virtual right workpiece point position 1).

[0068] 2) Deviation correction: Assume that the right workpiece can obtain a symmetric robot arm trajectory by symmetrically copying the left robot arm trajectory. Then, the image and depth map obtained by the camera of the right workpiece should theoretically be symmetric with the left workpiece results in a left-right symmetric relationship. Therefore, perform a left-right symmetry operation on the image and depth map of the left workpiece to generate a virtual right workpiece image and depth map. Then, construct a new virtual right workpiece point cloud (denoted as cloud2) based on this set of image data. Subsequently, register the point cloud cloud1 generated by plane symmetry with cloud2 to obtain a transformation matrix between the point clouds. Since the pose change of the point cloud should be consistent with the pose change of the end of the robot arm, this transformation matrix can be left-multiplied on the initially estimated right workpiece robot arm point position 1 to obtain the right workpiece robot arm point position after deviation correction.

[0069] Corresponding to the above Figure 1 , this application provides a symmetry calibration device for symmetric workpiece point positions, as Figure 3 shown, this device includes: The first processing module 302 is used to obtain the first point cloud data of the first workpiece in the robot base coordinate system and perform a symmetry transformation process on the first point cloud data to generate the virtual second point cloud data of the second workpiece, where the first workpiece and the second workpiece are symmetric workpieces to be symmetrically calibrated; The second processing module 304 is configured to convert the 6D point positions of the robotic arm of the first workpiece into a first homogeneous transformation matrix, and obtain a second homogeneous transformation matrix at the end of the robotic arm of the second workpiece based on the first homogeneous transformation matrix, the hand-eye matrix of the 2D camera on the robotic arm, and the symmetry relationship between the first workpiece and the second workpiece; wherein, the 6D point positions of the robotic arm of the first workpiece include the coordinates corresponding to the point cloud data of the first workpiece. The third processing module 306 is configured to determine the initial 6D point positions of the robotic arm of the second workpiece based on the second homogeneous transformation matrix; wherein, the initial 6D point positions of the robotic arm include the coordinates corresponding to the point cloud data of the second workpiece. The fourth processing module 308 is configured to symmetrically process the first point cloud data in combination with the internal parameters of the camera and convert it into virtual third point cloud data of the second workpiece, and adjust the second homogeneous transformation matrix based on the deviation between the second point cloud data and the third point cloud data to obtain a third homogeneous transformation matrix at the end of the robotic arm of the second workpiece. The fifth processing module 310 is configured to obtain the real point cloud data of the second workpiece through a 3D camera, and determine the real 6D point positions of the robotic arm of the second workpiece based on the real point cloud data, the third point cloud data, and the third homogeneous transformation matrix, wherein the real 6D point positions of the robotic arm of the second workpiece include the coordinates corresponding to the real point cloud data after correcting the point cloud data corresponding to the initial point positions.

[0070] In an alternative embodiment of the present application, the first processing module in the embodiment of the present application may further include: a first processing unit configured to collect the point cloud data of the first workpiece through a 3D camera and convert the collected point cloud data into the first point cloud data in the robotic arm base coordinate system in combination with the 3D hand-eye matrix; a second processing unit configured to obtain the equation of the symmetry plane and map the first point cloud data to the other side of the symmetry plane based on the equation to generate the second point cloud data in the robotic arm base coordinate system.

[0071] In an alternative implementation of the embodiment of the present application, the second processing module in the embodiment of the present application may further include: a third processing unit, configured to obtain the first position of the origin of the camera coordinate system of the two-dimensional camera on the robotic arm based on the first homogeneous transformation matrix and the hand-eye matrix of the two-dimensional camera on the robotic arm; a fourth processing unit, configured to multiply the first position by the unit vectors corresponding to the three axis directions in the camera coordinate system respectively to obtain the three positions of the three axis points in the three axis directions in the robotic arm base coordinate system; a fifth processing unit, configured to map the first position and the three positions to the other side of the symmetry plane based on the equation of the symmetry plane to determine the positions corresponding to the origin position of the second workpiece in the camera coordinate system of the two-dimensional camera and the three axis points in the three axis directions in the robotic arm base coordinate system; a sixth processing unit, configured to determine the origin position of the second workpiece in the camera coordinate system of the two-dimensional camera and the three axis points in the three axis directions based on the corresponding positions, and construct the fourth homogeneous transformation matrix of the second workpiece in the camera coordinate system; a seventh processing unit, configured to multiply the fourth homogeneous transformation matrix by the inverse matrix of the hand-eye matrix to obtain the second homogeneous transformation matrix.

[0072] In an alternative implementation of the embodiment of the present application, the fourth processing module in the embodiment of the present application may further include: an eighth processing unit, configured to obtain the pixel coordinates of the first workpiece based on the first point cloud data and the internal parameters of the two-dimensional camera, and generate the first image and the first depth map of the first workpiece based on the pixel coordinates; a ninth processing unit, configured to perform symmetry processing on the first image and the first depth map to obtain the second image and the second depth map of the virtual second workpiece; a tenth processing unit, configured to obtain the third point cloud data of the second workpiece based on the internal parameters of the two-dimensional camera and in combination with the second image and the second depth map; an eleventh processing unit, configured to determine the corresponding first rigid body transformation matrix based on the deviation between the second point cloud data and the third point cloud data; a twelfth processing unit, configured to multiply the second homogeneous transformation matrix by the first rigid body transformation matrix to obtain the third homogeneous transformation matrix.

[0073] In an alternative implementation of the embodiment of the present application, the fifth processing module in the embodiment of the present application may further include: a thirteenth processing unit, configured to photograph the second workpiece through the three-dimensional camera to obtain the real fourth point cloud data of the second workpiece; a fourteenth processing unit, configured to convert the fourth point cloud data to the robotic arm base coordinate system to obtain the corresponding fifth point cloud data; a fifteenth processing unit, configured to determine the corresponding second rigid body transformation matrix based on the fifth point cloud data and the third point cloud data; a sixteenth processing unit, configured to multiply the third homogeneous transformation matrix by the second rigid body transformation matrix to obtain the real fifth homogeneous transformation matrix of the end of the robotic arm of the second workpiece; a seventeenth processing unit, configured to convert the fifth homogeneous transformation matrix into the real robotic arm point position of the second workpiece.

[0074] In an alternative embodiment of the embodiment of the present application, the device in the embodiment of the present application may further include: a sixth processing module, configured to determine sixth point cloud data of the second workpiece in the two-dimensional camera coordinate system based on the real point cloud data, and determine the image point cloud of the second workpiece based on the sixth point cloud data; a seventh processing module, configured to determine seventh point cloud data of the second workpiece in the two-dimensional camera coordinate system based on the first point cloud data, and determine the image point cloud of the first workpiece based on the seventh point cloud data; an eighth processing module, configured to determine the point cloud overlap degree between the image point cloud of the second workpiece and the image point cloud of the first workpiece; a ninth processing module, configured to determine that the actual robotic arm position of the second workpiece meets the calibration standard of the preset symmetric workpiece position when the overlap degree exceeds a preset threshold.

[0075] As Figure 4 shown, an embodiment of the present application provides a device, including a processor 411, a communication interface 412, a memory 413, and a communication bus 414. Among them, the processor 411, the communication interface 412, and the memory 413 complete mutual communication through the communication bus 414. The memory 413 is used to store a computer program. In an embodiment of the present application, when the processor 411 is used to execute the program stored on the memory 413, it implements the control method for symmetric calibration of symmetric workpiece positions provided in any of the foregoing method embodiments, and the functions it performs are similar, so details are not described herein again.

[0076] An embodiment of the present application further provides a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, it implements the steps of the symmetric calibration method for symmetric workpiece positions provided in any of the foregoing method embodiments.

[0077] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place, or may be distributed to multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0078] Through the description of the above embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus a general hardware platform, and of course, it can also be implemented by hardware. Based on such an understanding, the essence of the above technical solution, or the part that contributes to the related technology, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions to enable a computer device (which can be a personal computer, a server, or a network device, etc.) to execute the methods described in each embodiment or some parts of the embodiments.

[0079] It should be understood that the terms used herein are for the purpose of describing specific example embodiments only and are not intended to be limiting. Unless the context clearly indicates otherwise, the singular forms "a", "an", and "the" as used herein may also include the plural forms. The terms "comprising", "including", "containing", and "having" are inclusive and thus specify the presence of the stated features, steps, operations, elements, and / or components, but do not preclude the presence or addition of one or more other features, steps, operations, elements, components, and / or combinations thereof. The method steps, processes, and operations described herein are not to be construed as necessarily requiring them to be performed in the particular order described or illustrated, unless the order of performance is explicitly stated. It should also be understood that additional or alternative steps may be used.

[0080] The above are only specific embodiments of the present invention, enabling those skilled in the art to understand or implement the present invention. Various modifications to these embodiments will be obvious to those skilled in the art, and the general principles defined herein can be implemented in other embodiments without departing from the spirit or scope of the present invention. Therefore, the present invention will not be limited to these embodiments shown herein, but rather will be accorded the widest scope consistent with the principles and novel features claimed herein.

Claims

1. A symmetric calibration method for symmetric workpiece points, characterized in that Including: Obtain the first point cloud data of the first workpiece in the base coordinate system of the robotic arm, and perform symmetric transformation processing on the first point cloud data to generate virtual second point cloud data of the second workpiece, where the first workpiece and the second workpiece are symmetric workpieces to be symmetrically calibrated; Convert the 6D position of the robotic arm of the first workpiece into a first homogeneous transformation matrix, and based on the first homogeneous transformation matrix, the hand-eye matrix of the 2D camera on the robotic arm, and the symmetric relationship between the first workpiece and the second workpiece, obtain the second homogeneous transformation matrix at the end of the robotic arm of the second workpiece; wherein, the 6D position of the robotic arm of the first workpiece includes the coordinates corresponding to the point cloud data of the first workpiece; Determine the initial 6D position of the robotic arm of the second workpiece based on the second homogeneous transformation matrix; wherein, the initial 6D position of the robotic arm includes the coordinates corresponding to the point cloud data of the second workpiece; Combine the internal parameters of the camera to convert the symmetrically processed first point cloud data into virtual third point cloud data of the second workpiece, and adjust the second homogeneous transformation matrix based on the deviation between the second point cloud data and the third point cloud data to obtain the third homogeneous transformation matrix at the end of the robotic arm of the second workpiece; Obtain the real point cloud data of the second workpiece through a 3D camera, and determine the real 6D position of the robotic arm of the second workpiece based on the real point cloud data, the third point cloud data, and the third homogeneous transformation matrix, where the real 6D position of the robotic arm of the second workpiece includes the coordinates corresponding to the real point cloud data after correcting the point cloud data corresponding to the initial position.

2. The method according to claim 1, wherein Obtaining the first point cloud data of the first workpiece in the base coordinate system of the robotic arm and performing symmetric transformation on the first point cloud data to generate virtual second point cloud data of the second workpiece includes: Collect the point cloud data of the first workpiece through a 3D camera, and convert the collected point cloud data into the first point cloud data in the base coordinate system of the robotic arm in combination with the 3D hand-eye matrix; Obtain the equation of the symmetric plane, and map the first point cloud data to the other side of the symmetric plane based on the equation to generate the second point cloud data in the base coordinate system of the robotic arm.

3. The method according to claim 1, characterized in that, Based on the first homogeneous transformation matrix, the hand-eye matrix of the 2D camera on the robotic arm, and the symmetric relationship between the first workpiece and the second workpiece, obtaining the second homogeneous transformation matrix at the end of the robotic arm of the second workpiece includes: Based on the first homogeneous transformation matrix and the hand-eye matrix of the 2D camera on the robotic arm, obtain the first position of the origin of the camera coordinate system of the 2D camera in the base coordinate system of the robotic arm; Multiply the first position by the unit vectors corresponding to the three axis directions in the camera coordinate system respectively to obtain the three positions of the three axis points in the three axis directions in the base coordinate system of the robotic arm; Map the first position and the three positions to the other side of the symmetric plane based on the equation of the symmetric plane to determine the position corresponding to the origin position of the second workpiece in the camera coordinate system of the 2D camera and the three positions of the three axis points in the three axis directions in the base coordinate system of the robotic arm; Determine the origin position of the second workpiece in the camera coordinate system of the 2D camera and the three axis point positions in the three axis directions based on the corresponding positions, and construct the fourth homogeneous transformation matrix of the second workpiece in the camera coordinate system; Multiply the fourth homogeneous transformation matrix by the inverse matrix of the hand-eye matrix to obtain the second homogeneous transformation matrix.

4. The method according to claim 1, characterized in that, Symmetrically process the first point cloud data in combination with the internal parameters of the camera and convert it into the virtual third point cloud data of the second workpiece, and adjust the second homogeneous transformation matrix based on the deviation between the second point cloud data and the third point cloud data to obtain the third homogeneous transformation matrix at the end of the robotic arm of the second workpiece, including: Obtain the pixel coordinates of the first workpiece based on the first point cloud data and the internal parameters of the 2D camera, and generate the first image and the first depth map of the first workpiece based on the pixel coordinates; Symmetrically process the first image and the first depth map to obtain the second image and the second depth map of the virtual second workpiece; Based on the internal parameters of the 2D camera, and in combination with the second image and the second depth map, obtain the third point cloud data of the second workpiece; Determine the corresponding first rigid body transformation matrix based on the deviation between the second point cloud data and the third point cloud data; Multiply the second homogeneous transformation matrix by the first rigid body transformation matrix to obtain the third homogeneous transformation matrix.

5. The method according to claim 4, wherein Obtain the real point cloud data of the second workpiece through the 3D camera, and determine the real robotic arm 6D position of the second workpiece based on the real point cloud data, the third point cloud data, and the third homogeneous transformation matrix, including: Take a picture of the second workpiece through the 3D camera to obtain the real fourth point cloud data of the second workpiece; Convert the fourth point cloud data into the robotic arm base coordinate system to obtain the corresponding fifth point cloud data; Determine the corresponding second rigid body transformation matrix based on the fifth point cloud data and the third point cloud data; Multiply the third homogeneous transformation matrix by the second rigid body transformation matrix to obtain the real fifth homogeneous transformation matrix at the end of the robotic arm of the second workpiece; Convert the fifth homogeneous transformation matrix into the real robotic arm position of the second workpiece.

6. The method according to claim 1, characterized in that, The method further includes: Determine the sixth point cloud data of the second workpiece in the 2D camera coordinate system based on the real point cloud data, and determine the image point cloud of the second workpiece based on the sixth point cloud data; Determine the seventh point cloud data of the second workpiece in the 2D camera coordinate system based on the first point cloud data, and determine the image point cloud of the first workpiece based on the seventh point cloud data; Determine the point cloud overlap degree between the image point cloud of the second workpiece and the image point cloud of the first workpiece; When the overlap degree exceeds a preset threshold, determine that the real robotic arm position of the second workpiece meets the calibration standard of the preset symmetric workpiece position.

7. A symmetric calibration device for symmetric work-piece points, characterized in that, Including: The first processing module is configured to obtain the first point cloud data of the first workpiece in the base coordinate system of the robotic arm, and perform symmetric transformation processing on the first point cloud data to generate virtual second point cloud data of the second workpiece, where the first workpiece and the second workpiece are symmetric workpieces to be symmetrically calibrated; The second processing module is configured to convert the 6D pose of the robotic arm of the first workpiece into a first homogeneous transformation matrix, and based on the first homogeneous transformation matrix, the hand-eye matrix of the 2D camera on the robotic arm, and the symmetric relationship between the first workpiece and the second workpiece, obtain a second homogeneous transformation matrix at the end of the robotic arm of the second workpiece; wherein, the 6D pose of the robotic arm of the first workpiece includes the coordinates corresponding to the point cloud data of the first workpiece; The third processing module is configured to determine an initial 6D pose of the robotic arm of the second workpiece based on the second homogeneous transformation matrix; wherein, the initial 6D pose of the robotic arm includes the coordinates corresponding to the point cloud data of the second workpiece; The fourth processing module is configured to convert the symmetrically processed first point cloud data into virtual third point cloud data of the second workpiece in combination with the internal parameters of the camera, and adjust the second homogeneous transformation matrix based on the deviation between the second point cloud data and the third point cloud data to obtain a third homogeneous transformation matrix at the end of the robotic arm of the second workpiece; The fifth processing module is configured to obtain the real point cloud data of the second workpiece through a 3D camera, and determine the real 6D pose of the robotic arm of the second workpiece based on the real point cloud data, the third point cloud data, and the third homogeneous transformation matrix, where the real 6D pose of the robotic arm of the second workpiece includes the coordinates corresponding to the real point cloud data after correcting the point cloud data corresponding to the initial pose.

8. The device according to claim 7, characterized in that, The first processing module includes: The first processing unit is configured to collect the point cloud data of the first workpiece through a 3D camera, and convert the collected point cloud data into the first point cloud data in the base coordinate system of the robotic arm in combination with a 3D hand-eye matrix; The second processing unit is configured to obtain the equation of the symmetric plane, and map the first point cloud data to the other side of the symmetric plane based on the equation to generate the second point cloud data in the base coordinate system of the robotic arm.

9. A device, characterized in that, Including: At least one communication interface; At least one bus connected to the at least one communication interface; At least one processor connected to the at least one bus; At least one memory connected to the at least one bus, wherein the processor is configured to execute the symmetric calibration method for the symmetric workpiece poses according to any one of claims 1 to 6 of the present application.

10. A computer storage medium, characterized in that, Stores computer-executable instructions for executing the symmetric calibration method for the symmetric workpiece poses according to any one of claims 1 to 6 of the present application.

Citation Information

Patent Citations

  • Method of grabbing shape symmetrical workpiece with high precision by using low precision depth camera

    CN110014426A

  • Device and method for controlling a robot to pick up an object in various positions

    US20220152834A1

  • Method for Simultaneous Robot Kinematic and Hand-Eye Calibration

    US20240042598A1