Surgical navigation positioning system, method, electronic device and storage medium
By installing a double-sided tracer at the end of the robotic arm and using a binocular camera and controller to adjust the Z-axis angle, the problems of tracer occlusion and positioning error were solved, achieving high-precision, low-error surgical navigation positioning, and improving surgical efficiency and safety.
Patent Information
- Application Number
- CN202411471090.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-21
- Publication Date
- 2025-09-09
- Estimated Expiration
- 2044-10-21
AI Technical Summary
In existing surgical navigation systems, the tracer is prone to introducing positioning errors when installed on a robotic arm and is easily obscured at the surgical site, resulting in complicated and cumbersome operations and low efficiency.
Double-sided tracers are installed on both sides of the end of the robotic arm. The binocular camera is used to collect position coordinates and the Z-axis angle is calculated through the controller. The position of the robotic arm is adjusted to ensure that at least one side of the tracer is always within the optimal recognition field of view to achieve precise positioning.
It improves the spatial positioning accuracy of the surgical navigation system, reduces visual interference errors, reduces the frequency of manual adjustments, optimizes the surgical process, and improves the success rate and safety of the surgery.
Smart Images

Figure CN119405421B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of medical device technology, and in particular to a surgical navigation and positioning system, method, electronic device, and storage medium. Background Art
[0002] With the rapid development of surgical techniques, surgical navigation systems have become an indispensable core technology in minimally invasive surgery. Currently, most commonly used surgical navigation systems use positioning tracers installed on robotic arms to achieve precise positioning of the surgical site during surgery. However, when the tracer is installed on the robotic arm, the positioning it provides is dependent on the position adjustment of the robotic arm, which can easily introduce positioning errors. When the tracer is installed at the end of the robotic arm, although the positioning error caused by the position adjustment of the robotic arm itself is reduced, it is easily blocked by the doctor's movement or the use of other instruments at the surgical site, resulting in positioning obstacles. To avoid obstruction, the installation position of the tracer on the robotic arm needs to be manually adjusted continuously, which is complicated and inefficient. Summary of the Invention
[0003] The purpose of the embodiments of the present application is to provide a surgical navigation positioning system, method, electronic device, and storage medium to improve the efficiency of surgical navigation positioning. The specific technical solutions are as follows:
[0004] In a first aspect, embodiments of the present application provide a surgical navigation and positioning system, comprising: a double-sided tracer, a robotic arm, a binocular camera, and a controller, wherein the double-sided tracer is a two-sided spherical marker mounted on either side of the end of the robotic arm, each side including four spherical markers, and the double-sided tracer is placed within the field of view of the binocular camera;
[0005] The binocular camera is used to collect the first position coordinates of the double-sided tracer and send them to the controller;
[0006] The controller is configured to determine, based on the first position coordinates, a Z-axis angle between a first coordinate system where the double-sided tracer is located and a second coordinate system where the binocular camera is located; and send an adjustment instruction to the robotic arm based on the Z-axis angle, wherein the adjustment instruction is configured to instruct the robotic arm to adjust its position until the Z axes of the first coordinate system and the second coordinate system are parallel;
[0007] The robotic arm is used to drive the double-sided tracer to adjust its position according to the adjustment instruction.
[0008] In one embodiment of the present application, the present invention includes:
[0009] The controller is used to obtain the first unit vector of the Z axis of the first coordinate system based on the first position coordinate, and use a preset transformation matrix to convert the first unit vector to the second coordinate system to obtain a second unit vector; obtain the third unit vector of the Z axis of the second coordinate system; and obtain the Z axis angle based on the second unit vector and the third unit vector.
[0010] In one embodiment of the present application, the origin of the first coordinate system is the center point between the spherical markers on one side, the XY plane is the plane where the spherical markers are located, and the Z axis is perpendicular to the XY plane; the origin of the second coordinate system is the center point between the two cameras of the binocular camera, the Y axis is the baseline of the two cameras, the X axis is perpendicular to the baseline and perpendicular to the orientation of the two cameras, and the Z axis is perpendicular to the XY plane.
[0011] In one embodiment of the present application, the Z-axis angle is calculated according to the following formula:
[0012]
[0013] Wherein, θ is the Z-axis angle, (x1, y1, z1) is the third unit vector, and (x2, y2, z2) is the second unit vector.
[0014] In a second aspect, an embodiment of the present application provides a surgical navigation positioning method, which is applied to any of the above-mentioned surgical navigation positioning systems, and the method includes:
[0015] Using a binocular camera to collect first position coordinates of a double-sided tracer, wherein the double-sided tracer is a two-sided spherical marker mounted on both sides of the end of the robotic arm, each side including four spherical markers, and the double-sided tracer is placed within the field of view of the binocular camera;
[0016] Based on the first position coordinates, determining a Z-axis angle between a first coordinate system where the double-sided tracer is located and a second coordinate system where the binocular camera is located;
[0017] An adjustment instruction is sent to the robotic arm based on the Z-axis angle, so that the robotic arm drives the double-sided tracer to adjust its position according to the adjustment instruction, wherein the adjustment instruction is used to instruct the robotic arm to adjust its position until the Z axes of the first coordinate system and the second coordinate system are parallel.
[0018] In one embodiment of the present application, determining the Z-axis angle between the first coordinate system where the double-sided tracer is located and the second coordinate system where the binocular camera is located based on the first position coordinates includes:
[0019] Obtaining a first unit vector of the Z axis of the first coordinate system based on the first position coordinate;
[0020] Using a preset transformation matrix, transform the first unit vector to the second coordinate system to obtain a second unit vector;
[0021] Obtain a third unit vector of the Z axis of the second coordinate system;
[0022] The Z-axis angle is obtained according to the second unit vector and the third unit vector.
[0023] In one embodiment of the present application, the origin of the first coordinate system is the center point between the spherical markers on one side, the XY plane is the plane where the spherical markers are located, and the Z axis is perpendicular to the XY plane; the origin of the second coordinate system is the center point between the two cameras of the binocular camera, the Y axis is the baseline of the two cameras, the X axis is perpendicular to the baseline and perpendicular to the orientation of the two cameras, and the Z axis is perpendicular to the XY plane.
[0024] In one embodiment of the present application, the Z-axis angle is calculated according to the following formula:
[0025]
[0026] Wherein, θ is the Z-axis angle, (x1, y1, z1) is the third unit vector, and (x2, y2, z2) is the second unit vector.
[0027] In a third aspect, an embodiment of the present application provides an electronic device, including a processor, a communication interface, a memory, and a communication bus, wherein the processor, the communication interface, and the memory communicate with each other via the communication bus;
[0028] Memory for storing computer programs;
[0029] The processor is configured to implement any of the above-mentioned surgical navigation and positioning methods when executing the program stored in the memory.
[0030] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, it implements any of the above-mentioned surgical navigation and positioning methods.
[0031] An embodiment of the present application also provides a computer program product comprising instructions, which, when executed on a computer, enables the computer to execute any of the above-described surgical navigation and positioning methods.
[0032] Beneficial effects of the embodiments of the present application:
[0033] The surgical navigation and positioning system provided in the embodiments of the present application features a double-sided tracer with two spherical markers mounted on either side of the end of a robotic arm. This allows the double-sided tracer to be placed within the field of view of the binocular camera. Regardless of the angle to which the robotic arm rotates, at least one spherical marker maintains an unobstructed visual path, providing current position information. This resolves the visual obstruction issue that may be caused by a single-sided tracer. This not only improves the spatial positioning accuracy of the surgical navigation system but also significantly reduces potential errors caused by visual interference, ensuring millimeter-level surgical accuracy and increasing surgical success rates. Furthermore, the doctor no longer needs to manually adjust the tracer position, reducing the frequency of manual adjustments, optimizing the surgical process, reducing the doctor's workload, and improving the efficiency of surgical navigation and positioning, and ultimately the surgical process itself.
[0034] The binocular camera captures the first position coordinates of the double-sided tracer and sends them to the controller. Based on the first position coordinates, the controller determines the Z-axis angle between the first coordinate system where the double-sided tracer is located and the second coordinate system where the binocular camera is located. Based on the Z-axis angle, the controller sends an adjustment command to the robotic arm, causing the robotic arm to adjust the position of the double-sided tracer according to the adjustment command until the Z axes of the first coordinate system and the second coordinate system are parallel. This ensures that at least one spherical marker 105 is always within the optimal recognition field of view of the binocular camera, meeting the requirement that the double-sided tracer is always within the optimal recognition area, thereby improving the safety factor of the surgery. Continuous positioning detection and real-time adjustment during the surgery reduce the potential errors caused by the single-sided tracer being blocked and unable to be positioned, as well as the errors caused by the tracer not being within the optimal recognition area when determining the current position information of the robotic arm or even the surgical tool. It also reduces the need for manual adjustment of the tracer and reduces the errors caused by human error, improves the accuracy of surgical navigation positioning, enhances the positioning accuracy and operational flexibility of the robotic arm in various surgical postures, and improves the safety and reliability of the surgical process. The system is widely applicable to various surgeries, especially complex ones such as spinal surgery and trauma surgery. Specifically, in spinal surgery, the double-sided tracer can accurately follow complex bone structures and accurately locate even in tortuous anatomical surfaces. In trauma surgery, its rapid response and instant adjustment capabilities can cope with emergencies and ensure the smooth progress of operations under urgent circumstances, fully demonstrating its role in improving the safety factor of high-difficulty operations.
[0035] Of course, it is not necessary to achieve all the advantages described above at the same time when implementing any product or method of the present application. BRIEF DESCRIPTION OF THE DRAWINGS
[0036] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other embodiments can also be obtained based on these drawings.
[0037] Figure 1 A schematic structural diagram of a first surgical navigation and positioning system provided in an embodiment of the present application;
[0038] Figure 2 A schematic structural diagram of a second surgical navigation and positioning system provided in an embodiment of the present application;
[0039] Figure 3 A schematic diagram of a flow chart of a surgical navigation and positioning method provided in an embodiment of the present application;
[0040] Figure 4 A possible implementation method of step S102 provided in an embodiment of the present application;
[0041] Figure 5 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0042] The following will be combined with the drawings in the embodiments of this application to clearly and completely describe the technical solutions in the embodiments of this application. Obviously, the embodiments described are only part of the embodiments of this application, not all of the embodiments. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field based on this application are within the scope of protection of this application.
[0043] In related technologies, to minimize the possibility of the tracer mounted on the end of the robotic arm being obstructed during surgery, which could lead to problems with positioning the robotic arm, multiple tracer mounting slots are provided at the end of the robotic arm. The surgeon can select a slot that is not currently obstructed for the tracer. Different slots are used to mount tracers of different structures, allowing the host computer to identify the current slot by identifying the tracer's structure. This approach not only requires the surgeon to clearly identify the tracer structure that is compatible with each slot, but also requires the surgeon to constantly adjust the tracer's installation position during surgery, making the operation complex and inefficient.
[0044] To solve this problem, embodiments of the present application provide a surgical navigation and positioning system, method, electronic device, and storage medium.
[0045] The following is a detailed description of the surgical navigation and positioning system provided in the embodiment of the present application. Figure 1 , Figure 1This is a schematic diagram of the structure of a first surgical navigation and positioning system provided in an embodiment of the present application, comprising: a double-sided tracker 101, a robotic arm 102, a binocular camera 103, and a controller 104. The double-sided tracker 101 is a two-sided spherical marker 105 mounted on either side of the end of the robotic arm 102, each side including four spherical markers 105. The double-sided tracker 101 is placed within the field of view of the binocular camera 103.
[0046] The binocular camera 103 is used to collect the first position coordinates of the double-sided tracer 101 and send them to the controller 104;
[0047] The controller 104 is configured to determine, based on the first position coordinate, a Z-axis angle between a first coordinate system where the double-sided tracer 101 is located and a second coordinate system where the binocular camera 103 is located; and to send an adjustment instruction to the robotic arm 102 based on the Z-axis angle, wherein the adjustment instruction is configured to instruct the robotic arm 102 to adjust its position until the Z axes of the first coordinate system and the second coordinate system are parallel.
[0048] The robotic arm 102 is used to drive the double-sided tracer 101 to adjust its position according to the adjustment instruction.
[0049] The robotic arm 102 is used to implement surgical navigation and move the surgical tools to the desired position during the operation; the double-sided tracer 101 is used as a positioning tool to provide current position information; the binocular camera 103 is used to obtain the position information of the double-sided tracer 101 and determine whether the position of the surgical tools is accurate based on the predetermined positional relationship between the double-sided tracer 101 and the surgical tools driven by the robotic arm 102.
[0050] A double-sided tracer 101 is mounted at the end of a robotic arm 102, and two high-precision spherical markers 105 (four spherical markers per side, for a total of eight spherical markers) are mounted on either side of the end of the robotic arm 102. A binocular camera 103 is positioned opposite the robotic arm 102, ensuring that the double-sided tracer 101 at the end of the robotic arm 102 is within the field of view of the binocular camera 103. The two spherical markers 105 positioned on either side of the robotic arm ensure that no matter which direction the robotic arm 102 rotates, at least one side of the tracer faces the binocular camera 103 and remains unobstructed, allowing the binocular camera 103 to capture positional information.
[0051] The binocular camera 103 collects the first position coordinates of the double-sided tracer 101. Specifically, these can be the position coordinates of the spherical markers 105 on any side of the double-sided tracer 101. Specifically, if the binocular camera 103 collects the position information of three or more spherical markers on one side of the spherical markers 105, the first position coordinates of the double-sided tracer 101 can be determined. The Z-axis angle between the first coordinate system (tool coordinate system) of the double-sided tracer 101 and the second coordinate system (camera coordinate system) of the binocular camera 103 is determined using the first position coordinates and predetermined information such as the camera parameters and camera coordinates of the binocular camera 103.
[0052] The Z-axes of the first and second coordinate systems are parallel, ensuring that at least one spherical marker 105 is always within the optimal field of view of the binocular camera 103, indicating that the double-sided tracer 101 is currently in the optimal recognition zone. If the Z-axes are not currently parallel, even if one spherical marker 105 is within the field of view of the binocular camera 103 and can be recognized, the spherical marker 105 is not within the optimal recognition zone. Positioning the robotic arm, and therefore the surgical tool, based on the current position of the spherical marker 105 will still result in significant errors and inaccurate positioning.
[0053] In one embodiment of the present application, Figure 2 As shown, an embodiment of the present application provides a structural schematic diagram of a second surgical navigation and positioning system, wherein the origin of the first coordinate system is the center point between the spherical markers 105 on one side, the XY plane is the plane where the spherical markers 105 are located, and the Z axis is perpendicular to the XY plane; the origin of the second coordinate system is the center point between the two cameras 106 of the binocular camera 103, the Y axis is the baseline of the two cameras 106, the X axis is perpendicular to the baseline and perpendicular to the orientation of the two cameras 106, and the Z axis is perpendicular to the XY plane.
[0054] The Z axes of the first coordinate system and the second coordinate system are parallel, so that at least one spherical marker 105 is always within the optimal recognition field of view of the binocular camera 103 without being blocked, and can provide more accurate positioning for the binocular camera 103.
[0055] When the controller 104 detects that the Z-axis angle between the first coordinate system and the second coordinate system deviates from the preset angle (the preset angle is 0 degrees so that the Z axes are parallel), the controller 104 sends an adjustment instruction to the robot arm 102, so that the robot arm 102 drives the double-sided tracer 101 to adjust its position until the Z-axis angle is adjusted to the preset angle, the Z axes of the first coordinate system and the second coordinate system are parallel, and the double-sided tracer 101 is in the optimal recognition area.
[0056] Specifically, during the operation, the binocular camera 103 can collect the first position coordinates in real time, and the controller 104 can detect the Z-axis angle in real time, so that it can timely detect and adjust when the angle deviation of the robotic arm 102 causes the double-sided tracer 101 to be not in the optimal recognition area.
[0057] For example, during spinal surgery, the binocular camera 103 only needs to capture one side of the tracer, leaving more room for the surgeon to operate. In this case, the preset angle places one side of the double-sided tracer 101 in the optimal recognition zone, providing more accurate positioning for the binocular camera 103. Cervical spine surgery, brain surgery, and complex trauma surgeries require real-time capture of the positions of both sides of the tracer to ensure full coverage of the surgical area. In this case, the preset angle needs to ensure that the binocular camera 103 captures both sides of the double-sided tracer 101, with both sides within the optimal recognition zone.
[0058] As can be seen from the above, the surgical navigation and positioning system provided by the embodiment of the present application has a double-sided tracer with two spherical markers mounted on either side of the end of the robotic arm, placing the double-sided tracer within the field of view of the binocular camera. Regardless of the angle to which the robotic arm rotates, at least one spherical marker maintains an unobstructed visual path, capable of providing current position information. This solves the problem of line of sight obstruction that may be caused by a single-sided tracer. This not only improves the spatial positioning accuracy of the surgical navigation system, but also significantly reduces potential errors caused by visual interference, ensuring surgical operations accurate to the millimeter level and improving surgical success rates. Furthermore, the doctor no longer needs to manually adjust the tracer position, reducing the frequency of manual tracer adjustments, optimizing the surgical process, reducing the doctor's workload, and improving the efficiency of surgical navigation and positioning, and even the surgical process itself.
[0059] The binocular camera captures the first position coordinates of the double-sided tracer and sends them to the controller. Based on the first position coordinates, the controller determines the Z-axis angle between the first coordinate system where the double-sided tracer is located and the second coordinate system where the binocular camera is located. Based on the Z-axis angle, the controller sends an adjustment command to the robotic arm, causing the robotic arm to adjust the position of the double-sided tracer according to the adjustment command until the Z axes of the first coordinate system and the second coordinate system are parallel. This ensures that at least one spherical marker 105 is always within the optimal recognition field of view of the binocular camera, meeting the requirement that the double-sided tracer is always within the optimal recognition area, thereby improving the safety factor of the surgery. Continuous positioning detection and real-time adjustment during the surgery reduce the potential errors caused by the single-sided tracer being blocked and unable to be positioned, as well as the errors caused by the tracer not being within the optimal recognition area when determining the current position information of the robotic arm or even the surgical tool. It also reduces the need for manual adjustment of the tracer and reduces the errors caused by human error, improves the accuracy of surgical navigation positioning, enhances the positioning accuracy and operational flexibility of the robotic arm in various surgical postures, and improves the safety and reliability of the surgical process. The system is widely applicable to various surgeries, especially complex ones such as spinal surgery and trauma surgery. Specifically, in spinal surgery, the double-sided tracer can accurately follow complex bone structures and accurately locate even in tortuous anatomical surfaces. In trauma surgery, its rapid response and instant adjustment capabilities can cope with emergencies and ensure the smooth progress of operations under urgent circumstances, fully demonstrating its role in improving the safety factor of high-difficulty operations.
[0060] In one embodiment of the present application, the controller 104 is used to obtain a first unit vector of the Z axis of the first coordinate system based on the first position coordinate, and use a preset transformation matrix to convert the first unit vector to the second coordinate system to obtain a second unit vector; obtain a third unit vector of the Z axis of the second coordinate system; and obtain the Z axis angle based on the second unit vector and the third unit vector.
[0061] The first unit vector is calculated based on the first position coordinates to obtain a first unit vector. The first unit vector is converted to the second coordinate system using a transformation matrix, and the Z-axis angle is calculated using the obtained second unit vector and the third unit vector of the Z axis of the second coordinate system.
[0062] Exemplarily, the transformation matrix is related to the camera parameters of the binocular camera. The controller can directly obtain the second position information of the feature points of the binocular camera in the second coordinate system. The transformation matrix can be read based on the camera parameters, the first position information, and the second position information using a program installed in the surgical navigation and positioning system. Specifically, it can be implemented using any transformation matrix reading program.
[0063] In one embodiment of the present application, the Z-axis angle is calculated according to the following formula:
[0064]
[0065] Wherein, θ is the Z-axis angle, (x1, y1, z1) is the third unit vector, and (x2, y2, z2) is the second unit vector.
[0066] As can be seen from the above, the surgical navigation positioning system provided in the embodiment of the present application obtains the first unit vector of the Z axis of the first coordinate system based on the first position coordinate, converts it to the second coordinate system, and determines the Z axis angle, thereby ensuring that the obtained Z axis angle is obtained by real-time detection and calculation, thereby improving the accuracy of positioning.
[0067] See also Figure 3 , Figure 3 This is a flow chart of a surgical navigation and positioning method provided in an embodiment of the present application. The method is applied to any of the above-mentioned surgical navigation and positioning systems. The method includes:
[0068] Step S101, using a binocular camera to collect the first position coordinates of the double-sided tracer;
[0069] The double-sided tracer is a two-sided spherical marker installed on both sides of the end of the robotic arm, each side includes four of the spherical markers, and the double-sided tracer is placed within the field of view of the binocular camera;
[0070] Step S102: determining a Z-axis angle between a first coordinate system where the double-sided tracer is located and a second coordinate system where the binocular camera is located based on the first position coordinates;
[0071] Step S103, sending an adjustment instruction to the robotic arm based on the Z-axis angle, so that the robotic arm drives the double-sided tracer to adjust its position according to the adjustment instruction;
[0072] The adjustment instruction is used to instruct the robotic arm to adjust its position until the Z axis of the first coordinate system is parallel to the Z axis of the second coordinate system.
[0073] The surgical navigation positioning method provided in the embodiments of the present application utilizes a double-sided tracer with two spherical markers mounted on either side of the end of a robotic arm. This allows the double-sided tracer to be placed within the field of view of a binocular camera. Regardless of the angle to which the robotic arm rotates, at least one spherical marker maintains an unobstructed visual path, providing current position information. This solves the problem of line of sight obstruction that may be caused by a single-sided tracer. This not only improves the spatial positioning accuracy of the surgical navigation system, but also significantly reduces potential errors caused by visual interference, ensuring millimeter-level accuracy in surgical operations and improving surgical success rates. Furthermore, the doctor no longer needs to manually adjust the tracer position, reducing the frequency of manual tracer adjustments, optimizing the surgical process, reducing the doctor's workload, and improving the efficiency of surgical navigation positioning and, ultimately, the surgical process itself.
[0074] The binocular camera captures the first position coordinates of the double-sided tracer and sends them to the controller. Based on the first position coordinates, the controller determines the Z-axis angle between the first coordinate system where the double-sided tracer is located and the second coordinate system where the binocular camera is located. Based on the Z-axis angle, the controller sends an adjustment command to the robotic arm, causing the robotic arm to adjust the position of the double-sided tracer according to the adjustment command until the Z axes of the first coordinate system and the second coordinate system are parallel. This ensures that at least one spherical marker 105 is always within the optimal recognition field of view of the binocular camera, meeting the requirement that the double-sided tracer is always within the optimal recognition area, thereby improving the safety factor of the surgery. Continuous positioning detection and real-time adjustment during the surgery reduce the potential errors caused by the single-sided tracer being blocked and unable to be positioned, as well as the errors caused by the tracer not being within the optimal recognition area when determining the current position information of the robotic arm or even the surgical tool. It also reduces the need for manual adjustment of the tracer and reduces the errors caused by human error, improves the accuracy of surgical navigation positioning, enhances the positioning accuracy and operational flexibility of the robotic arm in various surgical postures, and improves the safety and reliability of the surgical process. The system is widely applicable to various surgeries, especially complex ones such as spinal surgery and trauma surgery. Specifically, in spinal surgery, the double-sided tracer can accurately follow complex bone structures and accurately locate even in tortuous anatomical surfaces. In trauma surgery, its rapid response and instant adjustment capabilities can cope with emergencies and ensure the smooth progress of operations under urgent circumstances, fully demonstrating its role in improving the safety factor of high-difficulty operations.
[0075] In one embodiment of the present application, Figure 4 As shown, the above step S102 determines the Z-axis angle between the first coordinate system where the double-sided tracker is located and the second coordinate system where the binocular camera is located based on the first position coordinate, including:
[0076] Step S201, obtaining a first unit vector of the Z axis of the first coordinate system based on the first position coordinates;
[0077] Step S202: using a preset transformation matrix, transforming the first unit vector into the second coordinate system to obtain a second unit vector;
[0078] Step S203, obtaining a third unit vector of the Z axis of the second coordinate system;
[0079] Step S204: Obtain the Z-axis angle according to the second unit vector and the third unit vector.
[0080] In one embodiment of the present application, the origin of the first coordinate system is the center point between the spherical markers on one side, the XY plane is the plane where the spherical markers are located, and the Z axis is perpendicular to the XY plane; the origin of the second coordinate system is the center point between the two cameras of the binocular camera, the Y axis is the baseline of the two cameras, the X axis is perpendicular to the baseline and perpendicular to the orientation of the two cameras, and the Z axis is perpendicular to the XY plane.
[0081] In one embodiment of the present application, the Z-axis angle is calculated according to the following formula:
[0082]
[0083] Wherein, θ is the Z-axis angle, (x1, y1, z1) is the third unit vector, and (x2, y2, z2) is the second unit vector.
[0084] The surgical navigation positioning method provided in the embodiment of the present application obtains the first unit vector of the Z axis of the first coordinate system based on the first position coordinate, converts it to the second coordinate system and determines the Z axis angle, thereby ensuring that the obtained Z axis angle is obtained by real-time detection and calculation, thereby improving the accuracy of positioning.
[0085] The present application also provides an electronic device, such as Figure 5 As shown, it includes a processor 501 , a communication interface 502 , a memory 503 and a communication bus 504 , wherein the processor 501 , the communication interface 502 and the memory 503 communicate with each other via the communication bus 504 .
[0086] Memory 503, used for storing computer programs;
[0087] The processor 501 is configured to implement any of the above-mentioned surgical navigation and positioning methods when executing the program stored in the memory 503 .
[0088] The communication bus mentioned in the electronic device mentioned above may be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus. This communication bus can be divided into an address bus, a data bus, a control bus, etc. For ease of illustration, only one thick line is used in the figure, but this does not mean that there is only one bus or only one type of bus.
[0089] The communication interface is used for communication between the above electronic device and other devices.
[0090] The memory may include random access memory (RAM) or non-volatile memory (NVM), such as at least one disk storage. Alternatively, the memory may be at least one storage device located away from the processor.
[0091] The above-mentioned processor can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it can also be a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, and discrete hardware components.
[0092] In another embodiment provided in the present application, a computer-readable storage medium is further provided, wherein a computer program is stored in the computer-readable storage medium, and when the computer program is executed by a processor, the steps of any of the above-mentioned surgical navigation positioning methods are implemented.
[0093] In another embodiment provided by the present application, a computer program product including instructions is also provided, which, when executed on a computer, enables the computer to execute any one of the surgical navigation and positioning methods in the above embodiments.
[0094] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When software is used for implementation, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function described in the embodiment of the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from a website, computer, server or data center to another website, computer, server or data center via a wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) method. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that includes one or more available media integrations. The available medium can be a magnetic medium (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid-state drive (SSD)).
[0095] It should be noted that, in this document, relational terms such as first and second, etc., are used only to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply the existence of any such actual relationship or order between these entities or operations. Moreover, the terms "comprises," "comprising," or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article, or device comprising a series of elements includes not only those elements, but also other elements not explicitly listed, or elements inherent to such process, method, article, or device. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of other identical elements in the process, method, article, or device comprising the element.
[0096] Each embodiment in this specification is described in a related manner. Similar portions between the embodiments can be referenced to each other. Each embodiment focuses on the differences from other embodiments. In particular, the method embodiment is generally similar to the method embodiment, so the description is relatively simple. For related portions, refer to the description of the method embodiment.
[0097] The above description is only a preferred embodiment of the present application and is not intended to limit the scope of protection of the present application. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of the present application are included in the scope of protection of the present application.
Claims
1. A surgical navigation and positioning system, characterized in that: include: A double-sided tracer, a robotic arm, a binocular camera, and a controller. The double-sided tracer is a two-sided spherical marker installed on both sides of the end of the robotic arm, each side including four of the spherical markers. The double-sided tracer is placed within the field of view of the binocular camera. The binocular camera is used to collect the first position coordinates of the double-sided tracer and send them to the controller; The controller is configured to determine, based on the first position coordinates, a Z-axis angle between a first coordinate system where the double-sided tracer is located and a second coordinate system where the binocular camera is located; and send an adjustment instruction to the robotic arm based on the Z-axis angle, wherein the adjustment instruction is configured to instruct the robotic arm to adjust its position until the Z axes of the first coordinate system and the second coordinate system are parallel; The robotic arm is used to drive the double-sided tracer to adjust its position according to the adjustment instruction.
2. The system according to claim 1, wherein: include: The controller is configured to obtain a first unit vector of the Z axis of the first coordinate system based on the first position coordinate, and convert the first unit vector to the second coordinate system using a preset transformation matrix to obtain a second unit vector; Obtain a third unit vector of the Z axis of the second coordinate system; The Z-axis angle is obtained according to the second unit vector and the third unit vector.
3. The system according to claim 1, wherein: The origin of the first coordinate system is the center point between the spherical markers on one side, the XY plane is the plane where the spherical markers are located, and the Z axis is perpendicular to the XY plane; the origin of the second coordinate system is the center point between the two cameras of the binocular camera, the Y axis is the baseline of the two cameras, the X axis is perpendicular to the baseline and perpendicular to the orientation of the two cameras, and the Z axis is perpendicular to the XY plane.
4. The system according to claim 2, wherein: The Z-axis angle is calculated according to the following formula: Wherein, θ is the Z-axis angle, (x1, y1, z1) is the third unit vector, and (x2, y2, z2) is the second unit vector.
5. A surgical navigation positioning method, characterized in that: The surgical navigation and positioning system according to any one of claims 1 to 4, wherein the method comprises: Using a binocular camera to collect first position coordinates of a double-sided tracer, wherein the double-sided tracer is a two-sided spherical marker mounted on both sides of the end of the robotic arm, each side including four spherical markers, and the double-sided tracer is placed within the field of view of the binocular camera; Based on the first position coordinates, determining a Z-axis angle between a first coordinate system where the double-sided tracer is located and a second coordinate system where the binocular camera is located; An adjustment instruction is sent to the robotic arm based on the Z-axis angle, so that the robotic arm drives the double-sided tracer to adjust its position according to the adjustment instruction, wherein the adjustment instruction is used to instruct the robotic arm to adjust its position until the Z axes of the first coordinate system and the second coordinate system are parallel.
6. The method according to claim 5, characterized in that The determining, based on the first position coordinates, a Z-axis angle between a first coordinate system where the double-sided tracer is located and a second coordinate system where the binocular camera is located includes: Obtaining a first unit vector of the Z axis of the first coordinate system based on the first position coordinate; Using a preset transformation matrix, transform the first unit vector to the second coordinate system to obtain a second unit vector; Obtain a third unit vector of the Z axis of the second coordinate system; The Z-axis angle is obtained according to the second unit vector and the third unit vector.
7. The method according to claim 6, characterized in that The origin of the first coordinate system is the center point between the spherical markers on one side, the XY plane is the plane where the spherical markers are located, and the Z axis is perpendicular to the XY plane; the origin of the second coordinate system is the center point between the two cameras of the binocular camera, the Y axis is the baseline of the two cameras, the X axis is perpendicular to the baseline and perpendicular to the orientation of the two cameras, and the Z axis is perpendicular to the XY plane.
8. The method according to claim 7, characterized in that The Z-axis angle is calculated according to the following formula: Wherein, θ is the Z-axis angle, (x1, y1, z1) is the third unit vector, and (x2, y2, z2) is the second unit vector.
9. An electronic device, characterized in that: It includes a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory communicate with each other via the communication bus; Memory for storing computer programs; A processor, configured to implement the method steps described in any one of claims 5 to 8 when executing a program stored in a memory.
10. A computer-readable storage medium, characterized in that The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the method steps described in any one of claims 5 to 8 are implemented.
Citation Information
Patent Citations
Hand-eye calibration method and device based on computer vision and storage medium
CN112022355A
Surgical navigation positioning method and device, electronic equipment and medium
CN116473677A