high precision motion estimation for strain imaging

4
Iterative autocorrelation motion estimation with application to elasticity imaging Svetoslav Ivanov Nikolov, Senior Member, IEEE BK Medical Aps, Mileparken 34, DK-2730 Herlev, Denmark, Email: [email protected] Abstract—Precise, robust and efficient motion estimation is the key to high quality strain imaging. Two are the main estimation techniques: (1) spatial-shift estimation using block matching, and (2) phase-shift estimation. The phase-shift estimators are more robust but are limited by phase aliasing. The scan depths of elastography imaging can be up to 300 wavelengths, and even moderate average strains of 0.5–1 % result in displacements of several wavelengths. Several efficient methods have been created over the years to overcome the aliasing limit, but they often employ searching and tracking which are difficult to be implemented efficiently on graphical processing units. This paper presents an iterative algorithm for phase estimation using autocorrelation. In the first stage the autocorrelation is estimated for lag 0 for all pixels in the image. Then a phase- unwrapping algorithm is applied, and the unwrapped phase is converted to displacement. The center frequency used in the conversion is calculated using a 2-nd order polynomial which describes the depth-dependent shift in center frequency. This polynomial needs to be estimated once for every setup using an uniform speckle phantom. The displacement is quantized by the spatial sampling interval. The autocorrelation function is estimated at the quantized spatial lags. The precision of the autocorrelation estimate varies depending on the magnitude of the phase which leaves visible horizontal stripes at the transition from one lag to another. Finally we apply a deglitching algorithm to compensate for the change in precision at the boundaries between two lags. I. I NTRODUCTION Typically, strain images are created by taking the first derivative of the motion estimates found between two frames, while the tissue is being subjected to a mechanical stress. Ultrasound systems use mainly phase estimation techniques to measure motion, and the autocorrelation estimator was among the first to be employed for strain imaging in the early 1990s [2]. Taking the first derivative amplifies the noise in the motion estimates (the variance of the estimates). The causes of noise have been studied, and to mitigate its influence on the image Cespedes and Ophir suggest to compress the envelope of the signal [6], which they found to be main cause of what they termed ”zebra artifacts”. The noise in elasticity imaging is typically additive in nature, and to get good contrast-to-noise ratio, larger displace- ments are welcome. Such displacements give phase aliasing. Block-match, or speckle tracking, motion estimation does not have aliasing and has been used in a number of systems. Variations of the approach search for the maximum cross correlation, or the minimum of sum-of-squared differences or the minimum of the sum of absolute differences [1]. The search for the peak (minimum) is typically performed in two dimensions, otherwise false maxima/minima are picked by the search. This adds to the computational complexity. Block matching techniques require typically a higher sampling frequency compared to phase-estimation techniques, which makes the latter still attractive. In 1999, Pesavento and colleagues proposed an iterative algorithm searching for the zero of the cross-correlation to find the displacement [3]. The displacement estimate from one depth was used as a starting point at the next depth. Lindop and colleagues have suggested a similar algorithm in which the search for the zero phase is based on simplified calculations that involve only the phases of the input signals rather than the cross-correlation function [4]. Shiina and colleagues have proposed an algorithm in which the cross-correlation is calculated at half-wavelength intervals in depth [5]. The maximum cross-correlation function is found and the position of its peak gives a rough estimate of the dis- placement (half wavelength precision). A fine motion estimate is found from the phase of the cross-correlation function. In practice it is rather challenging to estimate the cross correlation function at intervals of a half wavelength. Often the sampling frequency is not a multiple of the center frequency, and the center frequency changes as a function of depth. Furthermore, the displacement can be as large as 5 – 10 wavelengths which means that up to 20 cross-correlation functions must be calculated. This paper presents a new algorithm which finds a first approximation of the motion from the phase of lag-0 cross correlation. The motion field is then quantized by the sampling frequency and the cross-correlation is evaluated only at the lags corresponding to the nearest sample-displacement. The advantages compared to the other algorithms is that: (1) there are no requirements to the sampling interval; (2) maximum 2 lags of the cross-correlation function need to be estimated for every pixel; (3) the estimate in a given pixel is found indepently from the estimates in the neighbouring pixels; (4) the calculations are intrinsicly parallel in nature and can be implemented efficiently both on a CPU and GPU. II. DESCRIPTION OF THE ALGORITHM The fundament of phase shift estimation is the assumption that the signal is narrow band and can be described as a complex signal: x(t)= a(t) sin(-jωt), (1)

description

Motion estimation for strain imaging.

Transcript of high precision motion estimation for strain imaging

Page 1: high precision motion estimation for strain imaging

Iterative autocorrelation motion estimation withapplication to elasticity imaging

Svetoslav Ivanov Nikolov, Senior Member, IEEEBK Medical Aps, Mileparken 34, DK-2730 Herlev, Denmark, Email: [email protected]

Abstract—Precise, robust and efficient motion estimation is thekey to high quality strain imaging. Two are the main estimationtechniques: (1) spatial-shift estimation using block matching, and(2) phase-shift estimation. The phase-shift estimators are morerobust but are limited by phase aliasing. The scan depths ofelastography imaging can be up to 300 wavelengths, and evenmoderate average strains of 0.5–1 % result in displacementsof several wavelengths. Several efficient methods have beencreated over the years to overcome the aliasing limit, but theyoften employ searching and tracking which are difficult to beimplemented efficiently on graphical processing units.

This paper presents an iterative algorithm for phase estimationusing autocorrelation. In the first stage the autocorrelation isestimated for lag 0 for all pixels in the image. Then a phase-unwrapping algorithm is applied, and the unwrapped phase isconverted to displacement. The center frequency used in theconversion is calculated using a 2-nd order polynomial whichdescribes the depth-dependent shift in center frequency. Thispolynomial needs to be estimated once for every setup usingan uniform speckle phantom. The displacement is quantizedby the spatial sampling interval. The autocorrelation functionis estimated at the quantized spatial lags. The precision of theautocorrelation estimate varies depending on the magnitude ofthe phase which leaves visible horizontal stripes at the transitionfrom one lag to another. Finally we apply a deglitching algorithmto compensate for the change in precision at the boundariesbetween two lags.

I. INTRODUCTION

Typically, strain images are created by taking the firstderivative of the motion estimates found between two frames,while the tissue is being subjected to a mechanical stress.Ultrasound systems use mainly phase estimation techniques tomeasure motion, and the autocorrelation estimator was amongthe first to be employed for strain imaging in the early 1990s[2].

Taking the first derivative amplifies the noise in the motionestimates (the variance of the estimates). The causes of noisehave been studied, and to mitigate its influence on the imageCespedes and Ophir suggest to compress the envelope of thesignal [6], which they found to be main cause of what theytermed ”zebra artifacts”.

The noise in elasticity imaging is typically additive innature, and to get good contrast-to-noise ratio, larger displace-ments are welcome. Such displacements give phase aliasing.Block-match, or speckle tracking, motion estimation does nothave aliasing and has been used in a number of systems.Variations of the approach search for the maximum crosscorrelation, or the minimum of sum-of-squared differencesor the minimum of the sum of absolute differences [1]. The

search for the peak (minimum) is typically performed intwo dimensions, otherwise false maxima/minima are pickedby the search. This adds to the computational complexity.Block matching techniques require typically a higher samplingfrequency compared to phase-estimation techniques, whichmakes the latter still attractive.

In 1999, Pesavento and colleagues proposed an iterativealgorithm searching for the zero of the cross-correlation tofind the displacement [3]. The displacement estimate from onedepth was used as a starting point at the next depth.

Lindop and colleagues have suggested a similar algorithmin which the search for the zero phase is based on simplifiedcalculations that involve only the phases of the input signalsrather than the cross-correlation function [4].

Shiina and colleagues have proposed an algorithm in whichthe cross-correlation is calculated at half-wavelength intervalsin depth [5]. The maximum cross-correlation function is foundand the position of its peak gives a rough estimate of the dis-placement (half wavelength precision). A fine motion estimateis found from the phase of the cross-correlation function.

In practice it is rather challenging to estimate the crosscorrelation function at intervals of a half wavelength. Often thesampling frequency is not a multiple of the center frequency,and the center frequency changes as a function of depth.Furthermore, the displacement can be as large as 5 – 10wavelengths which means that up to 20 cross-correlationfunctions must be calculated.

This paper presents a new algorithm which finds a firstapproximation of the motion from the phase of lag-0 crosscorrelation. The motion field is then quantized by the samplingfrequency and the cross-correlation is evaluated only at thelags corresponding to the nearest sample-displacement. Theadvantages compared to the other algorithms is that: (1) thereare no requirements to the sampling interval; (2) maximum2 lags of the cross-correlation function need to be estimatedfor every pixel; (3) the estimate in a given pixel is foundindepently from the estimates in the neighbouring pixels; (4)the calculations are intrinsicly parallel in nature and can beimplemented efficiently both on a CPU and GPU.

II. DESCRIPTION OF THE ALGORITHM

The fundament of phase shift estimation is the assumptionthat the signal is narrow band and can be described as acomplex signal:

x(t) = a(t) sin(−jωt), (1)

Page 2: high precision motion estimation for strain imaging

T

+

>>

<<

+ +

T

+

-

+

−�

-

+

2�

differentiator integratorcomparator

phase×

phase+

++

-

Fig. 1. A standard phase-unwrapping algorithm.

where a(t) is a slowly varying envelope, ω = 2πf is theangular frequency and t is time from the start of emission.The classical estimation procedure is to take samples fromthe same depth from frame 1, and frame 2. It is assumed thatthe only difference between the two frames is due to motion,and that the signal x2(t) from frame 2 is a time-shifted versionof the signal x1(t) from frame 1.

x2(t) = x1(t− tm). (2)

If tm is positive then the motion is away from the transducer.Assuming a narrow-band model we get:

x1(t) = a(t) exp(−jωt) (3)x2(t) = a(t− tm) exp(−jωt+ jωtm) (4)

One can estimate the lag-zero cross correlation between x1(t)and x2(t) as

R12(0) =

∫a(t) exp(−jωt)a(tm − t) exp(jωt− jωtm)dt

(5)The result is:

R12(0) = exp(−jωtm) ·∫a(t)a(tm − t)dt (6)

The envelope a(t) is typically a slowly varying function, andthe time shift can be found from the phase of the complexcorrelation function R12(0):

φm = 6 (R12(0)) = −ωtm (7)

The time shift tm must take into account the forward andbackward propagation time (tm = 2u/c), where c is the speedof time, and u is the axial displacement between the twoframes. What we get for the displacement is then:

u = − c

4πfφm = − λ

4πφm, (8)

where λ is the wavelength. One should notice that often thefrequency is chosen constant, but for high-precision estimatesit must reflect the instantaneous mean frequency of the signalat a given depth. In practice, the estimation of R12(0) isdone by multiplying every sample from frame 1 inside theestimation kernel with every sample from frame 2 inside theestimation kernel, located at the same place within the frame.Then the resulting products are added together. An arctangentis used to determine the phase shift.

� = \(R12(0))

� = \(R12(1))

� = \(R12(2))

Fig. 2. Map of the phase shift estimated at lags 0, 1, and 2 of the cross-correlation. The phase is shown after unwrapping with the algorithm in Fig. 1.

The estimated phase-shift φ is in the interval −π ≤ φ ≤ π,and for displacements larger than half a wavelength aliasingoccurs. Often, a simple phase-unwrapping procedure is suffi-cient to remove aliasing. Such a procedure is drawn as a blockdiagram in Fig. 1.

The aliased phase at the input φ is first differentiated. Thenchanges in phase larger than βπ are detected, where β is ascaling factor (β ≤ 1). When such a change is detected, acorrection step of ±2π is produced. The correction step isintegrated in depth, thus keeping track of how many periodsof π need to be added to the phase. Finally, the correctionfactor is added to the input phase to produce an output φo.

Despite its simplicity, this procedure has proven ratherrobust in practical applications.

The signals x1(t) and x2(t) are stochastic and the precisionof the phase estimate φm is inversely proportional to thedisplacement tm. Strain images are created by differentiationof the motion field, and fluctuations in the motion estimatesare amplified resulting in low contrast-to-noise ratio.

To obtain better results, the phase φm is estimated at thelags k, where k is the nearest sample. The lags k can be foundfrom the initial estimate of the displacement u:

k = round(2fscu

)(9)

Estimating the phase of the cross-correlation at lags k resultsin a much smoother displacement map, but artefacts (glitches)appear at the transitions from lag to lag as shown in Fig. 2.These artefacts can be removed with a simple algorithm whoseblock diagram is shown in Fig. 3.

Two differentiators at the input detect the change in lagsk and the difference in phases φin. The sign of lag-changeis irrelevant, only its existence matters. The result is a pulsetrain with phase differences at the time instances when the lagk changes. An integrator accumulates the differences and theresult is added to the current phase.

Notice that phase wrapping may or may not occur at thetransitions of the lags, and the two filters from Fig. 1 andFig. 3 are cascaded.

All the steps are summarized in Fig. 4. A cross-correlationat lag 0 between two frames produces a map of the phase

Page 3: high precision motion estimation for strain imaging

T

+

-

+

T

+

+

T

+

-

+

integrator

×

lag

phasedifferentiators

≠ 0

phase

+

+ -

+

(0/1)

Fig. 3. Algorithm for removal of phase estimation artifacts at lag transitions.

xcorr(0) unwrap quantize

xcorr (k)

unwrapdeglitch

aliasing

11 22 33

445566

Fig. 4. Summary of the processing steps and intermediate results.

shift between the two frames (1). The phase is aliased once- the transition from red to blue color. Unwrapping (seeFig. 1) produces an aliasing-free map of the phase shift (2).Quantization and scaling gives a map of the closes lags (closestsample) for the cross correlation (3). Cross correlation at theselags produces a map of the phase shift (4) which is both aliasedand has glitches. The aliasing is removed by applying thestandard unwrap algorithm, and results in a phase map (5)which has only glitches. Applying the deglitching algorithm(see Fig. 3) removes the glitches to produce the aliasing- andglitch-free phase map (6).

III. PERFORMANCE

The motion estimation algorithm was applied on data ac-quired using the research interface of 2202 ProFocus scannerby BK Medical Aps [7]. Seven sequences were acquired, 6using the transducer 8822 and the 7th sequence was acquiredusing the transducer 8811. Both transducers are 5 cm wide.The frequency range of 8822 is 3.5 - 9 MHz. The frequencyrange of 8811 is 5 - 12 MHz. The settings for the sequencesare given in Table I. The data are 16-bit base-band complexsamples (I&Q) which have been down-sampled by a factor of2. The scan sequences have been acquired by scanning a breastelastography phantom, model 059 by CIRS (Computerized

TABLE ISEVEN SEQUENCES WERE USED TO ASSESS THE PERFORMANCE OF THE

ALGORITHM.

seq. S1 S2 S3 S4 S5 S6 S7

xdc 8822 8822 8822 8822 8822 8822 8811f0

1 5 5 3.5 5 5 5 7.5fs

2 12 12 12 12 12 12 20z 3 5.1 5.1 5.1 5.1 5.1 5.1 5.1L4 200 200 200 200 100 100 100

0 1 2 3 4 5Depth [cm]

0

20

40

60

80

100

Dis

pla

cem

ent

[µm

]

zoom

3.7 3.8 3.9 4.0 4.1 4.272

73

74

75

76

77

78zoom

Fig. 5. Estimation of smoothness of the profile by removing the local signaltrend.

Imaging Reference Systems, Inc., Norfolk, VA, USA).As the data have been acquired using free-hand movement,

we do not have ”ground-truth” values, which is a weaknessof this study. So we look instead at the ’smoothness’ of theestimates. Ripples in the estimates are an indication of highervariance, and any ripple will be amplified by the differentiationinvolved in the estimation of strain.

To compare the motion estimates when we go from usingonly a lag-0 to using a multi-lag cross-correlation we willassess roughness of the estimates locally as illustrated inFig. 5.

The red line shows the linear trend µ(z) as a function ofdepth z, the black line represents the actual estimates u(z),and the gray area is the deviation of the estimates. To assessthe roughness we use the following measure:

Ra =1

MN

M∑m=1

N∑n=1

|µ(m,n)− u(m,n)|µ(m,n)

, (10)

where M is the number of estimates per line, N is the numberof lines per frame, µ is the value of the estimated trend, andu is the actual displacement estimate.

1Frequency of transmitted pulse (in MHz).2Sampling frequency of base-band complex samples (in MHz).3Scan depth (in cm)4Number of frames in a sequence

Page 4: high precision motion estimation for strain imaging

0 10 20 30 40 50 60 70 80Frame index

0

2

4

6

8

10

12In

vers

e R

ela

tive R

oughness

[dB

]

Fig. 6. Increase in smoothness of the estimates using 2 iterations ofautocorrelation phase estimation for sequence S7.

The measure Ra was calculated for those frames in thesequences, where at least 25% of the estimates were found atlags different than 0.

Figure 6 shows the increase in smoothness of sequence7, when going from lag-0 autocorrelation to the proceduredescribed in previous section. What the figure shows is:

20 · log10(Ra2

Ra6

), (11)

where Ra2 is the roughness of the estimates at step (2) inthe calculations (see Fig.4) and Ra6 is the roughness of theestimates at step (6) in the processing. Sequence 7 has atotal of 100 frames, and the estimates in 80 of them areproduced at a lag different than 0. One can also see the periodicnature of the motion in the acquisition. When the transducerreaches top or bottom end position, the number of estimatesproduced at lags larger than 0 decreases, and the improvementin smoothness decreases too.

Figure 7 shows aggregated ’improvement’ values for thesequences described in table I. Two values are shown -average and median improvement. For most sequences theimprovement in smoothness in more than 50% of the framesis more than 6 dB.

IV. DISCUSSION AND CONCLUSION

This paper presented a 2-step algorithm for motion estima-tion using the phase of the cross-correlation. It operates at lowsampling rates (fs ≈ 2 · f0), and uses same pre-processingas standard autocorrelation flow estimation algorithm. Thealiasing is resolved by a standard phase-unwrapping algorithm.The glitches in the phase estimates are removed by a newglitch-removing algorithm.

The estimates at every sample are independent from eachother, which makes the algorithm robust. The computationalcost is maximum twice the computational cost of a traditional

S1 S2 S3 S4 S5 S6 S70

2

4

6

8

10

12

Sm

ooth

ness

im

pro

vem

ent

[dB

]

Average

Median

Fig. 7. Average improvement of smoothness per sequence

autocorrelation estimation (phases at lags 0 are estimated onlyduring the first step).

The algorithm does not involve search for the best blockmatch between the two frames, does not employ interpola-tion, and all estimates are independent of each other whichsimplifies its parallel implementation using modern single-instruction multiple data processors.

REFERENCES

[1] T. J. Hall, Y. Zhu, and C. S. Spalding, “In vivo real-time freehandpalpation imaging,” Ultrasound Med. Biol., vol. 29, no. 3, pp. 427–435,2003.

[2] I. Yamada, A. Shiba, and M. Iizuka, “Ultrasonic diagnostic system, UnitedStates patent 5462058,” 1994.

[3] A. Pesavento, C. Perrey, M. Krueger, and H. Ermert, “A time-efficientand accurate strain estimation concept for ultrasonic elastography usingiterative phase zero estimation,” IEEE Trans. Ultrason., Ferroelec., Freq.Contr., vol. 46, no. 5, Jan 1999.

[4] J. E. Lindop, G. M. Treece, A. H. Gee, and R. W. Prager, “Phase-basedultrasonic deformation estimation,” IEEE Trans. Ultrason., Ferroelec.,Freq. Contr., vol. 55, no. 1, pp. 94 – 111, Jan 2008.

[5] T. Shiina, M. Yamakawa, and N. Nitta, “Ultrasonic diagnosis sys-tem and strain distribution display method,” U.S. Patent ApplicationUS2006/0052696 A1, 2006.

[6] I. Cespedes and J. Ophir, “Reduction of image noise in elastography,”Ultrason. Imaging, vol. 15, no. 2, pp. 89 – 102, Apr. 1993.

[7] M. C. Hemmsen, S. I. Nikolov, M. M. Pedersen, M. J. Pihl, M. S.Enevoldsen, J. M. Hansen, and J. A. Jensen, “Implementation of aversatile research data acquisition system using a commercially availablemedical ultrasound scanner.” IEEE Trans. Ultrason., Ferroelec., Freq.Contr., vol. 59, no. 7, pp. 1487–99, Jul. 2012.