An automatic registration method, a surgical navigation system, a surgical robot system
By automatically acquiring and pairing registration markers in the surgical navigation system, and calculating the transformation matrix and error, the tedious problem of bone screw location acquisition is solved, achieving a more efficient and accurate registration process and reducing surgical time.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-12-07
- Publication Date
- 2026-03-31
AI Technical Summary
The existing technology involves cumbersome bone screw location acquisition, which makes the registration process of the surgical navigation system slow and time-consuming.
By acquiring medical image models and registration markers in the world coordinate system, pairing is performed using multiple possibilities, the transformation matrix and registration marker error are calculated, the correct point pair pairing relationship is automatically determined, and the transformation matrix is optimized to improve registration accuracy.
The registration process is made easier, less time-consuming, and less prone to mismatches. It also improves registration accuracy and alerts doctors to large error points, thus enhancing surgical precision.
Smart Images

Figure CN117481813B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of medical devices, and more particularly to an automatic registration method, a surgical navigation system, and a surgical robot system. Background Technology
[0002] Surgical navigation accurately correlates a patient's preoperative or intraoperative imaging data with the actual tissue structure of the patient, assists in tracking the position of surgical instruments during surgery, updates the position of surgical instruments on the patient's medical images, or maps surgical plans to real space, providing doctors with location information guidance, making surgery faster, more precise, and safer.
[0003] Registration is the process of establishing a conversion relationship between the real space where the surgical navigation system is located and the medical imaging space. Registration is the foundation for the operation of the surgical navigation system. Registration using bone screws is the most accurate registration method. Typically, a probe is used to sequentially select the spatial positions of at least three bone screws in the real space, and then they are registered with the corresponding bone screw models in the medical imaging model. This process usually assigns serial numbers to the bone screws in the medical imaging model, and then the position of each serial numbered bone screw in the model is collected in the real space. Therefore, during the registration process, the doctor needs to observe and compare the positions of the patient's bone screws and the model bone screws to ensure that the two correspond one-to-one. This method makes the registration process slow and time-consuming.
[0004] To solve or partially solve the above problems, this invention proposes an automatic registration method, a surgical navigation system, and a surgical robot system. Summary of the Invention
[0005] This invention provides an automatic registration method, a surgical navigation system, and a surgical robot system to address the shortcomings of existing technologies where acquiring bone screw positions is cumbersome, thereby improving registration efficiency.
[0006] The present invention provides an automatic registration method, comprising:
[0007] Obtain the numbers of m registration markers in a medical image model; where m ≥ 3 and m is an integer.
[0008] Obtain n registration marker points in the world coordinate system; where n≥3, and n is an integer;
[0009] From the registration points in the model coordinate system and the world coordinate system, select k points according to all possibilities for pairing, and calculate the transformation matrix and registration point error under each pairing relationship; where k = min(m, n);
[0010] The correct point pairing relationship is determined based on the registration mark point error under each pairing relationship.
[0011] According to an automatic registration method provided by the present invention, determining the correct point pair pairing relationship based on the registration marker point error under each pairing relationship includes:
[0012] The transformation matrix corresponding to the smallest registration mark error is determined as the first transformation matrix;
[0013] The point pairs used when calculating the minimum registration marker error are determined as the correct point pair pairings.
[0014] According to an automatic registration method provided by the present invention, determining the correct point pair pairing relationship based on the registration marker point error under each pairing relationship includes:
[0015] Based on the correct point pair pairing relationship, take p point pairs from the k point pairs to recalculate the transformation matrix, and calculate the registration mark point error of the k point pairs under the corresponding transformation matrix, where p traverses the interval [3, k-1].
[0016] The transformation matrix corresponding to the smallest registration marker error is determined as the second transformation matrix.
[0017] According to an automatic registration method provided by the present invention, determining the correct point pair pairing relationship based on the registration marker point error under each pairing relationship includes:
[0018] Based on the correct point pair pairing relationship, take p point pairs from k point pairs to recalculate the transformation matrix, and calculate the registration mark point error of the remaining (k-1) point pairs after removing the point pair with the largest error under the corresponding transformation matrix, where p traverses the interval [3, k-1].
[0019] The transformation matrix corresponding to the smallest registration marker error is determined as the final transformation matrix.
[0020] An automatic registration method provided by the present invention further includes:
[0021] The pair of points with the largest error and / or its error value will be displayed on a screen.
[0022] According to an automatic registration method provided by the present invention, the numbers of m registration markers in a medical image model are obtained; where m≥3 and m is an integer.
[0023] Obtain n registration marker points in the world coordinate system; where n≥3, and n is an integer;
[0024] From the registered marker points in the model coordinate system and the world coordinate system, select k points according to all possibilities for pairing, and calculate the transformation matrix and registered marker point error under each pairing relationship; 3≤k<min(m,n);
[0025] The correct point pairing relationship is determined based on the registration mark point error under each pairing relationship.
[0026] According to an automatic registration method provided by the present invention, determining the correct point pair pairing relationship based on the registration marker point error under each pairing relationship includes:
[0027] The transformation matrix corresponding to the smallest registration mark error is determined as the third transformation matrix;
[0028] The correct point pairing relationship is determined based on the third transformation matrix.
[0029] According to an automatic registration method provided by the present invention, after determining the correct point pair pairing relationship based on the registration marker point error under each pairing relationship, the method further includes:
[0030] Based on the correct point pairing relationship, the fourth transformation matrix of min(m, n) point pairs is recalculated.
[0031] According to an automatic registration method provided by the present invention, after determining the correct point pair pairing relationship based on the registration marker point error under each pairing relationship, the method further includes:
[0032] Based on the correct point pairing relationship, calculate the registration mark error of p groups of point pairs; where p traverses 3≤p≤min(m,n);
[0033] The transformation matrix corresponding to the smallest registration mark error in the above traversal process is determined as the fifth transformation matrix.
[0034] An automatic registration method provided by the present invention further includes:
[0035] Select at least one feature point in the world coordinate system that was not used for registration to verify the accuracy of the registration process.
[0036] An automatic registration method provided by the present invention further includes:
[0037] Identify the pair of points with the largest errors and display a notification via a display device.
[0038] According to an automatic registration method provided by the present invention, after obtaining n registration marker points in the world coordinate system, the method further includes:
[0039] Determine whether the n registered marker points in the world coordinate system are ordered points corresponding to each registered marker point in the medical image model;
[0040] If so, then according to the order of the ordered points, directly pair the n registered marker points in the world coordinate system with the m registered marker points in the medical image model;
[0041] If not, then perform the step of selecting k registration markers from the model coordinate system and the world coordinate system respectively for pairing, and calculating the transformation matrix and registration marker error under each pairing relationship.
[0042] According to an automatic registration method provided by the present invention, the step of selecting k registration markers from the model coordinate system and the world coordinate system according to all possibilities includes:
[0043] Add state variables to each registered marker point in the model coordinate system or world coordinate system; the state variables represent the "selected" state or the "unselected" state.
[0044] Generate an initial state sequence; wherein one end of the initial state sequence consists of k consecutive "selected" states, and the rest are "unselected" states;
[0045] Based on the initial state sequence, multiple state sequences are generated by binary shifting, and each state sequence corresponds to a method of selecting k registration marker points.
[0046] According to an automatic registration method provided by the present invention, the binary shift includes:
[0047] Step 1: Based on the initial state sequence, determine variable i, where i is the position of the last occurrence of "1" in the initial state sequence;
[0048] Step 2: In the first i+1 positions, gradually swap the positions of the left neighbor "1" and the right neighbor "0" to obtain a series of state sequences, thus completing this round of shifting;
[0049] Step 3: Shift all the "1"s in the first i positions to the left, and gradually shift the "1"s to the right of the i-th position to the right to obtain a series of state sequences;
[0050] Step 4: Based on each state sequence obtained in Step 3, in the first i positions, gradually swap the positions of the left neighboring "1" and the right neighboring "0" to obtain a series of state sequences;
[0051] Step 5: Decrease the value of variable i by 1, and repeat steps 3 and 4 until i = 1.
[0052] According to an automatic registration method provided by the present invention, k registration markers are selected from the model coordinate system and the world coordinate system according to all possibilities for pairing, including:
[0053] The order of k registered marker points in one coordinate system is fixed, the k registered marker points in another coordinate system are sorted, and the pairing relationship between the k registered marker points in the model coordinate system and the world coordinate system is determined based on each sorting result.
[0054] The above sorting process is implemented in the following way:
[0055] The initial sorting is obtained by sorting the selected k registration markers according to their numbers.
[0056] By using two pointers to gradually adjust the initial sort, a series of sorts are obtained.
[0057] According to an automatic registration method provided by the present invention, the initial sorting is in a sequential state, and the step of gradually adjusting the initial sorting using two pointers includes: gradually increasing the adjustment range from the end of the initially sorted sequence, and gradually adjusting the sequence within the current adjustment range from sequential to reverse order using two pointers;
[0058] Alternatively, if the initial sorting is in reverse order, the step of gradually adjusting the initial sorting using two pointers includes: gradually increasing the adjustment range from the end of the initially sorted sequence, and gradually adjusting the sequence within the current adjustment range from reverse order to sequential order using two pointers.
[0059] The present invention also provides a surgical navigation system, a probe, and a host computer;
[0060] The probe is used to assist in acquiring n registered marker points in the world coordinate system;
[0061] The host is configured to perform the automatic registration method described in any of the preceding descriptions.
[0062] The present invention also provides a surgical robot system, including: the aforementioned surgical navigation system, and a robotic arm;
[0063] The probe is detachably mounted to the robotic arm.
[0064] The present invention also provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement all or part of the steps of any of the aforementioned automatic registration methods.
[0065] The present invention also provides a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements all or part of the steps of any of the aforementioned automatic registration methods.
[0066] This invention provides an automatic registration method, a surgical navigation system, and a surgical robot system.
[0067] 1. Doctors do not need to collect the position of bone screws one by one with the registration markers in the medical model, which reduces the difficulty of the registration process, reduces the time spent on registration in real space, saves doctors' energy, and shortens the operation time.
[0068] 2. Automatic pairing is performed using as many registered marker points as possible in the model coordinate system and the world coordinate system. The transformation matrix and the corresponding registered marker point error are calculated. By comparing the registered marker point error, the correct point pairing relationship is automatically determined, reducing the risk of mispairing caused by the symmetrical distribution of registered marker points.
[0069] 3. Based on the aforementioned correct pairing relationship, calculations are performed using only a subset of point pairs, eliminating errors caused by some registration marker points, optimizing the transformation matrix, and resulting in higher registration accuracy;
[0070] 4. By using binary shifting and two pointers, the efficiency of data processing in the host can be improved while avoiding omissions or repetitions of some pairing cases;
[0071] 5. It offers both ordered and random registration methods to meet the diverse needs of doctors.
[0072] 6. It can provide alerts for markers with large registration errors, thus improving surgical accuracy. Attached Figure Description
[0073] To more clearly illustrate the technical solutions in this invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of this invention. For those skilled in the art, other drawings can be obtained from these drawings without creative effort.
[0074] Figure 1 This is a flowchart illustrating an automatic registration method according to the present invention;
[0075] Figure 2 This is one of the structural schematic diagrams of a surgical navigation system provided by the present invention;
[0076] Figure 3 This is a second schematic diagram of the structure of a surgical navigation system provided by the present invention;
[0077] Figure 4 This is a schematic diagram of the structure of a surgical robot system provided by the present invention;
[0078] Figure 5 This is a schematic diagram of the structure of the electronic device provided by the present invention. Detailed Implementation
[0079] To make the objectives, technical solutions, and advantages of this invention clearer, the technical solutions of this invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of this invention. All other embodiments obtained by those skilled in the art based on the embodiments of this invention without creative effort are within the scope of protection of this invention.
[0080] The following is combined with Figure 1-5 The present invention provides an automatic registration method, a surgical navigation system, and a surgical robot system.
[0081] Figure 1 This is a flowchart illustrating an automatic registration method according to the present invention. The method is executed on the host machine, such as... Figure 1 As shown, the method includes:
[0082] S11. Obtain the numbers of m registration markers in the medical image model; where m ≥ 3, and m is an integer.
[0083] Specifically, registration markers can take any form. For example, markers may be placed on the patient before surgery, and these markers can be visualized under medical imaging (e.g., marker nails implanted in the patient's head or spine, or imaging markers affixed to the patient's skin). Registration markers can also be specific points on the patient's body, such as the corners of the eyes, the tip of the nose, or the corners of the mouth. Of course, registration markers can also be provided by other auxiliary registration devices. The auxiliary registration device is fixed in relative position to the patient and has registration markers on it. This application does not limit the form of the registration markers. The number of registration markers can be 3, 4, 5, 6, etc.
[0084] Medical images, such as MRI, functional MRI, CT scans, and X-rays, are collected from the patient before or during surgery. Based on these images, a three-dimensional model, known as a medical image model, can be created. From this model, the spatial locations of m registration markers can be extracted. For example, for m bone screws, the 3D coordinates of the screw head (top) can be extracted; similarly, for m contrast-enhancing spheres, the 3D coordinates of their center points can be extracted. After extraction, these m registration markers need to be numbered for management and further matched and registered with registration markers acquired in real space. The medical image model must contain at least three registration markers to ensure registration accuracy.
[0085] It is understandable that the aforementioned medical image model can be built based on real-time input medical images, or it can be pre-built and directly called upon. Similarly, the numbers of the m registration markers can be numbers extracted and arranged in real time, or numbers extracted or added in advance from the medical image model.
[0086] S12. Obtain n registration marker points in the world coordinate system; where n≥3, and n is an integer.
[0087] Specifically, the world coordinate system here is a coordinate system that can describe real space. The world coordinate system can be a coordinate system established based on navigation equipment (such as optical navigation equipment, electromagnetic navigation equipment), robotic arms, etc., or it can be a coordinate system established based on other equipment and objects in space, such as the coordinate system of a hospital bed, the coordinate system of an operating table, etc. The three-dimensional coordinates of the n registered marker points collected can be transformed into the coordinate system of a hospital bed, operating table, etc. for description.
[0088] The process of obtaining n registration markers in the world coordinate system, or in other words, obtaining the spatial positions (or three-dimensional coordinates) of n registration markers, can be exemplified by: a doctor manipulating a probe to select a registration marker, a tracking device tracking the probe's spatial position and transmitting the data to the host computer; or, for example, installing or integrating a probe into a robotic arm, where the host computer processes the robotic arm's posture and the connection between the robotic arm and the probe to obtain the registration markers' three-dimensional coordinates in the navigation world coordinate system; or, for yet another example, installing or integrating a probe into a robotic arm, dragging the robotic arm to select a registration marker, and then tracking the probe's position. The number of registration markers can be 3, 4, 5, 6, etc.
[0089] S13. Select k registration points from the model coordinate system and the world coordinate system according to all possibilities for pairing, and calculate the transformation matrix and registration point error under each pairing relationship; where, ;
[0090] Since the n registered markers in the world coordinate system are collected in an arbitrary order, their pairing relationship with the m registered markers in the model coordinate system is uncertain. The host computer needs to calculate and determine the accurate pairing relationship. Specifically, if m > n, then n registered markers from the medical model are selected according to all possibilities (i.e., multiple ways to select n points) and paired arbitrarily with the n registered markers in the world coordinate system; if m < n, then m registered markers from the world coordinate system are selected according to all possibilities (i.e., multiple ways to select m points) and paired arbitrarily with the m registered markers in the medical model; if m = n, then the m registered markers in the medical model are paired arbitrarily with the m registered markers in the world coordinate system. In other words, as many registered markers as possible in both the world and model coordinate systems are selected and paired in multiple ways to avoid mispairing caused by using only a few points. For example, a few points form an approximately symmetrical figure, in which case there are two small transformation matrix solutions, which can easily lead to mispairing. When as many points as possible are used (i.e., k = min(m, n)), mispairing can be effectively avoided.
[0091] For each pairing relationship, calculate its corresponding transformation matrix. The transformation matrix transforms a set of registered marker points in one coordinate system to another, maximizing the matching degree between the transformed set of registered marker points and those in the new coordinate system. Specifically, the transformation matrix can be calculated using methods such as quaternion method and SVD decomposition. The obtained transformation matrix minimizes the error of the registered marker points, which are used to describe the magnitude of the error between corresponding points after the transformation matrix. It is understood that the registered marker point error here refers to the error calculated for the selected k registered marker points.
[0092] S14. Determine the correct point pair pairing relationship based on the registration mark point error under each pairing relationship.
[0093] Specifically, for each pairing relationship, a corresponding registration mark error is calculated. The minimum registration mark error means the highest matching degree. At this time, the pairing relationship of min(m,n) pairs of points is the correct pairing relationship.
[0094] This embodiment utilizes as many registered marker points as possible in the model coordinate system and the world coordinate system for automatic pairing, calculates the transformation matrix and the corresponding registered marker point errors, and automatically determines the correct point pairing relationship by comparing the registered marker point errors, reducing the risk of mispairing caused by the symmetrical distribution of registered marker points; furthermore, when collecting registered marker points, it is not necessary to search for and collect marker points one by one with the registered marker points in the medical model, reducing the workload.
[0095] Based on any of the above embodiments, in one embodiment, determining the correct point pair pairing relationship based on the registration marker point error under each pairing relationship includes:
[0096] The transformation matrix corresponding to the smallest registration mark error is determined as the first transformation matrix;
[0097] The point pairs used when calculating the minimum registration marker error are determined as the correct point pair pairings.
[0098] Specifically, the smaller the registration mark error, the higher the overlap of the registration mark points in the two coordinate systems after the transformation matrix. When calculating the pairing relationship of the min(m,n) pairs of points, various pairing situations were tried. For each pairing situation, the transformation matrix and the registration mark error were calculated. The transformation matrix corresponding to the smallest registration mark error was determined as the first transformation matrix. The pairing relationship used when calculating the smallest registration mark error was determined as the correct pairing relationship.
[0099] Based on any of the above embodiments, in one embodiment, determining the correct point pair pairing relationship according to the registration marker point error under each pairing relationship includes:
[0100] Based on the correct point pair pairing relationship, take p point pairs from the k point pairs to recalculate the transformation matrix, and calculate the registration mark point error of the k point pairs under the corresponding transformation matrix, where p traverses the interval [3, k-1].
[0101] The transformation matrix corresponding to the smallest registration marker error is determined as the second transformation matrix.
[0102] Specifically, imaging errors can lead to inaccurate positioning of registration markers in medical models. The accuracy of the acquisition equipment and the acquisition operation can also cause inaccurate positioning of registration markers acquired in the world coordinate system, thus affecting the accuracy of the transformation matrix (i.e., the registration relationship). This implementation, after determining the correct point pair pairings, uses a subset of point pairs to calculate the transformation matrix and registration marker errors, and then selects the "point pair combination" with the smallest registration marker error. Its corresponding transformation matrix is the second transformation matrix, thus avoiding the impact of some registration markers with large errors on registration accuracy.
[0103] Based on any of the above embodiments, in one embodiment, determining the correct point pair pairing relationship according to the registration marker point error under each pairing relationship includes:
[0104] Based on the correct point pair pairing relationship, take p point pairs from k point pairs to recalculate the transformation matrix, and calculate the registration mark point error of the remaining (k-1) point pairs after removing the point pair with the largest error under the corresponding transformation matrix, where p traverses the interval [3, k-1].
[0105] The transformation matrix corresponding to the smallest registration marker error is determined as the final transformation matrix.
[0106] Specifically, this implementation excludes the pair of points with the largest errors when recalculating the registration marker point error, further improving registration accuracy.
[0107] Based on the previous embodiment, the method further includes: displaying the pair of points with the largest error and / or its error value through a display device.
[0108] Specifically, in this embodiment, the pair of points with the largest error will also be displayed through a display device. For example, the serial number of the pair of points with the largest error will be displayed, or the pair of points with the largest error will be displayed in a preset color. The specific error value can also be displayed so that doctors can understand the registration accuracy.
[0109] Based on any of the above embodiments, in one embodiment, the registration marker error is obtained by calculating the mean distance.
[0110] Specifically, for each pair of corresponding points, after transforming to the same coordinate system through a transformation matrix, the error of the registered marker point is obtained by calculating the mean distance. The distance here can be Euclidean distance or other types of distance, such as the mean square of Euclidean distance.
[0111] Based on any of the above embodiments, in one embodiment, after obtaining n registration marker points in the world coordinate system, the method further includes:
[0112] Determine whether the n registered marker points in the world coordinate system are ordered points corresponding to each registered marker point in the medical image model;
[0113] If so, then according to the order of the ordered points, directly pair the n registered marker points in the world coordinate system with the m registered marker points in the medical image model;
[0114] If not, then perform the step of selecting k registration markers from the model coordinate system and the world coordinate system respectively for pairing, and calculating the transformation matrix and registration marker error under each pairing relationship.
[0115] Specifically, this embodiment supports both "ordered registration" and "unordered registration." Doctors can either systematically collect the positions of registration markers in space based on the registration markers in the model coordinate system, or arbitrarily collect their positions. For example, a user can observe the software cross-section displayed on the display device, rotate the device to either "ordered registration mode" or "unordered registration mode," and then collect the positions of the registration markers according to the corresponding registration mode. The host computer can determine whether the n collected registration markers in the world coordinate system are ordered or unordered based on the corresponding field records. If they are ordered, they can be directly paired with the registration markers in the medical image model. If they are not ordered, the aforementioned steps of selecting k points for pairing and calculating the registration marker error need to be performed.
[0116] This embodiment supports both ordered and unordered point registration, meeting the diverse needs of users.
[0117] Based on the above embodiments, in one embodiment, the step of selecting k registration markers from the model coordinate system and the world coordinate system according to all possibilities includes:
[0118] Add state variables to each registered marker point in the model coordinate system or world coordinate system; the state variables represent the "selected" state or the "unselected" state.
[0119] Generate an initial state sequence; wherein one end of the initial state sequence consists of k consecutive "selected" states, and the rest are "unselected" states;
[0120] Based on the initial state sequence, multiple state sequences are generated by binary shifting, and each state sequence corresponds to a method of selecting k registration marker points.
[0121] Specifically, when selecting k registration markers from the model coordinate system, state variables can be added to each of the m registration markers in the model coordinate system to record their "selected" or "unselected" state. For example, a state variable value of 1 indicates that the registration marker appears in the "combination," and a state variable value of 0 indicates that the registration marker does not appear in the "combination." An initial state sequence is generated for the m registration markers, for example, generating an initial state sequence where the first k are 1 and the next nk are 0, or an initial state sequence where the first nk are 0 and the next k are 1. Then, based on the initial state sequence, multiple state sequences are generated through binary shifting. Each state sequence corresponds to a method for selecting k registration markers. Similarly, k registration markers can be selected from n registration markers in the world coordinate system using the same method.
[0122] This embodiment generates multiple state sequences quickly, completely, and without repetition by adding state variables, generating an initial state sequence, and using binary shifting. The above process is convenient for host processing and improves data processing efficiency.
[0123] Based on any of the above embodiments, in one embodiment, the binary shift includes;
[0124] Step 1: Based on the initial state sequence, determine variable i, where i is the position of the last occurrence of "1" in the initial state sequence;
[0125] Step 2: In the first i+1 positions, gradually swap the positions of the left neighbor "1" and the right neighbor "0" to obtain a series of state sequences, thus completing this round of shifting;
[0126] Step 3: Shift all the "1"s in the first i positions to the left, and gradually shift the "1"s to the right of the i-th position to the right to obtain a series of state sequences;
[0127] Step 4: Based on each state sequence obtained in Step 3, in the first i positions, gradually swap the positions of the left neighboring "1" and the right neighboring "0" to obtain a series of state sequences;
[0128] Decrease the value of variable i by 1, and repeat steps 3 and 4 until i = 1.
[0129] For ease of understanding, the above process is described based on the initial state sequence of "the first k are 1s and the last nk are 0s". It can be understood that binary shifting can also be performed based on the initial state sequence of "the first nk are 0s and the last k are 1s".
[0130] The following specific example illustrates the binary shift process:
[0131] In this embodiment, there are 7 registered marker points in the model coordinate system, and 5 registered marker points need to be selected and paired with 5 registered marker points in the world coordinate system. State variables are set for each of the 7 registered marker points: "1" represents that the registered marker point is selected in the "sequence combination", and "0" represents that the registered marker point is not selected in the "sequence combination".
[0132] The initial state sequence is: 1 1 1 1 1 0 0
[0134] Step 1: Determine that the fifth position in the initial state sequence is the position where the last "1" appears, i.e., i = 5.
[0135] Step 2: Gradually swap the left-neighboring "1" and right-neighboring "0" in the first 6 bits (i.e., the first i+1 bits) of the initial state sequence to obtain multiple sequences:
[0136]
[0137] Step 3: Shift all the "1"s in the first 5 bits (i.e., the first i bits) to the left, and gradually shift the "1"s to the right of the 5th bit (i.e., the first i bits) to the right, resulting in a series of state sequences: 1 1 1 1 0 0 1
[0139] In this embodiment, there are only two positional sequences to the right of the 5th position, so step 3 only yields one sequence.
[0140] Step 4: Based on the sequence in Step 3, gradually swap the left neighbor "1" and the right neighbor "0" in the first 5 bits to obtain a series of state sequences.
[0141]
[0142] Step 4: Decrement the value of i by one, i = 4, and continue executing steps 3 and 4 until i = 1, resulting in a series of state sequences:
[0143]
[0144]
[0145] This embodiment generates multiple state sequences quickly, completely, and without repetition through binary shifting. The above process is convenient for host processing and improves data processing efficiency.
[0146] Based on any of the above embodiments, in one embodiment, k registration markers are selected from the model coordinate system and the world coordinate system according to all possibilities for pairing, including:
[0147] The order of k registered marker points in one of the model coordinate system and the world coordinate system is fixed, and the k registered marker points in the other coordinate system are sorted. The pairing relationship between the k registered marker points in the model coordinate system and the world coordinate system is determined based on each sorting result.
[0148] Specifically, the order of the selected registration markers in the world coordinate system can be fixed (e.g., according to the collection order of the registration markers, or randomly fixed to a certain order). Then, the k selected registration markers from the m registration markers in the model coordinate system are sorted, resulting in multiple sorting results. Based on each sorting result, the k registration markers in the model coordinate system are sequentially mapped to the k registration markers in that fixed order, thus determining the pairing relationship of the k registration markers. Alternatively, the order of the k selected registration markers in the model coordinate system can be fixed (e.g., according to their numbering order, or randomly fixed to a certain order). Then, the k selected registration markers in the world coordinate system are sorted, resulting in multiple sorting results. Based on each sorting result, the k registration markers in the world coordinate system are sequentially mapped to the k registration markers in that fixed order.
[0149] Based on the above embodiments, in one embodiment, the sorting process is implemented in the following manner:
[0150] The initial sorting is obtained by sorting the selected k registration markers according to their numbers.
[0151] By using two pointers to gradually adjust the initial sort, a series of sorts are obtained.
[0152] Specifically, based on the initial sorting, the next sorting can be quickly generated by directly swapping the elements that need to be swapped in the sequence using two pointers. This process does not require allocating new memory space, and can generate all sortings without omission or duplication while saving storage and computing resources.
[0153] Based on any of the above embodiments, in one embodiment, the initial sorting is in a sequential state, and the step of gradually adjusting the initial sorting using two pointers includes:
[0154] Starting from the end of the initially sorted sequence, the adjustment range is gradually increased, and the sequence within the current adjustment range is gradually adjusted from sequential to reversed using two pointers.
[0155] Specifically, in this embodiment, the initial sorting is in sequential state, assuming that the m registration marker points in the model coordinate system are A1 to A2. m If k = 6, one way to select 6 registration points from m registration points is A1, A3, A4, A5, A7, A8, and their initial order (sequential state) is as follows: 1 3 4 5 7 8
[0157] First, adjust the last two characters of the initial sequence to reverse the order, resulting in: 1 3 4 5 8 7
[0159] Then, the adjustment range is expanded to the last 3 characters of the initial sequence, and the sequential "578" is gradually adjusted to the reversed "875", resulting in:
[0160]
[0161] Then, the adjustment range is gradually expanded to the last 4, 5, and 6 positions of the initial sequence. After each expansion, the first element in the adjustment range is swapped with the element to its right that is greater than the first element. The order is then gradually reversed to the right of the first element. This process is repeated until the entire initial sequence is reversed.
[0162] In the process of adjusting the position of interactive elements, two pointers are used to efficiently search for the two elements to be swapped and swap them directly. By using two pointers, multiple sequences with increasing lexicographical order can be output step by step. This process can generate all sorted sequences without omission or repetition, and no memory space needs to be re-allocated each time a new sorted sequence is generated. This process can save storage and computing resources and speed up processing efficiency.
[0163] Understandably, referring to the example above, the initial sort can also be in reverse order. The initial sort in reverse order can be adjusted by gradually increasing the adjustment range from the end of the initially sorted sequence. By using two pointers, the sequence in the current adjustment range can be gradually adjusted from reverse order to order, resulting in multiple sorts.
[0164] This invention also provides another automatic registration method (the range of values for k is different from the previous automatic registration method), which can be used in conjunction with the automatic registration method provided above.
[0165] Still refer to Figure 1 Another automatic registration method provided by the present invention includes:
[0166] S11. Obtain the numbers of m registration markers in the medical image model; where m ≥ 3, and m is an integer.
[0167] Specifically, registration markers can take any form. For example, markers may be placed on the patient before surgery, and these markers can be visualized under medical imaging (e.g., marker nails implanted in the patient's head or spine, or imaging markers affixed to the patient's skin). Registration markers can also be specific points on the patient's body, such as the corners of the eyes, the tip of the nose, or the corners of the mouth. Of course, registration markers can also be provided by other auxiliary registration devices. The auxiliary registration device is fixed in relative position to the patient and has registration markers on it. This application does not limit the form of the registration markers. The number of registration markers can be 3, 4, 5, 6, etc.
[0168] Medical images, such as MRI, functional MRI, CT scans, and X-rays, are collected from the patient before or during surgery. Based on these images, a three-dimensional model, known as a medical image model, can be created. From this model, the spatial locations of m registration markers can be extracted. For example, for m bone screws, the 3D coordinates of the screw head (top) can be extracted; similarly, for m contrast-enhancing spheres, the 3D coordinates of their center points can be extracted. After extraction, these m registration markers need to be numbered for management and further matched and registered with registration markers acquired in real space. The medical image model must contain at least three registration markers to ensure registration accuracy.
[0169] It is understandable that the aforementioned medical image model can be built based on real-time input medical images, or it can be pre-built and directly called upon. Similarly, the numbers of the m registration markers can be numbers extracted and arranged in real time, or numbers extracted or added in advance from the medical image model.
[0170] S12. Obtain n registration marker points in the world coordinate system; where n≥3, and n is an integer.
[0171] Specifically, the world coordinate system here is a coordinate system that can describe real space. The world coordinate system can be a coordinate system established based on navigation equipment (such as optical navigation equipment, electromagnetic navigation equipment), robotic arms, etc., or it can be a coordinate system established based on other equipment and objects in space, such as the coordinate system of a hospital bed, the coordinate system of an operating table, etc. It can also transform the three-dimensional coordinates of the n registered marker points collected to the coordinate system of a hospital bed, operating table, etc. for description.
[0172] The process of obtaining n registration markers in the world coordinate system, or in other words, obtaining the spatial positions (or three-dimensional coordinates) of n registration markers, can be exemplified by: a doctor manipulating a probe to select a registration marker, a tracking device tracking the probe's spatial position and transmitting the data to the host computer; or, for example, installing or integrating a probe into a robotic arm, where the host computer processes the robotic arm's posture and the connection between the robotic arm and the probe to obtain the registration markers' three-dimensional coordinates in the navigation world coordinate system; or, for yet another example, installing or integrating a probe into a robotic arm, dragging the robotic arm to select a registration marker, and then tracking the probe's position. The number of registration markers can be 3, 4, 5, 6, etc.
[0173] S13. Select k registration points from the model coordinate system and the world coordinate system according to all possibilities and pair them up. Calculate the transformation matrix and registration point error under each pairing relationship; 3≤k<min(m,n);
[0174] Since the n registered markers in the world coordinate system can be collected in any order, their pairing relationship with the m registered markers in the model coordinate system is uncertain, requiring the host computer to determine the accurate pairing relationship through calculation. Specifically, k registered markers are selected from the m registered markers in the model coordinate system and the n registered markers in the world coordinate system according to all possibilities for pairing, where 3 ≤ k < min(m, n), and k can be selected within this range without iterating through the range 3 ≤ k < min(m, n). In other words, k registered markers in the world coordinate system and k registered markers in the model coordinate system are selected in multiple ways (i.e., multiple ways to select k points), and then paired in multiple ways. This reduces the number of point pairs requiring matrix and registered marker error calculations each time pairing is performed, lowers the computational load of calculating the transformation matrix and registered marker error, and improves processing efficiency.
[0175] For each pairing relationship, calculate its corresponding transformation matrix. The transformation matrix transforms a set of registered marker points in one coordinate system to another, maximizing the matching degree between the transformed set of registered marker points and those in the new coordinate system. Specifically, the transformation matrix can be calculated using methods such as quaternion method and SVD decomposition. The obtained transformation matrix minimizes the error of the registered marker points, which are used to describe the magnitude of the error between corresponding points after the transformation matrix. It is understood that the registered marker point error here refers to the error calculated for the selected k registered marker points.
[0176] S14. Determine the correct point pair pairing relationship based on the registration mark point error under each pairing relationship.
[0177] Specifically, for each pairing relationship, a corresponding registration mark error is calculated. The minimum registration mark error means the highest matching degree. At this time, the pairing relationship of min(m,n) pairs of points is the correct pairing relationship.
[0178] In this embodiment, some registration markers are selected and paired in the model coordinate system and the world coordinate system, the transformation matrix and the corresponding registration marker error are calculated, and the correct point pairing relationship is automatically determined by comparing the registration marker error. This eliminates the need to search for and collect markers one by one with the registration markers in the medical model, reducing the workload of doctors and improving the efficiency of the registration operation.
[0179] Based on any of the above embodiments, in one embodiment, determining the correct point pair pairing relationship based on the registration marker point error under each pairing relationship includes:
[0180] The transformation matrix corresponding to the smallest registration mark error is determined as the third transformation matrix;
[0181] The correct point pairing relationship is determined based on the third transformation matrix.
[0182] In this embodiment, by selecting a subset of registration marker points for rapid matching, possible transformation matrices and corresponding registration marker point errors can be efficiently determined. The transformation matrix that minimizes the registration marker point error among these possible transformation matrices is the third transformation matrix. Based on this third transformation matrix, registration marker points in two coordinate systems are paired, and the closest point is the paired point. It can be understood that after pairing, min(m, n) pairs of points can be obtained. For example, if min(m, n) = 3, then the third transformation matrix can be directly used as the transformation matrix output during the registration process.
[0183] Based on any of the above embodiments, in one embodiment, after determining the correct point pair pairing relationship according to the registration marker point error under each pairing relationship, the method further includes:
[0184] Based on the correct point pairing relationship, the fourth transformation matrix of min(m, n) point pairs is recalculated.
[0185] For example, based on the correct pairing relationships, the transformation matrix (i.e., the fourth transformation matrix) of the min(m, n) point pairs and the registration mark error are recalculated using the ICP algorithm and the quaternion method. In this embodiment, the third transformation matrix is first determined based on a portion of the registration mark points, and then the pairing relationships of all registration mark points are determined based on the third transformation matrix. On this basis, the transformation matrix is further calculated more accurately using more point pairs (i.e., the fourth transformation matrix with smaller global error is obtained).
[0186] Based on any of the above embodiments, in one embodiment, after determining the correct point pair pairing relationship according to the registration marker point error under each pairing relationship, the method further includes:
[0187] Based on the correct point pairing relationship, calculate the registration mark error of p groups of point pairs; where p traverses 3≤p≤min(m,n);
[0188] The transformation matrix corresponding to the smallest registration mark error in the above traversal process is determined as the fifth transformation matrix.
[0189] In this embodiment, after determining the pairing relationship of point pairs based on some points, an arbitrary number of "point pairs" are selected to calculate their registration mark point error. The smallest registration mark point error under all "point pair selection methods" is found. The transformation matrix corresponding to the smallest registration mark error is the fifth transformation matrix. In this way, the influence of registration points with large errors on the calculation of transformation matrix is reduced, and a fifth transformation matrix with relatively small errors is obtained.
[0190] Based on any of the above embodiments, in one embodiment, the method further includes:
[0191] Select at least one feature point in the world coordinate system to verify the accuracy of the registration process.
[0192] Specifically, the feature points here can be features on the patient's body, such as the corners of the eyes and the tip of the nose. They can also be registration markers not used in calculating the transformation matrix. In other words, these registration markers are reserved during the recalculation of the transformation matrix. After the transformation matrix is calculated, the registration markers are unified with their corresponding points in the model coordinate system using the transformation matrix, and the error is calculated. This calculated error is then compared with a preset error threshold to verify the registration accuracy, or the error can be displayed to the user for evaluation.
[0193] In this embodiment, registration accuracy verification is performed by reserving registration marker points, which helps to improve surgical accuracy and reduce surgical risks.
[0194] Based on any of the above embodiments, in one embodiment, the method further includes:
[0195] Identify the pair of points with the largest errors and display a notification via a display device.
[0196] Specifically, the third / fourth / fifth transformation matrices mentioned above represent the transformation relationship from the model coordinate system to the world coordinate system. Based on this transformation relationship, the m registered marker points in the model coordinate system and the n registered marker points in the world coordinate system are transformed to the same coordinate system. The error of each point pair is calculated, and the point pair with the largest error is displayed on a display device to provide information prompts to the user and improve surgical accuracy. For example, the registered marker point with the largest error can be displayed in a preset color; or, (through the display device) the specific error data can be displayed next to the registered marker point with the largest error. When the doctor finds that the error at a certain point is large, appropriate measures can be taken, such as re-collecting the registered marker point or re-performing the registration process, to improve surgical accuracy.
[0197] In this embodiment, highlighting the registration marker point with the largest error helps improve surgical accuracy.
[0198] More embodiments of the automatic registration method described above, such as "determining ordered / unordered points in the world coordinate system" and "the method for selecting k registration marker points", can be found in an embodiment of the automatic registration method provided above, and will not be repeated here.
[0199] This invention also provides a surgical navigation system, which can be referred to in conjunction with the automatic registration method described above. Figure 2 This is one of the structural schematic diagrams of a surgical navigation system provided by the present invention, such as... Figure 2As shown, the surgical navigation system includes: probe 210 and main unit 220.
[0200] Probe 210 is used to assist in acquiring n registration marker points in the world coordinate system;
[0201] Host 220 is configured to perform any of the aforementioned automatic registration methods.
[0202] Specifically, probe 210 selects registration markers in the real space, and a tracking device or a device / structure connected to the probe determines the spatial position of the registration markers in the world coordinate system. Host 220 acquires n registration markers in the world coordinate system, processes the data, and completes the pairing of the registration markers in the world coordinate system with the markers in the model space. Furthermore, the host can also process the automatically determined pairing relationship to obtain the transformation relationship between the model coordinate system and the world coordinate system, completing the registration process.
[0203] The host 220 may include a memory and a processor. The memory stores computer program instructions, and the processor loads the computer program instructions stored in the memory to execute any of the aforementioned automatic registration methods. Those skilled in the art also know that, in addition to implementing the host 220 by loading a computer program using a general computer architecture, separate integrated circuit modules can be fabricated according to each step of its execution. Each integrated circuit module can be used as a component of the hardware to implement the host 220. Alternatively, integrated circuit modules can be fabricated according to only some of the steps of its execution to implement the host 220. Therefore, the host 220 can also be implemented as a hardware component, or as a combination of software modules and hardware components.
[0204] The surgical navigation system in this embodiment accurately collects registration markers in the world coordinate system using probes. The host automatically determines the optimal point pairing relationship. When collecting registration markers, it is not necessary to search for and collect markers one by one with the registration markers in the medical model, which reduces the workload of doctors and improves the efficiency of registration operations.
[0205] Reference Figure 3 Based on the above embodiments, in one embodiment, the surgical navigation system further includes a tracking device 230 for tracking the spatial position of the probe 210. The tracking device 230 is communicatively connected to the host 220 and transmits the registration marker (position) data collected by the probe 210 to the host 220. The host 220 acquires n registration marker points in the world coordinate system and performs data processing to complete the pairing of the registration marker points in the world coordinate system with the marker points in the model space, or further combines the pairing relationship to obtain the transformation relationship between the model coordinate system and the world coordinate system (completing the registration process).
[0206] The tracking device 230 can take various specific forms. For example, it can be an electromagnetic tracking device, using an electromagnetic positioning component on the probe 210 to locate its position. It can also be an infrared tracking device, with a reflective structure or an active infrared emitting structure on the probe 210, allowing the infrared tracking device to determine its position by tracking this structure. Alternatively, it can be a binocular (or multi-view) camera, tracking the probe 210's position based on binocular imaging. The communication connection between the tracking device 230 and the host 220 can be wired or wireless, such as via a communication cable or wirelessly via WiFi, Bluetooth, ZigBee, etc., for data exchange.
[0207] The surgical navigation system in this embodiment accurately collects registration markers in the world coordinate system through a probe and a tracking device. The host automatically determines the optimal point pairing relationship. When collecting registration markers, it is not necessary to search for and collect markers one by one with the registration markers in the medical model, which reduces the workload of doctors and improves the efficiency of registration operations.
[0208] This invention also provides a surgical robot system, which can be referred to in conjunction with the automatic registration method described above. Figure 4 This is a schematic diagram of the structure of a surgical robot system provided by the present invention, as shown below. Figure 4 As shown, the surgical robot system includes the aforementioned surgical navigation system and the robotic arm 240.
[0209] The probe 210 is detachably mounted to the robotic arm 240.
[0210] Specifically, after the probe 210 is installed on the robotic arm 240, the probe and the mounting position on the robotic arm have a fixed connection relationship. The position of the probe 210 when selecting the registration mark point can be determined according to the posture of the robotic arm 240, thus determining the spatial position of the registration mark point. The specific operation process can be as follows: after the probe 210 is installed on the robotic arm 240, the robotic arm 240 is dragged in follow mode to collect the registration mark point; or the surgical scene can be captured by an image acquisition device to initially identify the orientation of the registration mark point, and then the robotic arm 240 is controlled to drive the probe 210 to automatically collect the position of the registration mark point.
[0211] The host 220 acquires n registration marker points in the world coordinate system and processes the data to pair the registration marker points in the world coordinate system with the marker points in the model space. Furthermore, the host can also process the automatically determined pairing relationship to obtain the transformation relationship between the model coordinate system and the world coordinate system, thus completing the registration process.
[0212] The host 220 may include a memory and a processor. The memory stores computer program instructions, and the processor loads the computer program instructions stored in the memory to execute any of the aforementioned automatic registration methods. Those skilled in the art also know that, in addition to implementing the host 220 by loading a computer program using a general computer architecture, separate integrated circuit modules can be fabricated according to each step of its execution. Each integrated circuit module can be used as a component of the hardware to implement the host 220. Alternatively, integrated circuit modules can be fabricated according to only some of the steps of its execution to implement the host 220. Therefore, the host 220 can also be implemented as a hardware component, or as a combination of software modules and hardware components.
[0213] The surgical robot system in this embodiment accurately collects registration markers in the world coordinate system using a robotic arm probe. The host computer automatically determines the optimal point pairing relationship. When collecting registration markers, it is unnecessary to search for and collect markers one-to-one with those in the medical model, reducing the workload of the surgeon and improving the efficiency of the registration operation. After registration, the robotic arm 240 can also assist in other surgical operations. It is understood that the control of both registration and surgical operations is based on the robotic arm coordinate system, eliminating the need for complex coordinate transformations and improving surgical precision.
[0214] Based on the above embodiments, in one embodiment, the surgical robot system further includes a guidance module, which is installed or integrated into the robotic arm 240 and is used to guide the movement trajectory of surgical instruments.
[0215] The specific guiding module can be detachably mounted to the robotic arm 240 or integrated into the robotic arm 240. The guiding module may include instrument channels for fixing in the desired position in space under the movement and positioning of the robotic arm, providing guidance for surgical instruments such as guiding drills, electrodes, puncture needles, and drainage tubes. The probe 210 and the guiding module can be detachably and interchangeably mounted to the same position on the robotic arm 240, or they can be mounted or integrated into different positions on the robotic arm 240.
[0216] In this embodiment, after automatic and high-precision registration, the guidance module provides positioning guidance for the surgical instruments. Since the registration and surgical operation control are both based on the robotic arm coordinate system, there is no need for complex coordinate transformation, which can improve surgical accuracy.
[0217] Figure 5 An example is a schematic diagram of the physical structure of an electronic device, such as... Figure 5As shown, the electronic device may include a processor 510, a communications interface 520, a memory 530, and a communication bus 540, wherein the processor 510, the communications interface 520, and the memory 530 communicate with each other via the communication bus 540. The processor 510 may call logical instructions in the memory 530 to execute all or part of the steps of the automatic registration methods provided above.
[0218] Furthermore, the logical instructions in the aforementioned memory 530 can be implemented as software functional units and, when sold or used as independent products, can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, essentially, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0219] On the other hand, the present invention also provides a computer program product, the computer program product comprising a computer program stored on a non-transitory computer-readable storage medium, the computer program comprising program instructions, and when the program instructions are executed by a computer, the computer is able to perform all or part of the steps of the above-provided automatic registration methods.
[0220] In another aspect, the present invention also provides a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, is implemented to perform all or part of the steps of the above-described automatic registration methods.
[0221] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. Those skilled in the art can understand and implement this without any creative effort.
[0222] Through the above description of the embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus necessary general-purpose hardware platforms, and of course, it can also be implemented by hardware. Based on this understanding, the above technical solutions, in essence or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute the methods described in the various embodiments or some parts of the embodiments.
[0223] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, and not to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.
Claims
1. An automatic registration method, characterized by The method comprises: acquiring the numbers of m registration marker points in a medical image model; wherein m≥3, m is an integer; acquiring n registration marker points in a world coordinate system; wherein n≥3, n is an integer; selecting k pairs from the registration marker points in the model coordinate system and the world coordinate system respectively according to all possibilities, calculating the transformation matrix and the registration marker point error under each pairing relationship; wherein k=min(m, n); determining the correct point pair pairing relationship of the k groups of point pairs according to the registration marker point error under each pairing relationship; recomputing the transformation matrix from the p groups of point pairs and calculating the registration marker point error of the k groups of point pairs under the corresponding transformation matrix according to the correct point pair pairing relationship of the k groups of point pairs, wherein p is traversed in the interval [3, k-1]; determining the transformation matrix corresponding to the smallest registration marker point error as the second transformation matrix.
2. The automatic registration method of claim 1, wherein, The method further comprises: determining the transformation matrix corresponding to the smallest registration marker point error as the first transformation matrix; determining the point pair used when calculating the smallest registration marker point error as the correct point pair pairing relationship of the k groups of point pairs.
3. The automatic registration method of claim 1, wherein, After the step of recomputing the transformation matrix from the p groups of point pairs and calculating the registration marker point error of the k groups of point pairs under the corresponding transformation matrix according to the correct point pair pairing relationship of the k groups of point pairs, the method further comprises: calculating the registration marker point error of the remaining (k-1) groups of point pairs after eliminating the point pair with the largest error under the corresponding transformation matrix; determining the transformation matrix corresponding to the smallest registration marker point error as the final transformation matrix.
4. The automatic registration method of claim 3, wherein, The method further comprises: prompting the point pair with the largest error and / or its error value through a display device.
5. The automatic registration method of claim 1, wherein, After the step of acquiring n registration marker points in a world coordinate system, the method further comprises: determining whether the n registration marker points in the world coordinate system are ordered points corresponding to the m registration marker points in the medical image model; if yes, pairing the n registration marker points in the world coordinate system with the m registration marker points in the medical image model according to the order of the ordered points; if no, performing the steps of selecting k pairs from the registration marker points in the model coordinate system and the world coordinate system respectively according to all possibilities, and calculating the transformation matrix and the registration marker point error under each pairing relationship.
6. The automatic registration method of claim 1, wherein, The step of selecting k pairs from the registration marker points in the model coordinate system and the world coordinate system respectively according to all possibilities comprises: adding a state variable to each registration marker point in the model coordinate system or the world coordinate system; the state variable represents a "selected" state or an "unselected" state; generating an initial state sequence; wherein one end of the initial state sequence is a continuous k "selected" state, and the rest is an "unselected" state; generating a plurality of state sequences based on the initial state sequence by binary shifting, each state sequence corresponding to a way of selecting k registration marker points.
7. The automatic registration method of claim 6, wherein, The binary shifting comprises: Step 1, based on the initial state sequence, determine variable i, i is the bit sequence of the last occurrence of "1" in the initial state sequence; Step 2, in the first i+1 bits, gradually exchange the positions of the left-adjacent "1" and the right-adjacent "0" to obtain a series of state sequences, and complete this round of shifting; Step 3, move all "1"s in the first i bits to the left, and gradually move the "1"s to the right of the i-th bit to the right to obtain a series of state sequences; Step 4, based on each state sequence obtained in step 3, gradually exchange the positions of the left-adjacent "1" and the right-adjacent "0" in the first i bits to obtain a series of state sequences; Step 5, reduce the value of variable i by 1, and execute steps 3 and 4 again until i=1.
8. The automatic registration method of claim 1, wherein, From the registration marker points in the model coordinate system and the world coordinate system, k are selected according to all possibilities, including: Fix the order of the k registration marker points in one coordinate system, sort the k registration marker points in the other coordinate system, and determine the pairing relationship of the k registration marker points in the model coordinate system and the world coordinate system according to each sorting result; The above sorting process is realized by the following way: Sort according to the number of the selected k registration marker points to obtain an initial sorting; Adjust the initial sorting step by step using double pointers to obtain a series of sortings.
9. The automatic registration method of claim 8, characterized in that, The initial sorting is in order, and the step of adjusting the initial sorting step by step using double pointers includes gradually increasing the adjustment range from the end of the sequence of the initial sorting, and adjusting the sequence in the current adjustment range from order to reverse order by double pointers; Or, the initial sorting is in reverse order, and the step of adjusting the initial sorting step by step using double pointers includes gradually increasing the adjustment range from the end of the sequence of the initial sorting, and adjusting the sequence in the current adjustment range from reverse order to order by double pointers.
10. A surgical navigation system, characterized by Including: Probe, host; The probe is used to assist in acquiring n registration marker points in the world coordinate system; The host is configured to execute the automatic registration method of any one of claims 1-9.
11. The surgical navigation system of claim 10, wherein, Further comprising a tracking device for tracking the spatial position of the probe.
12. A surgical robotic system, characterized by, Characterized in that, it comprises the surgical navigation system of claim 10, and a mechanical arm; The probe is detachably mounted to the mechanical arm.
13. A computer program product, the computer program product comprising computer executable instructions, characterised in that, The instructions, when executed, are used to implement the steps of the automatic registration method of any one of claims 1-9.
Citation Information
Patent Citations
Intraoperative real-time registration method based on Kinect camera
CN104287830A
Precision test system and test method for orthopedic surgery navigation system
CN116793334A
A surgical navigation system, a surgical robot system and a registration method
CN117372661B