Disclosure of Invention
The invention provides a method and a device for determining a global optimal spine registration matrix, which are used for solving the problems.
In a first aspect, the present invention provides a method for determining a global optimal-based spinal registration matrix, comprising:
extracting a plurality of preoperative registration points and a plurality of intraoperative registration points with the same quantity, wherein the plurality of preoperative registration points form a preoperative registration point set P, the plurality of intraoperative registration points form an intraoperative registration point set Q, and the preoperative registration point set and the intraoperative registration point set form a registration point cloud set K;
determining target feature parameters in an optimization function based on a preoperative registration point set P and an intraoperative registration point set Q, wherein the optimization function is used for optimizing registration points in the registration point cloud set K;
and determining a target registration matrix based on an optimization function after determining the target characteristic parameters, wherein the target registration matrix is used for determining the correspondence between the plurality of preoperative registration points and the plurality of intraoperative registration points.
Optionally, the extracting a plurality of preoperative registration points and a plurality of intraoperative registration points, which are the same in number, includes:
and extracting a plurality of preoperative registration points and a plurality of operative points based on a point characteristic histogram algorithm PFH and a random sampling consensus algorithm RANSAC or a rapid point characteristic histogram algorithm FPFH and a random sampling consensus algorithm RANSAC to obtain a plurality of preoperative registration points and a plurality of intraoperative registration points with the same quantity.
Optionally, the optimization function is expressed in the following form:
E(T)=∑ (p,q)∈ kρ (|p-Tq|) formula (1)
Wherein p represents a preoperative registration point, q represents an intraoperative registration point, T represents a registration matrix, and ρ (|p-tq|) represents an estimation function, which is expressed in the following form:
mu is a constant.
Alternatively, based on the dual nature, another expression of the optimization function expressed by equation (1) is as follows:
E(T,L)=∑ (p,q)∈K l p,q ‖p-Tq‖ 2 +∑ (p,q)∈K Ψ(l p,q ) Formula (2)
Wherein,l p,q and representing the target characteristic parameters, wherein L is a set of the target characteristic parameters.
Optionally, the determining the target feature parameter in the optimization function based on the preoperative registration point set P and the intra-operative registration point set Q includes:
initializing characteristic parameters;
based on the feature parameters obtained by initialization, the preoperative registration point set P, the intraoperative registration point set Q and the formula (2), an initial registration matrix T is obtained 0 ;
Based on an initial registration matrix T 0 Initializing the obtained characteristic parameters, a preoperative registration point set P, an intraoperative registration point set Q and a formula (2) to obtain the target characteristic parameters.
Optionally, the initial registration matrix T is based on 0 Initializing the obtained characteristic parameters, a preoperative registration point set P, an intraoperative registration point set Q and a formula (2), and obtaining the target characteristic parameters, wherein the method comprises the following steps:
conducting derivation processing on the characteristic parameters, and based on results obtained by the derivation processing and the initial registration matrix T 0 Iterating the characteristic parameters and the registration matrix by the preoperative registration point set P and the intraoperative registration point set Q;
and when the characteristic parameters obtained based on the formula (2) are not converged, determining the characteristic parameters as target characteristic parameters.
Optionally, the feature parameter is subjected to derivative processing, and a result obtained by the derivative processing is expressed by the following formula:
in a second aspect, the present invention provides a device for determining a global optimal spinal registration matrix, comprising:
the extraction module is used for extracting a plurality of preoperative registration points and a plurality of intra-operative registration points with the same quantity, wherein the plurality of preoperative registration points form a preoperative registration point set P, the plurality of intra-operative registration points form an intra-operative registration point set Q, and the preoperative registration point set and the intra-operative registration point set form a registration point cloud set K;
the determining module is used for determining target characteristic parameters in an optimizing function based on a preoperative registration point set P and an intraoperative registration point set Q, wherein the optimizing function is used for optimizing registration points in the registration point cloud set K;
the determining module is further configured to determine a target registration matrix based on an optimization function after determining the target feature parameter, where the target registration matrix is used to determine correspondence between the plurality of preoperative registration points and the plurality of intra-operative registration points.
In a third aspect, the present invention provides an electronic device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, the processor implementing a method of determining a global optimal spinal registration matrix based on the above, when executing the program.
In a fourth aspect, the present invention provides a non-transitory computer readable storage medium having stored thereon a computer program which, when executed by a processor, implements a method of determining a global optimal based spinal registration matrix as described above.
The technical scheme of the invention has at least the following beneficial effects:
according to the method for determining the vertebral column registration matrix based on global optimization, after the preoperative registration points and the intraoperative registration points with the same number are extracted, the target characteristic parameters of the optimization function can be determined, the influence of noise points can be effectively filtered out in the process of determining the target characteristic parameters by the optimization function, and further the target registration matrix corresponding to the preoperative registration points and the intraoperative registration points can be accurately determined based on the optimization function after the target characteristic parameters are determined. Based on the target registration matrix, when the spine is aligned, the accuracy of registration can be improved, errors generated in the registration process are reduced, the registration accuracy is improved, and the registration accuracy is effectively ensured.
Detailed Description
For the purpose of making the objects, technical solutions and advantages of the embodiments of the present invention more apparent, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention, and it is apparent that the described embodiments are only some embodiments of the present invention, not all embodiments. All other embodiments, which can be made by those skilled in the art based on the embodiments of the invention without making any inventive effort, are intended to be within the scope of the invention.
The terms "first," "second," "third," "fourth" and the like in the description and in the claims and in the above drawings, if any, are used for distinguishing between similar objects and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used may be interchanged where appropriate such that the embodiments of the invention described herein may be implemented in sequences other than those illustrated or otherwise described herein.
It should be understood that, in various embodiments of the present invention, the sequence number of each process does not mean that the execution sequence of each process should be determined by its functions and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present invention.
It should be understood that in the present invention, "comprising" and "having" and any variations thereof are intended to cover non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements that are expressly listed or inherent to such process, method, article, or apparatus.
It should be understood that in the present invention, "plurality" means two or more. "and/or" is merely an association relationship describing an association object, and means that three relationships may exist, for example, and/or B may mean: a exists alone, A and B exist together, and B exists alone. The character "/" generally indicates that the context-dependent object is an "or" relationship. "comprising A, B and C", "comprising A, B, C" means that all three of A, B, C comprise, "comprising A, B or C" means that one of the three comprises A, B, C, and "comprising A, B and/or C" means that any 1 or any 2 or 3 of the three comprises A, B, C.
It should be understood that in the present invention, "B corresponding to a", "a corresponding to B", or "B corresponding to a" means that B is associated with a, from which B can be determined. Determining B from a does not mean determining B from a alone, but may also determine B from a and/or other information. The matching of A and B is that the similarity of A and B is larger than or equal to a preset threshold value.
As used herein, "if" may be interpreted as "at … …" or "at … …" or "in response to a determination" or "in response to detection" depending on the context.
The technical scheme of the invention is described in detail below by specific examples. The following embodiments may be combined with each other, and some embodiments may not be repeated for the same or similar concepts or processes.
Referring to fig. 1, a flow chart of a method for determining a global optimal spine registration matrix according to the present invention includes the following steps:
s11: extracting a plurality of preoperative registration points and a plurality of intraoperative registration points with the same quantity, wherein the plurality of preoperative registration points form a preoperative registration point set P, the plurality of intraoperative registration points form an intraoperative registration point set Q, and the preoperative registration point set and the intraoperative registration point set form a registration point cloud set K.
Optionally, the number of the plurality of preoperative registration points and the plurality of intraoperative registration points is, for example, 32 or 35, respectively, that is, the number of preoperative registration points and the number of intraoperative registration points are both 32, or the number of preoperative registration points and the number of intraoperative registration points are both 35.
Specifically, the method for extracting the preoperative registration points and the intraoperative registration points with the same quantity comprises the following steps:
and extracting a plurality of preoperative registration points and a plurality of operative points based on a point characteristic histogram algorithm PFH and a random sampling consensus algorithm RANSAC or a rapid point characteristic histogram algorithm FPFH and a random sampling consensus algorithm RANSAC to obtain a plurality of preoperative registration points and a plurality of intraoperative registration points with the same quantity.
S12: and determining target feature parameters in an optimization function based on the preoperative registration point set P and the intraoperative registration point set Q, wherein the optimization function is used for optimizing registration points in the registration point cloud set K.
It should be noted that, after the registration points in the registration point cloud set K are processed by the optimization function, the number of obtained pre-operative registration points is smaller than or equal to the number of pre-operative registration points in the pre-operative registration point set P, and the number of obtained intra-operative registration points is smaller than or equal to the number of intra-operative registration points in the intra-operative registration point set Q.
S13: and determining a target registration matrix based on an optimization function after determining the target characteristic parameters, wherein the target registration matrix is used for determining the correspondence between the plurality of preoperative registration points and the plurality of intraoperative registration points.
According to the method for determining the vertebral column registration matrix based on global optimization, after the preoperative registration points and the intraoperative registration points with the same number are extracted, the target characteristic parameters of the optimization function can be determined, the influence of noise points can be effectively filtered out in the process of determining the target characteristic parameters by the optimization function, and further the target registration matrix corresponding to the preoperative registration points and the intraoperative registration points can be accurately determined based on the optimization function after the target characteristic parameters are determined. Based on the target registration matrix, when the spine is aligned, the accuracy of registration can be improved, errors generated in the registration process are reduced, the registration accuracy is improved, and the registration accuracy is effectively ensured.
Illustratively, the optimization function is expressed in the form:
E(T)=∑ (q,p)∈K ρ(‖p-T q II) formula (1)
Wherein p represents a pre-operative registration point, q represents an intra-operative registration point, T represents a registration matrix, ρ (|p-T) q II) represents an estimation function, which is represented as follows:
mu is a constant.
Alternatively, the registration point cloud set K may be represented as k= { (P, Q) }, where P is the registration point in the preoperative registration point set P and Q is the registration point in the intraoperative registration point set Q. By introducing the estimation function ρ (|p-tq|), the influence of noise points can be effectively filtered out, resulting in better robustness. It should be noted that, μ is a curve fitting coefficient, the smaller μ is, the better the fitting effect is, the larger the influence of the iterative difference on the optimization function is, that is, the smaller μ is, the better the effect of the optimization function on filtering noise points is, preferably, μ is 0.1, and therefore the non-convex problem can be converted into the convex problem, and the accuracy of the optimization function is improved.
It should be noted that, the pre-operative registration point p and the intra-operative registration point q may be represented in the form of coordinates, for example, p= (1, 2, 3), q= (2, 3, 4), and Tq represents the product of the registration matrix T and the intra-operative registration point q.
By way of example, based on the dual nature, another representation of the optimization function represented by equation (1) is as follows:
E(T,L)=∑ (p,q)∈K l p,q ‖p-Tq‖ 2 +∑ (p,q)∈K Ψ(l p,p ) Formula (2)
Wherein,l p,q and representing the target characteristic parameters, wherein L is a set of the target characteristic parameters.
Alternatively, L is expressed in the form of l= { p, q }, i.e. L is L p,q { p, q } is a set of corresponding pre-operative registration points and intra-operative registration points.
Illustratively, the determining the target feature parameter in the optimization function based on the preoperative registration point set P and the intraoperative registration point set Q includes:
initializing characteristic parameters;
the feature parameter may be initialized, for example, by setting an initial value of the feature parameter to 1.
Based on the feature parameters obtained by initialization, the preoperative registration point set P, the intraoperative registration point set Q and the formula (2), an initial registration matrix T is obtained 0 ;
It should be noted that, since the value of the initialized feature parameter, the coordinates of each preoperative registration point in the preoperative registration point set P, and the coordinates of each intraoperative registration point in the intraoperative registration point set Q are all known, and μ=0.1, let the value of formula (2) be 0, the initial registration matrix T can be calculated 0 。
Based on an initial registration matrix T 0 Initializing the obtained characteristic parameters, the preoperative registration point set P, the intraoperative registration point set Q and the formula (2) to obtainThe target characteristic parameter.
Specifically, the initial registration matrix T is based on 0 Initializing the obtained characteristic parameters, a preoperative registration point set P, an intraoperative registration point set Q and a formula (2), and obtaining the target characteristic parameters, wherein the method comprises the following steps:
conducting derivation processing on the characteristic parameters, and based on results obtained by the derivation processing and the initial registration matrix T 0 Iterating the characteristic parameters and the registration matrix by the preoperative registration point set P and the intraoperative registration point set Q;
and when the characteristic parameters obtained based on the formula (2) are not converged, determining the characteristic parameters as target characteristic parameters.
Optionally, the feature parameters are subjected to derivative processing, and the calculation mode is as follows:the result obtained by the derivation process is expressed by the following formula:
due to the registration matrix T 0 The coordinates of each preoperative registration point in the set of preoperative registration points P, the coordinates of each intraoperative registration point in the set of intraoperative registration points Q, and μ are all known, and therefore, based on equation (2), an iterative feature parameter l can be derived p,q . After obtaining iterative characteristic parameter l p,q Then, let the value of equation (2) be 0, based on the iterative characteristic parameter l p,q An iterative registration matrix is obtained. In the characteristic parameter l p,q After a plurality of iterations, the characteristic parameter l p,q And tending to a fixed value, i.e. the characteristic parameter no longer converges, at which point the characteristic parameter is determined to be the target characteristic parameter.
Referring next to fig. 2, based on the same technical concept as the above method, another embodiment of the present invention provides a determination device based on a globally optimal spinal registration matrix, which has the same function as the above method, and will not be described herein. The global optimum-based spine registration matrix determining device comprises:
an extracting module 21, configured to extract a plurality of preoperative registration points and a plurality of intra-operative registration points that are the same in number, where the plurality of preoperative registration points form a preoperative registration point set P, the plurality of intra-operative registration points form an intra-operative registration point set Q, and the preoperative registration point set and the intra-operative registration point set form a registration point cloud set K;
a determining module 22, configured to determine a target feature parameter in an optimization function based on a preoperative registration point set P and an intra-operative registration point set Q, where the optimization function is configured to perform optimization processing on registration points in the registration point cloud set K;
the determining module 22 is further configured to determine a target registration matrix, based on the optimization function after determining the target feature parameter, where the target registration matrix is used to determine correspondence between the plurality of preoperative registration points and the plurality of intra-operative registration points.
Optionally, the extracting module 21 is specifically configured to, when extracting a plurality of preoperative registration points and a plurality of intraoperative registration points with the same number:
and extracting a plurality of preoperative registration points and a plurality of operative points based on a point characteristic histogram algorithm PFH and a random sampling consensus algorithm RANSAC or a rapid point characteristic histogram algorithm FPFH and a random sampling consensus algorithm RANSAC to obtain a plurality of preoperative registration points and a plurality of intraoperative registration points with the same quantity.
Optionally, the optimization function is expressed in the following form:
E(T)=∑ (p,q)∈K ρ (|p-Tq|) formula (1)
Wherein p represents a preoperative registration point, q represents an intraoperative registration point, T represents a registration matrix, and ρ (|p-tq|) represents an estimation function, which is expressed in the following form:
mu is a constant.
Alternatively, based on the dual nature, another expression of the optimization function expressed by equation (1) is as follows:
E(T,L)=∑ (p,q)∈K l p,q ‖p-Tq‖ 2 +∑ (p,q)∈K Ψ(l p,q ) Formula (2)
Wherein,l p,q and representing the target characteristic parameters, wherein L is a set of the target characteristic parameters.
Optionally, the determining module 22 is specifically configured to, when determining the target feature parameter in the optimization function based on the preoperative registration point set P and the intra-operative registration point set Q:
initializing characteristic parameters;
based on the feature parameters obtained by initialization, the preoperative registration point set P, the intraoperative registration point set Q and the formula (2), an initial registration matrix T is obtained 0 ;
Based on an initial registration matrix T 0 Initializing the obtained characteristic parameters, a preoperative registration point set P, an intraoperative registration point set Q and a formula (2) to obtain the target characteristic parameters.
Optionally, the determining module 22 is based on an initial registration matrix T 0 Initializing the obtained characteristic parameters, a preoperative registration point set P, an intraoperative registration point set Q and a formula (2), wherein the method is specifically used for:
conducting derivation processing on the characteristic parameters, and based on results obtained by the derivation processing and the initial registration matrix T 0 Iterating the characteristic parameters and the registration matrix by the preoperative registration point set P and the intraoperative registration point set Q;
and when the characteristic parameters obtained based on the formula (2) are not converged, determining the characteristic parameters as target characteristic parameters.
Optionally, the feature parameter is subjected to derivative processing, and a result obtained by the derivative processing is expressed by the following formula:
referring next to fig. 3, a schematic entity structure of an electronic device according to the present invention may include: processor 310, communication interface (Communications Interface) 320, memory 330 and communication bus 340, wherein processor 310, communication interface 320, memory 330 accomplish communication with each other through communication bus 340. Processor 310 may invoke logic instructions in memory 330 to perform the determination method based on the globally optimal spinal registration matrix provided by the methods described above.
Further, the logic instructions in the memory 330 described above may be implemented in the form of software functional units and may be stored in a computer-readable storage medium when sold or used as a stand-alone product. Based on this understanding, the technical solution of the present invention may be embodied essentially or in a part contributing to the prior art or in a part of the technical solution, in the form of a software product stored in a storage medium, comprising several instructions for causing a computer device (which may be a personal computer, a server, a network device, etc.) to perform all or part of the steps of the method according to the embodiments of the present invention. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a random access Memory (RAM, random Access Memory), a magnetic disk, or an optical disk, or other various media capable of storing program codes.
Another embodiment of the invention provides a computer-readable storage medium having stored thereon computer program instructions which, when executed by a processor, implement a method of determining a global optimum-based spinal registration matrix as described above.
The computer readable storage medium may be a tangible device that can hold and store instructions for use by an instruction execution device. The computer readable storage medium may be, for example, but not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer-readable storage medium would include the following: portable computer disks, hard disks, random Access Memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static Random Access Memory (SRAM), portable compact disk read-only memory (CD-ROM), digital Versatile Disks (DVD), memory sticks, floppy disks, mechanical coding devices, punch cards or in-groove structures such as punch cards or grooves having instructions stored thereon, and any suitable combination of the foregoing. Computer-readable storage media, as used herein, are not to be construed as transitory signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media (e.g., optical pulses through fiber optic cables), or electrical signals transmitted through wires.
The computer readable program instructions described herein may be downloaded from a computer readable storage medium to a respective computing/processing device or to an external computer or external storage device over a network, such as the internet, a local area network, a wide area network, and/or a wireless network. The network may include copper transmission cables, fiber optic transmissions, wireless transmissions, routers, firewalls, switches, gateway computers and/or edge servers. The network interface card or network interface in each computing/processing device receives computer readable program instructions from the network and forwards the computer readable program instructions for storage in a computer readable storage medium in the respective computing/processing device.
Computer program instructions for carrying out operations of the present invention may be assembly instructions, instruction Set Architecture (ISA) instructions, machine-related instructions, microcode, firmware instructions, state setting data, or source or object code written in any combination of one or more programming languages, including an object oriented programming language such as Smalltalk, c++ or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The computer readable program instructions may be executed entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any kind of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or may be connected to an external computer (for example, through the Internet using an Internet service provider). In some embodiments, aspects of the present invention are implemented by personalizing electronic circuitry, such as programmable logic circuitry, field Programmable Gate Arrays (FPGAs), or Programmable Logic Arrays (PLAs), with state information for computer readable program instructions, which can execute the computer readable program instructions.
Various aspects of the present invention are described herein with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer-readable program instructions.
These computer readable program instructions may be provided to a processing unit of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processing unit of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks. These computer readable program instructions may also be stored in a computer readable storage medium that can direct a computer, programmable data processing apparatus, and/or other devices to function in a particular manner, such that the computer readable medium having the instructions stored therein includes an article of manufacture including instructions which implement the function/act specified in the flowchart and/or block diagram block or blocks.
The computer readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer, other programmable apparatus or other devices implement the functions/acts specified in the flowchart and/or block diagram block or blocks.
The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of instructions, which comprises one or more executable instructions for implementing the specified logical function(s). In some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
Note that all features disclosed in this specification (including any accompanying claims, abstract and drawings) may be replaced by alternative features serving the same, equivalent or similar purpose, unless expressly stated otherwise. Thus, unless expressly stated otherwise, each feature disclosed is one example only of a generic set of equivalent or similar features. Where used, further, preferably, still further and preferably, the brief description of the other embodiment is provided on the basis of the foregoing embodiment, and further, preferably, further or more preferably, the combination of the contents of the rear band with the foregoing embodiment is provided as a complete construct of the other embodiment. A further embodiment is composed of several further, preferably, still further or preferably arrangements of the strips after the same embodiment, which may be combined arbitrarily.
It will be appreciated by persons skilled in the art that the embodiments of the invention described above and shown in the drawings are by way of example only and are not limiting. The objects of the present invention have been fully and effectively achieved. The functional and structural principles of the present invention have been shown and described in the examples and embodiments of the invention may be modified or practiced without departing from the principles described.
Finally, it should be noted that: the above embodiments are only for illustrating the technical solution of the present disclosure, and not for limiting the same; although the present disclosure has been described in detail with reference to the foregoing embodiments, it should be understood by those of ordinary skill in the art that: the technical scheme described in the foregoing embodiments can be modified or some or all of the technical features thereof can be replaced by equivalents; such modifications and substitutions do not depart from the spirit of the corresponding technical solutions from the scope of the technical solutions of the embodiments of the present disclosure.