Sensor guided catheter navigation system

11369339 · 2022-06-28

Assignee

Inventors

Cpc classification

International classification

Abstract

A method and a system for producing images of a subject, such as the heart of a human being. The method may comprise acquiring ultrasound images of the subject with a catheter comprising a position sensor. The method may also comprise capturing a plurality of 4D surface registration points in the acquired ultrasound images corresponding to points on the subject. The method may also comprise registering, in space and time, a high-resolution 4D model of the subject with the plurality of 4D surface registration points. The method may also comprise displaying high resolution, real-time images of the subject during a medical procedure based on the registration of the high resolution 4D model to the 4D surface registration points. Embodiments of the present invention are especially useful in left atrium ablation procedures.

Claims

1. A computer-implemented method, comprising: receiving scan data collected from a scan of a heart; extracting a three-dimensional (3D) surface model from the scan data, wherein the 3D surface model corresponds to a particular phase of a cardiac cycle of the heart; generating a four-dimensional (4D) heart model using the 3D surface model and a time associated with the particular phase of the cardiac cycle of the heart; receiving a 4D surface registration of the heart, wherein the scan data and the 4D surface registration are obtained via different imaging modalities, wherein a plurality of points included in the 4D surface registration are captured from an ultrasound image of the heart, and wherein an error associated with each of the plurality of points is determined based on a distance between each one of the points and an image center of the ultrasound image; registering the 4D heart model with the 4D surface registration with a transformation function; and updating the transformation function until the transformation function does not change more than a defined threshold.

2. The computer-implemented method of claim 1, wherein the 4D heart model and the 4D surface registration are synchronized with electrocardiogram signals as time coordinates.

3. The computer-implemented method of claim 1, wherein registering the 4D heart model with the 4D surface registration further comprises creating a rigid global space-time registration between the 4D heart model and the points included in the 4D surface registration.

4. The computer-implemented method of claim 3, wherein creating the rigid global space-time registration between the 4D heart model and the points included in the 4D surface registration comprises determining the transformation function that aligns the points included in the 4D surface registration with the 4D heart model.

5. The computer-implemented method of claim 4, wherein the transformation function aligns the points included in the 4D surface registration with the 4D heart model, such that at least some of the points included in the 4D surface registration are located on an inner heart wall of the 4D heart model.

6. The computer-implemented method of claim 3, wherein registering the 4D heart model with the 4D surface registration further comprises creating a local non-rigid registration to further improve the registration accuracy.

7. The computer-implemented method of claim 1, wherein the scan of the heart is a computer tomography (CT) scan.

8. The computer-implemented method of claim 1, wherein the scan of the heart is a magnetic resonance imaging (MRI) scan.

9. The computer-implemented method of claim 1, wherein the ultrasound image of the heart is generated via a catheter comprising an ultrasound transducer and a position sensor.

10. A catheter navigation system, comprising: a catheter comprising an ultrasound transducer and a magnetic position sensor; a position tracking system for tracking the position of the catheter based on signals received by the magnetic position sensor; and an image processor in communication with the catheter and the position tracking system for: capturing a plurality of four-dimensional (4D) surface registration points from a plurality of ultrasound images of one or more inner heart walls of a subject's heart acquired by the ultrasound transducer, wherein a location error associated with each one of the 4D surface registration points is determined based on an error associated with the magnetic position sensor and a distance between each one of the points and an image center of a respective one of the plurality of ultrasound images; registering a 4D heart model of the subject's heart with the plurality of 4D surface registration points with a transformation function, wherein the 4D heart model and the 4D surface registration points are obtained via different imaging modalities; determining an alignment error between the 4D heart model and the 4D surface registration points; and updating the transformation function until the alignment error is below a defined threshold.

11. The catheter navigation system of claim 10, wherein the 4D surface registration points correspond to points on the heart and are captured without the catheter touching any of the points on the heart.

12. The catheter navigation system of claim 10, wherein the 4D heart model is constructed from a series of three-dimensional (3D) models at successive time points.

13. The catheter navigation system of claim 12, wherein the series of 3D models are generated prior to acquiring the ultrasound images.

14. The catheter navigation system of claim 12, wherein the series of 3D models are generated after acquiring the ultrasound images.

15. The catheter navigation system of claim 10, wherein the catheter is configured to be positioned within the subject's heart and a portion of the catheter comprising the ultrasound transducer and the magnetic position sensor does not touch the one or more inner heart walls when capturing the plurality of ultrasound images of the heart.

16. A non-transitory computer readable medium storing computer executable instructions, executable by a processor to: receive scan data collected from a scan of a heart; extract a three-dimensional (3D) surface model from the scan data, wherein the 3D surface model corresponds to a particular phase of a cardiac cycle of the heart from a series of 3D surface models at successive time points; generate a four-dimensional (4D) heart model using the 3D surface model and a time associated with the particular phase of the cardiac cycle of the heart; receive a 4D surface registration of the heart, the 4D surface registration being generated via a catheter comprising an ultrasound transducer, wherein the scan data and the 4D surface registration are obtained via different imaging modalities, wherein an error associated with each of a plurality of points in the 4D surface registration is determined based on a distance between each one of the points and an image center of an image captured by the ultrasound transducer; determine a weight for each one of the 4D surface registration points, based on the determined error associated with each one of the plurality of points in the 4D surface registration; register the 4D heart model with the 4D surface registration with a transformation function, using the weighted 4D registration points; and update the transformation function until the transformation function does not change more than a defined threshold.

17. The non-transitory computer readable medium of claim 16, further comprising instructions executable by the processor to receive position data acquired from a position sensor disposed on the catheter.

18. The non-transitory computer readable medium of claim 17, further comprising instructions executable by the processor to determine an orientation of the catheter based on the received position data.

19. The non-transitory computer readable medium of claim 18, wherein the position sensor comprises a magnetic positioning sensor.

Description

BRIEF DESCRIPTION OF THE DRAWINGS

(1) Various embodiments of the present invention are described herein by way of example in conjunction with the following figures wherein:

(2) FIG. 1 is a diagram of a catheter navigation system according to various embodiments of the present invention;

(3) FIG. 2 is a diagram of the distal end of a catheter for use in the catheter navigation system of FIG. 1 according to various embodiments of the present invention;

(4) FIG. 3 is a flow chart of the process flow of the image-processing module of the catheter navigation system of FIG. 1 according to various embodiments of the present invention;

(5) FIG. 4A shows a CT scan of a human heart, FIG. 4B shows a segmented CT scan, and FIGS. 4C and 4D show models of the heart at different times in the cardiac cycle;

(6) FIGS. 5A and 5B shows an example of time alignment between a model and sets of registration points;

(7) FIGS. 6A and 6B illustrate ultrasound distribution error;

(8) FIGS. 7A and 7B illustrate an example of non-rigid local registration;

(9) FIGS. 8 and 9 illustrate the concept of “virtual touch,” whereby, according to various embodiments of the present invention, clinicians can take numerous ultrasound images of an object (e.g., a heart) to capture 4D surface registration points for the object;

(10) FIG. 10 shows an example of a 4D heart model;

(11) FIG. 11 shows an example of space registration; and

(12) FIG. 12 shows an example of a real-time, high-resolution image output by the image-processing module of the catheter navigation system of FIG. 1 according to various embodiments of the present invention.

DETAILED DESCRIPTION OF THE INVENTION

(13) FIG. 1 is a simplified diagram of a catheter navigation system 10 according to various embodiments of the present invention. As shown in FIG. 1, the catheter navigation system may comprise a catheter 12, which may be inserted into the body of a subject (not shown). The catheter navigation system 10 generates high resolution, 3D, real-time images of the environment of the catheter 12. The catheter navigation system 10 is especially useful in producing high resolution, 3D, real-time images of non-rigid and/or topographically complex bodies, such as, for example, the human heart. In particular, the catheter navigation system 10 is especially useful for procedures involving the left atrium such as left atrium ablation.

(14) As shown in FIG. 2, the catheter 12, according to various embodiments, may include an elongated flexible or rigid plastic tubular body 18 having a distal end 20 and a proximal end 22. At the distal end 20, the catheter 10 may include an ultrasound transducer 23 for transmitting ultrasound and for receiving resultant echoes from surrounding objects (such as the inner walls of a heart when the catheter 12 is positioned inside the heart) so as to provide a field of view for the distal end 20 of the catheter 12.

(15) The catheter 10 may also include a magnetic position sensor 24, which may comprise a number of coils (not shown) for detecting signals emitted from a transmitter 26 of a position tracking system 28 (see FIG. 1). For example, the magnetic position sensor 24 may comprise three mutually orthogonal coils. The transmitter 26 may also include, for example, three mutually orthogonal emitting coils. The sensor 24 may detect magnetic fields produced by the transmitter 26 and the output of the sensor 24 may be input to a position tracking processing unit 30 (see FIG. 1) of the position tracking system 28. Based on the signals received by the sensor 24, the position tracking processing unit 28 may compute the position and orientation (roll, pitch, and yaw) of the sensor 24 (and hence the position and orientation of the distal end 22 of the catheter 10). The processing unit 28 may comprise, for example, a PCB with a processor and firmware for computing the position of the position 24 based on the received signals. The processing unit 28 may also input control signals to a drive control unit (not shown) for the transmitter 26 to activate selectively the desired output from the transmitter 26. According to various embodiments, the microBIRD position tracking system from Ascension Technologies could be used for the position tracking system 28. For more details, see published U.S. patent application Pub. No. 2004/0088136 A1, incorporated herein by reference.

(16) Using a catheter 12 with both an ultrasound transducer 23 and a position sensor 24 as described above not only allows the 3D coordinates, yaw, pitch, and roll of the catheter's tip (i.e., the distal end 20) to be determined, but also the 3D coordinates of every pixel in the ultrasound image as described below, thereby obviating the need to physically touch the subject's heart with the catheter to record registration points, as is required in the prior art.

(17) In various embodiments, the catheter 12 may also include an interventional device, such as, for example, an ablation device, a drug/cell delivery device, a suture device, a pacing device, an occlusion/excision instrument, etc. In FIG. 2, the catheter 10 is shown as having an ablation device 32 for ablating an area of the subject, such as the inner walls of the subject's heart. Left atrium ablation is a procedure that attempts to cure atrial fibrillation. During the surgery, an ablation catheter is inserted into the left atrium through the vein. Clinicians need to navigate the ablation catheter to ablate the areas where the left and right pulmonary veins meet the left atrium. With the ultrasound transducer 23 and the ablation device 32 on one catheter 10, the clinician may only need to insert one catheter into the subject's heart to both (1) acquire the images of the heart and (2) perform the ablation.

(18) According to other embodiments, two or more catheters could be used. In such embodiments, the clinician could insert a second catheter (the ablation catheter) into the relevant area of the heart where the second catheter includes the ablation device. Preferably, such an ablation catheter would also include a position sensor so that the position tracking system 28 could track the position and orientation of the second catheter. That way, the clinician could use one catheter for acquiring the ultrasound images and the other catheter to perform the ablation.

(19) Referring back to FIG. 1, the received ultrasound images picked up by the ultrasound transducer 23 are input to an image processing module 40 of a computer device 42. The catheter 12 may be in communication with the computing device 42 using any suitable type of communication interface, such as a wired interface (e.g., RS-232 or USB) or a wireless interface.

(20) The image processing module 40, as described in more detail below, may generate high resolution, real-time 3D images of the object being scanned by the catheter 10 (such as the inner walls of the subject's heart) based on (i) the ultrasound images picked up by the ultrasound transducer 23, (ii) data regarding the position of the catheter 10 from the position tracking system 28, (iii) previously acquired high resolution image data of the object (e.g., the subject's heart), which may be stored in a memory unit 44, and (iv) timing signals (e.g., electrocardiogram (ECG) signals from a ECG system 29). As described in more detail below, the image-processing module 40 may first perform a time-space registration between a 4D model of the subject area (e.g., the subject's heart) and surface registration points on the ultrasound images from the catheter 12. Once the registration is complete, the image processing module 40 may generate and output real-time, high resolution 3D models of the subject (e.g., the subject's heart) on a display unit 46, which can be viewed by a clinician (e.g., a surgeon) as the clinician moves the catheter 12 as part of a medical procedure (e.g., a left atrium ablation). The real-time images may be based on real-time ultrasound image data being captured by the catheter 12 as part of the procedure, the position of the catheter 12 (as determined by the position tracking system 28), and on the timing signals (e.g., the ECG signals).

(21) The ECG system 29 may measure the electrical activity of the subject's heart as is known in the art. As described in more detail below, the ECG signals from the subject may be used to synchronize the ultrasound image data captured by the catheter 12 with the 4D heart model.

(22) The computer device 42 may be implemented as any type of computer device suitable for the application. For example, the computer device 42 may be a personal computer, a workstation, etc. The image-processing module 40 may be implemented as software code to be executed by a processor (not shown) of the computer device 40 using any suitable computer language using, for example, conventional or object-oriented techniques. The software code may be stored as a series of instructions or commands on a computer-readable medium, such as a random access memory (RAM), a read-only memory (ROM), a magnetic medium such as a hard drive or a floppy disk, or an optical medium, such as a CD-ROM. The memory unit 44 storing the previously acquired high-resolution image data of the object may also be a random access memory (RAM), a read-only memory (ROM), a magnetic medium such as a hard drive or a floppy disk, or an optical medium, such as a CD-ROM. The display unit 46 may be any suitable type of monitor, such as a LCD display, for example. In addition, according to various embodiments, the position-tracking unit 30 could be implemented as a module of the computer device 42.

(23) FIG. 3 is a diagram of the process flow of the image-processing module 40 according to various embodiments of the present embodiment. In the following description, it is presumed that the catheter 10 is inserted into a human heart and is that the image-processing module 40 is for generating high resolution, real time, 3D images of the heart, although it should be recognized that the catheter navigation system could be used for other purposes.

(24) At step 50, the image processing module 40 creates a 4D model of the subject's heart based on previously-acquired high resolution image data of the subject's heart, which may be stored in memory unit 44. The previously acquired high-resolution image data may be acquired by any suitable means, including, for example, computer tomography (CT) scans or magnetic resonance imaging (MRI). The high-resolution image data is preferably acquired before the catheterization such as, for example, one day before under the assumption that the heart shape will not change in such a short period of time. The high-resolution image data may depict the subject's heart in three spatial dimensions at successive points (or phases) of the cardiac cycle. Thus, time is the fourth dimension. According to various embodiments, a CT scanner that generates a 3D heart scan at every 10% of a cardiac cycle may be used, so that in total there may be ten 3D CT scans for one cardiac cycle. Such a CT scanner is available from General Electric.

(25) To construct the 4D model, data for the left atrium may be segmented out manually. Then the image-processing module 40 may extract the surface model from the segmented CT data using, for example, the Marching Cube (MC) algorithm. The density threshold of MC algorithm may be set to represent the surface between blood and heart muscle. Small floating parts may be removed by discarding all triangles except those in the largest connecting group of the model. Post processing may be performed to smooth the model and reduce artifacts based on geometry cues with an implicit integration method. For more details, see Mathieu Desbrun et al., “Implicit fairing of irregular meshes using diffusion and curvature flow”, Computer Graphics, 33 (Annual Conference Series):317-324, 1999, which is incorporated herein by reference. For ten CT scans, ten surface models can be extracted across one cardiac cycle, with each model corresponding to the shape of the left atrium at one time (or phase) within the cardiac cycle. This is the 4D heart shape model. The example of FIG. 10 shows two 3D heart models as different points in the cardiac cycle. Because the heart is beating, the shape changes through the cycle.

(26) Next, at step 52, 4D surface registration points on the inner walls of the subject's heart are captured based on the ultrasound images captured by the catheter 12. In the past, the clinician had to touch physically the catheter to the wall of the heart to capture each surface point. In contrast, with embodiments of the present invention, the catheter 12 can capture tens of thousands of high quality surface points within a few minutes without physically touching the heart wall. The inventors refer to this technique as “virtual touch.” “Virtual touch” can scan a rough 4D heart shape (thousands of wall points) during the operation. This heart shape may not have the high resolution of a CT scan but it is what the heart is like during the operation. Such rough shape has much more information than just a few points on the heart wall and it may greatly improve the accuracy and stability of registration.

(27) With a catheter having a position sensor 24, when the clinician moves the catheter 12 to a certain location and takes an ultrasound image of the heart, the clinician can see those pixels that are on the heart wall, as shown in the examples of FIGS. 8 and 9. Usually these pixels have high gradient values and they can be detected by image processing algorithms such as edge detectors. Not all of the pixels that are on the heart wall need to be detected, but rather only the ones with the highest confidence levels. Using a catheter 12 with a position sensor 24 allows not only the tip, but also every ultrasound image pixel's 3D coordinates to be computed based on information from the magnetic position tracking system 28. Thus, detecting those pixels that are on the wall is equivalent to having physically moved the catheter to that location, touched the heart wall and recorded the catheter tip's 3D coordinates. For one ultrasound image, it is not difficult to touch virtually hundreds of points that are on the heart wall. Moreover, the clinician can move the catheter 12 inside the heart and take ultrasound images moving the catheter.

(28) The locations and times of those ultrasound images are also recorded. For each image, one virtually touches the heart wall. The registration points from one ultrasound image may have the same time coordinate as when the image is taken. The time coordinate may be between 0 and 1, where 0 means at the beginning of a cardiac cycle and 1 designates the end of a cardiac cycle. Intuitively, more registration points usually generate a better registration result. By using a catheter with a position sensor, one can record real time ultrasound video while moving the catheter and, as a result, hundreds or thousands of registration points can be captured.

(29) Each 3D surface model extracted from the CT data may therefore correspond to a time t∈[0, 1] (suppose t=0 is at the beginning of a cardiac cycle and t=1 is at the end of a cardiac cycle) in a cardiac cycle when the heart was CT scanned. In the description to follow, C={C.sub.0, C.sub.1, . . . , C.sub.n-1} is used to represent the 4D heart model, where n is the number of 3D models for one cardiac cycle. For example, n may equal ten, corresponding to one 3D CT scan at every 10% of a cardiac cycle, so ten surface models may be extracted, corresponding to C={C.sub.0, C.sub.1, . . . , C.sub.9}, where each model C.sub.i represents the heart shape at time t=i/10, i=0, 1, . . . , 9. An example of this process is shown in FIGS. 4A-4D.

(30) Referring back to FIG. 3, at step 54, the image processing module 15 may register the 4D heart model to the 4D surface registration points. Both the 4D heart model and the 4D surface registration points may be synchronized with ECG signals (from the ECG system 29) as the time coordinates. As shown in FIG. 3, the registration step may comprise two processes: first, at step 56, a rigid, global space-time registration between the 4D heart model and the 4D surface registration points; and second, at step 58, a local non-rigid registration to further improve the registration accuracy. As explained below, the first process may comprise, tentatively finding a transformation function F that can align the 4D surface registration points to the 4D heart model so that most or all the 4D surface registration points are on the inner heart wall of the model, as shown in the example of FIG. 11. FIG. 11 shows an example of registration points and a heart model before and after registration. As can be seen in the right-hand side image in FIG. 11, after registration the surface points are on the heart walls of the model. The time axis is also preferably aligned. The local non-rigid registration (step 56) may employ a free-form non-rigid registration.

(31) For the global, rigid time-space registration, an initial space registration can be done in a coarse-to-fine scheme. First, a rough alignment can be found based on the orientation of the subject on the bed. This rough alignment can be further refined by some points captured on some designated regions of the heart. These regions should be easy to locate solely from ultrasound images, such as the entrance region of pulmonary veins. Then an alignment can be found so that these points are near the same regions in the heart model as where they were captured.

(32) Time registration may be equal to a correspondence scheme S that indicates for any point set P.sub.i in P, which C.sub.j in C is its correspondence according to time. The heart model C={C.sub.0, C.sub.1, . . . , C.sub.9} and the 4D surface registration points P={P.sub.0, P.sub.1, . . . , P.sub.9} were preferably captured both at t=0, 0.1, . . . , 0.9. Ideally, the time registration should be P.sub.i corresponds to C.sub.i for any i. Preferably, both the heart model and the surface registration points are synchronized to the ECG signal to determine the time coordinate. Under different conditions, sometimes the patient's heart beat rate is not stable, in which case the one-on-one correspondence of C.sub.i with P.sub.i may not be true. So time alignment may be necessary, as shown in FIGS. 5A and 5B. In these figures, the upper row represents models and lower row represents point sets. The x-axis represents time. In the initial time alignment, shown in FIG. 5A, a one-on-one correspondence may be assumed. The best correspondence scheme, shown in FIG. 5B, will be found after time alignment. For initial time registration, the correspondence scheme of P.sub.i to C.sub.i for any i∈[0; 9] may be used.

(33) The 4D registration algorithm employed by the image-processing module 40 may assume errors have a Gaussian distribution. In that case, the registration algorithm needs to find a space transformation function F and a time correspondence scheme S that maximizes the expectation of log likelihood of p(F(P)|S, C). The probability p(F(P)|S, C) can be defined as:

(34) p ( F ( P ) | S , C ) = .Math. i p ( F ( P i | C si ) = .Math. i ( exp ( - .Math. F ( P i ) , C si .Math. ) ) ( 1 )
Here C.sub.si is the corresponding model for P.sub.i defined by scheme S. Each p(F(P.sub.i)|C.sub.si) can be defined as an exponential function of the average distance from every point in F(P.sub.i) to model C.sub.si, which is written as ∥F(P.sub.i), C.sub.si∥.

(35) The number of n (number of CT scans within a cardiac cycle) and m (number of time spots the magnetic tracking system can record point coordinates) can be adjusted so that n=m×d, where d is an integer. According to various embodiments, the t coordinates of the magnetic tracked points and the surface models from the CT scans can be assumed to be perfectly synchronized. Then any magnetic tracked point in point set P.sub.i should have the same t coordinate as heart model C.sub.ixd. If the t in the CT scans and magnetic tracking system are not perfectly synchronized, a definite one-on-one correspondence may not exist. If P.sub.i is assumed to be independent of all other C.sub.j except the corresponding one C.sub.ixd, then
P(F(P)|C)=p(F(P)|C.sub.1.Math.p(F(P.sub.2)|C.sub.2×d).Math. . . . .Math.p(F(P.sub.m)|C.sub.n)  (2)
where n=m×d.

(36) The probability of p(F(P.sub.i)|C.sub.j) can de defined as the exponential function of the average square distance from each point in F(P.sub.i) to the surface model C.sub.j:

(37) p ( F ( P i ) | C j ) = exp ( - .Math. p k P i .Math. p k - C j .Math. 2 .Math. P i .Math. ) ( 3 )
The distance from a point to a model ∥P.sub.k−C.sub.j∥ may be defined as the distance from point P.sub.k∈P.sub.i to its nearest point in the surface model C.sub.j. |P.sub.i| is the number of points in P.sub.i.

(38) To maximize the probability in equation (2), a modified ICP (Iterative Closest Point) algorithm may be used. For more details, see P. J. Besl et al., “A method for registration of 3-d shapes,” IEEE Trans. Pattern Analysis and Machine Intelligence, pages 14:239-256, 1992, which is incorporated herein by reference. The ICP algorithm iteratively minimizes the distance between a set of points P and model C. In a standard ICP algorithm, each iteration contains two steps:

(39) Compute the nearest point in Model C for each point in point set P.

(40) Find a transformation F that can minimize the distance from P to their nearest points, and then replace P with F(P) and repeat. According to embodiments of the present invention, during the first step, for each point set P.sub.i, the nearest point set P.sub.near_i can be found only from model C.sub.ixd. In order to maximize the whole p(F(P)|C) other than any single term of p(F(P.sub.i)|C.sub.J), in the second step, all the point sets may be combined together as well as their nearest point sets, P.sub.combine=U.sub.i=1.sup.mP.sub.i and P.sub.near_combine=U.sub.i=1.sup.mP.sub.near_i, and a transformation F may be found like in standard ICP for this combined point set P.sub.combine and P.sub.combine_near. In this way, a transformation function F that maximizes the probability p(F(P)|C) can be found. The modified ICP can be summarized as:

(41) Compute the nearest point set P.sub.near_i for each P.sub.i in their corresponding model C.sub.ixd.

(42) Combine point sets P.sub.combine=U.sub.i=1.sup.mP.sub.i and P.sub.near_combineU.sub.i=1.sup.mP.sub.near_i, and find a transformation function F that minimizes the distance from F(P.sub.combine) to P.sub.near_combine, then replace the original P.sub.i with F(P.sub.i) and repeat. There are many ways to accelerate ICP and make it more robust. Any or all those algorithms can be applied according to various embodiments of the present invention. For example, a K-D tree acceleration may be used for the nearest neighbor search, and to ensure convergence to a global minimum, a random perturbation may be added to the found results and the ICP algorithm may be re-run.

(43) During a heart operation, the t coordinates from the position tracking system 28 may not be perfectly aligned with those from high-resolution data (e.g., CT data) used in the 4D heart model because they are captured at different times. This means point set P.sub.i may not truly correspond to model Card. Thus, both the time correspondence as well as the space alignment preferably must be determined.

(44) According to various embodiments, it may be assumed that for any point set P.sub.i, the possible corresponding models are C.sub.ixd and its closest neighboring models such as Cixd±k, for example, if four neighbors are taken then k=[1, 2]. This assumption is valid because the timing difference of the magnetic tracked points and CT models are known not to be very large. All the candidate models for a point set P.sub.i may be written as C.sub.ij where j=[1, 5] if four neighbors are used and C.sub.ixd itself. A scheme S may be defined that selects one C.sub.ij as the corresponding model for each point set P.sub.i.

(45) The probability that is needed to maximize becomes p(F(P)|S, C), which is difficult to compute directly since S is not known. According to various embodiments, an EM algorithm can be used that can maximize this probability by maximizing the expected log likelihood log(p(F(P)|S, C)), assuming S is a hidden random variable.

(46) To use the EM algorithm, the Q function, or the expected log likelihood, must be determined. If S is a random variable, then the expected log likelihood becomes:

(47) Q ( F ( P ) , S , C ) = .Math. S log ( p ( F ( P ) | S , C ) ) f ( S | C , F ( k - 1 ) ( P ) ) , ( 4 )
log(p(F(P)|S, C)) is the log likelihood and f(S|C, F.sup.(k-1)(P)) is the probability of a correspondence scheme S given the data C and alignment F.sup.(k-1)(P) found in the last iteration. It can be computed by:

(48) f ( S | C , F ( k - 1 ) ( P ) ) = p ( F ( k - 1 ) ( P ) | C , S ) p ( S | C ) .Math. S p ( F ( k - 1 ) ( P ) | C , S ) p ( S | C ) ( 5 )
where p(F.sup.(k-1)(P)|C, S) is the probability of transformed points in the last iteration given model C, and the corresponding model for each point set P.sub.i is determined by S. p(S|C) is the prior probability of every correspondence scheme S. Next is to maximize the Q function.

(49) In the E step, the probability f(S|C, F.sup.(k-1)(P)) is computed for any S with the following formula:

(50) f ( S | C , F ( k - 1 ) ( P ) ) = 1 a p ( F ( k - 1 ) ( P ) | C , S ) p ( S | C ) ( 6 )
where a is the normalization term. The probability p(F.sup.(k-1)(P)|C, S) may be computed with the formula it Π.sub.i=.sup.m p(F.sub.(k-1)(P.sub.i)|C.sub.ij), where the corresponding C.sub.ij for P.sub.i is defined by S. F.sup.(k-1) is known, given the correspondence from S, p(F.sup.(k-1)(P)|C.sub.ij can be computed with equation (3). Now each f(S|C, F.sup.(k-1)(P)) is known and can be represented by f(S) in the M step.
In the M step, since the f(S) is known, which is the probability of any S given C and F.sup.(k-1), the Q function in equation (4) becomes

(51) Q = .Math. S log ( p ( F ( P ) | C , S ) ) f ( S ) . ( 6 b )
Then, to maximize the Q function is equivalent to maximizing the function below:

(52) arg max F .Math. log ( p ( F ) ( P ) | C , S ) f ( S ) ) = arg max F .Math. S log ( .Math. i = 1 m p ( F ) ( P i ) | C ij ) S ) f ( S ) ) = arg max F .Math. S ( .Math. i = 1 m p ( F ) ( P i ) | C ij ) S ) f ( S ) ) = arg max F .Math. S .Math. i = 1 m .Math. F ( P i ) - C ij .Math. ) f ( S )
where the corresponding model C.sub.ij is defined by S. Here it can be seen that the problem becomes to find a transformation function F to minimize a weighted distance function. For each scheme S, the distance function ∥F(P.sub.i)−C.sub.ij∥.sub.s (in which the C.sub.ij is the corresponding model of P.sub.i defined by the particular S) is weighted by f(S) computed in E step. This minimization can be done by the modified ICP algorithm described above. The only difference is here that a weight is added when the points are combined together.

(53) Then the F.sup.(k-1) may be replaced with the new F and process repeat. The EM algorithm may stop when transformation function F does not change more than a certain threshold or the alignment error is below a certain threshold. The initial values of F may be computed under the correspondence scheme in the ideal situation where Pi corresponds to C.sub.ixd.

(54) When “virtual touch” is used to collect surface registration points, the error distribution is different from when a physical touch is used, as in the prior art. Pixels extracted from different regions of the ultrasound image tend to have different error distributions and the registration algorithm should be modified accordingly. The following describes a detailed error model for “virtual touch” points.

(55) Suppose one wants to know the error distribution of a pixel p that is d mm from the ultrasound image center O. To make the analysis easier, a local coordinate system may be used whose origin is at p, the X axis is on the image plane and perpendicular to the radius from O through p, the Y axis is the radius from image center O through p, and the Z axis is perpendicular to the image plane as shown in FIG. 6B.

(56) The image plane's angular error has two components as shown in FIG. 6A, one is the off plane angle β, and the other is the on plane angle α. All these angles are based on rotation pivot at the ultrasound image center O. These angles may be captured by the magnetic position sensor 24, which may have a few small coils inside it, which have known relative positions. Based on the position readings of these coils, the angles can be calculated. The position of the small coil may be assumed have an error of normal distribution N(0, Σ.sub.c) and the small coil has a distance d.sub.c to the image center. Then, when the 3D coordinate of a pixel is reconstructed which is d away from image center, it will have an error of normal distribution

(57) N ( 0 , d d c .Math. c ) .
This means the error has been enlarged when the distance to the image center increases. Such error is only within the X-Z plane of the local coordinate system.

(58) Ultrasound imaging devices calculate the echo energy of sound waves sent out from the image center to determine the surface's distance from the image center. Because the ultrasound image plane is not infinitely thin, when a plane with a thickness hits a surface, it will generate a band instead of a thin line in the ultrasound image. The thickness of the image plane increases proportionally to the distance from the image center. The error along the radius or Y-axis of the local coordinate system can be assumed to have a normal distribution of N(0, dσ.sub.d) where d is the distance of the pixel from image center.

(59) Finally, the ultrasound image center O may have a normal error distribution. It will affect the 3D reconstruction of all the pixels in ultrasound image because all the coordinates are calculated relative to that of O. Combining all the errors together, in the local coordinate system of point p, the error can be modeled as a normal distribution with a mean of zero and a covariance matrix of:

(60) .Math. d = d .Math. 1 + .Math. O = d ( σ c 1 0 0 0 σ r 0 0 0 σ c 2 ) + ( σ O 1 0 0 0 σ O 2 0 0 0 σ O 3 ) ( 7 )
σ.sub.c1, σ.sub.c2, and σ.sub.c3 are variance on the X, Y, and Z-axes of the local coordinate system of a pixel that is 1 mm away from the image center. For a pixel that is d mm from image center, the covariance matrix is d times Σ.sub.1. Σ.sub.O is the position error of the image center O.

(61) Assume a point p(x, y, z) captured on an ultrasound image whose center is 0 and its normal is N. The local coordinate system's Y-axis will be (p−O)/d where d is the distance from p to O. The Z-axis will be the plane normal N. The X-axis will be (Y×N). The origin of the local coordinate system will be p. Then, a transformation matrix M can be defined that transforms the global coordinate system into this local coordinate system and the error distribution's covariance matrix Σ for P can be written as:

(62) 0 .Math. p = M .Math. d M T ( 8 )

(63) The Σ.sub.d is defined in equation (7) above. In the local coordinate system, Σ.sub.d is a diagonal matrix, but in the global coordinate system, Σ.sub.p usually is not a diagonal matrix. The covariance matrix of the error distribution is dependent on p's position and the image plane's orientation from which p is extracted. So any surface registration point p will have a unique error distribution function N(0, Σ.sub.p).

(64) The registration algorithm maximizes the probability of F(P) and C where P is the surface registration point set, F( ) is the current registration function, and C is the CT heart model. If the error distribution function is assumed to be a normal distribution, to maximize the probability equals to minimize the distance:

(65) arg min F .Math. i = 1 m ( F ( p i ) - C pi ) .Math. p i - 1 ( F ( p i ) - C pi ) T ( 9 )
where m is the number of points in P, p.sub.i is the i′th point in point set P, C.sub.pi is the corresponding point of p.sub.i on heart model C. Σ.sub.pi is the covariance matrix for point p.sub.i as defined in equation (8). In equation (9), the distance is weighted by

(66) .Math. p i - 1 ,
so those points that have larger Σ.sub.pi (larger errors) will be weighted down accordingly. Points that are captured more accurately will have larger weight in the sum of distance. And since the Σ.sub.pi is not diagonal, the correlation of different axes has been considered as well.

(67) Referring back to FIG. 3, at step 58, a local, free-form non-rigid registration may be performed to improve the accuracy of the registration at step 54. As mentioned previously, the catheter navigation system 10 can be used for left atrium ablation procedures. The left atrium is a highly motile and non-rigid object. Non-rigid shape changes result from multiple sources including: (1) the cardiac cycle or heart beat; (2) the breath cycle (i.e., the pressure changes of the lungs); and (3) other sources, like blood pressure, medicine and medical instruments. Preferably, a radial basis function is used to do the local non-rigid registration as described below.

(68) Suppose the intra-operative surface registration point set is P=(p.sub.1, p.sub.2, . . . , p.sub.n), and the heart model from CT is C. After global rigid registration, P and C still have difference D=(d.sub.1, d.sub.2, . . . , d). Here P is after the global registration. Each d.sub.i may be defined as d.sub.i=P.sub.i−C.sub.pi, where C.sub.pi is the nearest point of p.sub.i in model C. The free-form non-rigid registration should find a transformation function F.sub.local(C) so that for any i∈{1, 2, . . . , n},
p.sub.i=F.sub.local(C.sub.pi)  (10)
which means that after this non-rigid local transformation F.sub.local, all the surface registration points should be on the surface of the transformed model F.sub.local(C). Usually the F.sub.local(p) at any 3D position p=(x, y, z) has the form of:

(69) F local ( p ) = p + .Math. i = 1 n a i .Math. Φ ( .Math. p - C p i .Math. ) ( 11 )
where ∥*∥ is the distance between two 3D points, a.sub.i is a 3D vector, also known as the coefficient for each point C.sub.pi, and Φ( ) is a radial basis function. For any point p, F.sub.local(p) add an offset to p. The offset is a weighted sum of all coefficients a.sub.i weighted by the radial basis function of the distance from p to C.sub.pi. Also, ∥p−C.sub.pi∥ can be computed. With the constraint in equation (10), enough equations exist to solve each a.sub.i:

(70) p i = C p i + .Math. k = 1 n a k .Math. Φ ( .Math. C p i - C p k .Math. ) ( 12 )

(71) A compactly supported positive definite radial basis function can be chose which ensures there is solution for equation (12):

(72) Φ ( X ) = ϕ ( .Math. X .Math. s ) ( 13 ) ϕ ( r ) = ( 1 - r ) + 4 ( 3 r 3 + 12 r 2 + 16 r + 4 ) , r 0 ( 14 )
where (1−r).sub.+=max(1−r, 0), s is a pre-defined scale. For more information on compactly supported positive definite radial basis functions, see Z. Wu, “Multivariate compactly supported positive definite radial functions,” AICM, volume 4, pages 283-292, 1995, which is incorporated by reference. This compactly supported radial basis ensures that each surface registration point only affects the non-rigid transformation locally. Also, it can reduce the computational cost. Moreover, equation (14) has been shown to have C.sup.2 continuity. Therefore, the F.sub.local is C.sup.2 continuous in the space and it satisfies the constraint shown in equation (11).

(73) One example of this non-rigid local registration is shown in FIGS. 7A and 7B. Suppose that in a 3D model of a plane, there are several surface points that show the object is actually is curved. Rigid global registration cannot find a good alignment of the points and the model (see FIG. 7A). Using a radial basis local non-rigid registration, the model can be modified according to the surface points locally and non-rigidly. The result is a much better fit for the points (see FIG. 7B).

(74) Once the registration is complete, as shown in FIG. 3, as the clinician moves the catheter 12 as part of a medical procedure (e.g., a left atrium ablation), at step 59, the image processing module 40 may output real-time, high resolution 3D models of the subject (e.g., the subject's heart) on the display unit 46, as shown in FIG. 12. The real-time high-resolution image may be generated based on data 60, including the ultrasound image data captured by the catheter 12, the position of the catheter 12 (as determined by the position tracking system 28), and on the timing signals (e.g., the ECG signals). The displayed real-time 3D heart module can aid the clinician in performing the procedure.

(75) In various embodiments, the present invention can provide the following advantages. First, it can be more reliable than conventional catheter navigation systems. Because one does not need to touch physically the heart wall with the catheter but just to move the catheter inside the left atrium and take some pictures, there is no risk of pushing the heart wall too much nor the risk that a pixel is not actually on the heart wall.

(76) Second, embodiments of the present invention can be faster than the prior art. When one takes one ultrasound image at one location with a catheter according to the present invention, one can capture tens or hundreds of points by virtual touch. This is much more efficient than previous methods. As a result, registration results could be more accurate. It is currently thought that the more registration points taken, the better the registration results. Because it is much faster and more reliable to capture registration points with a catheter according to embodiments of the present invention, one can capture tens or hundreds of times more points in the same amount of time using this technology than is possible with previous methods. This will result in better registration results.

(77) Third, there may be a higher confidence of ablation sites. After registration, clinicians may navigate the catheter 12 based on the registration result. The 3D position of the ablation tip will be displayed with the heart model in real time. When a clinician moves the catheter near the site where the ablation should be performed, the ultrasound images from the heart wall can be visually verified. This adds confidence over merely measuring the distance from catheter tip position to the heart model's wall.

(78) Various embodiments of the present invention are therefore directed to a method for producing images of a subject (e.g., a person's heart). The method may comprise the steps of (1) acquiring ultrasound images of the subject with a catheter comprising a position sensor; (2) capturing a plurality of 4D surface registration points in the acquired ultrasound images corresponding to points on the subject; and (3) registering a high resolution 4D model (e.g., a CT scan model) of the subject with the plurality of 4D surface registration points. The method may also comprise displaying high resolution, real-time images of the subject during a medical procedure based on the registration of the high resolution 4D model to the 4D surface registration points.

(79) In another embodiment, the present invention is directed to a computer readable medium having stored thereon instructions, which when executed by a processor, cause the processor to: (1) capture a plurality of 4D surface registration points from a plurality of input ultrasound images corresponding to points on a subject's heart; and (2) register a high resolution 4D model (e.g., a CT scan model) of the subject's heart with the plurality of surface registration points. The computer readable medium may also comprise instructions that cause the processor to display high resolution, real-time images of the heart during a medical procedure on the subject based on the registration of the high resolution 4D model to the 4D surface registration point.

(80) In yet another embodiment, the present invention is directed to a catheter navigation system that comprises: (1) a catheter comprising an ultrasound transducer and a magnetic position sensor; (2) a position tracking system for tracking the position of the catheter based on signals received by the magnetic position sensor; (3) an image processing module in communication with the catheter and the position tracking system for: (i) capturing a plurality of 4D surface registration points from a plurality of ultrasound images of one or more inner heart walls of a subject's heart acquired by the catheter; and (ii) registering a high resolution 4D model of the subject's heart with the plurality of 4D surface registration points. The system may also comprise a display in communication with the image-processing module for displaying high-resolution images of the heart during a medical procedure on the subject based on the registration of the high resolution 4D model to the 4D surface registration points.

(81) In yet another embodiment, the present invention is directed to a method of performing a medical procedure on a subject (e.g., a heart of a human being). The method may comprise: (1) inserting, by a clinician (e.g., a surgeon), a first catheter into the subject (e.g., the subject's heart); (2) acquiring ultrasound images of the subject with the first catheter; (3) capturing, with a programmed computer device in communication with the catheter, a plurality of 4D surface registration points in the acquired ultrasound images corresponding to points on the subject (e.g., inner heart walls of the subject); (4) registering, with the programmed computer device, a high resolution 4D model of the subject with the plurality of surface registration points; and (5) displaying, on a display in communication with the computing device, high resolution, real-time images of the subject (e.g., the subject's heart) during the medical procedure based on the registration of the high resolution 4D model to the 4D surface registration points. In various implementations, the first catheter may comprise an interventional device. In other implementations, the clinician may insert a second catheter that comprises an interventional device into the subject.

(82) While several embodiments of the present invention have been described herein, it should be apparent that various modifications, alterations, and adaptations to those embodiments may occur to persons skilled in the art. It is therefore intended to cover all such modifications, alterations, and adaptations without departing from the scope and spirit of the present invention as defined by the appended claims