Calibration method and device, electronic equipment and computer storage medium

By obtaining the spatial coordinates of the calibration points on the calibration plate, determining and iteratively updating the transformation matrix, the problem of large robot hand-eye calibration error is solved, and high-precision robotic arm operation is achieved, which is suitable for medical robots.

CN115723135BActive Publication Date: 2025-10-17北京瑞医博科技有限公司 +1
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202211472042.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-11-23
Publication Date
2025-10-17
Estimated Expiration
2042-11-23

AI Technical Summary

Technical Problem

Existing robot hand-eye calibration methods have large errors, resulting in inaccurate conversion between the robot coordinate system and the camera coordinate system, and cannot meet the needs of high-precision operations such as medical robots.

Method used

By obtaining the coordinates of the central calibration point on the calibration plate at different spatial positions, the transformation matrix between the robot base coordinate system and the camera coordinate system is determined. By iteratively updating the matrix, the motion trajectory of the tool at the end of the robot arm in the camera coordinate system is made to coincide with the actual trajectory, thereby improving the calibration accuracy.

Benefits of technology

The accuracy of hand-eye calibration is improved, the calibration error is reduced, and the robotic arm can perform high-precision operations. It is suitable for the medical robot industry with high operating accuracy requirements.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115723135B_ABST
    Figure CN115723135B_ABST
Patent Text Reader

Abstract

The application provides a calibration method and device, electronic equipment and computer storage medium. The method comprises: obtaining a first space coordinate corresponding to each space position of at least two space positions of a center calibration point in a first coordinate system, and a second space coordinate corresponding to each space position in a second coordinate system; determining a first conversion matrix between the first coordinate system and the second coordinate system according to the first space coordinates and the second space coordinates; obtaining a first motion trajectory of the center calibration point in the first coordinate system and a second motion trajectory of the center calibration point in the second coordinate system when the center calibration point moves along a preset trajectory; and iteratively updating the first conversion matrix according to the first motion trajectory and the second motion trajectory until a third motion trajectory obtained by converting the first motion trajectory to the second coordinate system through the first conversion matrix coincides with the second motion trajectory. The calibration method provided by the application has high applicability.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of robot vision, and in particular to a calibration method and device, an electronic device, and a computer storage medium. BACKGROUND

[0002] In the field of robot vision, when a robot performs operations such as grasping or path planning, it needs to perform corresponding operations according to signals given by a vision system. However, the robot coordinate system and the vision coordinate system (camera coordinate system) are two independent systems, so the robot needs to be hand-eye calibrated to obtain the relationship between the robot coordinate system and the camera coordinate system.

[0003] Currently, the robot hand-eye calibration adopts a six-point calibration method. The robot moves according to six points on a calibration board in sequence, and the conversion relationship between the robot coordinate system and the camera coordinate system can be established to complete the calibration process.

[0004] However, when the six-point calibration method is applied to calibrate a mechanical arm, the error is large, which leads to an inaccurate conversion relationship between the robot coordinate system and the camera coordinate system, and thus leads to a large error when the robot's mechanical arm performs corresponding operations. Therefore, the existing calibration method cannot be applied to the medical robot industry with high operation precision, and the applicability is low. SUMMARY

[0005] Therefore, the present application provides a calibration method, device, electronic device, and computer storage medium to at least partially solve the above problems.

[0006] According to a first aspect of the present application, a calibration method is provided. The method comprises: obtaining a first spatial coordinate corresponding to each spatial position of at least two spatial positions of a center calibration point in a first coordinate system, and a second spatial coordinate corresponding to each spatial position in a second coordinate system, wherein the center calibration point is located on a calibration board, the calibration board is fixed on a mechanical arm, the mechanical arm is configured to move the calibration board, the first coordinate system is a coordinate system of a mechanical arm base, and the second coordinate system is a coordinate system of a camera; determining a first conversion matrix between the first coordinate system and the second coordinate system according to the first spatial coordinates and the second spatial coordinates; obtaining a first motion trajectory of the center calibration point in the first coordinate system and a second motion trajectory of the center calibration point in the second coordinate system when the center calibration point moves along a preset trajectory; and iteratively updating the first conversion matrix according to the first motion trajectory and the second motion trajectory until a third motion trajectory obtained by converting the first motion trajectory to the second coordinate system through the first conversion matrix coincides with the second motion trajectory.

[0007] In a possible implementation, the method further includes: obtaining a pose of the robot arm when the center calibration point is located at each spatial position; determining a second conversion matrix between the first coordinate system and a third coordinate system according to the pose of the robot arm and the first spatial coordinates, wherein the third coordinate system is a coordinate system of an end of the robot arm; determining a third conversion matrix between the second coordinate system and a fourth coordinate system according to the second spatial coordinates, wherein the fourth coordinate system is a coordinate system of the calibration plate; and determining the first conversion matrix according to the second conversion matrix and the third conversion matrix.

[0008] In a possible implementation, the method further includes: determining a fourth conversion matrix between the second coordinate system and the third coordinate system according to the second conversion matrix and the iterated first conversion matrix.

[0009] In a possible implementation, the method further includes: converting the first motion trajectory to the second coordinate system according to the first conversion matrix to obtain a third motion trajectory; determining an offset between the third motion trajectory and the second motion trajectory, wherein the offset includes at least one of an offset distance and an offset angle; and updating the first conversion matrix according to the offset.

[0010] In a possible implementation, the first motion trajectory is a circular trajectory.

[0011] In a possible implementation, a plane on which the first motion trajectory is located is perpendicular to an axis direction of the camera lens.

[0012] According to a second aspect of the present application, a calibration device is provided, the device comprising: a first obtaining module configured to obtain a first spatial coordinate corresponding to each of at least two spatial positions of a center calibration point in a first coordinate system, and a second spatial coordinate corresponding to each of the at least two spatial positions of the center calibration point in a second coordinate system, wherein the center calibration point is located on a calibration board, the calibration board is fixed on a mechanical arm, the mechanical arm is configured to drive the calibration board to move, the first coordinate system is a coordinate system of a mechanical arm base, and the second coordinate system is a coordinate system of a camera; a determining module configured to determine a first conversion matrix between the first coordinate system and the second coordinate system according to the first spatial coordinates and the second spatial coordinates; a second obtaining module configured to obtain a first motion trajectory of the center calibration point in the first coordinate system and a second motion trajectory of the center calibration point in the second coordinate system when the center calibration point moves along a preset trajectory; and a calculating module configured to iteratively update the first conversion matrix according to the first motion trajectory and the second motion trajectory until a third motion trajectory obtained by converting the first motion trajectory to the second coordinate system through the first conversion matrix coincides with the second motion trajectory.

[0013] According to a third aspect of the present application, an electronic device is provided, comprising: a processor, a memory, a communication interface and a communication bus, the processor, the memory and the communication interface complete communication with each other through the communication bus; the memory is configured to store at least one executable instruction, the executable instruction causes the processor to perform operations corresponding to the method of the first aspect.

[0014] According to a fourth aspect of the present application, a computer storage medium is provided, and the computer storage medium stores a computer program, the computer program is executed by a processor to implement the method of the first aspect.

[0015] According to a fifth aspect of the present application, a computer program product is provided, comprising computer instructions, the computer instructions instruct a computing device to execute the method of the first aspect.

[0016] According to the calibration method provided in the application, the first conversion matrix between the camera coordinate system and the robot base coordinate system is determined through the spatial coordinates of the center calibration point on the calibration board at at least two spatial positions, so that after the camera obtains the spatial position of the object in the camera coordinate system, the robot can be guided by the first conversion matrix to the position of the object corresponding to the robot base coordinate system, the process of hand-eye calibration is realized, and after the first conversion matrix is obtained, the first conversion matrix is updated through the first motion trajectory of the center calibration point in the robot base coordinate system and the second motion trajectory in the camera coordinate system according to the predetermined trajectory, the accuracy of hand-eye calibration is improved, the error of calibration is reduced, the problem of inaccurate hand-eye calibration result in the prior art is solved, so that the robot can be operated with high precision, and the method can be applied to the medical robot industry with high operation precision requirement, so it has high applicability. BRIEF DESCRIPTION OF DRAWINGS

[0017] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the prior art, the drawings needed to be used in the embodiments or prior art description will be briefly introduced as follows. Obviously, the drawings in the following description are only some embodiments described in the present application, and other drawings can also be obtained by those skilled in the art based on these drawings.

[0018] Figure 1 is a flowchart of a calibration method provided by the embodiments of the present application;

[0019] Figure 2 is a schematic diagram of a position relationship provided by the embodiments of the present application;

[0020] Figure 3 is a schematic diagram of a calibration board provided by the embodiments of the present application;

[0021] Figure 4 is a schematic diagram of a calibration device provided by the embodiments of the present application;

[0022] Figure 5 is a structural schematic diagram of an electronic device provided by the embodiments of the present application. DETAILED DESCRIPTION

[0023] In order to make the personnel in the art better understand the technical solutions in the embodiments of the present application, the technical solutions in the embodiments of the present application will be described clearly and completely in the following with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are only some embodiments of the present application, not all embodiments. All other embodiments obtained by those skilled in the art based on the embodiments in the present application should belong to the scope of protection of the present application.

[0024] The terminology used in this application is for the purpose of describing particular embodiments only and is not intended to be limiting of the application. As used in this application and the appended claims, the singular forms "a," "an" and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will also be understood that the term "and / or," as used herein, refers to and encompasses any and all possible combinations of one or more of the associated listed items.

[0025] It should be understood that, although the terms first, second, third, etc. can be used herein to describe various information, but these information should not be limited to these terms. These terms are only used to distinguish one type of information from another type of information. For example, without departing from the scope of the application, the first information can also be referred to as the second information, and similarly, the second information can also be referred to as the first information. Depending on the context, the word "if" as used herein can be interpreted as "when" or "upon" or "in response to determining".

[0026] Figure 1 is a flow chart of a calibration method provided by an embodiment of the application, as shown in Figure 1 the method comprises the following steps 101 to 104:

[0027] Step 101, acquiring a first spatial coordinate corresponding to each of at least two spatial positions of a center calibration point in a first coordinate system, and a second spatial coordinate corresponding to each of the at least two spatial positions of the center calibration point in a second coordinate system, wherein the center calibration point is located on a calibration board, the calibration board is fixed on a mechanical arm, the mechanical arm is configured to drive the calibration board to move, the first coordinate system is a coordinate system of a base of the mechanical arm, and the second coordinate system is a coordinate system of a camera.

[0028] Exemplarily, Figure 2 is a schematic diagram of a position relationship provided by an embodiment of the application, as shown in Figure 2 the calibration board 201 is fixed on the mechanical arm 202, the camera 203 and the base 204 of the mechanical arm are in the same space, and it should be noted that, Figure 2 only one example of the position relationship among the mechanical arm 202, the calibration board 201 and the camera 203 is given, and the application is not limited in any way. The mechanical arm 202 is controlled to move, the mechanical arm 202 drives the calibration board 201 to move, and the first spatial coordinates of the center calibration point on the calibration board 201 in at least two spatial positions in the base coordinate system of the mechanical arm are acquired, wherein the base coordinate system of the mechanical arm is constructed with the base 204 of the mechanical arm as the origin, the plane where the base is located as the plane where the x-axis and the y-axis are located, and the normal to the plane and passing through the origin of the base as the z-axis.

[0029] The second spatial coordinates of the center calibration point in the camera coordinate system at the spatial position are obtained at the same time as the first spatial coordinates, that is, the second spatial coordinates in the camera coordinate system, wherein the camera coordinate system is a three-dimensional rectangular coordinate system with the focusing center of the camera 203 as the origin and the optical axis as the Z axis.

[0030] In step 102, the first conversion matrix between the first coordinate system and the second coordinate system is determined according to the first spatial coordinates and the second spatial coordinates.

[0031] According to the obtained first spatial coordinates in the robot base coordinate system and the second spatial coordinates in the camera coordinate system, the conversion matrix between the robot base coordinate system and the camera coordinate system is determined, which is used to convert the spatial coordinates of the object photographed by the camera in the camera coordinate system to the spatial coordinates in the robot base coordinate system, so that the operation of the robot guided by vision (camera) can be realized.

[0032] In step 103, the first motion trajectory of the center calibration point in the first coordinate system and the second motion trajectory of the center calibration point in the second coordinate system are obtained when the center calibration point moves along the preset trajectory.

[0033] The robot is controlled to move the calibration board along the preset trajectory, and the first motion trajectory of the center calibration point in the robot base coordinate system and the second motion trajectory of the center calibration point in the camera coordinate system are obtained.

[0034] In step 104, the first conversion matrix is iteratively updated according to the first motion trajectory and the second motion trajectory, until the third motion trajectory obtained by converting the first motion trajectory to the second coordinate system through the first conversion matrix coincides with the second motion trajectory.

[0035] According to the obtained first motion trajectory and the second motion trajectory, the first conversion matrix is iteratively updated, and the updated result is determined. When the third motion trajectory obtained by converting the first motion trajectory to the camera coordinate system through the first conversion matrix after iterative updating coincides with the second motion trajectory in the camera coordinate system, the iterative updating of the first conversion matrix is stopped.

[0036] It should be understood that iterative updating is a continuous process. When the stopping condition is not reached, the first conversion matrix is continuously updated, and the first conversion matrix before updating is replaced by the first conversion matrix after updating, so that the purpose of iterative updating can be achieved.

[0037] In the embodiment of the present application, the first conversion matrix between the camera coordinate system and the robot base coordinate system is determined by the spatial coordinates of the center calibration point on the calibration board at at least two spatial positions, so that after the camera acquires the spatial position of the object in the camera coordinate system, the robot can be guided by the first conversion matrix to the position of the object corresponding to the robot base coordinate system, thereby realizing the process of hand-eye calibration. After obtaining the first conversion matrix, the first conversion matrix is updated by the first motion trajectory of the center calibration point in the robot base coordinate system and the second motion trajectory in the camera coordinate system according to the predetermined trajectory, which improves the accuracy of hand-eye calibration, reduces the error of calibration, solves the problem of inaccurate hand-eye calibration result in the prior art, so that the robot can perform high-precision operation, and the method can be applied to the medical robot industry with high operation precision requirement, and therefore has high applicability.

[0038] In a possible implementation, when the first conversion matrix between the first coordinate system and the second coordinate system is determined according to the first spatial coordinates and the second spatial coordinates, the pose of the robot when the center calibration point is located at each spatial position can be acquired, and then the second conversion matrix between the first coordinate system and the third coordinate system is determined according to the pose of the robot and the first spatial coordinates, wherein the third coordinate system is the coordinate system of the robot end. And the third conversion matrix between the second coordinate system and the fourth coordinate system is determined according to the second spatial coordinates, wherein the fourth coordinate system is the coordinate system of the calibration board. Finally, the first conversion matrix is determined according to the second conversion matrix and the third conversion matrix.

[0039] The pose of the robot when the center calibration point is located at each spatial position is acquired, and the pose of the robot includes the rotation angle of each axis of the robot at the spatial position. For example, by the rotation of each axis, the robot can be in different poses. According to the first spatial coordinates, the spatial coordinates of the robot end in the robot base coordinate system when the center calibration point is located at each spatial position can be determined.

[0040] It should be noted that since the calibration board and the robot are fixedly connected, the spatial coordinates of the center calibration point on the calibration board in the robot base coordinate system can be obtained.

[0041] According to at least two spatial coordinates of the robot end and the corresponding pose, the second conversion matrix between the robot end coordinate system and the robot base coordinate system is calculated by robot kinematics forward solution, for example: DH matrix method, and the specific calculation method is not described here.

[0042] The second space coordinates in the camera coordinate system at different positions according to the center calibration point are obtained, and the extrinsic parameter matrix of the camera is calculated through the intrinsic parameter matrix of the camera and the second space coordinates, so that the third conversion matrix between the camera coordinate system and the calibration board coordinate system can be obtained.

[0043] Exemplarily, Figure 3 is a schematic diagram of a calibration board provided by an embodiment of the present application, as Figure 3 shown, the intersection points L1 to L4 of the four black and white blocks in the calibration board are determined, the diagonal intersection points are connected, that is, L1 and L3 are connected, and L2 and L4 are connected, the intersection point of the two lines is determined as the center calibration point O, OL1 is determined as the x-axis, OL2 is determined as the y-axis, and the normal plane of the x-axis and the y-axis passing through the center calibration point O is calculated, the normal plane is determined as the z-axis, so that the center calibration point and the calibration board coordinate system can be constructed. It should be understood that the above construction method is only an example and does not limit the present application.

[0044] The second conversion matrix and the third conversion matrix can calculate the first conversion matrix between the first coordinate system and the second coordinate system through the formula AX=XB. It should be understood that, since the calibration board and the robot arm are fixedly connected, and the conversion relationship between the calibration board coordinate system and the robot arm end coordinate system can be eliminated in the formula derivation process, only the conversion relationship between the robot arm base coordinate system and the robot arm end coordinate system, and the conversion relationship between the camera coordinate system and the calibration board coordinate system are needed to calculate the first conversion matrix between the robot arm base and the camera coordinate system.

[0045] In the embodiment of the present application, the first conversion matrix between the robot arm base coordinate system and the camera coordinate system can be obtained through the first space coordinates, the second space coordinates and the poses of the robot arm at different space positions, so that the camera can obtain the spatial position of the object in the camera coordinate system and guide the robot arm to the position corresponding to the object in the robot arm base coordinate system through the first conversion matrix, thereby realizing the process of hand-eye calibration.

[0046] In a possible implementation, the calibration method further includes: determining a fourth conversion matrix between the second coordinate system and the third coordinate system according to the second conversion matrix and the iterated first conversion matrix.

[0047] According to the second conversion matrix between the first coordinate system and the third coordinate system, that is, the conversion relationship between the robot arm base coordinate system and the robot arm end coordinate system, and the iterated first conversion matrix between the first coordinate system and the second coordinate system, that is, the conversion relationship between the robot arm base and the camera coordinate system, the fourth conversion matrix between the camera coordinate system and the robot arm end coordinate system is determined.

[0048] It should be understood that the end-of-arm coordinate system can be understood as the coordinate system of the end-of-arm flange, which can be used to hold a tool, such as a mechanical gripper, a surgical probe, and the like.

[0049] In the embodiment of the present application, the conversion relationship between the end-of-arm coordinate system and the camera coordinate system is determined by the second conversion matrix and the iterated first conversion matrix. Since the iterated first conversion matrix is used, the conversion relationship between the end of the arm and the camera can be more accurately determined, so that the end of the arm can perform more accurate operations after connecting the tool, and the accuracy of the calibration method is increased, so that the method can be applied to the medical robot industry with high operation accuracy requirements.

[0050] In a possible implementation, when the first conversion matrix is iteratively updated according to the first motion trajectory and the second motion trajectory, the first motion trajectory can be converted to the second coordinate system according to the first conversion matrix to obtain a third motion trajectory, and then an offset between the third motion trajectory and the second motion trajectory is determined, wherein the offset includes at least one of an offset distance and an offset angle, and the first conversion matrix is updated according to the offset.

[0051] The first motion trajectory of the center calibration point in the base coordinate system of the arm is converted to the camera coordinate system by the first conversion matrix to obtain a third motion trajectory, the third motion trajectory is compared with the second motion trajectory to obtain an offset between the third motion trajectory and the second motion trajectory, and the first conversion matrix is iteratively updated according to the offset to obtain an iterated first conversion matrix.

[0052] A new third motion trajectory corresponding to the first motion trajectory is obtained by the iterated first conversion matrix, the new third motion trajectory is compared with the second motion trajectory to obtain a new offset, and the iterated first conversion matrix is iteratively updated according to the new offset. This step is repeated until the third motion trajectory and the second motion trajectory coincide, the iteration is stopped, and the first conversion matrix obtained by the last iteration is taken as the first conversion matrix between the base coordinate system of the arm and the camera coordinate system, that is, the calibration result.

[0053] It should be understood that when the motion trajectories are compared, the second motion trajectory can also be converted to the base coordinate system of the arm by the first conversion matrix and compared with the first motion trajectory. Since the first conversion matrix does not change, the effects of converting the first motion trajectory to the camera coordinate system or converting the second motion trajectory to the base coordinate system of the arm are the same.

[0054] In the embodiment of the present application, the first motion trajectory is converted into the camera coordinate system to obtain a third motion trajectory, and the third motion trajectory and the second motion trajectory are compared, so that the first conversion matrix can be iteratively updated, the calibration result is more accurate, the error in calibration is reduced, and the mechanical arm is more accurate when operating. Therefore, the method can be applied to the medical robot industry with high operation precision requirement, and has high applicability.

[0055] In a possible implementation, the first motion trajectory is a circular trajectory.

[0056] The first motion trajectory is a circular trajectory, that is, the preset motion trajectory is a circular trajectory, and the circular trajectory can be determined by two quantities, that is, the position of the center and the length of the radius. Therefore, compared with other shapes of motion trajectories, the offset amount can be determined more simply and conveniently.

[0057] In the embodiment of the present application, the first trajectory is a circular trajectory, so that the offset amount of the trajectory can be determined more conveniently when the first conversion matrix is iterated, and the efficiency of iteration is improved.

[0058] In a possible implementation, the plane on which the first motion trajectory is located is perpendicular to the axis direction of the camera lens.

[0059] In the embodiment of the present application, the first motion trajectory is a circular trajectory under the camera angle, that is, the plane on which the first motion trajectory is located is perpendicular to the axis direction of the camera lens, so that the determination of the motion trajectory offset amount is more convenient, the calculation amount is reduced, and the efficiency of the calibration process is improved.

[0060] Figure 4 is a schematic diagram of a calibration device provided in the embodiment of the present application, as Figure 4 shown, the device 400 comprises:

[0061] The first acquisition module 401 is configured to acquire a first spatial coordinate corresponding to each spatial position in the first coordinate system and a second spatial coordinate corresponding to each spatial position in the second coordinate system in at least two spatial positions of the center calibration point. The center calibration point is located on a calibration plate, the calibration plate is fixed on a mechanical arm, the mechanical arm is configured to drive the calibration plate to move, the first coordinate system is a coordinate system of a mechanical arm base, and the second coordinate system is a coordinate system of a camera.

[0062] The determination module 402 is configured to determine a first conversion matrix between the first coordinate system and the second coordinate system according to the first spatial coordinates and the second spatial coordinates.

[0063] The second acquisition module 403 is configured to acquire a first motion trajectory of the center calibration point in the first coordinate system and a second motion trajectory of the center calibration point in the second coordinate system when the center calibration point moves along a preset trajectory.

[0064] The computing module 404 is configured to iteratively update the first conversion matrix according to the first motion trajectory and the second motion trajectory, until a third motion trajectory obtained by converting the first motion trajectory to the second coordinate system through the first conversion matrix coincides with the second motion trajectory.

[0065] In the embodiments of the present application, the first obtaining module 401 can be configured to perform step 101 in the above-mentioned method embodiments, the determining module 402 can be configured to perform step 102 in the above-mentioned method embodiments, the second obtaining module 403 can be configured to perform step 103 in the above-mentioned method embodiments, and the computing module 404 can be configured to perform step 104 in the above-mentioned method embodiments.

[0066] In a possible implementation, the determining module 402 can be configured to obtain the pose of the robot arm when the center calibration point is located at each spatial position; determine a second conversion matrix between the first coordinate system and a third coordinate system according to the pose of the robot arm and the first spatial coordinates, wherein the third coordinate system is a coordinate system of the end of the robot arm; determine a third conversion matrix between the second coordinate system and a fourth coordinate system according to the second spatial coordinates, wherein the fourth coordinate system is a coordinate system of the calibration plate; and determine the first conversion matrix according to the second conversion matrix and the third conversion matrix.

[0067] In a possible implementation, the determining module 402 can be configured to determine a fourth conversion matrix between the second coordinate system and the third coordinate system according to the second conversion matrix and the iteratively updated first conversion matrix.

[0068] In a possible implementation, the computing module 404 can be configured to convert the first motion trajectory to the second coordinate system according to the first conversion matrix to obtain a third motion trajectory; determine an offset between the third motion trajectory and the second motion trajectory, wherein the offset includes at least one of an offset distance and an offset angle; and update the first conversion matrix according to the offset.

[0069] In a possible implementation, the first motion trajectory is a circular trajectory.

[0070] In a possible implementation, the plane on which the first motion trajectory is located is perpendicular to the axis direction of the camera lens.

[0071] It should be noted that the information interaction and execution process between the modules in the above-mentioned calibration device are based on the same concept as the above-mentioned calibration method embodiments, and the specific content can be referred to the description in the above-mentioned calibration method embodiments, which will not be repeated here.

[0072] Referring to Figure 5 , a structural schematic diagram of an electronic device according to an embodiment of the present application is shown, and the specific implementation of the electronic device is not limited in the embodiments of the present application.

[0073] As shown in Figure 5 The electronic device can include a processor 502, a communications interface 504, a memory 506, and a communications bus 508.

[0074] Among them:

[0075] The processor 502, the communications interface 504, and the memory 506 complete the communication with each other through the communications bus 508.

[0076] The communications interface 504 is configured to communicate with other electronic devices or servers.

[0077] The processor 502 is configured to execute the program 510, and specifically can execute the related steps in the above calibration method embodiments.

[0078] Specifically, the program 510 can include program code, and the program code includes computer operation instructions.

[0079] The processor 502 can be a central processing unit CPU, or a graphics processing unit GPU, or an application specific integrated circuit ASIC, or one or more integrated circuits configured to implement the embodiments of the present application. One or more processors included in the smart device can be the same type of processor, such as one or more CPUs; one or more GPUs; or can be different types of processors, such as one or more CPUs and one or more GPUs and one or more ASICs.

[0080] The memory 506 is configured to store the program 510. The memory 506 can include a high-speed RAM memory, and can also include a non-volatile memory, for example at least one disk memory.

[0081] The program 510 can be specifically used to cause the processor 502 to execute the calibration method in any of the preceding embodiments.

[0082] The specific implementation of each step in the program 510 can refer to the corresponding description in the corresponding steps and units in any of the preceding calibration method embodiments, and will not be described here. Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working process of the device and the module described above can refer to the corresponding process description in the preceding method embodiments, and will not be described here.

[0083] In the embodiment of the present application, the first conversion matrix between the camera coordinate system and the robot base coordinate system is determined through the spatial coordinates of the center calibration point on the calibration board at at least two spatial positions, so that the spatial position of the object in the camera coordinate system can be acquired by the camera to guide the robot to the position of the object, the purpose of hand-eye calibration is achieved, and after the first conversion matrix is acquired, the first conversion matrix is updated through the first motion trajectory of the center calibration point in the robot base coordinate system and the second motion trajectory of the center calibration point in the camera coordinate system according to the predetermined trajectory, the accuracy of hand-eye calibration is improved, the error of calibration is reduced, the problem of inaccurate hand-eye calibration result in the prior art is solved, so that the robot can perform high-precision operation, and the method can be applied to the medical robot industry with high operation precision, and therefore has high applicability.

[0084] The embodiment of the present application also provides a computer program product, including computer instructions, which instruct a computing device to perform operations corresponding to any of the methods in the above method embodiments.

[0085] It should be noted that, according to the needs of implementation, each component / step described in the embodiments of the present application can be split into more components / steps, or two or more components / steps or part of the operations of the components / steps can be combined into a new component / step, to achieve the purpose of the embodiments of the present application.

[0086] The above method according to the embodiments of the present application can be implemented in hardware, firmware, or as software or computer code that can be stored in a recording medium such as a CD ROM, a RAM, a floppy disk, a hard disk or an optical disk, or be implemented by computer code originally stored in a remote recording medium or a non-transitory machine readable medium and downloaded to a local recording medium, so that the method described herein can be processed by such software on a recording medium using a general computer, a special processor or programmable or special hardware such as an ASIC or an FPGA. It can be understood that the computer, the processor, the microprocessor controller or the programmable hardware includes a storage component (for example, RAM, ROM, flash memory, etc.) that can store or receive software or computer code, when the software or computer code is accessed and executed by the computer, the processor or the hardware, the calibration method described herein is implemented. In addition, when a general computer accesses the code for implementing the calibration method shown herein, the execution of the code will convert the general computer into a special computer for executing the calibration method shown herein.

[0087] Those skilled in the art can understand that the units and method steps of each example described in combination with the embodiments disclosed herein can be realized by electronic hardware or a combination of computer software and electronic hardware. Whether the functions are realized in hardware or software manner depends on the specific application and design constraints of the technical solution. The skilled person can use different methods to realize the described functions for each specific application, but such implementation should not be considered as beyond the scope of the embodiments of the present application.

[0088] The above embodiments are only used to illustrate but not to limit the embodiments of the present application. Those skilled in the art can make various changes and modifications without departing from the spirit and scope of the embodiments of the present application, and all equivalent technical solutions belong to the scope of the embodiments of the present application. The patent protection scope of the embodiments of the present application should be defined by the claims.

Claims

1. A calibration method, characterized in that: include: Obtaining a first spatial coordinate corresponding to each of at least two spatial positions of a central calibration point in a first coordinate system, and a second spatial coordinate corresponding to each of the spatial positions in a second coordinate system, wherein the central calibration point is located on a calibration plate, the calibration plate is fixed to a robotic arm, and the robotic arm is configured to drive the calibration plate to move, the first coordinate system is a coordinate system of the robotic arm base, and the second coordinate system is a coordinate system of the camera; determining a first transformation matrix between the first coordinate system and the second coordinate system according to each of the first space coordinates and each of the second space coordinates; Acquire a first motion trajectory of the central calibration point in the first coordinate system and a second motion trajectory of the central calibration point in the second coordinate system when the central calibration point moves according to a preset trajectory; Iteratively updating the first transformation matrix according to the first motion trajectory and the second motion trajectory until a third motion trajectory obtained by transforming the first motion trajectory into the second coordinate system using the first transformation matrix coincides with the second motion trajectory; The iterative updating of the first transformation matrix according to the first motion trajectory and the second motion trajectory includes: Converting the first motion trajectory to the second coordinate system according to the first conversion matrix to obtain the third motion trajectory; determining an offset between the third motion trajectory and the second motion trajectory, wherein the offset includes at least one of an offset distance and an offset angle; updating the first transformation matrix according to the offset; The first motion trajectory is a circular trajectory; The plane where the first motion trajectory is located is perpendicular to the axis direction of the camera lens.

2. The method according to claim 1, characterized in that The determining a first transformation matrix between the first coordinate system and the second coordinate system according to each of the first space coordinates and each of the second space coordinates includes: Obtaining the posture of the robotic arm when the center calibration point is located at each spatial position; Determining a second transformation matrix between the first coordinate system and a third coordinate system according to the posture of the robotic arm and each of the first spatial coordinates, wherein the third coordinate system is a coordinate system of the end of the robotic arm; Determining a third transformation matrix between the second coordinate system and a fourth coordinate system according to each of the second spatial coordinates, wherein the fourth coordinate system is a calibration plate coordinate system; The first conversion matrix is ​​determined according to the second conversion matrix and the third conversion matrix.

3. The method according to claim 2, characterized in that The method further comprises: A fourth transformation matrix between the second coordinate system and the third coordinate system is determined according to the second transformation matrix and the iterated first transformation matrix.

4. A calibration device, characterized in that: include: a first acquisition module, configured to acquire a first spatial coordinate corresponding to each of at least two spatial positions of a central calibration point in a first coordinate system, and a second spatial coordinate corresponding to each of the spatial positions in a second coordinate system, wherein the central calibration point is located on a calibration plate, the calibration plate is fixed to a robotic arm, and the robotic arm is configured to drive the calibration plate to move, the first coordinate system is a coordinate system of a robotic arm base, and the second coordinate system is a coordinate system of a camera; a determining module, configured to determine a first transformation matrix between the first coordinate system and the second coordinate system according to each of the first spatial coordinates and each of the second spatial coordinates; a second acquisition module, configured to acquire a first motion trajectory of the central calibration point in the first coordinate system and a second motion trajectory of the central calibration point in the second coordinate system when the central calibration point moves according to a preset trajectory; a calculation module, configured to iteratively update the first transformation matrix according to the first motion trajectory and the second motion trajectory, until a third motion trajectory obtained by transforming the first motion trajectory into the second coordinate system using the first transformation matrix coincides with the second motion trajectory; The iterative updating of the first transformation matrix according to the first motion trajectory and the second motion trajectory includes: Converting the first motion trajectory to the second coordinate system according to the first conversion matrix to obtain the third motion trajectory; determining an offset between the third motion trajectory and the second motion trajectory, wherein the offset includes at least one of an offset distance and an offset angle; updating the first transformation matrix according to the offset; The first motion trajectory is a circular trajectory; The plane where the first motion trajectory is located is perpendicular to the axis direction of the camera lens.

5. An electronic device, characterized in that: include: A processor, a memory, a communication interface, and a communication bus, wherein the processor, the memory, and the communication interface communicate with each other via the communication bus; The memory is used to store at least one executable instruction, and the executable instruction enables the processor to execute the calibration method according to any one of claims 1-3.

6. A computer storage medium, characterized in that A computer program is stored thereon, and when the program is executed by a processor, the calibration method according to any one of claims 1 to 3 is implemented.

7. A computer program product, characterized in that The method comprises computer instructions, wherein the computer instructions instruct a computing device to execute the calibration method according to any one of claims 1 to 3.

Citation Information

Patent Citations

  • Rapid hand-eye calibration device and method based on standard ball binocular robot

    CN112067337A

  • Mechanical arm hand-eye calibrating method, device and system as well as computer readable storage medium

    CN113263499A

  • Hand-eye calibration method and device, electronic equipment and computer readable storage medium

    CN114260899A