Decomposition of flow signals into basis functions: Performance advantages, disadvantages, and computational complexity Hans Torp and Lasse Løvstakken Norwegian University of Science and Technology Trondheim, Norway Disposisjon: Signal-model 2D -> 1D (?) Hvorfor lineært filter? -> lineær transf., Matrise, Eks. FIR-filter Shift invarianse Frequency response. Advantage complex signals Basis functions and transformation to obtain diagonal matrix Regression filter. Linear regression (Hooks). Polynomial regression Discrete Legendre polynomials. Show freq. Resp. basis and filter Fourier basis, and regression filter. Fourier basis with zeropadding. How to obtain zero in freq. Response Kahrunen-Loeven transform- generelt Modellbasert: Gaussisk og rektang. Frekv. Respons. Adaptiv Deteksjonsproblemet Estimering av hastighet – bias . ML-estimering av hastighet Computatonal complexity General linear filter matrix. Regression filter, compare FIR Compex/real coefficients. Adaptive filter
Acknowledgement Steinar Bjærum, GE Vingmed Ultrasound, Horten Substantial part of the results in this presentation is taken from his phd work Kjell Kristoffersen, GE Vingmed Ultrasound, Horten Collaboration for 25 years in Doppler ultrasound
Outline Methods for clutter filtering in color flow imaging IIR , FIR, regression filter General linear filtering – basis functions Optimum choice of basis functions Best frequency response Optimum detection Disadvantages: Bias in velocity estimation Computational complexity Comparison FIR filter and regression filter Clutterfilter in Doppler/cfi, history (brief) Signal model 2D -> 1D Doppler signal Properties: - linearity -shift invariance Performance criteria: Frequency response Detection Velocity estimation Basis types: Fourier Extended Fourier (spør Kjell!) Legendre Karuhen Leuwe Performance advantages: Best frequency response Optimum detection Disadvantages: Bias in velocity estimation Computational complexity Max N FIR-filter av orden N+1 Ta med bilde av DSP-kort i System 5
Clutter filter in color flow imaging? Beam k-1 Beam k Beam k+1
Doppler Signal Model x = [x(1),…,x(N)]T x = c + n + b Signal vector for each sample volume: -0.6 -0.4 -0.2 0.2 0.4 0.6 20 40 60 80 100 Blood velocity [m/s] Doppler spectrum [dB] Clutter Blood x = [x(1),…,x(N)]T Zero mean complex random process Three independent signal components: Signal = Clutter + White noise + Blood x = c + n + b Typical clutter/signal level: 30 – 80 dB Clutter filter stopband suppression is critical! Hans Torp NTNU, Norway
IIR filter with initialization Frequency response -80 -60 -40 -20 Steady state Step init. Discard first samples Power [dB] Projection init* 0.1 0.2 0.3 0.4 0.5 Frequency Chebyshev order 4, N=10 *Chornoboy: Initialization for improving IIR filter response, IEEE Trans. Signal processing, 1992
FIR Filters å = - M k z b H ) ( Discard the first M output samples, where M is equal to the filter order Improved amplitude response when nonlinear phase is allowed -20 Linear phase Power [dB] -40 Minimum phase -60 -80 0.1 0.2 0.3 0.4 0.5 Frequency Frequency response, order M= 5, packet size N=10
Regression Filters x y c y = x - c b3 Signal space x = [x(1),…,x(N)] Clutter space b1 b2 b3 x y c Subtraction of the signal component contained in a K-dimensional clutter space: x = [x(1),…,x(N)] y = x - c Linear regression first proposed by Hooks & al. Ultrasonic imaging 1991
Why should clutter filters be linear? No intermodulation between clutter and blood signal Preservation of signal power from blood Optimum detection (Neuman-Pearson test) includes a linear filter Any linear filter can be performed by a matrix multiplication of the N - dimensional signal vector x * Matrix A Input vector x Output vector y y = Ax This form includes all IIR filters with linear initialization, FIR filters, and regression filters
Frequency response Linear Filters y = Ax Definition of frequency response function = power output for single frequency input signal 1 Ho 2 ( w ) = Ae ; -p < w < p w N [ ] T w e = 1 e i w e i ( N - 1 ) L w Note 1. The output of the filter is not in general a single frequency signal (This is only the case for FIR-filters) Note 2. Frequency response only well defined for complex signals
FIR filter matrix structure FIR filter order M=5 Packet size N=10 Output samples: N-M= 5 + Improved clutter rejection Increasing filter order - Increased estimator variance Hans Torp NTNU, Norway
å Regression Filters x y c y = x - c x b I y ÷ ø ö ç è æ - = A b3 Signal space Clutter space b1 b2 b3 x y c Subtraction of the signal component contained in a K-dimensional clutter space: y = x - c x b I y ÷ ø ö ç è æ - = å K i H 1 A Choise of basis function is crucial for filter performance
Fourier basis functions i*k*n/N b (k)=1/sqrt(N)e n n= 0,.., N-1 are orthonormal, and equally distributed in frequency
Fourier Regression Filters Frequency response DFT Set low frequency coefficients to zero Inverse DFT -20 Power [dB] -40 -60 -80 0.1 0.2 0.3 0.4 0.5 Frequency N=10, clutter dim.=3
Legendre polynom basis functions Gram-Schmidt process to obtain Orthonormal basis functions -> Legendre polynomials
Polynomial Regression Filters b0 = Frequency responses, N=10 -80 -60 -40 -20 b1 = b2 = Power [dB] b3 = 0.1 0.2 0.3 0.4 0.5 Frequency
Fourier-basis with extended period
Frequency Response comparison -80 -60 -40 -20 Polynom regression Power [dB] IIR projection init. FIR minimum phase 0.1 0.2 0.3 0.4 0.5 Frequency Polynomial regression and IIR filter with projection initializarion have almost identical performance, and are superior to FIR filters
Optimal Basis functions Eigenvalue decomposition of the clutter correlation matrix: å = N i ‘ c 1 b R l Use the eigenvectors bi as a basis for the clutter space (Karhunen-Loeve transform) This basis provides maximum energy concentration of the clutter signal Energy l1 lK lN
Adaptive basis functions The correlation matrix may be estimated by spatial averaging in a region with uniform motion: å = M i H c 1 ˆ x R Adapt to clutter velocity - skewed filter center freq. May account for irregular wall motion, non-stationary clutter signal
Adaptive Regression Filter Eigenvalue spectrum of clutter + blood Clutter filter Energy l1 lK lN Eigenvectors
Adaptive Regression Filter Projection along each single basis function Legendre polynomial basis functions Eigenvector basis functions
Detection of Blood A rule for deciding between the two hypotheses: H0: No blood is present H1: Blood is present The detector is characterized by: Probability of false alarm PF = P(choose H1 | H0 is true) Probability of detection PD = P(choose H1 | H1 is true) Coronary artery
The Optimal Detector > < > < The Neyman-Pearson lemma: PD is maximized under the constraint PF by a likelihood ratio test (LRT) ) ( H p 1 L x = > < H0 H1 For Gaussian signals, the LRT can be simplified to: 2 ) ( Ax x = l > < H0 H1 Matrix A is given by the signal covariance matrix
The Optimal Detector for Gaussian signals || ||2 x Clutter filter Power calc. > g < g H1 H0 Matrix A is a linear filter which suppress the clutter signal.
ROC for different clutter filters Blood velocity = 10 cm/s 1 Optimal detector Eigenvector reg. filter Pol. reg. filter PF IIR proj. init. FIR min. phase FIR linear phase IIR step init. PD 1 Example from coronary artery flow in rapid moving myocard Note that the eigenvector regression filter is close to optimal
Is the Gaussian assumption valid? Non-Gaussian histogram due to variation in signal power Histogram from smaller region shows Gaussian distribution
Basis functions for non-adaptive filters Clutter signal with Gaussian shaped power spectrum: Eigenvectors of covariance matrix ~ Legendre polynomials Covariance matrix estimated from Color Doppler signals with moderate wall motion: Eigenvectors of covariance matrix ~ Legendre polynomials
Summary Optimal choice of basis function for blood vessel detection Doppler signals show Gaussian distribution locally in color flow images Eigenvector basis functions give optimum separation of clutter and blood Legendre polynomials are the best choice for non-adaptive clutter filtering, and give substantially better performance than FIR filters. Adaptive eigenvector filters show significant improvements over polynomial regression filters for spatially uniform wall motion
Autocorrelation method for blood velocity estimation x y Phase angle & scaling Clutter Rejection Filter Auto Correlation Estimator y =A x Hans Torp NTNU, Norway
Regression filter bias Single frequency input may give high frequency distortion Severe bias in band width and mean frequency estimator below cutoff frequency. Magnitude and phase frequency response Polynomial regression filter packet size = 10, polynom order 3.
Computer simulation of Doppler signal including clutter Frequency 2.5 MHz Beam width 3 mm Pulse length 2 mm PRF 5 kHz packet size 10 samples Signal level 20 dB Clutter level 80 dB Thermal noise level 0 dB Blood velocity 0.2 -0.8 m/s Angle blood flow 20 deg. Hans Torp NTNU, Norway
Blood velocity estimator performance 0.15 0.15 Polyreg. filter Polyreg filter FIR filter FIR filter 0.1 0.1 Bias [m/s] 0.05 Standard deviation [m/s] 0.05 -0.05 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.2 0.4 0.6 Blood velocity [m/s] Blood velocity [m/s] Hans Torp NTNU, Norway FIR filter order 7
Optimal methods for velocity estimation Maximum Likelihood estimator Probability density function given by the covariance matrix C(v) l(v|x) Likelihood function vML v l(v|x) = log p(x|v) Hans Torp NTNU, Norway
Log likelihood function and Cramer - Rao lower bound Hans Torp NTNU, Norway
Blood velocity estimator bias variance ML-estimator is not minimum variance, but better than the two other approaches
Summary Blood velocity estimation in the presence of clutter signals Polynomial Regression (PR) filters give substatial positive bias for low velocity blood flow FIR filters give less bias, but much higher variance than PR-filters ML-estimator has lowest bias and variance, but the algorithm is not suitable for practical use. PR-filter approach the performance of ML-estimator when the Dopplershift is above the filter cutoff frequency
Computational complexity # multipications + additions per packet M=5 * Filter matrix Input signal vector Output signal vector Packet size N=8 Full matrix multipication: N*N * - Basis vector Projection 1 basis function 2*N y = A* x FIR-filter Order M (M+1)*(N-M) M+1 N-M
Real-time clutter filtering Data rate in color flow imaging: 1 – 5 M samples/sec (complex samples) Processing speed test: Pentium M 1.6 GHz, using Matlab R13, N=8, M=6 Matrix multipication: 13 Msamples/sec Projection filter, 3 basis functions: 17 Msamples/sec FIR filter 45 Msamples/sec Adaptive filters is much more computer demanding Double CPU-time with complex filter coefficients CPU-time for filter coefficient calculation Example: Adaptive Eigenvector filter 2.1 Msamples/sec
Summary Computational complexity of clutter filter algorithms Regression filters have 1 – 2 times longer computation time than FIR-filters A standard laptop computer is able to do real-time regression filtering using less than 10% of available cpu-time Adaptive eigenvector filter requires ~ 10 times more computation power than the regression filter
Conclusions Regression filters are superior to FIR and IIR filters in blood flow detection and velocity estimation For non-adaptive clutter filtering, the optimum choice of basis functions are the Legendre polynomials Regression filtering can be done in real-time with a standard PC. Adaptive algorithms are probably also possible to perform with current state-of-the-art PC technology
Future work Algoritm improvements and real-time implementation of adaptive clutter filters Closed form approximation for ML-estimator, and algorithm for real-time use Multi-dimensional clutter filtering (space and time) e.g. by tracking material points in tissue Algoritms optimized for blood motion imaging
Extras
Signal from moving scatterer Pulse no Doppler shift frequency [kHz] Ultrasound pulse frequency [MHz] 1 2 .. … N Fast time Slow time Thermal noise Clutter Signal 2D Fourier transform Signal from one range Doppler shift frequency [kHz] Power Hans Torp NTNU, Norway
RF versus baseband Remove negative ultrasound Ultrasound frequency [MHz] Remove negative ultrasound Frequencies by Hilbert transform or complex demodulation Clutter Blood signal Skewed clutter filter (signal adaptive filter) can be implemented with 1D filtering Doppler frequency [kHz] Axial sampling frequency reduced by a factor > 4 Doppler shift frequency [kHz]
Doppler signal from one range Pulse no 1 2 .. … Doppler shift frequency [kHz] Ultrasound pulse frequency [MHz] N Signal from one range Doppler shift frequency [kHz] Power FFT Hans Torp NTNU, Norway
Blood detection and velocity estimation from 2D signal Pulse no Doppler shift frequency [kHz] Ultrasound pulse frequency [MHz] 1 2 .. … N Doppler Spectrum 3 Doppler Spectrum 2 Range no 1 2 … M Doppler Spectrum 1 Hans Torp NTNU, Norway
Blood detection and velocity estimation from 2D signal Pulse no Doppler shift frequency [kHz] Ultrasound pulse frequency [MHz] 1 2 .. … N Doppler Spectrum 3 Doppler Spectrum 2 Range no 1 2 … M Doppler Spectrum 1 Hans Torp NTNU, Norway
Image Improvement Example of image improvement with adaptive regression filter Polynomial regression filter Thyroid gland Adaptive regression filter
Blood detection and velocity estimation from 2D signal Increased number of range samples M give better performance but lower spatial resolution Best spatial resolution with M=1 In this work optimum estimators for the case M=1 is treated Extension to the case M > 1 is straight forward Hans Torp NTNU, Norway
Clutter suppression by high pass filtering 100 Before filtering Packet size N=10 FIR order 6 FIR order 8 Order M=6: 4 samples left after initialization 50 Order M=8: 2 samples left after initialization Doppler spectrum [dB] -50 -2 -1 1 2 Doppler shift frequency [kHz] FIR filter Hans Torp NTNU, Norway
Clutter suppression by high pass filtering Polynom regression filter FIR filter Hans Torp NTNU, Norway
Cramer - Rao lower bound Approximation Hans Torp NTNU, Norway
Cramer - Rao lower bound Approximation Hans Torp NTNU, Norway
Linear filters Argumenter for linearitet Lineærtransform - matrise Eks. FIR-filter Basis-functions y= A*X A=V*D*V’ V’*y = D*V’*x v = D*u Change coord. System + gain adjustment (complex) of each component Makes no sense in most cases, e.g. FIR filters Fourier basis makes sense, but poor clutter filter Fourier with expanded period better; -> poly regression
Computational complexity # multipications + additions per packet * Filter matrix Input signal vector Output signal vector Packet size N=8 Full matrix multipication: N*N * - Basis vector Projection 1 basis function 2*N y = A* x FIR-filter Order M (M+1)*(N-M) M+1 N-M
Atlanta, GA april 1986 Horten, Norway september 2001 Vingmed, introduced CFM The first commercial colorflow imaging scanner with mechanical probe Horten, Norway september 2001 GE-Vingmed closed down production line for CFM after 15 years of continuous production
The role of basis functions for linear filters y = A* x u= B*x, v= B*y; B is a matrix of orthonormal basis functions; B’*B = I (identity matrix) v = B’*A*B *u If B is eigenvectors for A, the filter matrix B’*A*B will be diagonal, i.e. v= diag (l1,..,lN)*u Filter output is a weighted sum of the projections along the basis functions