Medical robot calibration method, device and related equipment

By obtaining rotation and end calibration videos, combined with binocular camera technology, multi-dimensional calibration of medical robot motion units is solved, and the problem of high accuracy requirements for medical robot motion mechanisms is achieved, and higher robotic arm accuracy and adaptability are achieved.

CN119033469BActive Publication Date: 2024-12-27BEIJING YUNLIJINGAN TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411551493.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-01
Publication Date
2024-12-27
Estimated Expiration
2044-11-01

AI Technical Summary

Technical Problem

The accuracy requirements of medical robot motion mechanisms are high, but the existing technology is difficult to effectively and accurately calibrate, resulting in a decrease in accuracy.

Method used

By obtaining the rotation calibration video and the end calibration video, the axis position and zero position of the rotary motion unit and the end motion unit are determined, combined with binocular camera technology, the connecting rod length and calibration vector are calculated, and the multi-dimensional calibration of the robot arm is performed.

Benefits of technology

The calibration accuracy of the mechanical arm of the medical robot is improved, thereby improving the motion accuracy and adapting to the operational needs in harsh environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119033469B_ABST
    Figure CN119033469B_ABST
Patent Text Reader

Abstract

The present application provides a medical robot calibration method, device and related equipment. The method can calibrate the rotational motion unit in the mechanical arm of the medical robot. When performing the calibration, a plurality of rotational calibration videos can be first obtained. Each rotational calibration video corresponds to a rotational motion unit. Then, the axis position of the corresponding rotational motion unit can be determined according to the motion trajectory of the target ball in the rotational calibration video. In this way, on the one hand, the length of each connecting rod of the first mechanical arm can be calibrated, and on the other hand, a plurality of calibration vectors can be determined according to the axis positions of adjacent rotational motion units, and then the zero position of the rotational motion unit can be calibrated according to the direction of the calibration vector. In this way, the mechanical arm is annotated from two aspects of the size and posture of the mechanical arm, which improves the annotation accuracy, thereby improving the accuracy of the medical robot.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of medical device technology, and in particular to a medical robot calibration method, device and related equipment. Background Art

[0002] Medical robots are a new type of medical device that can be operated by mechanical arms instead of traditional human hands. Because mechanical arms have the characteristics of stability and precision, they can replace manual inspection or treatment in many fields.

[0003] For example, when performing inspections or surgical treatments in natural cavities such as the digestive tract and respiratory tract, medical robots can be combined with flexible endoscopes to perform inspections or treatments to achieve more precise control operations. In addition, in some inspections or surgeries that require the guidance of radiographic images, it is safer to have medical robots perform the inspections or surgeries instead of medical staff.

[0004] Because medical robots need to come into contact with human tissues and organs, higher requirements are placed on the accuracy of their motion mechanisms. Summary of the invention

[0005] In view of this, the present application provides a medical robot calibration method, device and related equipment, aiming to improve the calibration of the motion mechanism of the medical robot to improve the accuracy of the motion mechanism.

[0006] In a first aspect, the present application provides a medical robot calibration method, the method being used to calibrate a medical robot, the medical robot comprising a robot body and a first mechanical arm, the first mechanical arm being mounted on the robot body, the first mechanical arm comprising a plurality of rotational motion units and an end motion unit, the end motion unit being located at the end of the first mechanical arm;

[0007] The method comprises:

[0008] Acquire multiple rotation calibration videos, each of which corresponds to one rotation motion unit, and the rotation calibration video is acquired by capturing the first robotic arm through a binocular camera. When capturing the rotation calibration video, the rotation motion unit corresponding to the rotation calibration video is in motion, and other rotation motion units are fixed at a zero position. In the process of capturing the rotation calibration video, the terminal motion unit is installed with a target ball;

[0009] Determine the axis position of each of the rotational motion units according to the motion trajectory of the target ball in the multiple rotational calibration videos;

[0010] Calibrate the connecting rod length of the first mechanical arm according to the axis position, wherein the connecting rod length is an effective length of the connecting rod connecting the motion unit of the first mechanical arm;

[0011] Determine a plurality of calibration vectors according to the axis position, wherein the calibration vector is a vector between the axis centers of two adjacent rotational motion units;

[0012] The zero positions of the plurality of rotational motion units are calibrated according to the directions of the plurality of calibration vectors.

[0013] In some possible implementations, calibrating the zero positions of the plurality of rotational motion units according to the directions of the plurality of calibration vectors includes:

[0014] For a kth rotational motion unit among the multiple rotational motion units, determine a starting point vector and an end point vector corresponding to the kth rotational motion unit from the multiple calibration vectors, the starting point position of the starting point vector matches the axis position of the kth rotational motion unit, the end point position of the end point vector matches the axis position of the kth rotational motion unit, and k is a positive integer less than or equal to the total number of rotational motion units in the first robotic arm;

[0015] Calculate the angle between the starting point vector and the end point vector;

[0016] The zero position of the kth rotational motion unit is calibrated according to the included angle.

[0017] In some possible implementations, the target ball is installed on the terminal motion unit through a calibration tool, and before acquiring a plurality of rotation calibration videos, the method further includes:

[0018] Acquire an end calibration video, wherein the end calibration video is acquired by the binocular camera from the first robotic arm, and when acquiring the end calibration video, the end motion unit is in motion, and the multiple rotation motion units are fixed at zero positions;

[0019] Determine the motion trajectory of the target ball and the position of the center of the motion trajectory according to the terminal calibration video;

[0020] The terminal motion unit is calibrated according to the position of the center of the circle.

[0021] In some possible implementations, the method further includes:

[0022] For the target image frame in the terminal calibration video, a center target ball vector and a tooling target ball vector are respectively determined, wherein the center target ball vector is a vector pointing from the center of the circle to the target ball, and the tooling target ball vector is a vector pointing from the fixed center of the calibration tooling to the target ball, and the calibration tooling is fixed to the terminal motion unit through the fixed center;

[0023] The installation position of the target ball is calibrated according to the angle between the center target ball vector and the tooling target ball vector.

[0024] In some possible implementations, the first mechanical arm further includes a translation movement unit, and the first mechanical arm is fixed to the robot body through the translation movement unit;

[0025] The method further comprises:

[0026] Acquire a plurality of translation calibration videos, wherein the translation calibration videos are acquired by the binocular camera from the first robotic arm, and when acquiring the translation calibration videos, one rotational motion unit and the translational motion unit in the plurality of rotational motion unit groups are in motion, and the other motion units are in a fixed state;

[0027] According to the motion trajectory of the target ball in each translation calibration video, respectively determine the center position of the motion trajectory in each translation calibration video;

[0028] Determining a moving trajectory of the circle center according to the circle center positions of different translation calibration videos;

[0029] The translation movement unit is calibrated according to the circle center movement trajectory.

[0030] In some possible implementations, the medical robot further includes a second mechanical arm;

[0031] The method further comprises:

[0032] Calibrate the second robotic arm;

[0033] According to the assembly relationship between the first robotic arm and the second robotic arm, a position mapping relationship is established, and the position mapping relationship is used to map the position coordinates in the first coordinate system to the position coordinates in the second coordinate system. The first coordinate system is established based on the first robotic arm, and the second coordinate system is established based on the second robotic arm.

[0034] In some possible implementations, the first robotic arm is used to transport the flexible endoscope, the second robotic arm is used to operate the flexible endoscope, and the relative positions of the second robotic arm and the flexible endoscope are fixed;

[0035] After calibrating the first robotic arm and the second robotic arm, the method further includes:

[0036] Determine a manipulator control instruction according to a target motion trajectory, wherein the target motion trajectory is a curve from the second manipulator to the first manipulator, and the manipulator control instruction is used to control the second manipulator to move to a target position along the target motion trajectory;

[0037] determining the actual position and actual motion trajectory of the second robotic arm relative to the first robotic arm according to the control video, wherein the control video is acquired by the binocular camera in the process of controlling the movement of the first robotic arm and the second robotic arm according to the robotic arm control instruction, and the actual position is the position of the second robotic arm when it stops moving;

[0038] Evaluating a calibration result of the medical robot according to the first length change and the second length change;

[0039] Among them, the first length change is the change in theoretical length of the flexible endoscope between the first robotic arm and the second robotic arm before and after the second robotic arm moves, calculated according to the target motion trajectory; the second length change is the change in theoretical length of the flexible endoscope between the first robotic arm and the second robotic arm before and after the second robotic arm moves, calculated according to the actual motion trajectory.

[0040] In a second aspect, the present application provides a medical robot calibration device, the device being used to calibrate a medical robot, the medical robot comprising a robot body and a first mechanical arm, the first mechanical arm being mounted on the robot body, the first mechanical arm comprising a plurality of rotational motion units and an end motion unit, the end motion unit being located at the end of the first mechanical arm;

[0041] The device comprises:

[0042] an acquisition unit, used for acquiring a plurality of rotation calibration videos, each of which corresponds to one of the rotation motion units, and the rotation calibration videos are acquired by acquiring the first mechanical arm through a binocular camera. When acquiring the rotation calibration videos, the rotation motion units corresponding to the rotation calibration videos are in motion, and the other rotation motion units are fixed at zero positions. In the process of acquiring the rotation calibration videos, the terminal motion unit is installed with a target ball;

[0043] A position determination unit, used to determine the axis position of each of the rotational motion units according to the motion trajectory of the target ball in the multiple rotation calibration videos;

[0044] An arm length calibration unit, used to calibrate the connecting rod length of the first mechanical arm according to the axis position, wherein the connecting rod length is an effective length of the connecting rod connecting the motion unit of the first mechanical arm;

[0045] The zero position calibration unit is used to determine multiple calibration vectors according to the axis position, wherein the calibration vector is a vector between the axis centers of two adjacent rotational motion units; and calibrate the zero position of the multiple rotational motion units according to the directions of the multiple calibration vectors.

[0046] In some possible implementations, the zero position calibration unit is specifically used to determine, for a kth rotational motion unit among the multiple rotational motion units, a starting point vector and an end point vector corresponding to the kth rotational motion unit from the multiple calibration vectors, the starting point position of the starting point vector matches the axis position of the kth rotational motion unit, and the end point position of the end point vector matches the axis position of the kth rotational motion unit, and k is a positive integer less than or equal to the total number of rotational motion units in the first robotic arm; calculate the angle between the starting point vector and the end point vector; and calibrate the zero position of the kth rotational motion unit according to the angle.

[0047] In some possible implementations, the device also includes a target ball calibration unit; the acquisition unit is further used to acquire an end calibration video, the end calibration video is acquired by the binocular camera on the first robotic arm, when the end calibration video is acquired, the end motion unit is in motion, and the multiple rotational motion units are fixed at a zero position; the target ball calibration unit is used to determine the motion trajectory of the target ball and the position of the center of the motion trajectory according to the end calibration video; and calibrate the end motion unit according to the position of the center of the circle.

[0048] In some possible implementations, the device also includes a tool calibration unit; the tool calibration unit is used to determine a center target ball vector and a tool target ball vector, respectively, for a target image frame in the terminal calibration video, the center target ball vector being a vector pointing from the center of the circle to the target ball, and the tool target ball vector being a vector pointing from a fixed center of the calibration tool to the target ball, and the calibration tool is fixed to the terminal motion unit through the fixed center; the installation position of the target ball is calibrated according to an angle between the center target ball vector and the tool target ball vector.

[0049] In some possible implementations, the first robotic arm also includes a translational motion unit, and the first robotic arm is fixed to the robot body through the translational motion unit; the device also includes a translational calibration unit; the acquisition unit is also used to acquire multiple translational calibration videos, and the translational calibration video is obtained by capturing the first robotic arm through the binocular camera. When capturing the translational calibration video, one rotational motion unit and the translational motion unit in the multiple rotational motion unit groups are in motion, and the other motion units are in a fixed state; the translational calibration unit is used to determine the center position of the motion trajectory in each translational calibration video according to the motion trajectory of the target ball in each translational calibration video; determine the center movement trajectory according to the center positions of different translation calibration videos; and calibrate the translational motion unit according to the center movement trajectory.

[0050] In some possible implementations, the medical robot also includes a second robotic arm; the device is also used to calibrate the second robotic arm; the device also includes a mapping determination unit, the mapping determination unit is used to establish a position mapping relationship based on the assembly relationship between the first robotic arm and the second robotic arm, the position mapping relationship is used to map the position coordinates in the first coordinate system to the position coordinates in the second coordinate system, the first coordinate system is established based on the first robotic arm, and the second coordinate system is established based on the second robotic arm.

[0051] In some possible implementations, the device further includes a verification unit. The first robotic arm is used to transport the flexible endoscope, the second robotic arm is used to operate the flexible endoscope, and the relative position of the second robotic arm and the flexible endoscope is fixed.

[0052] The verification unit is used to determine the robot arm control instruction according to the target motion trajectory, the target motion trajectory is a curve moving from the second robot arm to the first robot arm, and the robot arm control instruction is used to control the second robot arm to move to the target position along the target motion trajectory; determine the actual position and actual motion trajectory of the second robot arm according to the control video, the control video is collected by the binocular camera in the process of controlling the movement of the first robot arm and the second robot arm according to the robot arm control instruction, and the actual position is the position of the second robot arm when it stops moving; evaluate the calibration result of the medical robot according to the first length change and the second length change; wherein the first length change is the change in theoretical length of the flexible endoscope between the first robot arm and the second robot arm before and after the second robot arm moves, which is calculated according to the target motion trajectory, and the second length change is the change in theoretical length of the flexible endoscope between the first robot arm and the second robot arm before and after the second robot arm moves, which is calculated according to the actual motion trajectory.

[0053] In a third aspect, the present application provides a medical robot calibration device, which includes a memory and a processor, the memory being used to store instructions or codes, and the processor being used to execute the instructions or codes stored in the memory to implement a method as described in any one of the first aspects above.

[0054] In a fourth aspect, the present application provides a medical robot calibration system, which includes a binocular camera and a medical robot calibration device as described in the third aspect above; the binocular camera is used to collect video of the medical robot to obtain the video used in the calibration process.

[0055] In a fifth aspect, the present application provides a computer storage medium, in which codes are stored. When the codes are executed, a device executing the codes implements the method described in any one of the first aspects above.

[0056] In a sixth aspect, a computer program product comprising instructions is provided, which, when executed on a computer, enables the computer to execute any of the methods described in the first aspect.

[0057] The present application provides a medical robot calibration method, device and related equipment. The method can calibrate the rotational motion unit in the mechanical arm of the medical robot. Specifically, it is assumed that the medical robot includes a first mechanical arm. The first mechanical arm includes multiple rotational motion units and an end motion unit. The end motion unit is used to fix the medical device for performing surgery or inspection. When collecting the video used for calibration, a target ball can be installed on the end motion unit. When performing calibration, firstly, multiple rotation calibration videos can be obtained. Each rotation calibration video corresponds to a rotational motion unit. The rotation calibration video is obtained by collecting the medical robot through a binocular camera. When collecting the rotation calibration video corresponding to a certain rotational motion unit, the other motion units of the first mechanical arm can be controlled to be fixed at the zero position, and the rotation unit can be controlled to move. Then, the axis position of the corresponding rotational motion unit can be determined according to the motion trajectory of the target ball in the rotation calibration video. In this way, on the one hand, the length of each connecting rod of the first mechanical arm can be calibrated, and on the other hand, multiple calibration vectors can be determined according to the axis positions of adjacent rotational motion units, and then the zero position of the rotational motion unit can be calibrated according to the direction of the calibration vector. That is to say, when calibrating the first mechanical arm of the medical robot, not only can the connecting rod length of the first mechanical arm be determined according to the motion trajectory of the axis, but also the zero position of each rotary motion joint can be calibrated. In this way, the mechanical arm is annotated from two aspects of size and posture, which improves the annotation accuracy and thus improves the accuracy of the medical robot. BRIEF DESCRIPTION OF THE DRAWINGS

[0058] In order to more clearly illustrate the technical solutions in this embodiment or the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0059] Figure 1a A schematic diagram of an application scenario of a medical robot provided in an embodiment of the present application;

[0060] Figure 1b A schematic diagram of the structure of a medical robot provided in an embodiment of the present application;

[0061] Figure 1c A schematic diagram of a scene of a calibration process of a medical robot provided in an embodiment of the present application;

[0062] Figure 2 A schematic diagram of a flow chart of a medical robot calibration method provided in an embodiment of the present application;

[0063] Figure 3A structural schematic diagram of a method for installing a calibration tool provided in an embodiment of the present application;

[0064] Figure 4 A schematic diagram of the structure of a medical robot calibration device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0065] Medical robots have higher operating accuracy and can adapt to operations in harsh environments. They can be used to replace medical staff in many fields for examinations or treatments. For example, some examinations or operations may need to be conducted under the guidance of radiographic images. In order to protect the health of medical staff, medical staff need to wear heavy lead protective clothing to operate, which may reduce the accuracy of medical staff's operations. Medical robots will not have this problem.

[0066] In order to perform examinations or treatments on behalf of medical personnel, the medical robot may include actuators such as a robotic arm. Medical devices for examination or treatment may be mounted on the robotic arm. The robotic arm may be used to input the medical device to a position where examination or treatment is required, thereby performing examination or treatment through the medical device. Specifically, the robotic arm may include a plurality of motion units, which are connected by a fixed mechanism. By controlling the motion unit, the medical device may be moved to a target position. Obviously, the accuracy of controlling the motion unit will affect the accuracy of the final target position. The motion unit may also be referred to as a motion joint.

[0067] In order to improve the control accuracy, the medical robot can be calibrated before it is put into use. Specifically, the motion unit on the mechanical arm of the medical robot can be calibrated. For example, a target ball can be installed on the end motion unit of the mechanical arm and a calibration video can be recorded through a binocular camera. During the recording of the calibration video, the motion unit of the medical robot can be controlled to move. In this way, by identifying the motion trajectory of the target ball in the calibration video, the position of the motion unit can be determined for calibration.

[0068] Combine the following Figure 1a , Figure 1b and Figure 1c Provide an example introduction to the application scenario.

[0069] See also Figure 1a , This figure is a schematic diagram of an application scenario in which a medical robot uses a flexible endoscope to treat a patient. Figure 1a In the application scenario shown, the medical robot includes a conveying arm and an operating arm. A conveying device is fixed at the end of the conveying arm, and a flexible endoscope is input into the patient's body through the conveying device. An operating device is fixed at the end of the operating arm, and the flexible endoscope is operated through the operating device. As the flexible endoscope is conveyed by the conveying arm, the operating arm can adaptively move toward the direction of the conveying arm to prevent the flexible endoscope from being stretched or folded and compressed.

[0070] Medical staff can control the medical robot through the control device. Figure 1a In the application scenario shown, the conveying arm and the operating arm include multiple connecting rods and multiple motion units respectively. Through the mutual cooperation between the multiple motion units, the angle between the connecting rods can be adjusted, so as to move the conveying arm and / or the operating arm to the corresponding position.

[0071] Specifically, see Figure 1b ,exist Figure 1b In the implementation shown, the conveying arm includes a first joint, a second joint, a third joint, a fourth joint and a fifth joint. The operating arm includes a first joint, a second joint, a third joint, a fourth joint and a fifth joint. Among them, the first joint of the conveying arm and the first joint of the operating arm are guide joints, which are used to longitudinally move the conveying arm or the operating arm, and are hereinafter referred to as translation joints or translation units. The second joint to the fourth joint of the conveying arm, and the fourth joint to the fifth joint of the operating arm are all rotation joints, which are used for two adjacent connecting rods in the mechanical arm, and adjust the angle between the two adjacent connecting rods, thereby adjusting the posture of the mechanical arm, and can also be called rotation joints or rotation units. The fifth joint of the conveying arm and the fifth joint of the operating arm are respectively located at the ends of the conveying arm and the operating arm, and can also be called end motion joints or end motion units.

[0072] When calibrating a certain mechanical arm of a medical robot, a target ball can be installed on the end motion unit of the corresponding mechanical arm. Specifically, a calibration tool ( Figure 1b (not shown in the figure), and then install the target ball on the calibration fixture. The target ball is an object that is easy to identify in the video. For example, the color of the target ball can be clearly different from the background and the medical robot. Figure 1b In the implementation shown, both the conveying arm and the operating arm are equipped with a target ball. In order to facilitate the distinction between the operating arm and the conveying arm, the color of the operating arm target ball may be different from the color of the conveying arm target ball.

[0073] like Figure 1c As shown, when calibrating the medical robot, the video used for calibration can be collected by a binocular camera. Among them, the binocular camera refers to a camera with two image acquisition modules, the optical parameters of the image acquisition modules are known, and the distance between the two image acquisition modules is known. Therefore, based on the difference in the position of the target ball in the images collected by the two image acquisition modules, the real position of the target ball can be determined. Recording a video with a binocular camera is equivalent to continuously collecting multiple images. According to the position of the target ball in each image, the motion trajectory of the target ball can be determined. By analyzing the motion trajectory of the target ball, the position of the center point of the motion trajectory of the target ball can be determined, and then the center position of each rotational motion unit can be determined.

[0074] However, the above calibration method only focuses on the distance between the motion units, but not the angles between different connecting rods. In fact, the angles between the connecting rods of the current medical robot arm can be obtained through the sensor readings and the preset angle zero position. The angle zero position is the zero position of the motion unit set when the medical robot leaves the factory, which may not be accurate. This will lead to a decrease in the accuracy of the medical robot.

[0075] In view of this, an embodiment of the present application provides a medical robot calibration method. The method can be used to calibrate the mechanical arm of a medical robot. Through the medical robot calibration method provided in the embodiment of the present application, the distance between each motion unit in the mechanical arm can be calibrated, and the zero position of each motion unit can be calibrated.

[0076] Combine the following Figure 2 , taking the first mechanical arm of a medical robot as an example, some embodiments of calibrating a medical robot are introduced. The first mechanical arm is a mechanical arm of the medical robot. The medical robot may include one mechanical arm or multiple mechanical arms. The first mechanical arm includes an end motion unit and multiple rotational motion units. During the process of shooting the calibration video, the end motion unit is used to install a target ball.

[0077] Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in the field without creative work are within the scope of protection of the present application.

[0078] See also Figure 2 , Figure 2 A method flow chart of a medical robot calibration method provided in an embodiment of the present application includes:

[0079] S201: Acquire multiple rotation calibration videos.

[0080] When calibrating the medical robot, it is first necessary to obtain multiple rotation calibration videos, each of which corresponds to a rotation motion unit, for determining the axis position of the rotation motion unit. Specifically, the rotation calibration video is acquired through a binocular camera. In addition, when acquiring the rotation calibration video corresponding to a certain rotation motion unit, the other rotation motion units of the first manipulator can be controlled to be fixed at the zero position, and the rotation motion unit can be moved. Since only one rotation motion unit is in motion, the movement of the target ball's position is caused by the rotation motion unit. Therefore, the center of the target ball's motion trajectory is the center of the rotation motion unit.

[0081] Optionally, in some implementations, the movement of the rotational motion unit may include a rotation of 360°. Alternatively, in order to prevent the target ball from being blocked, the movement of the rotational motion unit may also include a rotation of an angle less than 360°.

[0082] S202: Determine the axis position of each rotational motion unit according to the motion trajectory of the target ball in the multiple rotational calibration videos.

[0083] For each rotation calibration video, the motion trajectory of the target ball in the rotation calibration video can be determined. Since the rotation motion unit is used to change the angle between the two connecting rods of the first robotic arm, the motion trajectory of the target ball in the rotation calibration video is circular. Therefore, the position of the center of the motion trajectory can be determined based on the motion trajectory of the target ball. The position of the center of the circle is the axis position of the rotation motion unit corresponding to the rotation calibration video. The straight line passing through the axis position and perpendicular to the plane where the motion trajectory of the target ball is located is the rotation axis of the rotation motion unit.

[0084] The above-mentioned “position of the center of the circle” and “position of the axis” refer to the positions of the center of the circle and the axis in three-dimensional space. For example, the position of the axis can be the position of the axis of the rotational motion unit in a three-dimensional coordinate system established based on a binocular camera, or it can be the position of the axis of the rotational motion unit in a three-dimensional coordinate system established based on the fixed position of the first robotic arm and the medical robot.

[0085] S203: Calibrate the connecting rod length of the first robot arm according to the axis position.

[0086] After determining the axis position of each rotational motion unit, the connecting rod length of the first robot arm can be calibrated according to the distance between the axis centers. The connecting rod length of the first robot arm refers to the length between any two adjacent rotational motion units of the first robot arm, that is, the length of each connecting rod.

[0087] Specifically, the spatial distance between the axes of two adjacent rotational motion units can be calculated. The control distance is the length of the sub-arm between the two motion units. In this way, by calculating all two adjacent rotational motion units in turn, the length of each sub-arm in the first mechanical arm can be determined, and the calibration of the connecting rod length of the first mechanical arm can be completed.

[0088] In actual scenarios, the rotational motion unit will also have a certain length, resulting in the actual length of the connecting rod being less than the effective length of the connecting rod. In the embodiment of the present application, the length of the connecting rod refers to the length of the straight line from the axis position of the rotational motion unit at one end of the connecting rod to the axis position of the rotational motion unit at the other end, which is the effective length of the connecting rod, not the actual length of the connecting rod.

[0089] In addition to calibrating the connecting rod length of the first robot arm according to the axis position, the zero position of the rotary motion unit may also be calibrated. Specifically, the following steps S204 and S203 may be performed to calibrate the zero position of the rotary motion unit based on the angle of the vector.

[0090] S204: Determine a plurality of calibration vectors according to the axis position.

[0091] When calibrating the zero position, multiple calibration vectors can be determined according to the axis position. The calibration vector is a vector between the axes of two adjacent rotational motion units. That is, the starting point of the scalar vector is the axis of a certain rotational motion unit, the end point is the axis of another rotational motion unit, and the rotational motion unit corresponding to the starting point and the rotational motion unit corresponding to the end point are two adjacent rotational motion units. Optionally, the calibration vector can be perpendicular to the rotation axis of the rotational motion unit corresponding to the starting point and the rotation axis of the rotational motion unit corresponding to the focus, respectively.

[0092] For ease of description, this embodiment is mainly described based on the case where the direction of the calibration vector is close to the terminal motion unit. That is, the rotational motion unit corresponding to the end point of the calibration vector is closer to the terminal motion unit than the rotational motion unit corresponding to the starting point of the calibration vector.

[0093] According to the previous introduction, the rotation calibration video used to determine the axis position is collected when only one rotation motion unit is moving and the other rotation motion units are fixed at the zero position. Therefore, the axis position of the rotation motion unit determined based on the rotation calibration video is the axis position when the other rotation motion units are at the zero position. It can be seen that the vector pointing from a certain rotation motion unit to the next rotation motion unit is equivalent to the direction of the zero position of the rotation motion unit. Among them, the next rotation motion unit. Refers to a rotation motion unit that is closer to the end of the first robotic arm than the current rotation motion unit.

[0094] by Figure 1b Take the application scenario shown as an example. When collecting the rotation calibration video corresponding to the third joint, the second joint, the fourth joint and the fifth joint are all fixed at the zero position. Therefore, the vector pointing from the second joint to the third joint is equivalent to the direction of the connecting rod between the second joint and the third joint when the second joint is at the zero position, indicating the vector of the zero position of the second joint. Similarly, when collecting the rotation calibration video corresponding to the fourth joint, the second joint, the third joint and the fifth joint are all fixed at the zero position. Therefore, the vector pointing from the third joint to the fourth joint is equivalent to the direction of the connecting rod between the third joint and the fourth joint when the third joint is at the zero position, indicating the direction of the zero position of the third joint.

[0095] In actual application scenarios, if the first robot arm has n rotational motion units and 1 end motion unit, a total of n calibration vectors can be determined. Each calibration vector represents the direction of the zero position of a rotational motion unit. Where n is a positive integer greater than 1.

[0096] It should be noted that in Figure 1b In the application scenario shown, the directions of the rotation axes corresponding to the second joint, the third joint and the fourth joint are all vertically upward, so each calibration vector is a vector located in the horizontal plane.

[0097] S205: Calibrate the zero positions of the multiple rotational motion units according to the directions of the multiple calibration vectors.

[0098] After the calibration vector is determined, the zero positions of the multiple rotational motion units can be calibrated according to the direction of the calibration vector.

[0099] Assume that the first robot arm includes n rotational motion units, and take the kth rotational motion unit among the n rotational motion units as an example for introduction (k is a positive integer not greater than n).

[0100] When calibrating the zero position of the kth rotational motion unit, the starting point vector and the end point vector corresponding to the kth rotational motion unit can be first determined from multiple calibration vectors. The starting point vector corresponding to the kth rotational motion unit refers to a vector whose starting point is the axis position of the kth rotational motion unit. The end point vector corresponding to the kth rotational motion unit refers to a vector whose end point is the axis position of the kth rotational motion unit.

[0101] If n rotational motion units are arranged in order from the starting point to the end of the first robot arm, and k is greater than 1 and less than n, then the end point of the starting point vector corresponding to the kth rotational motion unit is the axis position of the k+1th rotational motion unit, and the end point of the end point vector corresponding to the kth rotational motion unit is the axis position of the k-1th rotational motion unit.

[0102] After determining the starting point vector and the end point vector corresponding to the kth rotational motion unit, the zero position of the kth rotational motion unit can be determined based on the angle between the starting point vector and the end point vector. That is, the angle between the starting point vector and the end point vector is equivalent to the angle between the two connecting rods connected to the kth rotational motion unit when the kth rotational motion unit is at the zero position. In this way, the angle between the two connecting rods when the kth rotational motion unit is at the zero position under theoretical conditions can be compared with the actual angle between the starting point vector and the end point vector, thereby completing the calibration of the zero position of the kth rotational motion unit.

[0103] Still in use Figure 1b The application scenario shown is used as an example for explanation.

[0104] Assume that in the process of designing a medical robot, it is hoped that when each joint is in the zero position, the operating arm and the conveying arm are in a straight state. In this way, if the zero position of each joint does not exist, the angle between each calibration vector should be 180°. Therefore, when calibrating the zero position, it can be determined whether the angle between the calibration vectors of the vector is 180° or within the reasonable error range of 180°. If not, it means that there is a large deviation in the zero position of the joint, and the angle of the joint can be revised based on the zero position, or the recorded zero position can be revised.

[0105] The present application provides a medical robot calibration method. The method can calibrate the rotational motion unit in the mechanical arm of the medical robot. Specifically, it is assumed that the medical robot includes a first mechanical arm. The first mechanical arm includes multiple rotational motion units and an end motion unit. The end motion unit is used to fix the medical device for performing surgery or inspection. When collecting the video used for calibration, a target ball can be installed on the end motion unit. When performing calibration, multiple rotation calibration videos can be obtained first. Each rotation calibration video corresponds to a rotational motion unit. The rotation calibration video is obtained by collecting the medical robot through a binocular camera. When collecting the rotation calibration video corresponding to a certain rotational motion unit, the other motion units of the first mechanical arm can be controlled to be fixed at the zero position, and the rotation unit can be controlled to move. Then, the axis position of the corresponding rotational motion unit can be determined according to the motion trajectory of the target ball in the rotation calibration video. In this way, on the one hand, the length of each connecting rod of the first mechanical arm can be calibrated, and on the other hand, multiple calibration vectors can be determined according to the axis positions of adjacent rotational motion units, and then the zero position of the rotational motion unit can be calibrated according to the direction of the calibration vector. That is to say, when calibrating the first mechanical arm of the medical robot, not only can the connecting rod length of the first mechanical arm be determined according to the motion trajectory of the axis, but also the zero position of each rotary motion joint can be calibrated. In this way, the mechanical arm is annotated from two aspects of size and posture, which improves the annotation accuracy and thus improves the accuracy of the medical robot.

[0106] In some application scenarios, the target ball can be directly mounted on the end motion unit. In this way, the position of the end motion unit can be indicated by the target ball. In some other application scenarios, the target ball can be mounted on the end motion unit through a calibration fixture. In this way, the end motion unit can be calibrated.

[0107] See also Figure 3 , which is a structural schematic diagram of a method for installing a calibration tool provided in an embodiment of the present application. Figure 3In the implementation shown, the structure of the calibration tool is a cross shape, including a long arm and a short arm. The end of the long arm includes two target ball mounting points, and the end of the short arm includes two target ball mounting units. During the process of collecting the rotation calibration video, the target ball can be installed at any target ball mounting point. The calibration tool can be installed to the end motion unit through the mounting structure. The position of the mounting structure can also be called the fixed center of the calibration tool. Optionally, the fixed center can be at the intersection of the long arm and the short arm, for example.

[0108] Optionally, after the target ball is installed, the terminal motion unit can be calibrated. Specifically, each rotational motion joint of the first robotic arm can be controlled to be fixed at the zero position, and the terminal motion unit can be controlled to move, and the video can be captured by the binocular camera to obtain a terminal calibration video. Then, the installation position of the target ball can be calibrated using the terminal calibration video. Optionally, by analyzing the terminal calibration video, the motion trajectory of the target ball can be determined, and the center of the motion trajectory is the center point of the terminal rotation unit.

[0109] In actual scenarios, due to the influence of manufacturing and installation, there may be a certain deviation between the center of the calibration tool and the center of the end rotation unit. If the deviation is too large, the calibration result may be inaccurate. Therefore, the accuracy of the calibration tool can also be calibrated based on the end calibration video. Among them, the accuracy of the calibration tool includes both the accuracy of the calibration tool manufacturing and the accuracy of the calibration tool installation.

[0110] Specifically, after determining the center of the motion trajectory, for a certain frame of the image in the terminal calibration video (hereinafter referred to as the target image frame), the position of the target ball in the target image frame can be analyzed to determine the center target ball vector and the tooling target ball vector. The center target ball vector is the vector pointing from the center of the motion trajectory to the target ball. The tooling target ball vector is the vector that executes the target ball from the fixed center of the calibration tooling. Then, the angle between the center target ball vector and the tooling target ball vector can be calculated, and the installation position of the target ball can be calibrated using this angle. If the angle between the center target ball vector and the tooling target ball vector is too large, it means that the accuracy of the calibration tooling is poor, and the calibration tooling can be replaced or reinstalled.

[0111] Still Figure 3 Assume that the target ball is mounted at the end of the long arm of the calibration fixture, and the target image frame is as follows: Figure 3 Then the center target ball vector V1 and the tooling target ball vector V2 can be determined respectively, and then based on the angle between the center target ball vector V1 and the tooling target ball vector V2, it can be determined whether the accuracy of the calibration tooling meets the calibration requirements.

[0112] In some scenarios, the robot arm includes not only a rotational motion unit for changing the angle between the links, but also a translational motion unit for translation. Figure 1b In the application scenario shown, the first joint of the conveying arm and the first joint of the rotating arm are both translational motion units, which are used to longitudinally translate the conveying arm and the operating arm, respectively. Accordingly, when calibrating the medical robot, not only the rotational motion unit can be calibrated, but also the translational motion unit can be calibrated.

[0113] Specifically, when collecting the calibration video, multiple translation calibration videos can also be obtained. Similar to the rotation calibration video, the translation calibration video is also collected by a binocular camera. In addition, when collecting the translation calibration video, one of the multiple rotational motion units is in motion, and the translational motion unit is also in a rotational motion state. The rotational motion units in motion in different translation calibration videos are the same.

[0114] That is, different translation calibration videos are generated when the same rotation motion unit moves when the translation motion unit is at different positions. Therefore, the movement trajectory of the rotation motion unit determined according to different translation calibration videos is the movement trajectory of the translation motion unit, which can be used to calibrate the translation motion unit.

[0115] Specifically, each translation calibration video can be analyzed to determine the motion trajectory of the target ball in each translation calibration video, and the center position of the motion trajectory of the target ball in the translation calibration video can be determined respectively. Then, the center movement trajectory can be determined according to the center position of different translation calibration videos. Finally, the translation mobile unit can be calibrated according to the center movement trajectory. For example, the direction of the translation mobile unit can be calibrated according to the direction of the center movement trajectory.

[0116] In some application scenarios, a medical robot may include more than one robotic arm. Different robotic arms may need to cooperate with each other. For example, Figure 1a In the application scenario shown, the medical robot includes two mechanical arms, an operating arm and a conveying arm. When examining or treating a patient, the operating arm and the conveying arm need to work together. Thus, when calibrating the medical robot, not only each mechanical arm needs to be calibrated, but also the correlation between the two mechanical arms needs to be calibrated.

[0117] That is, if the medical robot includes a first mechanical arm and a second mechanical arm, then the following can be used: Figure 2The method shown calibrates the first robotic arm and the second robotic arm respectively. Then, the assembly relationship between the first robotic arm and the second robotic arm can be obtained, and a position mapping relationship can be established based on the assembly relationship. The position mapping relationship is used to map the position of a point in space relative to the first robotic arm to the position of the point relative to the second robotic arm. In other words, assuming that the first robotic arm establishes a first coordinate system and the second coordinate system is established based on the second robotic arm, the position mapping relationship is used to map the position coordinates in the first coordinate system to the position coordinates in the second coordinate system. In this way, the position mapping relationship between the robotic arms is determined in the process of calibrating the medical robot, and in the process of using the medical robot, the association relationship between the coordinate systems can be determined based on the position mapping relationship, so as to better examine or treat the patient.

[0118] by Figure 1b The following is an example of implementation. Assume that the angle between the track corresponding to the first joint of the operating arm and the track corresponding to the first joint of the conveying arm is 120°, and the operating part coordinate system is established with the height of 1100 mm relative to the ground as the center. , establish the conveying part coordinate system with the conveying arm at a height of 800 mm relative to the ground as the center , then the position mapping relationship is the operating part coordinate system To the conveyor coordinate system The coordinate transformation relationship between .

[0119] Optionally, the coordinate transformation relationship It can be expressed by the following formula:

[0120]

[0121] In actual scenarios, the calibration of the medical robot may be disturbed, resulting in inaccurate calibration results. To this end, in some implementations, the calibration results may be verified after the medical robot is calibrated.

[0122] For example, in some optional implementations, the control instructions of the robot arm can be determined according to the target position after calibration, and the robot arm can be controlled to move by the control instructions. After the robot arm moves, the actual position of the robot arm after the movement can be determined by the binocular camera and the target ball. By comparing the difference between the driver's position and the target position, it can be determined whether the calibration of the medical robot is accurate.

[0123] According to the previous introduction, if Figure 1aThe medical robot shown can examine or treat patients through a flexible endoscope. As a relatively precise medical device, the flexible endoscope should not be compressed or stretched during use. Therefore, the movement of the operating arm needs to be highly accurate so that it can cooperate with the conveying arm and move adaptively as the remaining length of the flexible endoscope decreases.

[0124] To this end, in some implementations, the distance of the adaptive movement of the manipulator arm can be verified after calibration. Specifically, the process of the manipulator arm moving with the delivery of the flexible endoscope can be simulated without installing the flexible endoscope. In this process, the actual motion trajectory of the manipulator arm can be determined by video acquisition through a binocular camera. According to the actual motion trajectory of the manipulator arm, the actual shortening length of the flexible endoscope caused by the movement of the manipulator arm can be determined. By comparing the actual shortening length with the length that the flexible endoscope should be shortened in theory, it can be determined whether the movement of the manipulator arm can meet the working requirements of the medical robot.

[0125] Specifically, the target motion trajectory may be determined first. The target motion trajectory is the theoretical motion trajectory of the operating arm when the delivery arm delivers the flexible endoscope. Optionally, the target motion trajectory may be obtained by secondary sampling simulation.

[0126] After the target motion trajectory is determined, the manipulator control instruction can be determined according to the target motion trajectory. The manipulator control instruction is used to control the manipulator to move to a certain position on the target motion trajectory. Optionally, the position can be randomly selected or selected by a technician. The position can be referred to as the target position.

[0127] According to the robot arm operation instructions, the manipulator arm can be controlled to move. During the movement of the manipulator arm, the binocular camera can be used to capture video to obtain a control video. By analyzing the control video, the actual motion trajectory and actual position of the manipulator arm can be determined. The actual motion trajectory of the manipulator arm refers to the trajectory of the manipulator arm during the actual movement process, which can be obtained by image recognition of the target ball in the control video. The actual position of the manipulator arm refers to the position of the manipulator arm after the robot arm operation instruction is executed. That is, the final position of the manipulator arm.

[0128] According to the actual position of the operating arm, the first length change and the second length change can be determined. The first length change is the change in the theoretical length of the flexible endoscope between the conveying arm and the operating arm before and after the operating arm moves, calculated according to the target motion trajectory. The second length change is the change in the theoretical length of the flexible endoscope between the conveying arm and the operating arm before and after the operating arm moves, calculated according to the actual motion trajectory.

[0129] It should be noted that, during the verification process, no flexible endoscope was installed between the operating arm and the conveying arm, so the first length change was calculated based on the position of the robotic arm.

[0130] Specifically, the actual position of the operating arm can be matched on the target motion trajectory to determine the position on the target motion trajectory that matches the actual position. Then, the theoretical length change of the flexible endoscope between the transport arm and the operating arm from the original position to the position can be calculated based on the position.

[0131] Next, the calibration result of the medical robot can be evaluated according to the first length change and the second length change. Specifically, if the first length change is the same as the second length change or the error is within a preset range, it can be determined that the calibration of the medical robot is correct. If the first length change is different from the second length change and the error exceeds the preset range, it can be determined that there is a problem with the calibration of the medical robot, and the medical robot is recalibrated.

[0132] In addition to checking based on the length change, you can also check based on the deviation between the actual position and the target position. I will not go into details here.

[0133] The above are some specific implementations of the medical robot calibration method provided in the embodiment of the present application. Based on this, the present application also provides a corresponding medical robot calibration device. The medical robot calibration device provided in the embodiment of the present application will be introduced below from the perspective of functional modularization.

[0134] See also Figure 4 , Figure 4 A schematic diagram of a structure of a medical robot calibration device provided in an embodiment of the present application. Specifically, Figure 4 The medical robot calibration device 400 shown includes:

[0135] The acquisition unit 410 is used to acquire a plurality of rotation calibration videos, each of which corresponds to one rotation motion unit. The rotation calibration video is acquired by capturing the first robotic arm through a binocular camera. When capturing the rotation calibration video, the rotation motion unit corresponding to the rotation calibration video is in motion, and other rotation motion units are fixed at a zero position. In the process of capturing the rotation calibration video, the terminal motion unit is installed with a target ball.

[0136] A position determination unit 420, configured to determine the axis position of each of the rotational motion units according to the motion trajectory of the target ball in the plurality of rotational calibration videos;

[0137] A connecting rod calibration unit 430, used to calibrate the connecting rod length of the first mechanical arm according to the axis position, wherein the connecting rod length is an effective length of the connecting rod connecting the motion unit of the first mechanical arm;

[0138] The zero position calibration unit 440 is used to determine multiple calibration vectors according to the axis position, where the calibration vector is a vector between the axis centers of two adjacent rotational motion units; and calibrate the zero position of the multiple rotational motion units according to the directions of the multiple calibration vectors.

[0139] In some possible implementations, the zero position calibration unit is specifically used to determine, for a kth rotational motion unit among the multiple rotational motion units, a starting point vector and an end point vector corresponding to the kth rotational motion unit from the multiple calibration vectors, the starting point position of the starting point vector matches the axis position of the kth rotational motion unit, and the end point position of the end point vector matches the axis position of the kth rotational motion unit, and k is a positive integer less than or equal to the total number of rotational motion units in the first robotic arm; calculate the angle between the starting point vector and the end point vector; and calibrate the zero position of the kth rotational motion unit according to the angle.

[0140] In some possible implementations, the device also includes a target ball calibration unit; the acquisition unit 410 is also used to acquire an end calibration video, and the end calibration video is obtained by collecting the first robotic arm through the binocular camera. When collecting the end calibration video, the end motion unit is in motion, and the multiple rotational motion units are fixed at a zero position; the target ball calibration unit is used to determine the motion trajectory of the target ball and the position of the center of the motion trajectory according to the end calibration video; and calibrate the end motion unit according to the position of the center of the circle.

[0141] In some possible implementations, the device also includes a tool calibration unit; the tool calibration unit is used to determine a center target ball vector and a tool target ball vector, respectively, for a target image frame in the terminal calibration video, the center target ball vector being a vector pointing from the center of the circle to the target ball, and the tool target ball vector being a vector pointing from a fixed center of the calibration tool to the target ball, and the calibration tool is fixed to the terminal motion unit through the fixed center; the installation position of the target ball is calibrated according to an angle between the center target ball vector and the tool target ball vector.

[0142] In some possible implementations, the first robotic arm also includes a translational motion unit, and the first robotic arm is fixed to the robot body through the translational motion unit; the device also includes a translational calibration unit; the acquisition unit 410 is also used to acquire multiple translational calibration videos, and the translational calibration video is obtained by capturing the first robotic arm through the binocular camera. When capturing the translational calibration video, one rotational motion unit and the translational motion unit in the multiple rotational motion unit groups are in motion, and the other motion units are in a fixed state; the translational calibration unit is used to determine the center position of the motion trajectory in each translational calibration video according to the motion trajectory of the target ball in each translational calibration video; determine the center movement trajectory according to the center positions of different translation calibration videos; and calibrate the translational motion unit according to the center movement trajectory.

[0143] In some possible implementations, the medical robot also includes a second robotic arm; the device is also used to calibrate the second robotic arm; the device also includes a mapping determination unit, the mapping determination unit is used to establish a position mapping relationship based on the assembly relationship between the first robotic arm and the second robotic arm, the position mapping relationship is used to map the position coordinates in the first coordinate system to the position coordinates in the second coordinate system, the first coordinate system is established based on the first robotic arm, and the second coordinate system is established based on the second robotic arm.

[0144] In some possible implementations, the device further includes a verification unit. The first robotic arm is used to transport the flexible endoscope, the second robotic arm is used to operate the flexible endoscope, and the relative position of the second robotic arm and the flexible endoscope is fixed.

[0145] The verification unit is used to determine the robot arm control instruction according to the target motion trajectory, the target motion trajectory is a curve moving from the second robot arm to the first robot arm, and the robot arm control instruction is used to control the second robot arm to move to the target position along the target motion trajectory; determine the actual position and actual motion trajectory of the second robot arm according to the control video, the control video is collected by the binocular camera in the process of controlling the movement of the first robot arm and the second robot arm according to the robot arm control instruction, and the actual position is the position of the second robot arm when it stops moving; evaluate the calibration result of the medical robot according to the first length change and the second length change; wherein the first length change is the change in theoretical length of the flexible endoscope between the first robot arm and the second robot arm before and after the second robot arm moves, which is calculated according to the target motion trajectory, and the second length change is the change in theoretical length of the flexible endoscope between the first robot arm and the second robot arm before and after the second robot arm moves, which is calculated according to the actual motion trajectory.

[0146] The embodiments of the present application also provide corresponding medical robot calibration equipment, medical robot calibration system, computer storage medium and computer program product for implementing the technical solutions provided in the embodiments of the present application.

[0147] Among them, the medical robot calibration device includes a memory and a processor, the memory is used to store instructions or codes, and the processor is used to execute the instructions or codes stored in the memory, so that the device executes the medical robot calibration method described in any embodiment of the present application.

[0148] The medical robot calibration system includes a binocular camera and a medical robot calibration device. The binocular camera is used to collect multiple calibration videos required in the calibration process of Yi Liao.

[0149] The computer storage medium stores codes, and when the codes are executed, a device executing the codes implements the medical robot calibration method described in any embodiment of the present application.

[0150] The computer program product includes instructions. When the instructions are executed on a computer, the computer is enabled to execute the medical robot calibration method described in any embodiment of the present application.

[0151] The "first" and "second" in the names such as "first" and "second" (if any) mentioned in the embodiments of the present application are only used as name identifiers and do not represent the first or second in order.

[0152] Through the description of the above implementation methods, it can be known that those skilled in the art can clearly understand that all or part of the steps in the above-mentioned embodiment method can be implemented by means of software plus a general hardware platform. Based on such an understanding, the technical solution of the present application can be embodied in the form of a software product, and the computer software product can be stored in a storage medium, such as a read-only memory (ROM) / ROM, a disk, an optical disk, etc., including a number of instructions for a computer device (which can be a personal computer, a server, or a network communication device such as a router) to execute the methods described in each embodiment of the present application or some parts of the embodiments.

[0153] Each embodiment in this specification is described in a progressive manner, and the same and similar parts between the embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, for the device embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment. Some or all of the modules can be selected according to actual needs to achieve the purpose of the scheme of this embodiment. Ordinary technicians in this field can understand and implement it without paying creative work.

[0154] The above description is merely an exemplary embodiment of the present application and is not intended to limit the protection scope of the present application.

Claims

1. A medical robot calibration method, characterized in that: The method is used to calibrate a medical robot, wherein the medical robot comprises a robot body and a first mechanical arm, wherein the first mechanical arm is mounted on the robot body, and wherein the first mechanical arm comprises a plurality of rotational motion units and an end motion unit, wherein the end motion unit is located at the end of the first mechanical arm; The method comprises: Acquire multiple rotation calibration videos, each of which corresponds to one rotation motion unit, and the rotation calibration video is acquired by capturing the first robotic arm through a binocular camera. When capturing the rotation calibration video, the rotation motion unit corresponding to the rotation calibration video is in motion, and other rotation motion units are fixed at a zero position. In the process of capturing the rotation calibration video, the terminal motion unit is installed with a target ball; Determine the axis position of each of the rotational motion units according to the motion trajectory of the target ball in the multiple rotational calibration videos; Calibrate multiple connecting rod lengths of the first mechanical arm according to the axis position, wherein the connecting rod length is an effective length of a connecting rod connecting a motion unit of the first mechanical arm; Determine a plurality of calibration vectors according to the axis position, wherein the calibration vector is a vector between the axis centers of two adjacent rotational motion units; The zero positions of the plurality of rotational motion units are calibrated according to the directions of the plurality of calibration vectors.

2. The method according to claim 1, characterized in that The calibrating the zero positions of the plurality of rotational motion units according to the directions of the plurality of calibration vectors comprises: For a kth rotational motion unit among the multiple rotational motion units, determine a starting point vector and an end point vector corresponding to the kth rotational motion unit from the multiple calibration vectors, the starting point position of the starting point vector matches the axis position of the kth rotational motion unit, the end point position of the end point vector matches the axis position of the kth rotational motion unit, and k is a positive integer less than or equal to the total number of rotational motion units in the first robotic arm; Calculate the angle between the starting point vector and the end point vector; The zero position of the kth rotational motion unit is calibrated according to the included angle.

3. The method according to claim 1, characterized in that The target ball is installed on the terminal motion unit through a calibration tool. Before acquiring a plurality of rotation calibration videos, the method further includes: Acquire an end calibration video, wherein the end calibration video is acquired by the binocular camera from the first robotic arm, and when acquiring the end calibration video, the end motion unit is in motion, and the multiple rotation motion units are fixed at zero positions; Determine the motion trajectory of the target ball and the position of the center of the motion trajectory according to the terminal calibration video; The terminal motion unit is calibrated according to the position of the center of the circle.

4. The method according to claim 3, characterized in that The method further comprises: For the target image frame in the terminal calibration video, a center target ball vector and a tooling target ball vector are respectively determined, wherein the center target ball vector is a vector pointing from the center of the circle to the target ball, and the tooling target ball vector is a vector pointing from the fixed center of the calibration tooling to the target ball, and the calibration tooling is fixed to the terminal motion unit through the fixed center; The installation position of the target ball is calibrated according to the angle between the center target ball vector and the tooling target ball vector.

5. The method according to any one of claims 1 to 4, characterized in that: The first mechanical arm further comprises a translational motion unit, and the first mechanical arm is fixed to the robot body through the translational motion unit; The method further comprises: Acquire a plurality of translation calibration videos, wherein the translation calibration videos are acquired by the binocular camera from the first robotic arm, and when acquiring the translation calibration videos, one rotational motion unit and the translational motion unit in the plurality of rotational motion unit groups are in motion, and the other motion units are in a fixed state; According to the motion trajectory of the target ball in each translation calibration video, respectively determine the center position of the motion trajectory in each translation calibration video; Determining a moving trajectory of the circle center according to the circle center positions of different translation calibration videos; The translation motion unit is calibrated according to the circle center movement trajectory.

6. The method according to any one of claims 1 to 4, characterized in that: The medical robot also includes a second mechanical arm; The method further comprises: calibrating the second robotic arm; According to the assembly relationship between the first robotic arm and the second robotic arm, a position mapping relationship is established, and the position mapping relationship is used to map the position coordinates in the first coordinate system to the position coordinates in the second coordinate system. The first coordinate system is established based on the first robotic arm, and the second coordinate system is established based on the second robotic arm.

7. The method according to claim 6, characterized in that The first robotic arm is used to transport the flexible endoscope, the second robotic arm is used to operate the flexible endoscope, and the relative position of the second robotic arm and the flexible endoscope is fixed; After calibrating the first robotic arm and the second robotic arm, the method further includes: Determine a manipulator control instruction according to a target motion trajectory, wherein the target motion trajectory is a curve from the second manipulator to the first manipulator, and the manipulator control instruction is used to control the second manipulator to move to a target position along the target motion trajectory; determining the actual position and actual motion trajectory of the second robotic arm according to the control video, wherein the control video is acquired by the binocular camera in the process of controlling the movement of the first robotic arm and the second robotic arm according to the robotic arm control instruction, and the actual position is the position of the second robotic arm when it stops moving; Evaluating a calibration result of the medical robot according to the first length change and the second length change; Among them, the first length change is the change in theoretical length of the flexible endoscope between the first robotic arm and the second robotic arm before and after the second robotic arm moves, calculated according to the target motion trajectory; the second length change is the change in theoretical length of the flexible endoscope between the first robotic arm and the second robotic arm before and after the second robotic arm moves, calculated according to the actual motion trajectory.

8. A medical robot calibration device, characterized in that: The device is used to calibrate a medical robot, wherein the medical robot comprises a robot body and a first mechanical arm, wherein the first mechanical arm is mounted on the robot body, and wherein the first mechanical arm comprises a plurality of rotational motion units and an end motion unit, wherein the end motion unit is located at the end of the first mechanical arm; The device comprises: an acquisition unit, used for acquiring a plurality of rotation calibration videos, each of which corresponds to one of the rotation motion units, and the rotation calibration videos are acquired by acquiring the first mechanical arm through a binocular camera. When acquiring the rotation calibration videos, the rotation motion units corresponding to the rotation calibration videos are in motion, and the other rotation motion units are fixed at zero positions. In the process of acquiring the rotation calibration videos, the terminal motion unit is installed with a target ball; A position determination unit, used to determine the axis position of each of the rotational motion units according to the motion trajectory of the target ball in the multiple rotation calibration videos; An arm length calibration unit, used to calibrate the connecting rod length of the first mechanical arm according to the axis position, wherein the connecting rod length is an effective length of the connecting rod connecting the motion unit of the first mechanical arm; The zero position calibration unit is used to determine multiple calibration vectors according to the axis position, wherein the calibration vector is a vector between the axis centers of two adjacent rotational motion units; and calibrate the zero position of the multiple rotational motion units according to the directions of the multiple calibration vectors.

9. A medical robot calibration device, characterized in that: The device includes a memory and a processor, the memory is used to store codes or instructions, and the processor is used to execute the instructions or codes stored in the memory to implement the method according to any one of claims 1-7.

10. A medical robot calibration system, characterized in that: The system comprises a binocular camera and a medical robot calibration device as claimed in claim 9; The binocular camera is used to collect video of the medical robot to obtain the video used in the calibration process.