Accurate image guided neurosurgery allows for minimal craniotomy (surgical removal of bone), smaller wounds, more accurate approaches to a target, etc. Targets may be tumors, blood clots, foreign objects (e.g., bullets), etc. There is a critical need for 3-dimensional (3D) position estimation systems that allow the surgeon to know with high accuracy the position of the probe-tip with respect to pre-operative magnetic resonance imaging (MR) or computer aided tomography (C) images on display in real time. Most systems that are currently being used in operation rooms for neurosurgery in most hospitals are stereoscopic camera based systems that track the surgeon's probe. These systems have several limitations including a resolution of about 2 mm (with up to 1 mm being the best possible under perfect working conditions), large space requirements, complex and time-consuming calibration schemes, and prone to occasional temporary or permanent failures. Temporary failures during surgery also often lead to abandoning the use of the system due to the recalibration complexities. Moreover, these systems typically cost about $500 K-$750 K and need a technician to oversee them during surgery.
During surgery, a position of a brain may shift, complicating efforts to accurately locate a probe-tip during neurosurgery. The position of the brain may shift during surgery because, for example, a release of pressure, repeated removal of tumor material from the brain, etc. Due to brain shifts, current position estimates from image guided systems often do not reflect the known position of tumors as seen in pre-operative MRI images. One approach that has been suggested is to use ultasonography registration on preoperative MR/CT images. These ultrasonic images are similar to the very popular “baby images” taken during pregnancy. The resolution of such images is usually not very good, with a typical resolution being around 5 mm.
In two systems known to the inventors, quick 3D ultrasonic scans can be superimposed in real-time with preoperative MRI images to help account for brain shifts during surgery. In one system, a camera is used to determine position and orientation of a surgical probe. In the other system, a camera is used to determine position and orientation of ultrasonography sensors with the help of four optical markers on the ultrasonography sensor probe.
In one embodiment, a method for facilitating surgery is provided. The method comprises transmitting a signal or signals from one or more transmitters coupled to a surgical probe, and receiving the signal or signals at a plurality of receivers. The method additionally comprises determining an estimate of a position of a portion of the surgical probe based on the signal or signals received by the plurality of receivers. The method also comprises displaying an indication of the estimate of the position on a display unit, wherein the display unit displays a representation of an anatomy of a patient, and wherein the indication of the estimate of the position is integrated with the representation of the anatomy of the patient.
In another embodiment, a system for facilitating surgery is provided The system comprises a surgical probe having one or more transmitters coupled thereto, the transmitter(s) configured to transmit a signal or signals. The system also comprises a plurality of receivers, and a position calculator operatively coupled to the plurality of receivers, wherein the position calculator is configured to determine an estimate of a position of a portion of the surgical probe based on the signal or signals received by the plurality of receivers. The system additionally comprises a display unit, and a display system operatively coupled to the position calculator and the display unit, wherein the display system is configured to cause the display unit to display a representation of an anatomy of the patient and an indication of the estimate of the position, wherein the indication of the estimate of the position is integrated with the representation of the anatomy.
In another aspect, another method for configuring a system for facilitating surgery is provided. The method comprises positioning a plurality of receivers in a desired configuration, and using a transmitter or transmitters and a position calculator coupled to the plurality of receivers to determine positions of the plurality of receivers. The method also comprises adjusting the position calculator using the determined positions of the plurality of receivers, and verifying an accuracy of the position calculator using a surgical probe having at least one transmitter coupled to the surgical probe.
Determining Position
Embodiments of a method for determining a position of a transmitter will now be described. This method involves analyzing differences in times of arrival of a signal transmitted from a transmitter to a plurality of receivers. As will be described in more detail below, this method may be used to determine an estimate of a position of a portion of a surgical probe. It is to be understood that other techniques for determining a position of a transmitter, including known techniques, may be used as well to determine an estimate of a position of a portion of a surgical probe.
A system for determining a 1-dimensional (1D) position may comprise a single transmitter 20 at a position T moving in a straight line, and two receivers 22 and 24 at positions R1 and R2, respectively, as shown in
A system for determining 2-dimensional (2D) position may comprise a transmitter 30 and five receivers 32, 34, 36, 37, and 38 in a single plane, as shown in
The above system of equations treats the speed of sound as a variable, and estimates it along with the position of the transmitter. The above analysis can be extended to a three-dimensional (3D) system having six receivers. In the 3D system, a system of equations for determining an estimate of a 3D position (u,v,w) may be described as:
The above matrix equation can be written in the following vector form: where, A and B are known matrices and vector t is to be determined.
An overall signal amplitude produced by a transmitter-receiver pair may generally decrease as the receiver moves away from a transmitter normal, keeping the transmitter-receiver distance constant. For example,
Any of a variety of techniques, including known techniques, may be used to determine the time of arrival of a wave at a receiver. For example, “thresholding” is one known method for signal detection, and may be used with a type of short duration signal. In this method, the received signal is compared with a threshold level, such that the arrival of the wave is acknowledged when the signal reaches this level. The threshold level is typically chosen in an attempt to eliminate or reduce false detections due to ground level noise, for example. The detection will occur at a time slightly after the signal was actually received. This leads to an error say Terror. The error may not be able to be neglected if it is comparable to the time measurement. The Terror, may be different for different receiver locations and misalignment, as shown in
ΔTerror=Terror2−Terror1 (5)
It will be understood that techniques other than thresholding, including known techniques, can be used to determine DTOAs.
At a block 82, digital signals corresponding to signals received by receivers (e.g., receivers 42, 44, 46, and 48) are received. At a block 84, envelopes in the signals received at the block 82 are identified. For example, a thresholding technique may be used to identify envelopes in signals received at receivers 42, 44, 46, and 48. At a block 86, the envelopes identified at the block 84 are normalized Δt a block 88, an estimate ΔT for each DTOAs is calculated. At a block 90, a more accurate estimate ΔTaccurate is calculated. Then, at a block 92, the transmitter position is calculated based on the ΔTaccurate values calculated at the block 90. Blocks 88, 90, and 92 will be described below in more detail.
The calculation of ΔT will be described with reference to
ΔTerror=Terror2−Terror1 (6)
Determining an estimate of ΔTerror may help to generate a more accurate estimate of the DTOA. Let the envelope of the first and second signal cross the threshold (Th) at time T1 and T2 respectively. Let the signals 1 and 2 begin at TNO1 and TNO2, respectively, and the scaling for normalization be S1 and S2 respectively, as shown in
ΔT=TN02−TN01=T2−T1+TN02−TN01−T2+T1
ΔT=ΔTm−(T2−TN02)+(T1−TN01) (7)
where ΔTm=T2−T1 is the experimentally measured DTOA. Had normalization been done on both the signals, the threshold point of signal 1 and 2 would have had an amplitude of ‘Th*S1’ and ‘Th*S2’ respectively. The normalized signal, starting at t=0, is shown again in
T2−TN02=TN2−0=TN2; (8)
and
T1−TN01=TN1−0=TN1 (9)
Thus, combining equation (7), (8) and (9), one gets:
ΔT=ΔTm−(TN2−TN1)=ΔTm−ΔTerror (10)
If the normalized signal can be approximated by a curve and, TN2 and TN1 can be determined from known ‘Th*S1’ and ‘Th*S2’, the problem of estimating ΔTerror may be solved. A 4th or 5th order polynomial, for example, can be used for curve fitting but in that case solving for time for a known amplitude will be a numerical analysis problem and hence, may be time consuming. Curve fitting with a sigmoid function is another possible technique that may be employed. The following function may be used for a maximum amplitude of 10V:
where A=Amplitude, t=time, K1=10.6, B=29000, C=0.0001040, and K2=0.3.
The equation may be valid from the initiation of the envelope till the peak. Rearranging equation (12), t can be determined from a known ‘A’:
An interesting point to be noted is that with this approach it is not necessary to do the thresholding at a low value, as required by previous investigators, to minimize the error due to ΔTerror. Now multiple thresholding can be done to make multiple measurements at an instance. An average can be taken to get a more reliable measurement at each instant. It can be thought of as parallel measurement and then taking the average, instead of serial measurement and then taking the average.
Though the above mentioned procedure reduces the error (by as much as 60 μs in some situations), it was found experimentally that there still can be a residual error up to ±5.5 μs. A technique to further reduce the error is described below. After this reduction, the error may include errors that are hardware resolution dependent. For a pair of identical receivers, for each peak in the first receiver-signal there will be a corresponding peak in the second receiver-signal. The amplitude of the corresponding peak may be different based on the strengths of the ultrasonic waves absorbed by the two receivers. The time difference between the occurrences of these corresponding peaks may be used to determine the time taken by the wave front to sweep from the first receiver to the second and hence it may be a relatively accurate time measurement.
It has been experimentally verified that the corresponding peaks often exist, as shown in
Two possible methods for finding the time difference between the corresponding peaks, among others, are windowing and phase difference. A peak can be selected in the first signal. Care should be taken to select this peak so that there exists a distinguishably amplified peak, with low noise in the second signal. Once a peak is selected, at T1, in the first signal, a window can be created on the second signal for the time range (T1+ΔT−0.5*TP) to (T1+ΔT+0.5*TP), where ΔT is defined in equation (10) and TP is the time period of the signal, (13.33 μs for the example). There typically will be only one peak in this window, say at T2. Thus,
ΔTaccurate=T2−T1 (14)
The transmitter 96 may be located at an unknown position (u, v, w) which is of interest for some application, e.g., a portion of a surgical probe (e.g., a probe, scalpel, needle, etc.). The receivers 98A-98E may be located at known positions: R1 (x1, y1, zi), R2 (x2, y2, z2), R3 (x3, y3, z3). R4 (x4, y4, z5) and R5 (x5, y5, z5). The transmitter 96 may transmit periodic signals which are received by the receivers. One receiver 98A will typically be the first to sense the signal and this receiver (R1) will be at a distance d from the transmitter 96. Another receiver 98B may be the second device to sense the signal and this device will be at a distance (d+cΔT12), where c is the velocity of sound. The third, fourth, and fifth receivers 98C-9&E may be at distances (d+cΔT13), (d+cΔT14), and (d+cΔT15) respectively from the transmitter 96. Since sound travels in spherical waves from the point source or transmitter 96, five concentric spheres can be drawn around the transmitter; one sphere of radius d through the point R1; another sphere of radius d+cΔT12 through the point R2; a third sphere of radius d+cΔT13 through the point R3; a fourth sphere of radius d+cΔT14 through the point R4, and a fifth sphere of radius d+cΔT14 through the point R5. Writing equations for the spheres:
Multiplying out the equations and solving the first one for d2 yields:
aa=x12−2x1u+u2+y12−2y1v+v2+z12−2z1w+w2 (16)
Substituting d2 into the remaining four equations gives four equations and four unknowns:
which can be solved for the location of the transmitter (u, v, w) and the distance (d) from the first receiver (R1) to the transmitter. The speed of sound may be expressed as an unknown, so that it can be estimated at every ranging operation. This may lead to a more accurate estimation of the coordinates of the transmitter since the local changes in the speed of sound do not lead to errors. The final formulation is given below:
The above matrix equation can be written in the following vector form:
A*μ=B (19)
where, A and B are known matrices and vector t is to be determined. This formulation requires at least six receivers.
Singularity
For the 3D formulation with known speed of sound, the determinant of matrix A in equation (17) should not be zero for non-singularity. The following conditions should be satisfied to obtain a non-singular matrix. (1) All the five receivers should not lie on the same line, they should not even lie on a plane. This makes the first, second and the third column linearly dependent and thus the determinant becomes zero. (2) The projection of the receivers on xy, yz or zx plane should not lie on a line. This will produce linear dependency in two of the first three columns. (3) The first receiver and any two receivers should not lie on a line. When the transmitter is at the same position as the first receiver, two rows become linearly dependent. (4) All the five receivers should not lie on a sphere, the last column will be zero for the transmitter at the common center. This is the only singularity condition for the actual time of flights (TOFs) formulation and condition (1) is a special case of this when the radius is infinite.
Similar conditions exist for the other three formulations. There will be many other situations where the matrix A becomes singular for certain positions of the transmitter. An analytical solution for determining a set of receiver positions that will not result in a singularity for a set of possible transmitter positions has yet been developed. One possible technique for determining such a set of receiver positions is to conduct an exhaustive search for all or many of possible and/or likely transmitter positions for each receiver geometry using genetic algorithms (GAs). It is to be understood that other techniques may be used as well.
Choosing Locations by Using Genetic Algorithms
In one embodiment, a receiver geometry is selected such that the determinant of the matrix A is generally far away from zero for all potential transmitter positions in a given workspace. For the same relative receiver geometry, if the receiver distances are enlarged, the resolution and accuracy of the system will increase and hence the determinant of matrix A will also increase. The workspace may be taken as a square and a cube for the 2D and the 3D cases respectively so that they can be easily divided into smaller squares/cubes. The receivers may be placed within a fixed circle/sphere at the center of the square/cubic workspace. For a particular receiver geometry, the determinants may be calculated at the center of the small squares. In one embodiment, the minimum of the absolute value (MAV) of the determinants in the entire work space may be maximized. A configuration of the receiver can be selected as the one with the highest MAV.
A Genetic algorithm (GA) is a parallel, global search technique that simulates genetic reproduction and mutation in the natural selection process. A basic GA involves three types of operations: reproduction, crossover and mutation, which are repeatedly applied to a population of “chromosomes” or parameter strings.
Continuous parameter GA may be used to reduce the chromosome length and to avoid the Humming cliff diversion problem that is often encountered in binary parameter genetic algorithms. The chromosomes may be made up of x, y and z positions of all the receivers. The negative value of the MAV may be considered as the cost function (optimality criteria). Weighted random paring may be followed for selection, as cost weighting does not explore different regions. Offspring may be produced in two different ways for odd and even generations. Two-point random crossover may be used as it gives flexibility of two point center block crossover and one point crossover For even generations interior blending (simple crossover) may be done at the crossover point(s) and for the odd generations exterior blending (heuristic crossover) may be followed. This allows search inside and outside the range specified by the parameter value of parent crossover points. If the difference in cost of the best and worst eligible parent is less than, for example, 5% of cost of the best eligible parent, no offsprings are produced and evolution totally relies on mutation. This may be done, for example, because all of the almost same parents will not produce offspring any different than the parents. Thus, the chromosomes might be stuck at a point which may not even be a local minimum. In addition to all these techniques, a random search may also be done near the genes of the best chromosome in each generation. This may produce a better chromosome but the overall solution may get stuck in a local minimum and thus relies on the evolution of GA to move to better solution. The cost surface, as described earlier, may be the negative of the MAV. The negative sign is added since the GA has been developed to find the global minima Number of generations required to reach the global solution depends on the complexity of the problem.
It can be seen that the cost surface is a dome shape which reaches a minimum value before increasing again as the transmitter moves away from the origin. Knowledge of the cost surface in advance may help in the design of the positioning system.
Considering the problem of receivers in 3D with the transmitter also moving in a 3D space, one constraint that may be applied is that the speed of sound is known for a system. Such a system should include 5 receivers. One possible configuration for this formulation is a tetrahedron with an extra receiver added at the center of the tetrahedron (0,0,0). Such a configuration is illustrated in
The last formulation to be considered is the same as the previous system with the known speed of sound constraint removed i.e., the sp of sound is unknown. One possible configuration for this formulation is three receivers on a sphere forming an equilateral triangle on a plane passing through the center of the sphere. Two more receivers are also on the sphere, the furthest point on the two sides of the plane. An additional receiver is added at the center of the tetrahedron (0,0,0), and the resulting final configuration is shown in
Having chosen a configuration, the next step is to install the receivers in this configuration. Generally, the receivers should be installed so that they are positioned an appropriate distance away from the surgical workspace so as to lessen the chance of a surgeon, a nurse, a technician, etc., accidentally moving the receivers during surgery. While installing the receivers, there will typically be some error in the positions of the receivers. Moreover, there will be situations when the receivers have been disturbed by accident or some other reason. An example procedure has been developed to use the same setup for installation and calibration, and is described below.
Installation and Calibration
Once a system is proposed, installation and calibration should be considered. Installation and calibration should be accurate because the subsequent accuracy of the system output depends on it, at least in part
As described previously, to estimate the location of the wave source, the receiver location should be known for the formation of the receiver location matrix A. Embodiments of the system may be used to find accurate locations of the receivers. In one embodiment, a method may be used to determine the location of the receivers by positioning a transmitter in various known locations. Installation and/or calibration may be performed by moving the transmitter to known coordinates of an inertial frame of reference, thereby defining the frame, and by measuring DTOAs among the receivers. This can be done, for example, by using a simple yet accurate 1D measuring device such as a ruler, linear slide, infrared or laser 1D system. Hence, one does not need an external expensive 3D position estimation system to measure the location of the receivers in 3D, but can use the system itself and measure the location with the accuracy of the system.
The second equation from equation (15) set may be subtracted from the first one:
2(x2−x1)u+2(y2−y1)v+2(z2−z1)w+(x12+y12+z12)−(x22+y22z22)+2cΔT12d=−c2ΔT122
Let Δxi=(xi−x1);
Δyi=(yi−y1)
Δzi=(zi−z1);
and ri=(xi2+yi2+zi2) for i=1, 2, 3, 4, 5 and 6.
Using these notations equation (20) can be rewritten as:
2Δx2u+2y2v+2z2w+r12−r22+2cΔT12d=−c2ΔT122 (21)
Five of these equations, for five values of (u,v,w) cannot be used to find Δx2, Δy2 and Δz2, as d changes for every (u,v,w) hence, introducing a new unknown. Thus ‘d’ should be eliminated.
Subtracting the third equation from the first one in equation set (15) yields:
2Δx3u+2y3v+2z3w+r12−r32+2cΔT13=−c2ΔT132 (22)
‘d’ can be eliminated by subtracting ΔT12*Equation (22) from ΔT13* Equation (21):
2ΔT13uΔx2−2ΔT12uΔx3+2ΔT13vΔy2−2ΔT12vΔy3+2ΔT13wΔz2−2ΔT12wΔz3+(r12−r22)ΔT13−(r12−r32)ΔT12=c2ΔT13ΔT12(ΔT13−ΔT12) (23)
This equation can be represented in matrix form for eight positions of the transmitter, (u,v,w):
where (un, vn, wn) is the coordinate of the transmitter in the nth ranging operation and ΔTlin=DTOA between 1st and ith receiver in nth ranging operation. The matrix equation (24) can be solved for (x2−x1), (x3−x1), (y2−y1), (y3−y1), (z2−z1), (z3−z1), (r12−r22) and (r12−r32) from eight ranging operations. Thus, the relative positions of second and third receiver have been found with respect to first receiver. The same procedure can be followed to find the relative position of any two, ith and jth, receivers with respect to the first receiver. The matrix equation for finding it follows directly from matrix equation (24) by substituting ‘i’ and ‘j’ for the second and third receivers respectively and the generalized matrix equation is:
Thus, the relative position of any number of receivers with respect to the first receiver can be found by just eight ranging operations. Now, to find absolute position of all the receivers, absolute position of the first receiver needs to be determined. It can be found as follows:
Equation (26), (27) and (28) can be put into matrix form as:
All the terms except x1, y1 and z1 are known from the procedure described in the previous section. The above matrix equation can be solved for the absolute position of the first receiver. Hence, absolute position of all the other receivers can be determined. It is to be noted that four receivers are used to find the position of the first receiver using this procedure. Therefore it can be said that at least four receivers and eight ranging operations are required to absolutely define the coordinates of the receiver system using this procedure.
As discussed earlier, a minimum of eight-point measurements are required (with this procedure) to obtain the location of all the six or more receivers, but more points may be used for higher accuracy, in which case a least square estimation is done. This procedure gives the location of all the receivers simultaneously.
It is to be understood that the above-described calibration procedures are merely examples of procedures that may be used. Other procedures may be used as well.
Application to Surgery
Previous sections have described example techniques for 3D position estimation, conditions that help one to avoid singularities, example sensor placement configurations, and an example installation and calibration procedures. This section gives the application of an example system to real time image guided surgery. In particular, the example is in the context of neurosurgery. Similar systems can be used in other types of surgery as well, such as surgery on other organs and other parts of a body.
A surgical probe 120 (e.g., a surgical tool, a probe, a scalpel, a needle, etc.) may have coupled thereto two transmitters 124. By using two transmitters, a position of a portion of the probe (e.g., a tip or some other location on the probe) may be determined, using techniques such as those described above, without having to have a transmitter located at the portion of interest. For instance, a position of the tip of a probe may be determined without having to include a transmitter at the tip.
The receivers 104 may be operatively coupled to conditioning circuitry 132. The conditioning circuitry 132 may comprise, for example, filters, amplifiers, and one or more DACs. The conditioning circuitry 132 may be operatively coupled to a computing device 136. The computing device 136 may comprise, for example, one or more of a laptop, desktop, workstation, server, mainframe, a digital circuit, an analog circuit, an application specific integrated circuit (ASIC), a neural network, etc. The computing device 136 may be operatively coupled to a display unit 140 (e.g., a 2-dimensional or 3-dimensional display device).
In operation, the transmitters 124 may transmit signals, and the receivers 104 will receive the signals. The signal conditioning circuitry 132 may filter the received signals, amplify them, and convert the signals to digital values indicative of the received signals. Then, the digital values may be provided to the computing device 136. The computing device 136 may be configured (e.g., according to software, hardware, and/or firmware) to determine estimates of the two positions of the two transmitters 124 using techniques such as those described previously. Additionally, the computing device 136 may be configured to determine an estimate of a position of a portion of the surgical probe 120 based on the two determined positions. For instance, an estimate of a position of a tip of the probe may be determined based on the two position estimates. For example, the position of the tip may be estimated, at least in part, by determining a line that would pass through the two determined position estimates, and then estimating the tip position as a known distance from one of the transmitters along the determined line. The computing device 136 may thus act as a position calculator configured to determine an estimate of a position of the portion of the probe based on signals generated by the plurality of receivers. The computing device 136 may be so configured using software, hardware, and/or firmware.
Additionally, the computing device 136 may have a memory device (e.g., a hard disk drive) in which a representation of a patient's brain or spinal cord or a portion of the patient's-brain or spinal cord (e.g., a magnetic resonance imaging (MRI) scan, a computer aided tomography (C) scan, etc.) is stored. The computing device 136 may be configured to integrate the estimate of the position of the portion of the probe with the representation. Additionally, the computing device 136 may be configured to cause the display unit 140 to display the representation of the patient's brain or spinal cord as well as an indication of the estimated position of the surgical probe relative to the patient's brain or spinal cord. Such an integration and display can be accomplished using a variety of techniques, including known techniques.
Although computing device 136 is illustrated as a single device, the computing device 136 may comprise multiple devices. For example, one computing device may be used to determine the position of the portion of the surgical probe, and a separate computing device may be used to integrate the position of the portion of the probe with a representation of the patient's brain or spinal cord, and display the representation as well as an indication of the estimated position of the surgical probe relative to the patient's brain or spinal cord.
The display 140 and the user input device 194 are coupled to the I/O device 182. Additionally, the computing device 136 may be coupled to the signal conditioning circuitry 132 of
A representation of an anatomy of a patient may be stored, for example, in the non-volatile memory 178. The representation of an anatomy may be transferred to the non-volatile memory 178 via the network, via a communication link (not shown) to another computing system, via a CD-ROM, etc. Software instructions for implementing one or more of position detecting, installation/calibration, testing, superimposing/integrating of the position with the representation of the anatomy may be stored, in whole or in part, in the non-volatile memory 178, and executed, in whole or in part, by the processor 50.
Determining Positions Over Time
The position(s) of the transmitter(s) and/or surgical probe may be generated periodically at a rate that provides a surgeon with adequate position information. The rate will typically depend on the context in which a system is being used. A typical range of example rates at which the position(s) may be generated is 10-100 Hz. In some implementations, a rate less than 10 Hz may be adequate. In other implementations, a rate greater than 100 Hz may be required. Further, positions need not be determined at a constant rate. For example, the rate at which positions are determined may vary over time.
In one embodiment, each position of a transmitter and/or surgical probe may be generated based on a current set of measurements, and previous estimates and/or measurements may be ignored. In another embodiment, each position of the transmitter(s) and/or surgical probe may be generated based on a current set of measurements and based on previous estimates and/or measurements.
If the difference determined at the block 212 is greater than the threshold, the flow may proceed to a block 220. At the block 220, the prediction generated at the block 204 may be used as the current position, and the estimate generated at the block 208 may be ignored. Referring back to the block 216, if the difference determined at the block 212 is less than the threshold, the flow may proceed to a block 224. At the block 224, the measured estimate generated at the block 208 may be used to update the prediction generated at the block 204. At a block 228, the measured estimate generated at the block 208 may be used as the current position. Alternatively, the updated prediction generated at the block 224 may be used as the current position.
In one embodiment, the movement of the transmitter or surgical probe may be modeled using a state model. On example model of the movement of the transmitter or probe may be expressed as:
Xk+1=ΦkXk+Wk (30)
where Xk is the state of the model at a time k, Xk+1 is a prediction of the model at a time k+1, and Φk is a matrix that may be determined based on experimental measurements using a variety of techniques, including known techniques. Wk is a vector of process noise values, where:
E{WkWTi}=Qk i=k Process Noise (White noise)
0i*k (31)
The state variable X may be a vector comprising one or more of a position, a velocity, an acceleration, etc., of the transmitter or probe. Referring to
The measured DTOAs can also be modeled as being based on the state variable Xk:
Zk=HkXk+Vk (32)
where Zk is the measured DTOAs at k and Hk is a matrix that may be determined based on experimental measurements using a variety of techniques, including known techniques. Additionally, Vk is noise where:
In view of equation (32), the state variable Xk can be iteratively adjusted according to the equation:
{circumflex over (X)}knew={circumflex over (X)}kold+Kk(Zk−Hk{circumflex over (X)}kold) (34)
where {circumflex over (X)}knew is a new adjusted estimate of Xk, {circumflex over (X)}kold is the previous adjusted estimate of Xk, and Kk is a Kalman gain matrix that may be determined based on Experimental measurements using a variety of techniques, including known techniques. Initially, {circumflex over (X)}kold may be assumed to be a vector of zero values or some other values. Then, equation (34) can be applied repeatedly until it is determined that a convergence has occurred. For example, the iterative process may be stopped after the value Kk(Zk−Hk{circumflex over (X)}kold) falls below a threshold for some number of iterations (e.g., 1, 2, 3, 4, 5, 6, etc., iterations). After it is determined that the iterative process should be stopped, the value Xk can be set to {circumflex over (X)}knew. Referring again to FIG. 19, an iterative application of equation (34) can be used to update the predicted position at the block 224.
The above described technique is only one example technique that can be used to determine a position of a transmitter or probe based on a current set of measurements and previous sets of measurements. Other techniques may be used as well including, for example, using other types of models, other types of filters, neural networks, fuzzy logic, etc.
In some of the above-described examples, the transmitter or transmitters are described as transmitting ultrasound signals at particular frequencies and in bursts of particular lengths. It is to be understood that other types of ultrasound signals may be employed as well including, for example, signals having different frequencies, burst lengths, amplitudes, etc. Moreover, signals other than ultrasound signals may be employed including, for example, radio frequency signals, infrared signals, etc. Additionally, although particular sampling frequencies of DACs are described above, other sampling frequencies may be utilized.
Further, although particular numbers of transmitters and receivers are described above, some systems may utilize different numbers of transmitters and receivers. For example, different embodiments may utilized only one transmitter or more than two transmitters. Similarly, different embodiments may utilize more receivers than described above.
Software programs may be used to implementing some of the above-described methods, either in whole or in part. Such programs are for execution by a processor and may be embodied in software stored on a tangible medium such as CAROM, a floppy disk, a hard drive, a digital versatile disk (DVD), or a memory associated with the processor, but persons of ordinary skill in the art will readily appreciate that the entire program or parts thereof could alternatively be executed by a device other than a processor, and/or embodied in firmware and/or dedicated hardware in a well known manner.
While the invention is susceptible to various modifications and alternative constructions, certain illustrative embodiments thereof have been shown in the drawings and are described in detail herein. It should be understood, however, that there is no intention to limit the disclosure to the specific forms disclosed, but on the contrary, the intention is to cover all modifications, alternative constructions and equivalents falling within the spirit and scope of the disclosure as defined by the appended claims.
This application is a continuation of U.S. patent application Ser. No. 10/987,068, filed Nov. 12, 2004, and entitled “METHOD AND APPARATUS FOR FACILITATING SURGERY, which claims the benefit of U.S. Provisional Patent Application No. 60/520,152, filed on Nov. 14, 2003, and entitled “METHOD AND APPARATUS FOR FACILITATING SURGERY.” Both of these applications are hereby incorporated by reference herein in their entireties for all purposes.
Number | Date | Country | |
---|---|---|---|
60520152 | Nov 2003 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 10987068 | Nov 2004 | US |
Child | 11198561 | Jul 2005 | US |