Skip to main content
NIHPA Author Manuscripts logoLink to NIHPA Author Manuscripts
. Author manuscript; available in PMC: 2014 Dec 31.
Published in final edited form as: Rep U S. 2013 Dec 31;2012:3792–3797. doi: 10.1109/IROS.2012.6386009

Space-Time Localization and Registration on the Beating Heart

Nathan A Wood 1, Kevin Waugh 2, Tian Yu Tommy Liu 1, Marco A Zenati 3, Cameron N Riviere 1
PMCID: PMC3915516  NIHMSID: NIHMS410312  PMID: 24511430

Abstract

This paper presents a framework for localizing a miniature epicardial crawling robot, HeartLander, on the beating heart using only 6-degree-of-freedom position measurements from an electromagnetic position tracker and a dynamic surface model of the heart. Using only this information, motion and observation models of the system are developed such that a particle filter can accurately estimate not only the location of the robot on the surface of the heart, but also the pose of the heart in the world coordinate frame as well as the current physiological phase of the heart. The presented framework is then demonstrated in simulation on a dynamic 3-D model of the human heart and a robot motion model which accurately mimics the behavior of the HeartLander robot.

I. Introduction

Due largely to the improvement in patient outcomes, minimally invasive cardiac therapies have become increasingly appealing in comparison to standard invasive cardiac surgeries. Although these methods provide many advantages for the patient, they possess a number of challenges due to the types of instruments and access points used. With no direct line of sight to the operation field, real-time medical imaging technologies, including magnetic resonance imaging (MRI) [1], fluoroscopy [2], and ultrasound [3], are often used to provide visual feedback for navigation.

Image guided surgery, which uses pre-operative medical images to provide a virtual view of the operating site, is also often used for visual feedback. In this framework the surgical device is often tracked using an electromagnetic position sensor, localized in and registered to the virtual model, and displayed in the visualization [4]–[6]. These methods, while possessing considerable power, can often be negatively affected by the dynamic nature of the heart. While the model of the heart is treated as a static body, deformations of almost 30 mm occur due to the physiological cycles of heartbeat and respiration [7]. For tools and surgical robots that move relatively freely in the cardiothoracic cavity, or inside the heart, accounting for this periodic motion poses a significant challenge due to the changing contact constraints. However, for a robot which adheres to the surface of the heart, this motion may be leveraged to improve localization and registration.

HeartLander, shown in Fig. 1, provides therapies to the heart by adhering to and moving over the epicardial surface. The robot is a miniature inchworm-style robot that adheres to the epicardial surface, inside the pericardium, using suction, and moves by extending and retracting drive wires connecting the two feet while alternating suction. Access to the heart is gained through a subxiphoid skin incision and a small incision in the pericardium at the apex of the heart. Previous work has successfully demonstrated the ability to access the pericardium, move over the surface of the heart, and reach targets accurately [8].

Fig. 1.

Fig. 1

The HeartLander robot.

The current methods used for localizing HeartLander on the surface of the heart use several approximations which limit accuracy. Position measurements of the robot come from a 6-degree-of-freedom electromagnetic tracking sensor (microBIRD, Ascension Technology) embedded in the front foot of the robot. The surface of the heart, as previously mentioned, is a dynamic environment which undergoes periodic deformation due to both the heartbeat and respiration cycles. Because the system currently uses a static model of the heart generated from pre-operative CT images, these deformations are treated as noise and filtered out to estimate of the mean location of the robot [8]. This mean location is treated as the position of the robot on the surface of the static heart model. Registration between the map frame and measurement frame is found using markers placed on the chest wall which are identified in each frame. Transformations between the frames are then found using least squares methods.

Although HeartLander has shown considerable success in live animal testing, there remains the possibility of improving the accuracy of robot positioning. If, instead of rejecting the periodic deformations of the surface of the heart as noise, these motions, which vary over the surface of the heart, are treated as features which yield information about the current robot position on the heart, we may be able to improve localization accuracy. Assuming that we possess a map which fully defines how the surface of the heart moves through the physiological phases, this work presents a method for using the motion of the surface to localize on the surface. The concept was demonstrated in 2-D in [9]. In the present work, it is implemented and demonstrated in simulation on a 3-D surface model of the heart.

II. Related Work

Methods for registering and localizing in and around the heart are highly dependent upon the instrument or robot being used. Tully et al. use an electromagnetic tracker located at the distal end of a highly articulated snake-like robot to first the shape of the robot [4], and then use inequality constrained kalman filtering to correct registration and localization parameters when the model is found to violate geometric constraints, such as intersecting the pre-operative surface model [5].

Therapies which target the endocardium using intracardiac echo (ICE) catheters use ultrasound images to localize. One method generates a point cloud by extracting heart surface points from 2-dimensional ultrasound images at the catheter tip by rotating the catheter about its longitudinal axis. After sufficient points have been collected the point cloud is registered to a pre-operative model of the left atrium using an iterative closest point (ICP) method [10]. Another method uses a particle filter to recursively estimate the pose of the ICE catheter in the left atrium [6]. In this work the probability of a catheter tip pose is calculated by comparing virtual ultrasound images constructed from a pre-operative model with the actual ultrasound images. The predicted catheter pose is then determined as the weighted sum of the particles, and the registration parameters are then calculated using this pose estimate and measurements from an electromagnetic position tracker.

Several factors differentiate our current work from those presented. First, and most obvious, is that they all work from a static map of the environment so that the periodic motion of the heart is either rejected as noise or accounted for in the registration parameters. While the use of dynamic maps of the entire cardiothoracic cavity may be infeasible at the present time, considerable work has been done on generating models of the deforming heart including representations using splines [11], [12], finite element models [13], and statistical models [14].

A second difference is the measurements, or constraints, available in each system. In [4] the entire shape of the robot is used to constrain the robot with respect to the map. In [6], [10] two separate measurements are used to localize and estimate registration parameters. First the ultrasound images are used to localize within the map, then the position measurements from the electromagnetic tracker are used to register the model to the real world.

In our case, the only measurement available is 6-DOF pose from the electromagnetic tracker. Using only this measurement, along with the constraint that the robot must be on the surface of the heart, we estimate localization and registration parameters simultaneously.

III. Methods

A. Heart Surface Model

The work presented relies on possessing complete maps which describe the periodic motion of a surface. For our purposes, a map of a surface takes the form:

M=[x(φ),n(φ)], (1)

where φ ∈ (0, 1] is the phase, x⃗ are the Cartesian coordinates in map frame, and n⃗ are the surface normals.

In order to develop and test the following methods used for localizing on such surfaces, a surface model of a beating heart was derived from a spline-based model of the epicardium of a human subject [11]. The heart surface model is shown at four different phases of the cardiac cycle in Fig. 2.

Fig. 2.

Fig. 2

Model of the epicardial surface at cardiac phases, φ, of (a) φ = 0, (b) φ = 0.25, (c) φ = 0.5, and (d) φ = 0.75. The red background in (b)–(d) denotes the shape of the heart at φ = 0.

B. Simulated System

The simulated system is represented by a given map, M, and the following state vector:

st=[xrm(φ)qrm(φ)φxmwqmw]T, (2)

where xrm(φ) is the location of the robot on the surface in map coordinates, qrm(φ), is the quaternion orientation of the robot in map coordinates, φ is the current phase, xmw, is the location of the map in world coordinates, and qmw is the quaternion orientation of the map in world coordinates. Using this representation, the pose of the robot in the world frame is then:

xrw(φ)=qmwxrm(φ)qmw-1+xmw (3)
qrw(φ)=qmwqrm(φ) (4)

The phase of the system is advanced by:

φt=φt-1=ωdt, (5)

where the velocity, ω, is assumed to be constant. The location and orientation of the map in world coordinates are also assumed to be constant.

Control inputs to the robot, ut = (θt, dt), rotates the robot about the surface normal through an angle, θt, and moves the robot along the surface a distance dt in the robot’s x-direction. Using this framework, we wish to estimate the current state vector, st, using a particle filter.

C. Particle Filter Overview

This section gives a brief overview of the particle filter algorithm implemented in this work. A more in-depth treatment of the algorithm and related topics an be found in [15]. The particle filter is a nonparametric Bayes filter which represents the posterior distribution by a set of random samples drawn from the posterior. These samples of the posterior, or particles, are represented as:

St=[st1,st2,,stn], (6)

where each particle, sti, is a hypothesis of the true state of the system at time t. The set of particles, St, then approximates the belief state, where the likelihood for each state hypothesis is proportional to its Bayes posterior:

bel(st)~p(stz1:t,u1:t), (7)

where z1:t are all past measurements, and u1:t are all past control inputs. Because of this distribution the more probable regions of the state space will be more densely populated by particles. The particle filter, being a Bayes filter, recursively constructs the belief of the current state from the previous belief state. The general Bayes filter consists of two steps: prediction and correction. In the prediction step the predicted belief, bel¯(st), is determined by combining the transition probability using the current control input, ut, and the prior belief, bel(st−1).

bel¯(st)=st-1p(stut,st-1)bel(st-1) (8)

The predicted belief is then updated by incorporating the current measurement, zt.

bel(st)=ηp(ztst)bel¯(st) (9)

Because the particle filter represents the belief distribution by random samples from the posterior it differs slightly in form from the general Bayes filter, yet it is based on similar principles. In the prediction step, each particle, st-1i, i ∈ (1, N), where N is the number of particles, is advanced using the motion model. The advanced particle is drawn from the state transition distribution.

sit~p(stut,st-1i) (10)

The set of particles generated by incorporating the state transitions is the filter’s representation of the predicted belief distribution, bel¯(st). In order to incorporate the current measurement, zt, importance factors, or weights wti, for each particle is calculated as:

wti=wt-1ip(ztsti) (11)

The updated particle set, t, consists of each particle along with their respective weight. This set of particles represents the predicted distribution bel¯(st).

S¯t=S¯t+sti,wti (12)

In order to force the particle set from the predicted distribution, bel¯(st), to the posterior distribution, bel(st), the algorithm uses importance sampling. In importance sampling, N particles are drawn with replacement from the predicted set, where the probability of of drawing each sample is proportional to its weight, wti. After resampling each of the particles weight is set to one, and the particle set St is distributed according to the posterior, bel(st).

D. Particle Filter Implementation

1) Particle Initialization

In order to reduce the size of the space spanned by the state vector, which reduces the number of particles to sufficiently cover this space, it is assumed that at initialization an estimate of the position and orientation of the heart, as well as a single measurement of the pose of the robot in the world frame, are available. Using this information, along with confidence bounds on the position and orientation of the heart, a fixed number of particles, N, are generated such that each particle’s registration parameters lie within the confidence bounds of the initial estimate and the location and orientation of the robot on the surface of the heart, when transformed to world coordinates, would produce the initial measurement.

2) Motion Model

Incorporation of the control inputs in the state transition distribution is achieved through use of a robot motion model. As previously described, the control input ut = (θt, dt), rotates the robot about the surface normal through an angle, θt, and moves the robot along the surface a distance dt in the robot’s x-direction. In order to return a sample from the distribution p(stut,st-1i), noise is injected into the motion model. The angle and distance each particle moves on the surface is:

θti=θt+δθi, (13)
dti=dt+δui, (14)

where δθi and δdi are random samples drawn from N(0,σθ2) and N(0,σd2) respectively. Also, the same method is used to advance the phase of each particle.

φti=φt-1i+(ω+δωi)dt, (15)

where δωi is a random sample from N(0,σω2). The velocity of the cardiac phase, φ, is assumed to be known as this information can be measured in the clinical setting using an electrocardiogram (ECG).

The registration parameters, xmw and qmm, although stationary, also have noise added to ensure coverage of the space. The translational component of the registration parameter is advanced by:

xmtwi=xmt-1wi+δxmwivxi, (16)

where vxi is a unit vector uniformly sampled from Inline graphic, and δxmwi is a random sample drawn from N(0,σxmω2). While the rotational registration component is advanced by:

qmtwi=qvqiqmt-1wi, (17)
qvqi=[cosαi2sinαi2vqi], (18)

where vqi is a unit vector uniformly sampled from Inline graphic, and αi is a random sample drawn from N(0,σα2).

3) Measurement Model

The measurement assumed in this work is the 6-DOF pose of the robot in world frame. This measurement, zt, is composed of a position vector, x⃗z, and a quaternion orientation, q→z, which are constructed from the ground truth robot state vector as in (3)–(4) and corrupted with Gaussian noise. The weight of each particle is calculated as the probability of the measurement given the particle state. The particle weight is given by:

wti=wt-1ip(ztsti)=wt-1ip(xzsti)p(qzsti) (19)
p(xzsti)=ηxexp(||xz-xrwi||2σx2) (20)
p(qzsti)=ηqexp(βi2σβ2) (21)
βi=2arccos(qz·qrwi), (22)

where βi is the angle between the two rotations and a proper distance metric on SO(3) [16].

4) Resampling

The resampling procedure implemented in the system differs in two ways from the general resampling procedure previously mentioned. First, in order to decrease the risk of losing particle diversity resampling only occurs when the variance of the particle weights is sufficiently large, namely when the following holds:

var(wt)w¯t>γ, (23)

where t is the mean particle weight, and γ is a threshold value. The second strategy used to reduce the sampling error is known as low variance sampling [15]. Instead of just drawing independent samples based on each particle’s weight, this method ensures that any particle which has a weight greater than 1N, where N is the number of particles, is guaranteed to survive.

IV. Experiments

In order to test the feasibility of using the previously described particle filter framework to estimate localization and registration parameters 100 trials were run in the simulated system. For the trials the heart rate was set to 1.3 Hz. For each simulation a ground truth particle was randomly placed on the surface of the heart with randomly generated registration parameters. At each timestep the ground truth particle was commanded a random motion input such that the maximum robot velocity and path curvature were within the normal HeartLander operating parameters. Simulations were run for 500 time steps, or approximately 15 cardiac cycles.

In the experiment the number of particles was set to be N=2000. The particles were initialized such that each particles registration estimate was within 25 mm and 30° of the initialization estimate, and the phases were uniformly sampled. The motion and observation models as specified in section III-D were used with parameters set to: σθ2=0.002radians,σd2=0.03mm,σω2=0.01radians per second, σxmw2=0.25mm,σα2=0.002radians. The observation model parameters are set to: ηx = ηq = 1, σx2=1.4mm,σbeta2=0.009radians. The variance resampling threshold was set to be γ = 0.01.

Fig. 3 illustrates the progression of the particle filter through a typical run. The ground truth location of the robot is shown by the large black dot in each image. Fig. 3(a) shows the initialization of the filter, and demonstrates the randomized coverage of our state space. Fig. 3(b)–(g) shows the particle filter after from iterations 10–90, as the particles begins to form clusters around states with high likelihoods, and the most likely clusters become more dense. The reason a few separate clusters form is due to certain geometric symmetries in the surface. Certain distinct regions of the surface under different registration and phase can produce similar world-frame motion, and keeping a diverse set of hypothesis is the correct thing to do for the particle filter. Fig. 3(h) shows the particle filter after 115 iterations. At this point, we have gathered enough observations to greatly reduce the uncertainly in our location, and only a single cluster remain, achieving convergence. From this point onward, the particle filter retains the correct localization until the end of the run.

Fig. 3.

Fig. 3

Representative results of localizing on the surface of a beating heart using a particle filter. The ground truth position of the robot is shown by the large black dot. Each particle is represented by a small dot whose color denotes the particle weight. Low weights correspond to blue and high to red, with the color scale spanning the weights of the current particles. Plots correspond to (a) Filter initialization with particles randomly distributed over the surface, (b) after 10 iterations, (c) after 30 iterations, (d) after 40 iterations, (e) after 50 iterations, (f) after 70 iterations, (g) after 90 iterations, and (h) after 115 iterations

To make a prediction for the map-frame location of the ground truth using the particle filter at any time during the run, we take the weighted average of all particles. The reason we use an average of particles rather than simply outputting the single highest-weighted particle is for stability: as the weight on each particle is updated after every observation, the highest-weighted particle is likely to change often, and our localization output will be rather noisy.

We recorded the state estimation error made by the particle filter prediction output at each iteration of a run, and averaged the error over 100 runs to obtain a statistically significant result. Each of the 100 runs are completely independent with independent initializations. The results are shown in Fig 4(a)–(d). The error means and standard deviations observed at the end of the trials were phase error of 0.01 ± 0.01, position error of 0.40 ± 0.21 mm, and registration errors of 0.33 ± 0.14 mm and 0.38 ± 0.16°.

Fig. 4.

Fig. 4

Results of localization averaged over 100 runs for (a) phase error, (b) map frame position error, (c) registration position error, and (d) registration orientation error. Mean errors are denoted by solid lines and one standard deviation by dashed lines. Errors for each run are calculated between the ground truth and the weighted average of particles. Position errors are calculated using the euclidean distance, phase and angle errors are absolute differences.

V. Discussion

While the results from the simulations are quite promising, there is significant work remaining in order to advance the presented work into real-world use. Our initialization procedure, which provided an initial estimate of the registration parameters, significantly reduced the number of particles required to adequately cover the state space, yet a large number of particles are still required to ensure convergence. Providing a more accurate estimate of the registration parameters could decrease the number of particles, as could providing bounds on the initial position of the robot on the surface of the heart. This is likely feasible in procedures as HeartLander is generally placed on the anterior surface near the apex of the heart. Further reductions may be achieved by incorporating cardiac phase measurements from an electrocardiogram (ECG).

Improvements to the algorithm may also show improvement over the existing framework. Inherent in the system is an ambiguity in the cause of error. It is not possible to determine if the error is due to an error in the location of the robot on the surface of the heart or in the registration parameters. The particle filter relies on the noise in the motion model to cover the state space and settle at a global minimum. A Rao-Blackwellized particle filter, which updates the registration parameters in a deterministic step, similar to the registration calculation in [6], [10], will likely improve performance.

The major hurdle to overcome is the construction of accurate dynamic pre-operative maps for use in actual interventions. As previously mentioned, there is considerable work in the medical imaging community addressing this and the authors remain confident that such maps will be more readily available in the near future.

VI. Conclusions

The presented work acts as a proof-of-concept for localizing on the beating heart using only a 6-DOF position measurement and a map of the heart. Although implementation in the operating room will require further work, the results produced show that not only is localization of mobile robots on a periodically deforming surface feasible, a well-tuned particle filter provides low-error estimates of the true location within a few hundred iterations, and within a few periods of the cyclical deformation. The motion model and observation model can be modeled with the limited data on currently available robot technologies such as simple 6-degree-of-freedom pose.

Acknowledgments

This work was supported in part by the U.S. National Institutes of Health under Grant nos. R01 HL078839 and R01 HL105911.

Contributor Information

Nathan A. Wood, Email: nwood@andrew.cmu.edu.

Kevin Waugh, Email: waugh@cs.cmu.edu.

Tian Yu Tommy Liu, Email: tianyul@andrew.cmu.edu.

Cameron N. Riviere, Email: camr@ri.cmu.edu.

References

  • 1.Omary RA, Green JD, Schirf BE, Li Y, Finn JP, Li D. Real-time magnetic resonance imaging-guided coronary catheterization in swine. Circulation. 2003;107(21):2656–2659. doi: 10.1161/01.CIR.0000074776.88681.F5. [DOI] [PubMed] [Google Scholar]
  • 2.Thiagalingam A, Manszke R, D’Avila A, Ho I, Locke AH, Ruskin JN, Chan RC, Reddy VY. Intraprocedural volume imaging of the left atrium and pulmonary veins with rotational x-ray angiography: Implications for catheter ablation of atrial fibrillation. Journal of Cardiovascular Electrophysiology. 2008;19(3):293–300. doi: 10.1111/j.1540-8167.2007.01013.x. [DOI] [PubMed] [Google Scholar]
  • 3.Novotny P, Stoll J, Dupont P, Howe R. Real-time visual servoing of a robot using three-dimensional ultrasound; IEEE Int Conf on Robotics and Automation; Apr, 2007. pp. 2655–2660. [Google Scholar]
  • 4.Tully S, Kantor G, Zenati MA, Choset H. Shape estimation for image-guided surgery with a highly articulated snake robot; IEEE/RSJ Int Conf on Intelligent Robots and Systems; Sep, 2011. pp. 1353–1358. [Google Scholar]
  • 5.Tully S, Kantor G, Choset H. Inequality constrained Kalman filtering for the localization and registration of a surgical robot. IEEE/RSJ Int. Conf. on Intelligent Robots and Systems; Sep, 2011. [Google Scholar]
  • 6.Brij Koolwal A, Barbagli F, Carlson C, Liang D. An ultrasound-based localization algorithm for catheter ablation guidance in the left atrium. Int J Robot Res. 2010;29(6):643–665. [Google Scholar]
  • 7.Shechter G, Resar J, McVeigh E. Displacement and velocity of the coronary arteries: cardiac and respiratory motion. IEEE Trans Med Imag. 2006;25(3):369–375. doi: 10.1109/TMI.2005.862752. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 8.Patronik N, Ota T, Zenati M, Riviere C. A miniature mobile robot for navigation and positioning on the beating heart. IEEE Trans Robot. 2009 Oct;25(5):1109–1124. doi: 10.1109/tro.2009.2027375. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 9.Wood N, Liu TYT, Waugh K, Zenati M, Riviere C. Towards localizing on the surface of the beating heart. IEEE Int. Conf. Engineering in Medicine and Biology Society; submitted. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 10.Zhong H, Kanade T, Schwartzman D. Virtual touch: An efficient registration method for catheter navigation in left atrium. Int. Conf. Medical Image Computing and Computer Assisted Intervention; 2006. pp. 437–444. [DOI] [PubMed] [Google Scholar]
  • 11.Malchenko S, Vedru J. Model of heart shape cyclic variation for Foucault cardiography simulations. Int J Bioelectromagnetism. 2003;5(1):318–319. [Google Scholar]
  • 12.Chen SY, Guan Q. Parametric shape representation by a deformable NURBS model for cardiac functional measurements. IEEE Trans Biomed Eng. 2011 Mar;58(3):480–487. doi: 10.1109/TBME.2010.2087331. [DOI] [PubMed] [Google Scholar]
  • 13.Park K, Metaxas D, Axel L. A finite element model for functional analysis of 4D cardiac-tagged MR images. Int. Conf. Medical Image Computing and Computer Assisted Intervention, ser. Lecture Notes in Computer Science; Berlin/Heidelberg: Springer; 2003. pp. 491–498. [Google Scholar]
  • 14.Suinesiaputra A, Frangi A, Kaandorp T, Lamb H, Bax J, Reiber J, Lelieveldt B. Automated detection of regional wall motion abnormalities based on a statistical model applied to multislice short-axis cardiac MR images. IEEE Trans Med Imag. 2009 Apr;28(4):595–607. doi: 10.1109/TMI.2008.2008966. [DOI] [PubMed] [Google Scholar]
  • 15.Thrun S, Burgard W, Fox D. Probabilistic Robotics, ser. Intelligent robotics and autonomous agents. The MIT Press; Aug, 2005. [Google Scholar]
  • 16.Huynh DQ. Metrics for 3D rotations: Comparison and analysis. J Math Imaging Vis. 2009 Oct;35(2):155–164. [Google Scholar]

RESOURCES