Hand-eye calibration method, hand-eye calibration device, equipment and computer storage medium
By using the method of generating calibration circles by using teaching points and final axis rotation in hand-eye calibration, the error problem caused by extension rods in the prior art is solved, which improves the accuracy of calibration and simplifies the process.
Patent Information
- Application Number
- CN202510480257.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-16
- Publication Date
- 2025-05-30
AI Technical Summary
In the existing hand-eye calibration scheme, the extension rod causes large tool calculation errors, and there is a height difference between the calibration plane and the process operation plane, which affects the accuracy, and it is difficult to implement when there is a boss near the calibration area, resulting in a decrease in the accuracy of hand-eye calibration.
By moving the end of the robot's final axis to at least two teaching points and controlling the rotation of the final axis at each teaching point, the pixel coordinates of the calibrated circle are generated, and the hand-eye calibration is performed according to the robot coordinates and pixel coordinates, and the transformation relationship between the robot coordinates and the camera coordinates is obtained.
The calibration error caused by the height difference between the calibration plane and the process operation plane is effectively avoided, the accuracy of hand-eye calibration is improved, and the calibration process is simplified, and the introduction of tool calculations is avoided.
Smart Images

Figure CN120056131A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of robot hand-eye calibration, and particularly to a hand-eye calibration method, a hand-eye calibration device, a hand-eye calibration equipment, and a computer storage medium. Background Art
[0002] For some high-precision processes in the industrial field (such as component insertion, screwing, labeling, etc.), vision (as the "eyes" of the robot) needs to be used to identify and calculate the position of the mark point (optical positioning point) in the robot base coordinate system, so as to achieve precise positioning of the robot.
[0003] When the camera is fixedly installed on the rack above the robot body, due to the occlusion of the robot body, the camera cannot take pictures of the mark point at the end of the robot. Therefore, the usual hand-eye calibration scheme is: fixedly install an extension rod at the end of the robot, stick a mark point on the extension rod, and calculate the tool coordinate of the mark point during hand-eye calibration, and then perform camera calibration.
[0004] The above scheme has the following problems: (1) The extension rod is usually relatively long, and the tool calculation error is large, which will affect the hand-eye calibration accuracy; (2) The extension rod has a certain thickness, so there is a height difference between the calibration plane and the process operation plane, which will affect the process accuracy; (3) When there is a boss near the calibration area, the calibration scheme with an extension rod is difficult to implement and there is interference. The above problems will all lead to a decrease in the accuracy of robot hand-eye calibration. Summary of the Invention
[0005] To solve the above technical problems, the present application proposes a hand-eye calibration method, a hand-eye calibration device, a hand-eye calibration equipment, and a computer storage medium.
[0006] To solve the above technical problems, the present application proposes a hand-eye calibration method, and the hand-eye calibration method includes:
[0007] Move the end of the robot's final axis to at least two teaching points;
[0008] At each teaching point, control the rotation of the final axis of the robot, so as to generate a first calibration circle on the calibration surface through the tool fixedly connected to the end of the final axis;
[0009] Obtain the first center pixel coordinates of the first calibration circle corresponding to each teaching point;
[0010] According to the robot coordinates of the teaching points and the corresponding first center pixel coordinates, perform hand-eye calibration on the robot to obtain the first transformation relationship between the robot coordinate system and the camera coordinate system of the robot.
[0011] Among them, the tool is eccentrically installed at the end of the final axis with respect to the rotation axis of the final axis.
[0012] Among them, two of the at least two teaching points are respectively located at opposite corner positions of the calibration plane area within the camera's field of view.
[0013] Among them, the method of performing hand-eye calibration on the robot according to the robot coordinates of the teaching points and the corresponding first center pixel coordinates to obtain the first transformation relationship between the robot coordinate system and the camera coordinate system of the robot includes:
[0014] Calculate the pixel equivalent based on the first robot coordinates of the teaching points and the first center pixel coordinates;
[0015] Establish a first transformation relationship equation using the pixel equivalent;
[0016] Substitute the first robot coordinates and the first center pixel coordinates into the first transformation relationship equation to solve for the origin offset value and the rotation angle between the robot coordinate system and the camera coordinate system;
[0017] Determine the first transformation relationship according to the pixel equivalent, the origin offset value, and the rotation angle.
[0018] Among them, after obtaining the first transformation relationship between the robot coordinate system and the camera coordinate system of the robot, the hand-eye calibration method further includes:
[0019] Divide the pixel plane of the camera's field of view evenly using the first center pixel coordinates to obtain the pixel average value;
[0020] Obtain the second center pixel coordinates of the fine calibration points using the pixel average value and the first center pixel coordinates;
[0021] Transform the second center pixel coordinates into second robot coordinates according to the first transformation relationship;
[0022] Control the end of the robot's final axis to move to the corresponding fine calibration point according to the second robot coordinates, and control the rotation of the robot's final axis to generate a second calibration circle on the calibration plane through the tool fixedly connected to the end of the final axis.
[0023] Among them, after generating the second calibration circle on the calibration plane through the tool fixedly connected to the end of the final axis, the hand-eye calibration method further includes:
[0024] Solve the second transformation relationship equation using the second center pixel coordinates of the second calibration circle and the second robot coordinates to determine the second transformation relationship between the robot coordinate system and the camera coordinate system;
[0025] Among them, the number of the precise marking fixed points is greater than the number of the teaching points.
[0026] Among them, the hand-eye calibration method further includes:
[0027] Move the end of the robot's final axis to the error calibration point according to the third robot coordinate, and control the rotation of the final axis of the robot, so as to generate a third calibration circle on the calibration surface through the tool fixedly connected to the end of the final axis;
[0028] Obtain the third center pixel coordinate of the third calibration circle;
[0029] Transform the third center pixel coordinate into the fourth robot coordinate according to the second transformation relationship;
[0030] Calculate the calibration error according to the third robot coordinate and the fourth robot coordinate.
[0031] To solve the above technical problems, the present application also proposes a hand-eye calibration device, which includes a control module, a teaching module, a collection module, and a calibration module; among them,
[0032] The control module is used to move the end of the robot's final axis to at least two teaching points;
[0033] The teaching module is used to control the rotation of the final axis of the robot at each teaching point, so as to generate a first calibration circle on the calibration surface through the tool fixedly connected to the end of the final axis;
[0034] The collection module is used to obtain the first center pixel coordinate of the first calibration circle corresponding to each teaching point;
[0035] The calibration module is used to perform hand-eye calibration on the robot according to the robot coordinate of the teaching point and the corresponding first center pixel coordinate, and obtain the first transformation relationship between the robot coordinate system and the camera coordinate system of the robot.
[0036] To solve the above technical problems, the present application also proposes a hand-eye calibration device, which includes a memory and a processor coupled to the memory; among them, the memory is used to store program data, and the processor is used to execute the program data to implement the hand-eye calibration method as described above.
[0037] To solve the above technical problems, the present application also proposes a computer storage medium, which is used to store program data, and when the program data is executed by a computer, it is used to implement the hand-eye calibration method as described above.
[0038] Compared with the prior art, the beneficial effects of the present application are as follows: The hand-eye calibration device moves the end of the robot's final axis to at least two teaching points; at each teaching point, the final axis of the robot is controlled to rotate, so as to generate a first calibration circle on the calibration surface through a tool fixedly connected to the end of the final axis; the first center pixel coordinates of the first calibration circle corresponding to each teaching point are obtained; according to the robot coordinates of the teaching point and the corresponding first center pixel coordinates, the robot is calibrated for hand-eye, and the first transformation relationship between the robot coordinate system and the camera coordinate system of the robot is obtained. Through the above hand-eye calibration method, by teaching the center of the calibration circle on the calibration surface, the calibration error caused by the height difference between the calibration plane and the process operation plane can be effectively avoided, and tool calculation is not required during the calibration process, improving the accuracy of hand-eye calibration. BRIEF DESCRIPTION OF THE DRAWINGS
[0039] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following will briefly introduce the drawings required for the description of the embodiments. Obviously, the following drawings are only some embodiments of the present application. For those of ordinary skill in the art, without creative efforts, other drawings can be obtained based on these drawings.
[0040] Wherein:
[0041] Figure 1 is a schematic flowchart of the first embodiment of the hand-eye calibration method provided by the present application;
[0042] Figure 2 is a schematic structural diagram of the hand-eye calibration system provided by the present application;
[0043] Figure 3 is Figure 1 a specific schematic flowchart of step S14 of the hand-eye calibration method shown;
[0044] Figure 4 is a schematic flowchart of the second embodiment of the hand-eye calibration method provided by the present application;
[0045] Figure 5 is a schematic flowchart of the third embodiment of the hand-eye calibration method provided by the present application;
[0046] Figure 6 is a schematic structural diagram of an embodiment of the hand-eye calibration device provided by the present application;
[0047] Figure 7 is a schematic structural diagram of an embodiment of the hand-eye calibration device provided by the present application;
[0048] Figure 8 is a schematic structural diagram of an embodiment of the computer storage medium provided by the present application. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0049] 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. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. 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 protection scope of the present application.
[0050] The terms "first", "second", "third", "fourth", etc. (if any) in the specification and claims of the present application and the above-mentioned accompanying drawings are used to distinguish similar objects, and do not necessarily need to be used to describe a specific order or sequence. It should be understood that such used data can be interchanged under appropriate circumstances so that the embodiments of the present application described herein, for example, can be implemented in an order other than those illustrated or described herein. In addition, the terms "comprising" and "having" and any variations thereof are intended to cover non-exclusive inclusion. For example, a process, method, system, product or device comprising a series of steps or units does not necessarily have to be limited to those steps or units clearly listed, but may include other steps or units not clearly listed or inherent to these processes, methods, products or devices.
[0051] Hand-eye calibration: "Hand" represents the robot (robotic arm), and "eye" represents vision (generally a 2D or 3D industrial camera). Hand-eye calibration is to determine the transformation relationship between the visual pixel coordinates and the robot Cartesian coordinates. After hand-eye calibration, the visual system acquires the pixel coordinates of the mark point, and through the calibrated parameters, converts the pixel coordinates of the mark point into the Cartesian coordinates in the robot base coordinate system (or the user coordinate system), and the robot can achieve precise positioning.
[0052] To solve the problems of the prior art, the present application provides a high-precision hand-eye calibration method. Please refer to Figure 1 and Figure 2 , Figure 1 is a schematic flowchart of the first embodiment of the hand-eye calibration method provided by the present application, Figure 2 is a schematic structural diagram of the hand-eye calibration system provided by the present application.
[0053] The hand-eye calibration method of the present application is applied to a hand-eye calibration device. Among them, the hand-eye calibration device of the present application can be a server, a terminal device, or a system in which the server and the terminal device cooperate with each other. Correspondingly, each part included in the hand-eye calibration device, such as each unit, subunit, module, and submodule, can be all set in the server, all set in the terminal device, or respectively set in the server and the terminal device.
[0054] Furthermore, the above-mentioned server can be hardware or software. When the server is hardware, it can be implemented as a distributed server cluster composed of multiple servers or as a single server. When the server is software, it can be implemented as multiple software or software modules, such as software or software modules used to provide a distributed server, or as a single software or software module, which is not specifically limited here.
[0055] As Figure 2 shown, the hand-eye calibration method of the present application requires the hardware support of the hand-eye calibration system shown to a certain extent. The differences between the hand-eye calibration system of the present application and the hand-eye calibration systems of the prior art are as follows: Figure 2 shown
[0056] Figure 2 The robot shown is a four-axis robot A. In other embodiments, it is also applicable to robots with other numbers of axes, which are not listed one by one here. Among them, a teaching tool B is installed at the end of the last axis of the four-axis robot A, that is, the end axis A1. The hand-eye calibration system further includes a calibration plane C and a camera D whose optical axis is perpendicular to the calibration plane C.
[0057] Specifically, the rotation axis of the end axis A1 also remains perpendicular to the calibration plane C, and the position of the end axis A1 is controlled by the horizontal or vertical movement of other mechanical axes. The teaching direction of the teaching tool B faces the calibration plane C, and the teaching tool B is installed at the end of the end axis A1 by an eccentric installation method, that is, the teaching tool B is installed at a place other than the rotation axis of the end axis A1, and its distance from the rotation axis determines the radius of the teaching circle.
[0058] In a specific embodiment, the teaching tool B can be a paintbrush, a laser emitter or other tools, as long as it can leave a trace of drawing a circle on the calibration plane. In addition, the calibration plane C can be a canvas, drawing paper or other items, as long as there is sufficient differentiation from the circle drawn by the teaching tool B and it does not affect the camera recognition.
[0059] As Figure 1 shown, the specific steps are as follows:
[0060] Step S11: Move the end of the robot's end axis to at least two teaching points.
[0061] In the embodiments of the present application, the hand-eye calibration device moves the end of the robot's end axis to at least two teaching points according to the preset robot coordinates or the robot coordinates input by the staff. Here, two teaching points are taken as an example for illustration. Theoretically, the more the number of teaching points, the higher the calibration accuracy.
[0062] Among them, the positions of both teaching points need to be within the camera's field of view, and the distance between the two teaching points needs to exceed a certain distance threshold. Preferably, the two teaching points are respectively located at the relative two corner positions of the calibration plane area within the camera's field of view, such as the teaching point A in the upper left corner and the teaching point B in the lower right corner.
[0063] Step S12: At each teaching point, control the rotation of the end axis of the robot to generate a first calibration circle on the calibration plane through the tool fixedly connected to the end of the end axis.
[0064] In the embodiment of the present application, the hand-eye calibration device controls the robot terminal to rotate around its own rotation axis to drive the eccentrically installed tool to rotate 360 degrees around the terminal rotation axis, thereby generating a calibration circle on the calibration plane. Among them, the robot generates a corresponding calibration circle at each teaching point.
[0065] It should be noted that in order to obtain a clear camera image, after the robot finishes drawing the circle, it needs to exit the camera's field of view range, so as to collect the calibration circle information on the calibration plane.
[0066] Step S13: Obtain the first center pixel coordinates of the first calibration circle corresponding to each teaching point.
[0067] In the embodiment of the present application, the hand-eye calibration device performs image acquisition on the calibration plane to obtain the center pixel coordinates of each calibration circle.
[0068] Specifically, the hand-eye calibration device moves the end axis of the robot to the teaching point A(x A ,y A ) in the upper left corner of the camera's field of view and the teaching point B(x B ,y B ) in the lower right corner respectively. After the end axis rotates 360 degrees to draw a circle and returns to the standby point, the camera is triggered to obtain the center pixel coordinates (u A ,v A ), (u B ,v B ).
[0069] Step S14: Perform hand-eye calibration on the robot according to the robot coordinates of the teaching point and the corresponding first center pixel coordinates, and obtain the first transformation relationship between the robot coordinate system and the camera coordinate system of the robot.
[0070] In the embodiment of the present application, the hand-eye calibration device is based on the teaching point A(x A ,y A ) in the upper left corner and the teaching point B(x B ,y B ) in the lower right corner obtained in the above steps, and the center pixel coordinates (u A ,v A ), (uB , v B ) Coarsely calibrate the first transformation relationship between the robot coordinate system and the camera coordinate system.
[0071] For the specific calibration process, please continue to refer to Figure 3 , Figure 3 which is Figure 1 the specific process schematic diagram of step S14 of the hand-eye calibration method shown.
[0072] As Figure 3 shown, the specific steps are as follows:
[0073] Step S141: Calculate the pixel equivalent based on the first robot coordinate of the taught point and the first center pixel coordinate.
[0074] In the embodiment of the present application, the hand-eye calibration device uses the taught point A(x A , y A ) at the upper left corner and the taught point B(x B , y B ) at the lower right corner, and the center pixel coordinates (u A , v A ), (u B , v B ) to calculate the pixel equivalent:
[0075]
[0076] where k u is the pixel equivalent in the u direction, and k v is the pixel equivalent in the v direction.
[0077] Step S142: Establish the first transformation relationship equation using the pixel equivalent.
[0078] In the embodiment of the present application, the transformation relationship between the position of the robot end (relative to the robot base coordinate system) and the position in the camera coordinate system, that is, the transformation relationship equation is as follows:
[0079]
[0080] where θ is the rotation angle between the camera coordinate system and the robot coordinate system, and t x , t y is the origin offset value between the camera coordinate system and the robot coordinate system. (u, v) is the pixel coordinate, and (x e , y e ) is the position of the robot end, and (u 0 , v 0 ) is the camera principal point.
[0081] Step S143: Substitute the first robot coordinates and the first center pixel coordinates into the first transformation relation equation, and solve to obtain the origin offset value and the rotation angle between the robot coordinate system and the camera coordinate system.
[0082] In the embodiment of the present application, the hand-eye calibration device moves the upper left teaching point A(x A ,y A ) and the lower right teaching point B(x B ,y B ), the center pixel coordinates (u A ,v A ), (u B ,v B ) into the above transformation relation equation, and the following system of equations can be obtained:
[0083]
[0084] By solving the above system of equations, t x ,t y , sinθ, cosθ can be obtained.
[0085] Finally, the hand-eye calibration device calculates the rotation angle between the camera coordinate system and the robot coordinate system:
[0086] θ = atan2(sinθ, cosθ)
[0087] Step S144: Determine the first transformation relation according to the pixel equivalent, the origin offset value, and the rotation angle.
[0088] In the embodiment of the present application, the rough calibration result of the first transformation relation between the robot coordinate system and the camera coordinate system is mainly characterized by the internal parameters (k u , k v ) and the external parameters (t x , t y , θ) of the camera.
[0089] In the present application, the hand-eye calibration device moves the end of the robot's final axis to at least two teaching points; at each teaching point, the final axis of the robot is controlled to rotate, so as to generate a first calibration circle on the calibration surface through the tool fixedly connected to the end of the final axis; the first center pixel coordinates of the first calibration circle corresponding to each teaching point are obtained; according to the robot coordinates of the teaching points and the corresponding first center pixel coordinates, hand-eye calibration of the robot is performed to obtain the first transformation relation between the robot coordinate system and the camera coordinate system of the robot. Through the above hand-eye calibration method, by teaching the center of the calibration circle on the calibration surface, the calibration error caused by the height difference between the calibration plane and the process operation plane can be effectively avoided, and tool calculation is not required during the calibration process, improving the accuracy of hand-eye calibration.
[0090] After the rough calibration of the hand-eye calibration device of the present application is completed by the Figure 1 hand-eye calibration method shown, on the one hand, the transformation relationship obtained from the rough calibration can be used for process work, and on the other hand, the transformation relationship obtained from the rough calibration can also be used to calculate the precise calibration point positions for the precise calibration of the transformation relationship.
[0091] Specifically, please refer to Figure 4 , Figure 4 which is a schematic flowchart of the second embodiment of the hand-eye calibration method provided by the present application.
[0092] As Figure 4 shown, the specific steps are as follows:
[0093] Step S21: Divide the camera's field of view pixel plane using the first center pixel coordinates to obtain the pixel average value.
[0094] Step S22: Use the pixel average value and the first center pixel coordinates to obtain the second center pixel coordinates of the precise calibration point positions.
[0095] Step S23: Transform the second center pixel coordinates into the second robot coordinates according to the first transformation relationship.
[0096] In the embodiment of the present application, after the hand-eye calibration device obtains the internal parameters (k u , k v ) and external parameters (t x , t y , θ) of the camera, it can divide the camera's field of view pixel plane by diagonalizing two sets of pixel coordinates, namely the center pixel coordinates (u A , v A ), (u B , v B ), and then convert them into the coordinates in the robot base coordinate system. Calculate the center position of the i-th row and j-th column:
[0097]
[0098] where N is the number of calibration points, Δu is the pixel average value in the u direction, Δv is the pixel average value in the v direction, and (x c , y c ) are the Cartesian coordinates in the camera coordinate system.
[0099] Step S24: Control the end of the robot's final axis to move to the corresponding precise calibration point positions according to the second robot coordinates, and control the rotation of the robot's final axis to generate a second calibration circle on the calibration surface through the tool fixedly connected to the end of the final axis.
[0100] In the embodiment of the present application, the hand-eye calibration device controls the end of the robot's final axis to move to the corresponding fine calibration position according to the robot coordinates of multiple calibration points calculated in step S23, thereby generating a corresponding calibration circle on the calibration surface and obtaining the pixel coordinates of the centers of N circles. With the N corresponding pixel coordinates and Cartesian coordinates, camera fine calibration is then performed.
[0101] Step S25: Use the second center pixel coordinates of the second calibration circle and the second robot coordinates to solve the second transformation relation equation and determine the second transformation relation between the robot coordinate system and the camera coordinate system.
[0102] In the embodiment of the present application, for camera fine calibration, the present application can adopt the nine-point calibration technique, and the specific logic is as follows:
[0103] Through the process of steps S21 to S24, the hand-eye calibration device can obtain 9 calibration circles arranged in a 3*3 array, and all 9 calibration circles are within the camera's field of view. By taking pictures with the camera, find the center coordinates of these 9 dots on the picture, that is, the center pixel coordinates, and record them. At the same time, record the mechanical coordinates of these points, that is, the robot coordinates. The hand-eye calibration device uses the collected image coordinates and mechanical coordinates to calculate the conversion parameters between the image coordinates and the mechanical coordinates by the least squares method. After obtaining the conversion parameters, they can be used to convert new image coordinates into mechanical coordinates, thereby realizing the coordinated work of the camera and the manipulator.
[0104] In a specific embodiment, the hand-eye calibration device triggers the camera to obtain the pixel coordinates of the centers of N circles. With the N corresponding pixel coordinates and Cartesian coordinates, camera fine calibration is then performed.
[0105] The present application adopts the DLT (Direct Linear Transformation) model for camera calibration:
[0106]
[0107] Write the above formula in matrix form:
[0108]
[0109] Among them, (u, v) are pixel coordinates, (x, y) are Cartesian coordinates, and L 0 , L 1 , L 2 , L 3 , L 4 , L 5 , L 6 , L 7 are camera calibration parameters.
[0110] When the number of calibration points is greater than or equal to 4, the above matrix equation is extended, and the least squares method is used to solve the camera calibration parameters to achieve precise camera calibration.
[0111] The hand-eye calibration device of this application passes through Figure 1 After the rough calibration is completed by the hand-eye calibration method shown, or Figure 4 After the fine calibration is completed by the hand-eye calibration method shown, it is necessary to calculate the calibration error to determine the calibration effect.
[0112] For details, please refer to Figure 5 , Figure 5 which is the flowchart of the third embodiment of the hand-eye calibration method provided by this application.
[0113] As Figure 5 shown, the specific steps are as follows:
[0114] Step S31: Move the end of the robot's final axis to the error calibration point position according to the third robot coordinate, and control the rotation of the final axis of the robot to generate a third calibration circle on the calibration surface through the tool fixedly connected to the end of the final axis.
[0115] Step S32: Obtain the third center pixel coordinates of the third calibration circle.
[0116] Step S33: Transform the third center pixel coordinates into the fourth robot coordinate according to the second transformation relationship.
[0117] Step S34: Calculate the calibration error according to the third robot coordinate and the fourth robot coordinate.
[0118] In the embodiment of this application, the hand-eye calibration device uses the precise camera calibration parameters to convert the i-th pixel coordinate (u i , v i )(the corresponding Cartesian coordinate is (x e,i , y e,i )) into the i-th Cartesian coordinate (x' e,i , y' e,i ):
[0119]
[0120] Calculate the i-th distance error:
[0121]
[0122] The hand-eye calibration device measures the calibration error by calculating the maximum error, average error, and standard deviation of the error of N distance errors.
[0123] It should be noted that the i-th pixel coordinate (u i , vi ) is the center pixel coordinates of the calibration circle obtained by identifying the end of the robot's final axis after motion control according to the corresponding Cartesian coordinates (x e,i , y e,i ). The i-th Cartesian coordinate (x' e,i , y' e,i ) is obtained by converting according to the camera's precise calibration parameters based on the center pixel coordinates.
[0124] Those skilled in the art can understand that in the above method of the specific implementation manner, the writing order of each step does not mean a strict execution order and does not constitute any limitation on the implementation process. The specific execution order of each step should be determined according to its function and possible internal logic.
[0125] To implement the above hand-eye calibration method, the present application also proposes a hand-eye calibration device. For details, please refer to Figure 6 , Figure 6 which is a schematic structural diagram of an embodiment of the hand-eye calibration device provided by the present application.
[0126] The hand-eye calibration device 500 in this embodiment includes: a control module 51, a teaching module 52, a collection module 53, and a calibration module 54.
[0127] Among them, the control module 51 is used to move the end of the robot's final axis to at least two teaching points.
[0128] The teaching module 52 is used to control the rotation of the final axis of the robot at each teaching point, so as to generate a first calibration circle on the calibration surface through the tool fixedly connected to the end of the final axis.
[0129] The collection module 53 is used to obtain the first center pixel coordinates of the first calibration circle corresponding to each teaching point.
[0130] The calibration module 54 is used to perform hand-eye calibration on the robot according to the robot coordinates of the teaching points and the corresponding first center pixel coordinates, and obtain the first transformation relationship between the robot coordinate system and the camera coordinate system of the robot.
[0131] To implement the above hand-eye calibration method, the present application also proposes a hand-eye calibration device. For details, please refer to Figure 7 , Figure 7 which is a schematic structural diagram of an embodiment of the hand-eye calibration device provided by the present application.
[0132] The hand-eye calibration device 400 in this embodiment includes a processor 41, a memory 42, an input / output device 43, and a bus 44.
[0133] The processor 41, the memory 42, and the input / output device 43 are respectively connected to the bus 44. Program data is stored in the memory 42, and the processor 41 is configured to execute the program data to implement the hand-eye calibration method described in the above embodiments.
[0134] In the embodiments of the present application, the processor 41 may also be referred to as a CPU (Central Processing Unit). The processor 41 may be an integrated circuit chip with signal processing capabilities. The processor 41 may also be a general-purpose processor, a digital signal processor (DSP, Digital Signal Process), an application-specific integrated circuit (ASIC, Application Specific Integrated Circuit), a field-programmable gate array (FPGA, Field Programmable Gate Array), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components. The general-purpose processor may be a microprocessor or the processor 41 may also be any conventional processor, etc.
[0135] The present application also provides a computer storage medium. Please continue to refer to Figure 8 , Figure 8 FIG. is a schematic structural diagram of an embodiment of the computer storage medium provided by the present application. A computer program 61 is stored in the computer storage medium 600. When the computer program 61 is executed by a processor, it is configured to implement the hand-eye calibration method described in the above embodiments.
[0136] When the embodiments of the present application are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on such an understanding, the technical solution of the present application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) or a processor to execute all or part of the steps of the methods described in various embodiments of the present application. The foregoing storage medium includes: USB flash drives, mobile hard disks, read-only memories (ROM, Read-Only Memory), random access memories (RAM, Random Access Memory), magnetic disks, or optical discs, etc., which can store program codes.
[0137] The above are only the embodiments of the present application, and do not limit the patent scope of the present application accordingly. Any equivalent structure or equivalent process transformation made by using the content of the specification and drawings of the present application, or directly or indirectly applied in other related technical fields, shall be equally included in the patent protection scope of the present application.
Claims
1. A hand-eye calibration method, characterized in that: The hand-eye calibration method comprises: Move the robot's final axis to at least two teaching points; At each teaching point, controlling the final axis of the robot to rotate so as to generate a first calibration circle on the calibration surface through a tool fixedly connected to the end of the final axis; Obtain the pixel coordinates of the first center of the first calibration circle corresponding to each teaching point; According to the robot coordinates of the teaching point and the corresponding first circle center pixel coordinates, the robot is calibrated by hand and eye to obtain a first transformation relationship between the robot coordinate system and the camera coordinate system of the robot.
2. The hand-eye calibration method according to claim 1, characterized in that: The tool is mounted at the end of the final shaft eccentrically with respect to the rotation axis of the final shaft.
3. The hand-eye calibration method according to claim 1 or 2, characterized in that: Two of the at least two teaching points are located at two relative corner points of the calibration surface area within the camera field of view.
4. The hand-eye calibration method according to claim 1, characterized in that: The method of performing hand-eye calibration on the robot according to the robot coordinates of the teaching point and the corresponding first circle center pixel coordinates to obtain a first transformation relationship between the robot coordinate system and the camera coordinate system of the robot includes: Calculate pixel equivalent based on the first robot coordinates of the teaching point and the first circle center pixel coordinates; Using the pixel equivalent to establish a first transformation relationship equation; Substituting the first robot coordinates and the first circle center pixel coordinates into the first transformation relationship equation, and solving to obtain the origin offset value and the rotation angle of the robot coordinate system and the camera coordinate system; The first transformation relationship is determined according to the pixel equivalent, the origin offset value and the rotation angle.
5. The hand-eye calibration method according to claim 4, characterized in that: After obtaining the first transformation relationship between the robot coordinate system and the camera coordinate system of the robot, the hand-eye calibration method further includes: Using the first circle center pixel coordinates to average the camera field of view pixel plane to obtain a pixel average value; Calculate the pixel coordinates of the second circle center of the precisely calibrated point using the pixel average value and the first circle center pixel coordinates; transforming the second circle center pixel coordinates into second robot coordinates according to the first transformation relationship; According to the second robot coordinates, the end of the robot's final axis is controlled to move to the corresponding precise calibration point, and the final axis of the robot is controlled to rotate, so as to generate a second calibration circle on the calibration surface through a tool fixedly connected to the end of the final axis.
6. The hand-eye calibration method according to claim 5, characterized in that: After the tool fixedly connected to the end of the final shaft generates a second calibration circle on the calibration surface, the hand-eye calibration method further includes: Solving a second transformation relationship equation using the pixel coordinates of the second center of the second calibration circle and the second robot coordinates to determine a second transformation relationship between the robot coordinate system and the camera coordinate system; The number of the precise calibration points is greater than the number of the teaching points.
7. The hand-eye calibration method according to claim 6, characterized in that: The hand-eye calibration method further includes: Moving the end of the robot final axis to the error calibration point according to the third robot coordinate, and controlling the final axis of the robot to rotate, so as to generate a third calibration circle on the calibration surface through a tool fixedly connected to the end of the final axis; Obtaining the pixel coordinates of the third center of the third calibration circle; According to the second transformation relationship, transform the third circle center pixel coordinates into fourth robot coordinates; A calibration error is calculated according to the third robot coordinates and the fourth robot coordinates.
8. A hand-eye calibration device, characterized in that: The hand-eye calibration device comprises: a control module, a teaching module, a collection module, and a calibration module; wherein, The control module is used to move the end of the robot's final axis to at least two teaching points; The teaching module is used to control the rotation of the final axis of the robot at each teaching point, so as to generate a first calibration circle on the calibration surface through a tool fixedly connected to the end of the final axis; The acquisition module is used to obtain the pixel coordinates of the first center of the first calibration circle corresponding to each teaching point; The calibration module is used to perform hand-eye calibration on the robot according to the robot coordinates of the teaching point and the corresponding first circle center pixel coordinates, and obtain the first transformation relationship between the robot coordinate system and the camera coordinate system of the robot.
9. A hand-eye calibration device, characterized in that: The hand-eye calibration device includes a memory and a processor coupled to the memory; The memory is used to store program data, and the processor is used to execute the program data to implement the hand-eye calibration method as described in any one of claims 1 to 7.
10. A computer storage medium, characterized in that: The computer storage medium is used to store program data, and when the program data is executed by a computer, it is used to implement the hand-eye calibration method according to any one of claims 1 to 7.