CN110353774B - Auxiliary puncture robot, control method thereof, computer device, and storage medium - Google Patents

Auxiliary puncture robot, control method thereof, computer device, and storage medium Download PDF

Info

Publication number
CN110353774B
CN110353774B CN201910412717.XA CN201910412717A CN110353774B CN 110353774 B CN110353774 B CN 110353774B CN 201910412717 A CN201910412717 A CN 201910412717A CN 110353774 B CN110353774 B CN 110353774B
Authority
CN
China
Prior art keywords
coordinate system
mechanical arm
puncture needle
image data
patient
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910412717.XA
Other languages
Chinese (zh)
Other versions
CN110353774A (en
Inventor
盖炜
苏健
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Mingjie Medical Technology Co ltd
Original Assignee
Shenzhen Mingjie Medical Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Mingjie Medical Technology Co ltd filed Critical Shenzhen Mingjie Medical Technology Co ltd
Publication of CN110353774A publication Critical patent/CN110353774A/en
Application granted granted Critical
Publication of CN110353774B publication Critical patent/CN110353774B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B17/00Surgical instruments, devices or methods, e.g. tourniquets
    • A61B17/34Trocars; Puncturing needles
    • A61B17/3403Needle locating or guiding means
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B34/00Computer-aided surgery; Manipulators or robots specially adapted for use in surgery
    • A61B34/30Surgical robots
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B17/00Surgical instruments, devices or methods, e.g. tourniquets
    • A61B17/34Trocars; Puncturing needles
    • A61B17/3403Needle locating or guiding means
    • A61B2017/3405Needle locating or guiding means using mechanical guide means
    • A61B2017/3409Needle locating or guiding means using mechanical guide means including needle or instrument drives

Landscapes

  • Health & Medical Sciences (AREA)
  • Surgery (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Engineering & Computer Science (AREA)
  • Medical Informatics (AREA)
  • Biomedical Technology (AREA)
  • Heart & Thoracic Surgery (AREA)
  • Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
  • Molecular Biology (AREA)
  • Animal Behavior & Ethology (AREA)
  • General Health & Medical Sciences (AREA)
  • Public Health (AREA)
  • Veterinary Medicine (AREA)
  • Robotics (AREA)
  • Pathology (AREA)
  • Manipulator (AREA)
  • Magnetic Resonance Imaging Apparatus (AREA)

Abstract

The invention provides an auxiliary puncture robot, a control method thereof, computer equipment and a storage medium, wherein the auxiliary puncture robot control method comprises the following steps: receiving in-vivo image data of a patient including a body surface contour and a puncture planning path; scanning the body surface of the patient through a scanner installed on the robot to acquire the point cloud data of the body surface of the patient; registering the patient body surface point cloud data with the in-vivo image data of the patient; converting the puncture planning path under the in-vivo image data coordinate system into a puncture planning path under the mechanical arm tool coordinate system of the robot; calculating the preset position of a puncture needle arranged on the mechanical arm according to a puncture planning path under the mechanical arm tool coordinate system; and controlling the puncture needle on the mechanical arm to move to a preset position. According to the technical scheme, the in-vivo three-dimensional data and the body surface three-dimensional data are fused, the reliability of visual guidance is improved, and an advantageous auxiliary tool is provided for puncture operation in medical operation.

Description

Auxiliary puncture robot, control method thereof, computer device, and storage medium
Technical Field
The present invention relates to the field of medical devices, and in particular, to an auxiliary piercing robot, a control method thereof, a computer device, and a storage medium.
Background
The robot auxiliary puncture is a technology that a mechanical hand holds a puncture needle to hover on the body surface of a patient, the needle insertion point and the needle insertion direction are completely fixed, a doctor only needs to confirm the correctness of the position, then the puncture needle is pushed into the body of the patient, and then the mechanical hand releases the puncture needle, so that the puncture process is completed. The auxiliary puncture function avoids the problem of inaccurate needle insertion direction caused by the fact that a doctor holds the puncture needle.
The existing vision guiding technology of the auxiliary puncture robot adopts a two-dimensional camera, identifies an object according to data imaged by one or more cameras, and calculates the pose of the object. The imaging data of the two-dimensional camera does not have depth information, and the pose of an object is required to be solved, so that the imaging data of a plurality of angles can be subjected to complex mathematical reconstruction. For simple geometric bodies with regular shapes, the three-dimensional contour can be reconstructed by means of recognition of characteristic quantities such as side lengths, radiuses and the like, while for non-special curved surfaces such as patient bodies, the three-dimensional contour cannot be reconstructed by a two-dimensional camera. Therefore, the visual guidance system of the robot cannot effectively fuse imaging information of the body surface of a patient with tomographic imaging data such as CT (computed tomography), MRI (magnetic resonance imaging) and the like, and a puncture path formulated based on the tomographic imaging data cannot be accurately reflected in visual guidance of the body surface.
Moreover, two-dimensional cameras recognize objects in dependence on differences in pixel values in the imaging data, which requires that the objects and the background have significantly different contrast or color differences in the imaging data, otherwise the contours of the objects may not be resolved or misjudgment may occur, and particularly for medical surgical scenes where color and ambient light are inconvenient to modify, it is more difficult to reliably recognize the objects and conduct visual guidance.
Disclosure of Invention
The present invention is achieved in that a first aspect of the present invention provides a method for controlling an auxiliary penetration robot, comprising:
receiving in-vivo image data of a patient including a body surface contour and a puncture planning path;
scanning the body surface of the patient through a scanner installed on the robot to acquire the point cloud data of the body surface of the patient;
registering the patient body surface point cloud data with the in-vivo image data of the patient;
converting the puncture planning path under the in-vivo image data coordinate system into a puncture planning path under the mechanical arm tool coordinate system of the robot;
calculating the preset position of a puncture needle arranged on the mechanical arm according to a puncture planning path under the mechanical arm tool coordinate system; and controlling the puncture needle on the mechanical arm to move to a preset position.
Optionally, in the above auxiliary puncture robot control method, the step of receiving in-vivo image data including a body surface contour of the patient is receiving CT tomographic image data or B-mode image data or magnetic resonance image data.
Optionally, in the auxiliary puncture robot control method, the preset position is a position where the puncture needle hovers above the body surface of the patient.
Optionally, in the auxiliary puncture robot control method, the puncture plan path includes a puncture needle position coordinate and a needle direction vector.
Optionally, the above auxiliary puncture robot control method further includes the sub-steps after registering the patient body surface point cloud data with the in-vivo image data of the patient: calculating a conversion matrix M of a scanner coordinate system and an in-vivo image data coordinate system; the "converting the puncture plan path in the in-vivo image data coordinate system into the puncture plan path in the robot arm tool coordinate system" is a calculation conversion based on the conversion matrix N and the conversion matrix M of the scanner coordinate system and the robot arm tool coordinate system.
Optionally, the auxiliary puncture robot control method further includes the steps of: setting the axis of a gripper mounted on the mechanical arm to be parallel to the x-axis of the mechanical arm tool coordinate system; the aiming point on the axis of the gripper is set as the tool center point of the robotic arm.
Optionally, the auxiliary puncture robot control method further includes the steps of: a transformation matrix M between the scanner coordinate system and the robot tool coordinate system is obtained.
Optionally, in the above auxiliary penetration robot control method, the step of acquiring a transformation matrix M between a scanner coordinate system and a robot tool coordinate system includes: scanning at least three calibration pieces through a scanner to obtain coordinate data of the calibration pieces under a scanner coordinate system; and calculating to obtain a transformation matrix between the coordinate system of the scanner and the coordinate system of the mechanical arm tool according to the coordinate data of the calibration piece under the coordinate system of the mechanical arm tool and the coordinate data of the calibration piece under the coordinate system of the scanner.
Optionally, the auxiliary puncture robot control method further includes the steps of: converting the puncture needle position coordinate and the needle direction vector under the in-vivo image data coordinate system into the puncture needle position coordinate and the needle direction vector under the mechanical arm tool coordinate system of the robot, comprising: acquiring a first transformation matrix and a second transformation matrix; obtaining a puncture needle position coordinate of T and a needle direction vector of V under an in-vivo image data coordinate system by homogeneous coordinate conversion; converting puncture needle position coordinates and needle direction vectors under an in-vivo image data coordinate system into puncture needle position coordinates T 'and needle direction vectors V' under a mechanical arm tool coordinate system according to the following calculation formula:
Figure GDA0004077159820000021
M is a first transformation matrix and N is a second transformation matrix.
Optionally, the auxiliary puncture robot control method further includes the steps of: calculating the preset position of the puncture needle arranged on the mechanical arm according to the puncture needle position coordinate and the needle inserting direction vector under the mechanical arm tool coordinate system; the puncture needle on the control mechanical arm moves to a preset position, comprising: the translation X, Y, Z of the gripper in the x, y, z axis directions and the rotation angle A, B, C about the z, y, x axis directions in the robotic arm tool coordinate system are calculated according to the following equations:
Figure GDA0004077159820000031
wherein t is x1 、t y1 、t z1 For the puncture needle position coordinates T', S x 、S y 、S Z Is the coordinate of the tool center point in the mechanical arm tool coordinate system, V x1 、V y1 、V Z1 Is a needle-inserting direction vector V'; forming motion instructions (X, Y, Z, A, B, C) according to the translation amounts X, Y, Z along the X, Y and Z axis directions and the rotation angles A, B, C around the Z, Y and X axis directions; executing the motion instruction to control the puncture needle to move to a preset position to hover.
According to another aspect of the present invention, there is provided a method of controlling an auxiliary penetration robot, including:
receiving in-vivo image data of a patient, which comprises a body surface contour, and calculating a puncture planning path under an in-vivo image data coordinate system according to the in-vivo image data;
Scanning the body surface of the patient by a scanner to acquire 3D image data of the body surface of the patient; registering the patient body surface 3D image data with the in-vivo image data of the patient;
converting the puncture planning path under the in-vivo image data coordinate system into a puncture planning path under the mechanical arm tool coordinate system of the robot; calculating the preset position of a puncture needle arranged on the mechanical arm according to a puncture planning path under the mechanical arm tool coordinate system;
and controlling the puncture needle on the mechanical arm to move to a preset position.
Optionally, in the above auxiliary puncture robot control method, the step of receiving in-vivo image data including a body surface contour of the patient is receiving CT tomographic image data or B-mode image data or magnetic resonance image data.
Optionally, the auxiliary puncture robot control method further includes the steps of: the preset position is a position where the puncture needle hovers above the body surface of the patient.
Optionally, the auxiliary puncture robot control method further includes the steps of: the puncture planning path includes puncture needle insertion position coordinates and a needle insertion direction vector.
According to still another aspect of the present invention, there is provided a method of controlling an auxiliary penetration robot, comprising:
receiving in-vivo image data of a patient, which comprises a body surface contour, and calculating a preset position of a puncture needle under an in-vivo image data coordinate system according to the in-vivo image data;
Scanning the body surface of the patient by a scanner to acquire 3D image data of the body surface of the patient; registering the patient body surface 3D image data with the in-vivo image data of the patient;
converting the preset position of the puncture needle under the in-vivo image data coordinate system into the preset position of the puncture needle under the mechanical arm tool coordinate system of the robot; and controlling the puncture needle on the mechanical arm to move to a preset position.
Optionally, in the above auxiliary puncture robot control method, the step of receiving in-vivo image data including a body surface contour of the patient is receiving CT tomographic image data or B-mode image data or magnetic resonance image data.
Optionally, the auxiliary puncture robot control method further includes the steps of: the preset position is a position where the puncture needle hovers above the body surface of the patient.
According to still another aspect of the present invention, there is provided a method of controlling an auxiliary penetration robot, including:
receiving in-vivo image data of a patient including a body surface contour and a puncture planning path; scanning a body surface of a patient by a scanner mounted on the robot to acquire 3D image data of the patient;
registering the patient 3D image data with the in-vivo image data of the patient; converting the puncture planning path under the in-vivo image data coordinate system into a puncture planning path under the mechanical arm tool coordinate system of the robot;
Calculating the preset position of a puncture needle arranged on the mechanical arm according to a puncture planning path under the mechanical arm tool coordinate system; and controlling the puncture needle on the mechanical arm to move to a preset position.
According to still another aspect of the present invention, there is provided a method of controlling an auxiliary penetration robot, including:
acquiring in-vivo image data containing body surface contours of a patient and a puncture planning path;
scanning the body surface of the patient through a scanner installed on the robot to acquire the point cloud data of the body surface of the patient;
registering the patient body surface point cloud data with the in-vivo image data of the patient;
converting the puncture planning path under the in-vivo image data coordinate system into a puncture planning path under the mechanical arm tool coordinate system of the robot;
calculating the preset position of a puncture needle arranged on the mechanical arm according to a puncture planning path under the mechanical arm tool coordinate system; and controlling the puncture needle on the mechanical arm to move to a preset position.
According to another aspect of the present invention, there is provided an auxiliary penetration robot including:
a mechanical arm; the machine head is arranged on the mechanical arm and used for fixing the puncture needle;
the scanner is arranged on the mechanical arm and used for scanning 3D image data of the body surface of the patient;
A processing unit for registering 3D body surface image data of the patient from the scanner and in vivo image data of the patient including a body surface contour; the processing unit converts the puncture planning path under the in-vivo image data coordinate system into a puncture planning path under the mechanical arm tool coordinate system of the robot; the processing unit calculates the preset position of the puncture needle arranged on the mechanical arm according to the puncture planning path under the mechanical arm tool coordinate system; and the control unit is used for controlling the puncture needle to move to a preset position according to the puncture planning path under the mechanical arm tool coordinate system.
Optionally, in the auxiliary puncture robot control device, an axis of the gripper is parallel to an x-axis of a mechanical arm tool coordinate system; the aiming point on the axis of the gripper is the tool center point of the robotic arm.
Optionally, the auxiliary puncture robot control device, wherein the puncture planning path comprises puncture needle position coordinates and a needle direction vector.
Optionally, in the auxiliary puncture robot control device, the processing unit is connected with the CT device in a data manner, and the in-vivo image imaging data and the puncture planning path come from the CT device.
According to another aspect of the present invention, a computer device is provided comprising a memory, a processor and a computer program stored in the memory and executable on the processor, the processor executing the computer program to perform steps based on a method of controlling an assisted penetration robot.
According to another aspect of the present invention, there is provided a computer readable storage medium storing a computer program which, when executed by a processor, implements the steps of a method of assisting in controlling a penetration robot.
The invention provides an auxiliary puncture robot control method, an auxiliary puncture robot control device, auxiliary puncture robot control equipment and a storage medium, wherein the auxiliary puncture robot control method comprises the following steps: receiving in-vivo image data of a patient including a body surface contour and a puncture planning path; scanning the body surface of the patient through a scanner installed on the robot to acquire the point cloud data of the body surface of the patient; registering the patient body surface point cloud data with the in-vivo image data of the patient; converting the puncture planning path under the in-vivo image data coordinate system into a puncture planning path under the mechanical arm tool coordinate system of the robot; calculating the preset position of a puncture needle arranged on the mechanical arm according to a puncture planning path under the mechanical arm tool coordinate system; and controlling the puncture needle on the mechanical arm to move to a preset position. According to the technical scheme, the three-dimensional scanner capable of generating the point cloud is used for replacing a two-dimensional camera to serve as a visual guiding system of the robot, the three-dimensional point cloud with depth information can be obtained through single-angle scanning, large-scale scanning of the body surface of a patient can be easily achieved due to the fact that the scanning interval of the point cloud is short, then three-dimensional image fusion is carried out on the three-dimensional point cloud and tomographic imaging data such as CT and MRI, organs and planned needle inserting paths sketched based on the tomographic imaging data are directly marked into the body surface point cloud data, so that a puncture needle is guided to be placed at a correct position by a guiding manipulator to be pushed by a doctor to complete puncture, meanwhile, the three-dimensional data in a body are fused with the three-dimensional data in the body surface, complex operation and limitation of reconstructing a three-dimensional image through a two-dimensional image are omitted, the calculated amount of visual guiding is simplified, the reliability of visual guiding is improved, and a favorable auxiliary tool is provided for puncture operation in medical operation.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings that are needed in the embodiments or the description of the prior art will be briefly described below, it being obvious that the drawings in the following description are only some embodiments of the present invention, and that other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
FIG. 1 is a flow chart of a method for controlling an auxiliary penetration robot according to a first embodiment of the present invention;
FIG. 2 is a schematic diagram illustrating the operation of a method for controlling an auxiliary penetration robot according to the present invention;
FIG. 3 is a flowchart of a method for controlling an auxiliary penetration robot according to a second embodiment of the present invention;
FIG. 4 is a flowchart of a method for controlling an auxiliary penetration robot according to a third embodiment of the present invention;
FIG. 5 is a flowchart of a method for controlling an auxiliary penetration robot according to a fourth embodiment of the present invention;
FIG. 6 is a flowchart of a method for controlling an auxiliary penetration robot according to a fifth embodiment of the present invention;
FIG. 7 is a schematic view of a robot configuration for carrying out one embodiment of the auxiliary penetration robot control method of the first to fifth embodiments of the present invention;
FIG. 8 is an enlarged view of a portion of the handpiece of FIG. 7;
FIG. 9 is a schematic view of a robot configuration for implementing another embodiment of the auxiliary penetration robot control method of the first to fifth embodiments of the present invention;
FIG. 10 is a schematic illustration of coordinate calibration of the robotic arm of FIG. 9;
FIG. 11 is a preferred flow chart of a method of controlling the auxiliary lancing robot of FIG. 9 according to the present invention;
fig. 12 is a specific flowchart of step S10 in fig. 11;
fig. 13 is a further specific flowchart of step S10 in fig. 11;
FIG. 14 is a schematic view of a control device for an auxiliary penetration robot according to an embodiment of the present invention;
fig. 15 is a schematic structural diagram of a computer device according to an embodiment of the present invention.
Detailed Description
The present invention will be described in further detail with reference to the drawings and examples, in order to make the objects, technical solutions and advantages of the present invention more apparent. It should be understood that the specific embodiments described herein are for purposes of illustration only and are not intended to limit the scope of the invention.
In order to illustrate the technical scheme of the invention, the following description is made by specific examples.
The embodiment of the invention provides a control method of an auxiliary puncture robot, as shown in fig. 1 and 2, the control method comprises the following steps:
S11, receiving in-vivo image data containing body surface contours of a patient and a puncture planning path.
In step S11, receiving in-vivo image data including body surface contours of a patient means receiving CT tomographic image data or B-mode image data or magnetic resonance image data, and the puncture planning path means combining actual conditions and personal experiences of a puncture subject by a doctor, and integrating the puncture path from the body surface of the patient to a focus target.
And S12, scanning the body surface of the patient through a scanner arranged on the robot to acquire the point cloud data of the body surface of the patient.
In step S12, the scanner is mounted on the mechanical arm, and the scanner may be a laser scanner, and the distance from the target point on the body surface of the patient to the central point of the scanner is scanned by using the scanner as the center and using the laser pulse ranging method, so as to obtain the point cloud data of the body surface of the patient under the coordinate system of the scanner.
And S13, registering the body surface point cloud data of the patient with in-vivo image data of the patient.
In step S13, the computer automatically completes the image fusion and reconstruction between the surface point cloud data of the patient and the in-vivo image data of the patient, and a three-dimensional fusion image of the surface point cloud data and the in-vivo image data of the patient is obtained.
S14, converting the puncture planning path under the in-vivo image data coordinate system into the puncture planning path under the mechanical arm tool coordinate system of the robot.
In step S14, the puncture plan path in the in-vivo image data coordinate system is converted into the puncture plan path in the mechanical arm tool coordinate system of the robot, which is calculated and converted according to the conversion matrix N of the scanner coordinate system and the mechanical arm tool coordinate system and the conversion matrix M of the scanner coordinate system and the in-vivo image data coordinate system, and the puncture plan path includes the puncture needle position coordinate and the needle insertion direction vector, which are obtained by the calculation and conversion of the conversion matrix N and the conversion matrix M, so that the puncture needle position coordinate and the needle insertion direction vector in the mechanical arm tool coordinate system can be obtained.
S15, calculating the preset position of the puncture needle arranged on the mechanical arm according to the puncture planning path under the mechanical arm tool coordinate system,
in step S15, a preset position of the puncture needle mounted on the mechanical arm is calculated according to the coordinate of the puncture needle position and the vector of the needle insertion direction under the coordinate system of the mechanical arm tool, wherein the preset position is a position where the puncture needle hovers above the body surface of the patient.
And S16, controlling the puncture needle on the mechanical arm to move to a preset position.
In step S16, the translation and rotation of the mechanical arm are obtained according to the preset position coordinates, and then the puncture needle on the mechanical arm is moved to the preset position.
The embodiment of the invention uses a three-dimensional scanner capable of generating the point cloud to replace a two-dimensional camera as a visual guiding system of the robot, and can acquire the three-dimensional point cloud with depth information through single-angle scanning. Because the scanning interval of the point cloud is very short, the large-scale scanning of the body surface of a patient can be easily realized, then three-dimensional image fusion is carried out on the patient body surface and tomographic imaging data such as CT (computed tomography), MRI (magnetic resonance imaging) and the like, and organs and planned needle insertion paths which are drawn based on the tomographic imaging data are directly marked into the body surface point cloud data, so that a mechanical arm is guided to place a puncture needle at a correct position for a doctor to push the needle to complete puncture.
Fig. 3 is a flowchart of a control method of an auxiliary piercing robot according to a second embodiment of the present invention, where the control method includes:
s21, receiving in-vivo image data of the body surface contour of the patient, and calculating a puncture planning path under an in-vivo image data coordinate system according to the in-vivo image data.
In step S21, receiving in-vivo image data including a body surface contour of a patient means receiving CT tomographic image data or B-mode image data or magnetic resonance image data, and the puncture planning path means obtaining a puncture path from the body surface of the patient to a focus target point according to an actual condition of the puncture target.
And S22, scanning the body surface of the patient through a scanner to acquire 3D image data of the body surface of the patient.
S23, registering the 3D image data of the body surface of the patient with the in-vivo image data of the patient;
in step S23, the computer automatically completes the image fusion and reconstruction between the surface point cloud data of the patient and the in-vivo image data of the patient, and a three-dimensional fusion image of the surface point cloud data and the in-vivo image data of the patient is obtained.
S24, converting a puncture planning path under the in-vivo image data coordinate system into a puncture planning path under the mechanical arm tool coordinate system of the robot;
in step S24, the puncture plan path in the in-vivo image data coordinate system is converted into the puncture plan path in the mechanical arm tool coordinate system of the robot, which is calculated and converted according to the conversion matrix N of the scanner coordinate system and the mechanical arm tool coordinate system and the conversion matrix M of the scanner coordinate system and the in-vivo image data coordinate system, and the puncture plan path includes the puncture needle position coordinate and the needle insertion direction vector, which are obtained by the calculation and conversion of the conversion matrix N and the conversion matrix M, so as to obtain the puncture needle position coordinate and the needle insertion direction vector in the mechanical arm tool coordinate system.
S25, calculating a preset position of a puncture needle arranged on the mechanical arm according to a puncture planning path under a mechanical arm tool coordinate system;
In step S25, a preset position of the puncture needle mounted on the mechanical arm is calculated according to the coordinate of the puncture needle position and the vector of the needle insertion direction in the mechanical arm tool coordinate system, wherein the preset position is a position where the puncture needle hovers above the body surface of the patient.
And S26, controlling the puncture needle on the mechanical arm to move to a preset position.
In step S26, the translation and rotation amounts of the mechanical arm are obtained according to the preset position coordinates, and then the puncture needle on the mechanical arm is moved to the preset position.
According to the embodiment of the invention, a three-dimensional scanner is used for replacing a two-dimensional camera as a visual guiding system of the robot, 3D image data of the body surface of a patient is obtained, then three-dimensional image fusion is carried out on the 3D image data and tomographic imaging data such as CT (computed tomography) and MRI (magnetic resonance imaging) and the like, and organs and planned needle insertion paths which are sketched based on the tomographic imaging data are directly marked into the body surface image, so that a mechanical arm is guided to place a puncture needle at a correct position, and a doctor pushes the puncture needle to complete puncture.
Fig. 4 is a flowchart of a control method of an auxiliary piercing robot according to a third embodiment of the present invention, where the control method includes:
s31, receiving in-vivo image data containing body surface contours of a patient, and calculating the preset position of the puncture needle under the in-vivo image data coordinate system according to the in-vivo image data.
In step S31, receiving in-vivo image data of a patient including a body surface contour means receiving CT tomographic image data or B-mode image data or magnetic resonance image data, and the preset position of the puncture needle means obtaining a needle insertion position coordinate and a needle insertion direction vector from the body surface of the patient to a focus target point according to an actual condition in the puncture subject in-vivo image data.
S32, scanning the body surface of the patient through a scanner to acquire 3D image data of the body surface of the patient;
s33, registering the 3D image data of the body surface of the patient with the in-vivo image data of the patient;
in step S33, the computer automatically completes the image fusion and reconstruction between the surface point cloud data of the patient and the in-vivo image data of the patient, and a three-dimensional fusion image of the surface point cloud data and the in-vivo image data of the patient is obtained.
S34, converting the preset position of the puncture needle under the in-vivo image data coordinate system into the preset position of the puncture needle under the mechanical arm tool coordinate system of the robot;
the puncture planning path under the in-vivo image data coordinate system is converted into the puncture planning path under the mechanical arm tool coordinate system of the robot, the puncture planning path comprises puncture needle position coordinates and needle direction vectors which are obtained through calculation and conversion of the conversion matrix N and the conversion matrix M according to the conversion matrix N of the scanner coordinate system and the mechanical arm tool coordinate system and the conversion matrix M of the scanner coordinate system and the in-vivo image data coordinate system, and the puncture needle position coordinates and the needle direction vectors under the mechanical arm tool coordinate system can be obtained.
And S35, controlling the puncture needle on the mechanical arm to move to a preset position.
According to the embodiment of the invention, a three-dimensional scanner is used for replacing a two-dimensional camera as a visual guiding system of the robot, 3D image data of the body surface of a patient is obtained, then three-dimensional image fusion is carried out on the 3D image data and tomographic imaging data such as CT (computed tomography) and MRI (magnetic resonance imaging) and the like, and organs and planned needle insertion paths which are sketched based on the tomographic imaging data are directly marked into the body surface image, so that a mechanical arm is guided to place a puncture needle at a correct position, and a doctor pushes the puncture needle to complete puncture.
Fig. 5 is a flowchart of a control method of an auxiliary piercing robot according to a fourth embodiment of the present invention, where the control method includes:
s41, receiving in-vivo image data containing body surface contours of a patient and a puncture planning path;
in step S41, receiving in-vivo image data including body surface contours of a patient means receiving CT tomographic image data or B-mode image data or magnetic resonance image data, and the puncture planning path means combining actual conditions and personal experiences of a puncture subject by a doctor, and integrating the puncture path from the body surface of the patient to a focus target.
S42, scanning the body surface of the patient through a scanner installed on the robot to acquire 3D image data of the patient;
S43, registering 3D image data of a patient with in-vivo image data of the patient;
in step S43, the computer automatically completes the image fusion and reconstruction between the surface point cloud data of the patient and the in-vivo image data of the patient, and a three-dimensional fusion image of the surface point cloud data and the in-vivo image data of the patient is obtained.
S44, converting the puncture planning path under the in-vivo image data coordinate system into a puncture planning path under the mechanical arm tool coordinate system of the robot;
in step S44, the puncture plan path in the in-vivo image data coordinate system is converted into the puncture plan path in the mechanical arm tool coordinate system of the robot, which is calculated and converted according to the conversion matrix N of the scanner coordinate system and the mechanical arm tool coordinate system and the conversion matrix M of the scanner coordinate system and the in-vivo image data coordinate system, and the puncture plan path includes the puncture needle position coordinate and the needle insertion direction vector, which are obtained by the calculation and conversion of the conversion matrix N and the conversion matrix M, so that the puncture needle position coordinate and the needle insertion direction vector in the mechanical arm tool coordinate system can be obtained.
S45, calculating a preset position of a puncture needle arranged on the mechanical arm according to a puncture planning path under a mechanical arm tool coordinate system;
In step S45, a preset position of the puncture needle mounted on the mechanical arm is calculated according to the coordinate of the puncture needle position and the vector of the needle insertion direction under the coordinate system of the mechanical arm tool, wherein the preset position is a position where the puncture needle hovers above the body surface of the patient.
And S46, controlling the puncture needle on the mechanical arm to move to a preset position.
In step S46, the translation and rotation amounts of the mechanical arm are obtained according to the preset position coordinates, and then the puncture needle on the mechanical arm is moved to the preset position.
According to the embodiment of the invention, a three-dimensional scanner is used for replacing a two-dimensional camera as a visual guiding system of the robot, 3D image data of a patient is obtained, then three-dimensional image fusion is carried out on the 3D image data and tomographic imaging data such as CT (computed tomography) and MRI (magnetic resonance imaging) and the like, and organs and planned needle insertion paths which are sketched based on the tomographic imaging data are directly marked into body surface point cloud data, so that a mechanical arm is guided to place a puncture needle at a correct position, and a doctor pushes the puncture needle to complete puncture.
Fig. 6 is a flowchart of a control method of an auxiliary piercing robot according to a fifth embodiment of the present invention, where the control method includes:
s51, acquiring in-vivo image data containing body surface contours of a patient and a puncture planning path;
In step S51, acquiring in-vivo image data including a body surface contour of a patient refers to acquiring CT tomographic image data or B-mode image data or magnetic resonance image data, and the puncture planning path refers to integrating a doctor with the actual condition and personal experience of a puncture object to obtain a puncture path from the body surface of the patient to a focus target point.
S52, scanning the body surface of the patient through a scanner arranged on the robot to acquire the point cloud data of the body surface of the patient;
in step S52, the scanner is mounted on the mechanical arm, and the scanner may be a laser scanner, and the distance from the target point on the body surface of the patient to the central point of the scanner is scanned by using the scanner as the center and using the laser pulse ranging method, so as to obtain the point cloud data of the body surface of the patient under the coordinate system of the scanner.
S53, registering the surface point cloud data of the patient with in-vivo image data of the patient;
in step S53, the computer automatically completes the image fusion and reconstruction between the body surface point cloud data of the patient and the in-vivo image data of the patient, and a three-dimensional fusion image of the body surface point cloud data and the in-vivo image data of the patient is obtained.
S54, converting a puncture planning path under the in-vivo image data coordinate system into a puncture planning path under the mechanical arm tool coordinate system of the robot;
S55, calculating a preset position of a puncture needle arranged on the mechanical arm according to a puncture planning path under a mechanical arm tool coordinate system;
and S56, controlling the puncture needle on the mechanical arm to move to a preset position.
In step S16, the translation and rotation of the mechanical arm are obtained according to the preset position coordinates, and then the puncture needle on the mechanical arm is moved to the preset position.
The embodiment of the invention uses a three-dimensional scanner capable of generating the point cloud to replace a two-dimensional camera as a visual guiding system of the robot, and can acquire the three-dimensional point cloud with depth information through single-angle scanning. Because the scanning interval of the point cloud is very short, the large-scale scanning of the body surface of a patient can be easily realized, then three-dimensional image fusion is carried out on the patient body surface and tomographic imaging data such as CT (computed tomography), MRI (magnetic resonance imaging) and the like, and organs and planned needle insertion paths which are drawn based on the tomographic imaging data are directly marked into the body surface point cloud data, so that a mechanical arm is guided to place a puncture needle at a correct position for a doctor to push the needle to complete puncture.
Fig. 7 and 8 are schematic structural views of a robot for implementing the above-described auxiliary penetration robot control method. Referring to fig. 3 and 4, the robot includes a driving mechanism 100, a handpiece 1, and a visual positioning device. The robot is connected to the control terminal 200.
The driving mechanism 100 is used for driving the handpiece 1 to move relative to the patient 300, so that the beam needle 2 on the handpiece 1 accurately reaches a preset position and enters the patient 300 according to a planned path. In this embodiment, the drive mechanism is a six-axis crank arm. It will be appreciated that the configuration of the drive mechanism 100 is not limited to the solution of this embodiment, as long as precise movement in three dimensions relative to the patient 300 within a region is achieved.
The handpiece 1 is connected to a drive mechanism 100 by a mounting structure. The mounting structure includes a base plate 18, a sliding structure, and a linkage structure C. The handpiece 1 is mounted on the bottom plate 18 by a sliding structure so as to be relatively slidable up and down. The machine head 1 is provided with an electron accelerator, and the accelerator comprises an electron emission gun, an accelerating tube and a microwave generator. The electron emission gun is used for emitting electron beams. A magnetron is commonly used as a microwave generator, which is in communication with an accelerating tube for providing microwaves for accelerating electrons. The beam needle 2 is fixedly connected with the accelerating tube. The electron emission gun emits electron beams according to the instruction sent by the control terminal 200, the electron beams are accelerated by the accelerating tube, and finally the electron beams are emitted through the beam needle 2. The control terminal 200 can control the dose of the patient 300 to be treated by controlling the firing time of the electron gun.
The control terminal 200, for example, a computer, is connected to the drive mechanism 100 and the handpiece 1 by a wire or wirelessly, and transmits a command to the drive mechanism 100 and the handpiece 1. The control terminal 200 receives real-time information, such as position information, image information, dose information, etc., of the driving mechanism 100 and the handpiece 1 at the same time.
The vision positioning device acquires a body surface 3D image corresponding to the tumor focus part of the patient 300 through the 3D scanner 19 and transmits the body surface 3D image to the control terminal 200. The control terminal 200 matches the acquired 3D image of the body surface of the patient 300 with a pre-stored tomographic image of the tumor focus position of the patient 300, acquires a coordinate system based on the tumor focus position of the patient 300 and a coordinate system based on the driving mechanism 100, and controls the driving mechanism 100 to drive the beam needle 2 to move according to a preset treatment path plan, so that the beam needle 2 is directly inserted into a preset position in the body of the patient 300. When the beam needle 2 reaches a preset position in the patient 300, the control terminal 200 starts the electron gun to emit electron beams according to preset dosage, and the electron beams are accelerated by the accelerating tube and then are driven into the patient 300 through the beam needle 2 to ablate bad tissues.
Fig. 9 is a schematic view of a robot for implementing the auxiliary piercing robot control method.
Wherein the robot comprises a scanner 4, a gripper 3 and a mechanical arm 1, the gripper 3 is arranged on an end flange 2 of the mechanical arm 3, the scanner 4 can be arranged on the gripper 3 or on the mechanical arm 1, for example, the scanner 3 is arranged on an end joint of the mechanical arm, the position of the scanner 4 is not particularly limited herein, the gripper 3 is provided with a puncture needle, a calibration piece is required to be arranged on the gripper 3 to obtain a transformation matrix, the calibration piece can be various regular objects with a center point, such as a sphere, a cube, a cone and the like, the regular objects with the center point can be arranged on the calibrator, the calibration piece can be a light spot, the light spot can be projected on the calibrator or can be suspended in the air, no matter what type the calibrator selects, the coordinates of the calibration piece under the mechanical arm tool coordinate system are known in advance, for example, the calibration piece is arranged on the calibration device, the coordinates of the calibration piece under the mechanical arm tool coordinate system can be obtained according to the relative positions of the calibration device and the end flange of the mechanical arm and the positions of the calibration piece on the calibration device, the central coordinates of the calibration piece under the scanner coordinate system are obtained by scanning the calibration piece through the scanner, specifically, the point cloud data of three spheres are obtained through the scanner, spherical fitting is carried out on the point cloud data of the three spheres, the spherical center coordinates of the three spheres under the scanner coordinate system are obtained, and the spherical center coordinates of the three spheres under the scanner coordinate system can be obtained by carrying out spherical fitting on the point cloud data by adopting a least square method.
And calculating to obtain a transformation matrix between the coordinate system of the scanner and the coordinate system of the mechanical arm tool according to the coordinate data of the calibration piece under the coordinate system of the mechanical arm tool and the coordinate data of the calibration piece under the coordinate system of the scanner.
In the step, a center coordinate of the calibration piece under the mechanical arm tool coordinate system and a center translational vector of the center coordinate of the calibration piece under the scanner coordinate system are calculated, and the center translational vector is calculated according to a singular value decomposition method to obtain a transformation matrix between the scanner coordinate system and the mechanical arm tool coordinate system.
As an embodiment, referring to fig. 10, the steps include:
spherical center coordinate vector of three spheres under mechanical arm tool coordinate system
Figure GDA0004077159820000121
And the spherical center coordinate vector of the three spheres in the scanner coordinate system +.>
Figure GDA0004077159820000122
Respectively calculating arithmetic mean values to obtain gravity center coordinate vectors of the three spheres under a mechanical arm tool coordinate system>
Figure GDA0004077159820000123
And the barycentric coordinate vector of the three spheres in the scanner coordinate system +.>
Figure GDA0004077159820000124
Calculating the spherical center coordinate vector according to the following formula
Figure GDA0004077159820000125
Center of gravity translation vector +.>
Figure GDA0004077159820000126
Figure GDA0004077159820000127
Calculating the spherical center coordinate vector according to the following formula
Figure GDA0004077159820000128
Center of gravity translation vector +.>
Figure GDA0004077159820000129
Figure GDA00040771598200001210
Shift the gravity center by a vector
Figure GDA00040771598200001211
Conversion to a 3X 3 matrix X 0 :
Figure GDA00040771598200001212
Shift the gravity center by a vector
Figure GDA00040771598200001213
Conversion to a 3 x 3 matrix Y 0 :
Figure GDA00040771598200001214
Computing a matrix
Figure GDA00040771598200001215
And singular value decomposition of matrix H>
Figure GDA00040771598200001216
Wherein U is H.H T Is set as H T Feature vector of H, H T And H is T H has the same characteristic value, and the characteristic value is set as lambda 1 ,...,λ r R represents the rank of matrix H; diagonal element +.>
Figure GDA0004077159820000131
Figure GDA0004077159820000132
And diagonal elements in Λ are arranged in descending order, and the rest elements in Λ are 0;
establishing a rotation matrix R and a translation matrix T between a scanner coordinate system and a mechanical arm tool coordinate system, and acquiring a transformation matrix according to the following formula:
Figure GDA0004077159820000133
wherein, set up
Figure GDA0004077159820000134
According to the formula->
Figure GDA0004077159820000135
Obtaining a transformation matrix:
Figure GDA0004077159820000136
further, the auxiliary puncture robot control method further comprises the steps of:
acquiring a second transformation matrix of a scanner coordinate system and a tomography data coordinate system;
wherein, the registration of the body surface outline and the perspective data of the patient is automatically completed by a computer to obtain a second transformation matrix of the CT data coordinate system and the body surface point cloud coordinate system
Figure GDA0004077159820000137
The computer acquires at least three point coordinates of a body surface point cloud coordinate system on the body surface outline of the patient, acquires coordinates of the three points in a CT data coordinate system, and acquires a second transformation matrix by calculating translation quantity and performing singular value decomposition.
Further, converting the puncture needle position coordinate and the needle direction vector under the in-vivo image data coordinate system into the puncture needle position coordinate and the needle direction vector under the mechanical arm tool coordinate system of the robot, including:
Acquiring a first transformation matrix and a second transformation matrix;
obtaining a puncture needle position coordinate of T and a needle direction vector of V under an in-vivo image data coordinate system by homogeneous coordinate conversion;
converting puncture needle position coordinates and needle direction vectors under an in-vivo image data coordinate system into puncture needle position coordinates T 'and needle direction vectors V' under a mechanical arm tool coordinate system according to the following calculation formula:
Figure GDA0004077159820000138
m is a first transformation matrix and N is a second transformation matrix.
Further, the control of the movement of the puncture needle on the mechanical arm to the preset position includes:
the translation X, Y, Z of the gripper in the x, y, z axis directions and the rotation angle A, B, C about the z, y, x axis directions in the robotic arm tool coordinate system are calculated according to the following equations:
Figure GDA0004077159820000141
/>
wherein t is x1 、t y1 、t z1 For the puncture needle position coordinates T', S x 、S y 、S Z Is the coordinate of the tool center point in the mechanical arm tool coordinate system, V x1 、V y1 、V Z1 Is a needle-inserting direction vector V';
forming motion instructions (X, Y, Z, A, B, C) according to the translation amounts X, Y, Z along the X, Y and Z axis directions and the rotation angles A, B, C around the Z, Y and X axis directions;
executing the motion instruction to control the puncture needle to move to a preset position to hover.
In the above steps, a movement instruction is generated according to the translation amount and the rotation angle of the gripper, and after the gripper and the scanner are rotated according to the movement instruction, the movement is performed along a certain coordinate axis according to the translation amount in the movement instruction, so that the puncture needle can be moved to the hovering position.
A sixth embodiment of the present invention provides an auxiliary penetration robot control device, including:
a mechanical arm;
the machine head is arranged on the mechanical arm and used for fixing the puncture needle;
the scanner is arranged on the mechanical arm and used for scanning 3D image data of the body surface of the patient;
a processing unit for registering the 3D body surface image data of the patient from the scanner and the in vivo image data of the patient comprising the body surface contours. The processing unit converts the puncture planning path in the in-vivo image data coordinate system into a puncture planning path in the mechanical arm tool coordinate system of the robot. The processing unit calculates the preset position of the puncture needle arranged on the mechanical arm according to the puncture planning path under the mechanical arm tool coordinate system.
And the control unit is used for controlling the puncture needle to move to a preset position according to the puncture planning path under the mechanical arm tool coordinate system.
The puncture planning path includes puncture needle insertion position coordinates and a needle insertion direction vector.
The processing unit is in data connection with the CT equipment, and the in-vivo image imaging data and the puncture planning path come from the CT equipment.
According to the embodiment, a three-dimensional scanner is used for replacing a two-dimensional camera to serve as a visual guiding system of the robot, 3D image data of the body surface of a patient are obtained, then three-dimensional image fusion is carried out on the three-dimensional image data and tomographic imaging data such as CT and MRI, organs and planned needle insertion paths which are sketched based on the tomographic imaging data are directly marked in the body surface image, and accordingly a mechanical arm is guided to place a puncture needle at a correct position for a doctor to push the needle to complete puncture.
The embodiment of the invention provides an auxiliary puncture robot control method, as shown in fig. 11, which comprises the following steps:
s10, setting a scanner coordinate system and a mechanical arm tool coordinate system, and acquiring a first transformation matrix between the scanner coordinate system and the mechanical arm tool coordinate system.
In step S10, the robot includes the scanner 4, the gripper 3 and the mechanical arm 1, the gripper 3 is disposed on the end flange 2 of the mechanical arm 3, the scanner 4 may be disposed on the gripper 3 or may be disposed on the mechanical arm 1, for example, the scanner 3 is disposed on the end joint of the mechanical arm, the position of the scanner 4 is not specifically limited herein, the gripper 3 is provided with a puncture needle, the transformation matrix is required to be acquired, the calibration member may be various regular objects with a center point, such as a sphere, a cube, a cone, or the like, the regular objects with a center point may be disposed on the calibrator, the calibration member may be a light spot, the light spot may be projected on the calibrator or may be suspended in the air, no matter what type of the calibrator is selected, its coordinates under the tool coordinate system of the mechanical arm are known in advance, for example, the calibration member is disposed on the calibrator, and the coordinate system under the tool coordinate system of the mechanical arm may be derived according to the relative positions of the calibrator and the end flange of the mechanical arm and the position of the calibration member on the calibrator.
As one way, as shown in fig. 12, setting the scanner coordinate system and the robot tool coordinate system in step S10 includes:
step s101. The axis of the gripper is arranged parallel to the x-axis of the robot tool coordinate system.
Step S102, setting an aiming point on the axis of the gripper as a tool center point of the mechanical arm.
In the above steps S101 and S102, a three-dimensional point cloud scanner (scanner for short) and a round tube gripping device (gripper for short) are first fixed at the end of a six-axis mechanical arm (mechanical arm for short), so that the scanner, the gripper and the flange at the end of the mechanical arm remain relatively stationary in motion, the scanner and the gripper form a robot hand eye system, then the axis of the gripper is set to be parallel to the x axis of the mechanical arm tool coordinate system, the aiming point of the gripper is set as the tool center point (Tool Central Point, TCP) of the mechanical arm, and the position of the point under the mechanical arm tool coordinate system is recorded as S (S) x ,s y ,s z )。
In step S10, as one way, as shown in fig. 13, a first transformation matrix between the scanner coordinate system and the robot tool coordinate system is acquired, including:
s103, obtaining the center coordinates of the calibration piece under the mechanical arm tool coordinate system.
In step S103, as an embodiment, the coordinates of the centers of the three spheres on the marker in the tool coordinate system of the mechanical arm are obtained according to the relative positions of the marker and the mechanical arm. Wherein the calibrator is mounted to the end of the robotic arm, wherein the calibrator meets the following conditions: the calibrating device is provided with three calibrating pieces of spheres, the three side lengths of a triangle formed by the sphere centers of the three spheres are mutually unequal, and the three spheres can be stably arranged at the tail end of the mechanical arm and keep relative static with the flange at the tail end of the mechanical arm; after the installation, the spherical center coordinates of the three spheres can be obtained in a mechanical arm tool coordinate system at the tail end of the mechanical arm; when the scanner scans the calibrator, the three spheres are required to be in the effective field of view of the scanner and are not shielded from each other, wherein the calibrator can be connected to the tail end flange of the grasping device through a connecting rod, the three spheres are arranged on the calibrator according to preset conditions, and the coordinates of the sphere centers of the three spheres under the tool coordinate system of the mechanical arm are obtained according to the tool center point of the mechanical arm and the arrangement positions of the three spheres on the calibrator.
S104, scanning the calibration piece through a scanner to obtain the center coordinate of the calibration piece under the scanner coordinate system.
In step S104, specifically, as shown in fig. 13, the point cloud data of the three spheres are obtained by the scanner, spherical fitting is performed on the point cloud data of the three spheres to obtain spherical center coordinates of the three spheres under the coordinate system of the scanner, and spherical fitting may be performed on the point cloud data by using the least square method to obtain spherical center coordinates of the three spheres under the coordinate system of the scanner.
S105, calculating center coordinates of the calibration piece under a mechanical arm tool coordinate system and gravity center translation vectors of the center coordinates of the calibration piece under a scanner coordinate system.
As one embodiment, step S105 includes:
spherical center coordinate vector of three spheres under mechanical arm tool coordinate system
Figure GDA0004077159820000161
And three spheres in the scanner coordinate systemLower spherical center coordinate vector ∈ ->
Figure GDA0004077159820000162
Respectively calculating arithmetic mean values to obtain gravity center coordinate vectors of the three spheres under a mechanical arm tool coordinate system>
Figure GDA0004077159820000163
And the barycentric coordinate vector of the three spheres in the scanner coordinate system +.>
Figure GDA0004077159820000164
Calculating the spherical center coordinate vector according to the following formula
Figure GDA0004077159820000165
Center of gravity translation vector +.>
Figure GDA0004077159820000166
Figure GDA0004077159820000167
Calculating the spherical center coordinate vector according to the following formula
Figure GDA0004077159820000168
Center of gravity translation vector +.>
Figure GDA0004077159820000169
/>
Figure GDA00040771598200001610
And S106, calculating the gravity center translation vector according to a singular value decomposition method to obtain a transformation matrix between the scanner coordinate system and the mechanical arm tool coordinate system.
As one embodiment, step S106 includes:
shift the gravity center by a vector
Figure GDA00040771598200001611
Conversion to3X
3 matrix X 0 :
Figure GDA00040771598200001612
Shift the gravity center by a vector
Figure GDA00040771598200001613
Conversion to a 3 x 3 matrix Y 0 :
Figure GDA0004077159820000171
Computing a matrix
Figure GDA0004077159820000172
And singular value decomposition of matrix H>
Figure GDA0004077159820000173
Wherein U is H.H T Is set as H T Feature vector of H, H T And H is T H has the same characteristic value, and the characteristic value is set as lambda 1 ,...,λ r R represents the rank of matrix H; diagonal element +.>
Figure GDA0004077159820000174
Figure GDA0004077159820000175
And diagonal elements in Λ are arranged in descending order, and the rest elements in Λ are 0;
establishing a rotation matrix R and a translation matrix T between a scanner coordinate system and a mechanical arm tool coordinate system, and acquiring a transformation matrix according to the following formula:
Figure GDA0004077159820000176
wherein, set up
Figure GDA0004077159820000177
According to the formula->
Figure GDA0004077159820000178
Obtaining a transformation matrix:
Figure GDA0004077159820000179
s20, acquiring tomographic imaging data of a patient, and acquiring puncture needle position coordinates and needle direction vectors under a tomographic imaging data coordinate system according to the tomographic imaging data.
In step S20, three-dimensional image fusion may be performed on tomographic data such as CT (Computed Tomography), MRI (Magnetic Resonance Imaging ) and the like to obtain tomographic data of the patient, and a puncture path is drawn according to a puncture scheme formulated by a doctor for the tomographic data, as shown in fig. 2, and a puncture needle position coordinate is recorded as T (T) x ,t y ,t z ) The needle insertion direction vector is V (V x ,v y ,v z )。
S30, controlling a scanner to scan the body surface of the patient to obtain point cloud data of the body surface outline of the patient, registering the point cloud data of the body surface outline with tomographic imaging data, and obtaining a second transformation matrix of a scanner coordinate system and a tomographic imaging data coordinate system.
In step S30, the registration of the body surface contour and the perspective data of the patient is automatically completed by the computer to obtain a second transformation matrix of the CT data coordinate system and the body surface point cloud coordinate system
Figure GDA00040771598200001710
The computer acquires at least three point coordinates of a body surface point cloud coordinate system on the body surface outline of the patient, acquires coordinates of the three points in a CT data coordinate system, and acquires a second transformation matrix by calculating translation quantity and performing singular value decomposition.
S40, converting the puncture needle position coordinate and the needle direction vector under the fault imaging data coordinate system into the puncture needle position coordinate and the needle direction vector under the mechanical arm tool coordinate system according to the first transformation matrix and the second transformation matrix.
As one embodiment, step S40 includes:
acquiring a first transformation matrix
Figure GDA0004077159820000181
Obtaining a second transformation matrix
Figure GDA0004077159820000182
Converting the puncture needle position coordinate and the needle direction vector by using the homogeneous coordinate to obtain a puncture needle position as
Figure GDA0004077159820000183
The direction vector of needle insertion is->
Figure GDA0004077159820000184
Converting the puncture needle position coordinate and the needle direction vector into a puncture needle position coordinate T 'and a needle direction vector V' under a mechanical arm tool coordinate system according to the following calculation formula:
Figure GDA0004077159820000185
/>
and S50, controlling the puncture needle to move to the corresponding needle inserting position to hover according to the coordinate of the needle inserting position and the needle inserting direction vector under the coordinate system of the mechanical arm tool.
As one embodiment, step S50 includes:
step S501, calculating translation X, Y, Z of the gripper along the x, y and z axis directions and rotation angles A, B, C around the z, y and x axis directions under a mechanical arm tool coordinate system according to the following formula:
Figure GDA0004077159820000191
wherein t is x1 、t y1 、t z1 For the puncture needle position coordinates T', S x 、S y 、S Z Is the coordinate of the tool center point in the mechanical arm tool coordinate system, V x1 、V y1 、V Z1 Is the needle insertion direction vector V'.
Step S502, a motion instruction (X, Y, Z, A, B and C) is formed according to the translation amount X, Y, Z along the X, Y and Z axis directions and the rotation angle A, B, C around the Z, Y and X axis directions.
Step S503, executing a motion instruction to control the puncture needle to move to a corresponding needle inserting position to hover.
In the above steps S501 to S503, as shown in fig. 6 and 7, a movement command is generated according to the translational amount and the rotation angle of the gripper, and after the rotational movement command is given to the gripper and the scanner according to the movement command, the movement is performed along a coordinate axis according to the translational amount in the movement command, so that the puncture needle can be moved to the hovering position.
According to the technical scheme, the three-dimensional scanner capable of generating the point cloud is used for replacing a two-dimensional camera to serve as a visual guiding system of the robot, and the three-dimensional point cloud with depth information can be obtained through single-angle scanning. Because the scanning interval of the point cloud is very short, the large-scale scanning of the body surface of a patient can be easily realized, then three-dimensional image fusion is carried out on the patient body surface and tomographic imaging data such as CT (computed tomography), MRI (magnetic resonance imaging) and the like, and organs and planned needle insertion paths which are drawn based on the tomographic imaging data are directly marked into the body surface point cloud data, so that a mechanical arm is guided to place a puncture needle at a correct position for a doctor to push the needle to complete puncture. According to the technical scheme, the in-vivo three-dimensional data and the body surface three-dimensional data are fused, so that complex operation and limitation of reconstructing a three-dimensional image through a two-dimensional image are avoided, the calculated amount of visual guidance is simplified, the reliability of visual guidance is improved, and an advantageous auxiliary tool is provided for puncture operation in medical operation.
Another embodiment of the present invention provides an auxiliary penetration robot control apparatus 60, as shown in fig. 14, the auxiliary penetration robot includes a scanner, a gripper and a mechanical arm, the gripper and the scanner are disposed at the end of the mechanical arm, a penetration needle is gripped on the gripper, and the auxiliary penetration robot control apparatus 60 includes:
A first transformation matrix obtaining unit 601, configured to set a scanner coordinate system and a robot tool coordinate system, and obtain a first transformation matrix between the scanner coordinate system and the robot tool coordinate system;
a puncture location information acquiring unit 602, configured to acquire tomographic imaging data of a patient, and acquire a puncture needle insertion location coordinate and a needle insertion direction vector in a tomographic imaging data coordinate system according to the tomographic imaging data;
a second transformation matrix obtaining unit 603, configured to control the scanner to scan the body surface of the patient to obtain point cloud data of the body surface contour of the patient, register the point cloud data of the body surface contour with tomographic imaging data, and obtain a second transformation matrix of the scanner coordinate system and the tomographic imaging data coordinate system;
a puncture location information conversion unit 604, configured to convert the puncture location coordinate and the puncture direction vector under the tomographic imaging data coordinate system into a puncture location coordinate and a puncture direction vector under the mechanical arm tool coordinate system according to the first transformation matrix and the second transformation matrix;
and the movement control unit 605 is used for controlling the puncture needle to move to the corresponding needle inserting position to hover according to the puncture needle inserting position coordinates and the needle inserting direction vector under the mechanical arm tool coordinate system.
Further, the first transformation matrix acquisition unit 601 is further configured to:
setting the axis of the gripper parallel to the x-axis of the robotic tool coordinate system;
the aiming point on the axis of the gripper is set as the tool center point of the robotic arm.
Further, the first transformation matrix acquisition unit 601 is specifically configured to:
acquiring a center coordinate of the calibration piece under a mechanical arm tool coordinate system;
scanning the calibration piece through a scanner to obtain the center coordinate of the calibration piece under the scanner coordinate system;
calculating the center coordinate of the calibration piece under the mechanical arm tool coordinate system and the gravity center translation vector of the center coordinate of the calibration piece under the scanner coordinate system;
and calculating the gravity center translation vector according to a singular value decomposition method to obtain a transformation matrix between a scanner coordinate system and a mechanical arm tool coordinate system.
Further, the puncture location information conversion unit 604 is specifically configured to:
acquiring a first transformation matrix
Figure GDA0004077159820000201
Obtaining a second transformation matrix
Figure GDA0004077159820000202
Converting the puncture needle position coordinate and the needle direction vector by using the homogeneous coordinate to obtain a puncture needle position as
Figure GDA0004077159820000203
The direction vector of needle insertion is->
Figure GDA0004077159820000204
Converting the puncture needle position coordinate and the puncture needle direction vector into a puncture needle position coordinate T 'and a puncture needle direction vector V' under a mechanical arm tool coordinate system according to the following calculation formula:
Figure GDA0004077159820000211
/>
Further, the mobile control unit is specifically configured to:
the translation X, Y, Z of the gripper in the x, y, z axis directions and the rotation angle A, B, C about the z, y, x axis directions in the robotic arm tool coordinate system are calculated according to the following equations:
Figure GDA0004077159820000212
wherein t is x1 、t y1 、t z1 For the puncture needle position coordinates T', S x 、S y 、S Z Is the coordinate of the tool center point in the mechanical arm tool coordinate system, V x1 、V y1 、V Z1 Is a needle-inserting direction vector V';
forming motion instructions (X, Y, Z, A, B, C) according to the translation amounts X, Y, Z along the X, Y and Z axis directions and the rotation angles A, B, C around the Z, Y and X axis directions;
executing the motion instruction to control the puncture needle to move to the corresponding needle inserting position to hover.
The present embodiment provides a computer readable storage medium, on which a computer program is stored, which when executed by a processor, implements a method for controlling an auxiliary penetration robot in embodiment 1, and in order to avoid repetition, a detailed description is omitted.
Fig. 15 is a schematic diagram of a computer device in an embodiment of the invention. As shown in fig. 15, the computer device 6 includes a processor 63, a memory 61, and a computer program 62 stored in the memory 61 and executable on the processor 63. The processor 63 implements the steps of a control method of the auxiliary penetration robot in the above embodiment, such as steps S10, S20, S30, S40 and S50 shown in fig. 1, when executing the computer program 62. Alternatively, processor 63 implements an auxiliary penetration robot control device of the above-described embodiment when executing computer program 62.
By way of example, the computer program 62 may be divided into one or more modules/units, which are stored in the memory 61 and executed by the processor 63 to perform the data processing procedure of the present invention. One or more of the modules/units may be a series of computer program segments capable of performing particular functions to describe the execution of the computer program 62 in the computer device 6.
The terminal device 6 may be a computing device such as a desktop computer, a notebook computer, a palm computer, and a cloud server. The terminal device may include, but is not limited to, a processor 63, a memory 61. It will be appreciated by those skilled in the art that fig. 7 is merely an example of the terminal device 6 and does not constitute a limitation of the terminal device 6, and may include more or less components than illustrated, or may combine certain components, or different components, e.g., the terminal device may also include an input-output device, a network access device, a bus, etc.
The processor 63 may be a central processing unit (Central Processing Unit, CPU), but may also be other general purpose processors, digital signal processors (Digital Signal Processor, DSP), application specific integrated circuits (Application Specific Integrated Circuit, ASIC), field programmable gate arrays (Field-Programmable Gate Array, FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, or the like. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
The memory 61 may be an internal storage unit of the terminal device 6, such as a hard disk or a memory of the terminal device 6. The memory 61 may also be an external storage device of the terminal device 6, such as a plug-in hard disk provided on the terminal device 6, a Smart Media Card (SMC), a Secure Digital (SD) Card, a Flash memory Card (Flash Card), or the like. Further, the memory 61 may also include both an internal storage unit and an external storage device of the terminal device 6. The memory 61 is used to store computer programs and other programs and data required by the terminal device. The memory 61 may also be used to temporarily store data that has been output or is to be output.
It will be apparent to those skilled in the art that, for convenience and brevity of description, only the above-described division of the functional units and modules is illustrated, and in practical application, the above-described functional distribution may be performed by different functional units and modules according to needs, i.e. the internal structure of the apparatus is divided into different functional units or modules to perform all or part of the above-described functions.
In addition, each functional unit in the embodiments of the present invention may be integrated in one processing unit, or each unit may exist alone physically, or two or more units may be integrated in one unit. The integrated units may be implemented in hardware or in software functional units.
The integrated modules/units, if implemented in the form of software functional units and sold or used as stand-alone products, may be stored in a computer readable storage medium. Based on such understanding, the present invention may implement all or part of the flow of the method of the above embodiment, or may be implemented by a computer program to instruct related hardware, where the computer program may be stored in a computer readable storage medium, and when the computer program is executed by a processor, the steps of each method embodiment described above may be implemented. Wherein the computer program comprises computer program code, which may be in the form of source code, object code, executable files or in some intermediate form, etc. The computer readable medium may include: any entity or device capable of carrying computer program code, a recording medium, a U disk, a removable hard disk, a magnetic disk, an optical disk, a computer Memory, a Read-Only Memory (ROM), a random access Memory (RAM, random Access Memory), an electrical carrier signal, a telecommunications signal, a software distribution medium, and so forth. It should be noted that the content of the computer readable medium can be appropriately increased or decreased according to the requirements of the jurisdiction's jurisdiction and the patent practice, for example, in some jurisdictions, the computer readable medium does not include electrical carrier signals and telecommunication signals according to the jurisdiction and the patent practice.
The above embodiments are only for illustrating the technical solution of the present invention, and are not limiting; although the invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical scheme described in the foregoing embodiments can be modified or some technical features thereof can be replaced by equivalents; such modifications and substitutions do not depart from the spirit and scope of the technical solutions of the embodiments of the present invention, and are intended to be included in the scope of the present invention.

Claims (12)

1. A method of assisting a penetration robot in controlling, the method comprising:
receiving in-vivo image data containing body surface contours of a patient and a puncture planning path, wherein the puncture planning path comprises puncture needle position coordinates and a needle direction vector;
scanning the body surface of a patient through a scanner installed on the robot to acquire the point cloud data of the body surface of the patient;
registering the body surface point cloud data of the patient with the in-vivo image data of the patient so as to carry out image fusion reconstruction on the body surface point cloud data of the patient and the in-vivo image data, thereby obtaining a three-dimensional fusion image of the body surface point cloud data of the patient and the in-vivo image data;
Converting the puncture needle position coordinate and the needle direction vector under the in-vivo image data coordinate system into the puncture needle position coordinate and the needle direction vector under the mechanical arm tool coordinate system of the robot;
calculating a preset position of a puncture needle arranged on the mechanical arm according to the puncture needle position coordinate and the needle direction vector under the mechanical arm tool coordinate system;
controlling a puncture needle on the mechanical arm to move to the preset position, wherein the preset position is a position where the puncture needle hovers above the body surface of a patient;
the step of converting the puncture needle position coordinate and the needle direction vector under the in-vivo image data coordinate system into the puncture needle position coordinate and the needle direction vector under the mechanical arm tool coordinate system of the robot comprises the following steps: acquiring a first transformation matrix and a second transformation matrix; obtaining a puncture needle position coordinate of T and a needle direction vector of V under an in-vivo image data coordinate system by homogeneous coordinate conversion; converting puncture needle position coordinates and a needle direction vector under an in-vivo image data coordinate system into puncture needle position coordinates T 'and a needle direction vector V' under a mechanical arm tool coordinate system according to the following calculation formula;
Figure FDA0004077159810000011
M is a first transformation matrix, and N is a second transformation matrix, wherein the first transformation matrix is obtained by the following method: acquiring a center coordinate of the calibration piece under a mechanical arm tool coordinate system; scanning the calibration piece through a scanner to obtain the center coordinate of the calibration piece under the scanner coordinate system; calculating the center coordinate of the calibration piece under the mechanical arm tool coordinate system and the gravity center translation vector of the center coordinate of the calibration piece under the scanner coordinate system; calculating the gravity center translation vector according to a singular value decomposition method to obtain a transformation matrix between a scanner coordinate system and a mechanical arm tool coordinate system; the second transformation matrix is obtained by: acquiring at least three point coordinates of a body surface point cloud coordinate system on the body surface profile of a patient, acquiring coordinates of the three points in a CT data coordinate system, and acquiring the coordinates by calculating translation quantity and performing singular value decomposition;
calculating a preset position of a puncture needle arranged on the mechanical arm according to the puncture needle position coordinate and the needle inserting direction vector under the mechanical arm tool coordinate system; controlling the puncture needle on the mechanical arm to move to the preset position comprises the following steps: calculating translation X, Y, Z of the gripper in the x, y and z axis directions and rotation angle A, B, C around the z, y and x axis directions under the mechanical arm tool coordinate system according to the following formula; forming motion instructions (X, Y, Z, A, B, C) according to the translation amounts X, Y, Z along the X, Y and Z axis directions and the rotation angles A, B, C around the Z, Y and X axis directions; executing a motion instruction to control the puncture needle to move to a preset position to hover;
Figure FDA0004077159810000021
Wherein t is x1 、t y1 、t z1 For the puncture needle position coordinates T', S x 、S y 、S Z Is the coordinate of the tool center point in the mechanical arm tool coordinate system, V x1 、V y1 、V Z1 Is the needle insertion direction vector V'.
2. The method of controlling an auxiliary puncture robot according to claim 1, wherein the step of receiving in-vivo image data including a body surface contour of the patient is receiving CT tomographic image data or B-mode image data or magnetic resonance image data.
3. The method of controlling the auxiliary puncture robot according to claim 1, wherein the step of registering the patient body surface point cloud data with the in-vivo image data of the patient further comprises the sub-step of: calculating a conversion matrix M of the scanner coordinate system and the in-vivo image data coordinate system;
"convert puncture planning path under the in-vivo image data coordinate system into puncture planning path under the robot arm tool coordinate system" is to calculate conversion based on the conversion matrix N and the conversion matrix M of the scanner coordinate system and the robot arm tool coordinate system.
4. The method for controlling an auxiliary penetration robot according to claim 3, further comprising: and acquiring a transformation matrix M between the scanner coordinate system and the mechanical arm tool coordinate system.
5. A method of assisting a penetration robot in controlling, the method comprising:
receiving in-vivo image data of a patient, which comprises a body surface contour, and calculating a puncture planning path under an in-vivo image data coordinate system according to the in-vivo image data, wherein the puncture planning path comprises puncture needle position coordinates and a needle direction vector;
scanning the body surface of the patient by a scanner to acquire 3D image data of the body surface of the patient;
registering the body surface 3D image data of the patient with the in-vivo image data of the patient so as to carry out image fusion reconstruction on the body surface point cloud data of the patient and the in-vivo image data, thereby obtaining a three-dimensional fusion image of the body surface point cloud data of the patient and the in-vivo image data;
converting the puncture needle position coordinate and the needle direction vector under the in-vivo image data coordinate system into the puncture needle position coordinate and the needle direction vector under the mechanical arm tool coordinate system of the robot;
calculating a preset position of a puncture needle arranged on the mechanical arm according to the puncture needle position coordinate and the needle direction vector under the mechanical arm tool coordinate system;
controlling a puncture needle on the mechanical arm to move to the preset position, wherein the preset position is a position where the puncture needle hovers above the body surface of a patient;
The step of converting the puncture needle position coordinate and the needle direction vector under the in-vivo image data coordinate system into the puncture needle position coordinate and the needle direction vector under the mechanical arm tool coordinate system of the robot comprises the following steps: acquiring a first transformation matrix and a second transformation matrix; obtaining a puncture needle position coordinate of T and a needle direction vector of V under an in-vivo image data coordinate system by homogeneous coordinate conversion; converting puncture needle position coordinates and a needle direction vector under an in-vivo image data coordinate system into puncture needle position coordinates T 'and a needle direction vector V' under a mechanical arm tool coordinate system according to the following calculation formula;
Figure FDA0004077159810000031
m is a first transformation matrix, and N is a second transformation matrix, wherein the first transformation matrix is obtained by the following method: acquiring a center coordinate of the calibration piece under a mechanical arm tool coordinate system; scanning the calibration piece through a scanner to obtain the center coordinate of the calibration piece under the scanner coordinate system; calculating the center coordinate of the calibration piece under the mechanical arm tool coordinate system and the gravity center translation vector of the center coordinate of the calibration piece under the scanner coordinate system; calculating the gravity center translation vector according to a singular value decomposition method to obtain a transformation matrix between a scanner coordinate system and a mechanical arm tool coordinate system; the second transformation matrix is obtained by: acquiring at least three point coordinates of a body surface point cloud coordinate system on the body surface profile of a patient, acquiring coordinates of the three points in a CT data coordinate system, calculating translation amount and performing singular value division Obtaining solution;
calculating a preset position of a puncture needle arranged on the mechanical arm according to the puncture needle position coordinate and the needle inserting direction vector under the mechanical arm tool coordinate system; controlling the puncture needle on the mechanical arm to move to the preset position comprises the following steps: calculating translation X, Y, Z of the gripper in the x, y and z axis directions and rotation angle A, B, C around the z, y and x axis directions under the mechanical arm tool coordinate system according to the following formula; forming motion instructions (X, Y, Z, A, B, C) according to the translation amounts X, Y, Z along the X, Y and Z axis directions and the rotation angles A, B, C around the Z, Y and X axis directions; executing a motion instruction to control the puncture needle to move to a preset position to hover;
Figure FDA0004077159810000032
wherein t is x1 、t y1 、t z1 For the puncture needle position coordinates T', S x 、S y 、S Z Is the coordinate of the tool center point in the mechanical arm tool coordinate system, V x1 、V y1 、V Z1 Is the needle insertion direction vector V'.
6. The method of controlling an auxiliary puncture robot according to claim 5, wherein the step of receiving in-vivo image data including a body surface contour of the patient is receiving CT tomographic image data or B-mode image data or magnetic resonance image data.
7. A method of assisting a penetration robot in controlling, the method comprising:
Receiving in-vivo image data containing body surface contours of a patient and a puncture planning path, wherein the puncture planning path comprises puncture needle position coordinates and a needle direction vector;
scanning a body surface of a patient by a scanner mounted on the robot to acquire 3D image data of the patient;
registering the 3D image data of the patient with the in-vivo image data of the patient so as to carry out image fusion reconstruction on the body surface point cloud data of the patient and the in-vivo image data, thereby obtaining a three-dimensional fusion image of the body surface point cloud data of the patient and the in-vivo image data;
converting the puncture needle position coordinate and the needle direction vector under the in-vivo image data coordinate system into the puncture needle position coordinate and the needle direction vector under the mechanical arm tool coordinate system of the robot;
calculating a preset position of a puncture needle arranged on the mechanical arm according to the puncture needle position coordinate and the needle direction vector under the mechanical arm tool coordinate system;
controlling a puncture needle on the mechanical arm to move to the preset position, wherein the preset position is a position where the puncture needle hovers above the body surface of a patient;
the step of converting the puncture needle position coordinate and the needle direction vector under the in-vivo image data coordinate system into the puncture needle position coordinate and the needle direction vector under the mechanical arm tool coordinate system of the robot comprises the following steps: acquiring a first transformation matrix and a second transformation matrix; obtaining a puncture needle position coordinate of T and a needle direction vector of V under an in-vivo image data coordinate system by homogeneous coordinate conversion; converting puncture needle position coordinates and a needle direction vector under an in-vivo image data coordinate system into puncture needle position coordinates T 'and a needle direction vector V' under a mechanical arm tool coordinate system according to the following calculation formula;
Figure FDA0004077159810000041
M is a first transformation matrix, and N is a second transformation matrix, wherein the first transformation matrix is obtained by the following method: acquiring a center coordinate of the calibration piece under a mechanical arm tool coordinate system; scanning the calibration piece through a scanner to obtain the center coordinate of the calibration piece under the scanner coordinate system; calculating the center coordinate of the calibration piece under the mechanical arm tool coordinate system and the gravity center translation vector of the center coordinate of the calibration piece under the scanner coordinate system; calculating the gravity center translation vector according to a singular value decomposition method to obtain a transformation matrix between a scanner coordinate system and a mechanical arm tool coordinate system; second variationThe matrix is obtained by: acquiring at least three point coordinates of a body surface point cloud coordinate system on the body surface profile of a patient, acquiring coordinates of the three points in a CT data coordinate system, and acquiring the coordinates by calculating translation quantity and performing singular value decomposition;
calculating a preset position of a puncture needle arranged on the mechanical arm according to the puncture needle position coordinate and the needle inserting direction vector under the mechanical arm tool coordinate system; controlling the puncture needle on the mechanical arm to move to the preset position comprises the following steps: calculating translation X, Y, Z of the gripper in the x, y and z axis directions and rotation angle A, B, C around the z, y and x axis directions under the mechanical arm tool coordinate system according to the following formula; forming motion instructions (X, Y, Z, A, B, C) according to the translation amounts X, Y, Z along the X, Y and Z axis directions and the rotation angles A, B, C around the Z, Y and X axis directions; executing a motion instruction to control the puncture needle to move to a preset position to hover;
Figure FDA0004077159810000051
Wherein t is x1 、t y1 、t z1 For the puncture needle position coordinates T', S x 、S y 、S Z Is the coordinate of the tool center point in the mechanical arm tool coordinate system, V x1 、V y1 、V Z1 Is the needle insertion direction vector V'.
8. A method of assisting a penetration robot in controlling, the method comprising:
acquiring in-vivo image data containing body surface contours of a patient and a puncture planning path, wherein the puncture planning path comprises puncture needle position coordinates and a needle direction vector;
scanning the body surface of a patient through a scanner installed on the robot to acquire the point cloud data of the body surface of the patient;
registering the body surface point cloud data of the patient with the in-vivo image data of the patient so as to carry out image fusion reconstruction on the body surface point cloud data of the patient and the in-vivo image data, thereby obtaining a three-dimensional fusion image of the body surface point cloud data of the patient and the in-vivo image data;
converting the puncture needle position coordinate and the needle direction vector under the in-vivo image data coordinate system into the puncture needle position coordinate and the needle direction vector under the mechanical arm tool coordinate system of the robot;
calculating a preset position of a puncture needle arranged on the mechanical arm according to the puncture needle position coordinate and the needle direction vector under the mechanical arm tool coordinate system;
Controlling a puncture needle on the mechanical arm to move to the preset position, wherein the preset position is a position where the puncture needle hovers above the body surface of a patient;
the step of converting the puncture needle position coordinate and the needle direction vector under the in-vivo image data coordinate system into the puncture needle position coordinate and the needle direction vector under the mechanical arm tool coordinate system of the robot comprises the following steps: acquiring a first transformation matrix and a second transformation matrix; obtaining a puncture needle position coordinate of T and a needle direction vector of V under an in-vivo image data coordinate system by homogeneous coordinate conversion; converting puncture needle position coordinates and a needle direction vector under an in-vivo image data coordinate system into puncture needle position coordinates T 'and a needle direction vector V' under a mechanical arm tool coordinate system according to the following calculation formula;
Figure FDA0004077159810000052
m is a first transformation matrix, and N is a second transformation matrix, wherein the first transformation matrix is obtained by the following method: acquiring a center coordinate of the calibration piece under a mechanical arm tool coordinate system; scanning the calibration piece through a scanner to obtain the center coordinate of the calibration piece under the scanner coordinate system; calculating the center coordinate of the calibration piece under the mechanical arm tool coordinate system and the gravity center translation vector of the center coordinate of the calibration piece under the scanner coordinate system; calculating the gravity center translation vector according to a singular value decomposition method to obtain a transformation matrix between a scanner coordinate system and a mechanical arm tool coordinate system; the second transformation matrix is obtained by: acquiring at least three body surface point cloud coordinate systems on body surface contours of patients The point coordinates are obtained, coordinates of the three points in a CT data coordinate system are obtained through calculating translation quantity and singular value decomposition;
calculating a preset position of a puncture needle arranged on the mechanical arm according to the puncture needle position coordinate and the needle inserting direction vector under the mechanical arm tool coordinate system; controlling the puncture needle on the mechanical arm to move to the preset position comprises the following steps: calculating translation X, Y, Z of the gripper in the x, y and z axis directions and rotation angle A, B, C around the z, y and x axis directions under the mechanical arm tool coordinate system according to the following formula; forming motion instructions (X, Y, Z, A, B, C) according to the translation amounts X, Y, Z along the X, Y and Z axis directions and the rotation angles A, B, C around the Z, Y and X axis directions; executing a motion instruction to control the puncture needle to move to a preset position to hover;
Figure FDA0004077159810000061
wherein t is x1 、t y1 、t z1 For the puncture needle position coordinates T', S x 、S y 、S Z Is the coordinate of the tool center point in the mechanical arm tool coordinate system, V x1 、V y1 、V Z1 Is the needle insertion direction vector V'.
9. An auxiliary piercing robot, comprising:
a mechanical arm;
the machine head is arranged on the mechanical arm and used for fixing the puncture needle;
the scanner is arranged on the mechanical arm and used for scanning 3D image data of the body surface of the patient;
The processing unit is used for registering the 3D body surface image data of the patient from the scanner and the in-vivo image data of the patient containing the body surface outline so as to carry out image fusion reconstruction on the body surface point cloud data of the patient and the in-vivo image data to obtain a three-dimensional fusion image of the body surface point cloud data of the patient and the in-vivo image data; the processing unit converts a puncture planning path under an in-vivo image data coordinate system into a puncture planning path under a mechanical arm tool coordinate system of the robot, wherein the puncture planning path comprises puncture needle position coordinates and a needle inserting direction vector; the processing unit calculates the preset position of the puncture needle arranged on the mechanical arm according to the puncture planning path under the mechanical arm tool coordinate system;
the control unit is used for controlling the puncture needle to move to the preset position according to a puncture planning path under the mechanical arm tool coordinate system, and the preset position is a position where the puncture needle hovers above the body surface of a patient;
the step of converting the puncture needle position coordinate and the needle direction vector under the in-vivo image data coordinate system into the puncture needle position coordinate and the needle direction vector under the mechanical arm tool coordinate system of the robot comprises the following steps: acquiring a first transformation matrix and a second transformation matrix; obtaining a puncture needle position coordinate of T and a needle direction vector of V under an in-vivo image data coordinate system by homogeneous coordinate conversion; converting puncture needle position coordinates and a needle direction vector under an in-vivo image data coordinate system into puncture needle position coordinates T 'and a needle direction vector V' under a mechanical arm tool coordinate system according to the following calculation formula;
Figure FDA0004077159810000071
M is a first transformation matrix, and N is a second transformation matrix, wherein the first transformation matrix is obtained by the following method: acquiring a center coordinate of the calibration piece under a mechanical arm tool coordinate system; scanning the calibration piece through a scanner to obtain the center coordinate of the calibration piece under the scanner coordinate system; calculating the center coordinate of the calibration piece under the mechanical arm tool coordinate system and the gravity center translation vector of the center coordinate of the calibration piece under the scanner coordinate system; calculating the gravity center translation vector according to a singular value decomposition method to obtain a transformation matrix between a scanner coordinate system and a mechanical arm tool coordinate system; the second transformation matrix is obtained by: acquiring at least three point coordinates of a body surface point cloud coordinate system on the body surface profile of a patient, acquiring coordinates of the three points in a CT data coordinate system, and acquiring the coordinates by calculating translation amount and performing singular value decomposition;
Calculating a preset position of a puncture needle arranged on the mechanical arm according to the puncture needle position coordinate and the needle inserting direction vector under the mechanical arm tool coordinate system; controlling the puncture needle on the mechanical arm to move to the preset position comprises the following steps: calculating translation X, Y, Z of the gripper in the x, y and z axis directions and rotation angle A, B, C around the z, y and x axis directions under the mechanical arm tool coordinate system according to the following formula; forming motion instructions (X, Y, Z, A, B, C) according to the translation amounts X, Y, Z along the X, Y and Z axis directions and the rotation angles A, B, C around the Z, Y and X axis directions; executing a motion instruction to control the puncture needle to move to a preset position to hover;
Figure FDA0004077159810000072
Wherein t is x1 、t y1 、t z1 For the puncture needle position coordinates T', S x 、S y 、S Z Is the coordinate of the tool center point in the mechanical arm tool coordinate system, V x1 、V y1 、V Z1 Is the needle insertion direction vector V'.
10. The auxiliary penetration robot of claim 9, wherein the processing unit is in data connection with a CT device, the in-vivo image data and the penetration plan path being from the CT device.
11. A computer device comprising a memory, a processor and a computer program stored in the memory and executable on the processor, characterized in that the processor implements the steps of the method according to any of claims 1 to 8 when the computer program is executed.
12. A computer readable storage medium storing a computer program, characterized in that the computer program when executed by a processor implements the steps of the method according to any one of claims 1 to 8.
CN201910412717.XA 2018-12-15 2019-05-17 Auxiliary puncture robot, control method thereof, computer device, and storage medium Active CN110353774B (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN2018115374636 2018-12-15
CN201811537463 2018-12-15

Publications (2)

Publication Number Publication Date
CN110353774A CN110353774A (en) 2019-10-22
CN110353774B true CN110353774B (en) 2023-05-12

Family

ID=68215253

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910412717.XA Active CN110353774B (en) 2018-12-15 2019-05-17 Auxiliary puncture robot, control method thereof, computer device, and storage medium

Country Status (1)

Country Link
CN (1) CN110353774B (en)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111297448B (en) * 2020-02-24 2021-06-01 东软医疗系统股份有限公司 Puncture positioning method, device and system
CN111603205A (en) * 2020-03-23 2020-09-01 苏州新医智越机器人科技有限公司 Three-dimensional image reconstruction and positioning analysis system used in CT (computed tomography) cabin of puncture surgical robot
CN111513850B (en) * 2020-04-30 2022-05-06 京东方科技集团股份有限公司 Guide device, puncture needle adjustment method, storage medium, and electronic apparatus
US11529738B2 (en) * 2020-07-02 2022-12-20 NDR Medical Technology Pte. Ltd. Control system and a method for operating a robot
CN113907884A (en) * 2020-07-10 2022-01-11 南京智云医疗器械研究院有限公司 Equipment and method for supporting needle sleeve guiding and realizing accurate puncture based on infrared binocular camera and robot mechanical arm
CN112603534B (en) * 2020-12-04 2022-11-29 扬州大学 Method for determining optimal nodal line position in joint cavity effusion treatment process
CN112545617B (en) * 2020-12-04 2022-12-30 扬州大学 Optimal puncture geometric parameter determination method for joint cavity effusion treatment
CN112754616B (en) * 2020-12-30 2022-05-10 诺创智能医疗科技(杭州)有限公司 Ultrasonic positioning puncture system and storage medium
CN113081258B (en) * 2021-03-09 2022-12-30 扬州大学 Optimal point calibration method for puncturing effusion drainage in joint cavity treatment
CN113081268A (en) * 2021-03-31 2021-07-09 上海电气集团股份有限公司 AR and IoT based surgical guidance system
CN113197664B (en) * 2021-04-23 2022-11-29 扬州大学 Strange elimination-based synovitis tender point specific position quantitative analysis method
CN113413216B (en) * 2021-07-30 2022-06-07 武汉大学 Double-arm puncture robot based on ultrasonic image navigation
CN114310910B (en) * 2021-12-23 2023-09-05 真健康(北京)医疗科技有限公司 Control method, control equipment and auxiliary system suitable for mechanical arm for puncture operation
CN114407021A (en) * 2022-02-28 2022-04-29 杭州柳叶刀机器人有限公司 Dental surgery mechanical arm control method and device, computer terminal and storage medium
CN115775266B (en) * 2023-02-13 2023-06-09 北京精准医械科技有限公司 Registration method applied to real-time puncture surgical robot
CN116077155B (en) * 2023-04-06 2023-06-27 深圳惟德精准医疗科技有限公司 Surgical navigation method based on optical tracking equipment and mechanical arm and related device

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5999840A (en) * 1994-09-01 1999-12-07 Massachusetts Institute Of Technology System and method of registration of three-dimensional data sets
CN107928791A (en) * 2017-12-07 2018-04-20 上海钛米机器人科技有限公司 A kind of robot assisted piercing method, system and device
CN108852473B (en) * 2018-07-11 2024-03-15 深圳市奥昇医疗科技有限责任公司 Puncture operation system

Also Published As

Publication number Publication date
CN110353774A (en) 2019-10-22

Similar Documents

Publication Publication Date Title
CN110353774B (en) Auxiliary puncture robot, control method thereof, computer device, and storage medium
CN110355754B (en) Robot hand-eye system, control method, device and storage medium
CN107468350B (en) Special calibrator for three-dimensional image, operation positioning system and positioning method
CN110215284B (en) Visualization system and method
US9724049B2 (en) Radiotherapy system
CN114711969B (en) Surgical robot system and application method thereof
EP3073926B1 (en) Interventional x-ray system with automatic iso-centering
US9662076B2 (en) Laser guided auto collimation system and method for medical apparatus
CN111973212B (en) Parameter calibration method and parameter calibration device
CN115222801A (en) Method and device for positioning through X-ray image, X-ray machine and readable storage medium
CN113768527B (en) Real-time three-dimensional reconstruction device based on CT and ultrasonic image fusion and storage medium
CN116077155B (en) Surgical navigation method based on optical tracking equipment and mechanical arm and related device
JP2011234932A (en) Focal tissue real-time position identification device and x-ray treatment device using the same
EP2635190B1 (en) Imaging apparatus for imaging an object
Li et al. A framework for fast automatic robot ultrasound calibration
CN116585036A (en) Needle holder, puncture operation robot, operation navigation method and storage medium
US20220133409A1 (en) Method for Determining Target Spot Path
CN112075957B (en) Mammary gland circular scanning track planning method and device and computer readable storage medium
JP2019118450A (en) Medical image diagnostic apparatus, peripheral device, and imaging system
CN115778545B (en) Ablation positioning method and system
CN112543623A (en) Surgical robot system and control method thereof
JP7184139B2 (en) Positioning device and positioning method
US20230190218A1 (en) Methods and system for positioning a c-arm
US20230298206A1 (en) Method for determining the three-dimensional positions of points in a target region on a patient in a reference coordinate system of a surgical visualization system and surgical visualization system
CN110051433B (en) Method for keeping track of target and application thereof in image-guided surgery

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant