1.4 Processing of 4D Flow MRI for Noise Reduction and Enhancement
1.4.3 Coupled 4D Flow MRI-CFD methods
Some of more recent techniques have attempted to combine 4D flow MRI and CFD to address limitations of both approaches, namely spatio-temporal resolution issues in 4D flow MRI and inaccuracy of assumptions (boundary conditions, and models used) in CFD. Unlike the pure CFD approaches where only the inflow and outflow waveforms are measured from 4D flow MRI for establishing boundary conditions, in the coupled 4D flow MRI-CFD approaches, the entire data in the region of interest is used to correct the CFD simulations.
This group of methods is based on the idea of prediction-correction algorithms. In other words, these methods are solving Navier-Stokes equation (Eq. 1.27) based on measured boundary conditions observed from 4D flow MRI data and try to min- imize the error (correct the integration) between the integration and measurements at each reading using different methods.
De Hoon et al. [38] reported an algorithm where they coupled a simplified fluid solver ”fluid implicit particle” (FLIP) [19], which was originally developed for computer graphics, with measured 4D flow MRI. In this model, they further simplified Eq. 1.27 by assuming inviscid blood flow to:
∂v
∂t =−v.∇v − 1
ρ∇p (1.29)
In their iterative algorithm, the simulation starts with initializing positions and velocities of FLIP particles using 4D flow MRI data. Then for each simulation time step, which is equal to the 4D flow MRI time steps, the algorithm minimizes the difference between the simulated velocity (vCF D) and 4D flow MRI measured
data (vM) in multiple steps. Step one is to compute the velocity of each grid cell
MRI data. Step two independently advects FLIP particles using simulated velocity and measured data using a second-order Runge-Kutta ODE solver. The velocity difference (vdi f f ) is defined as the difference between estimated velocity and the
measured 4D flow MRI velocity. Next by substituting the velocity difference into Eq. 1.29 the difference can be calculated as:
∂vdi f f
∂t = −vCF D.∇vCF D+ vM.∇vM −
1
ρ∇p (1.30)
Next step is to add the difference velocity calculated using eq. 1.30 to particle velocities and calculate the new velocity. The final step is to update the velocity as vnewCF D← vn+1
CF D− v n+1 di f f.
Furthermore, the reported algorithm runs in the 4D flow MRI resolution and has produced some preliminary results with a viscous fluid assumption.
1 In another approach, Koltukluoglu et al. [74] proposed an algorithm using Helmholtz- Hodge theorem. In this method, first, they up-sampled 4D flow MRI data into mesh resolution using linear interpolation. Since the up-sampled data does not obey the incompressible flow constraints, next the data was projected onto a divergence-free space using Helmholtz-Hodge decomposition. In their model, for regularity reasons, they have made a few assumptions such as the 4D flow MRI field (vM) is quadrat-
ically integrable, the domain of solution (Ω) is bounded, a simply-connected and Lipschitz subdomain of R3. Using mentioned assumptions and Helmholtz-Hodge theorem, the following space splitting holds:
(L2(Ω))3= Hdiv,0(Ω) ⊕ Hcurl,0(Ω) ⊕ Hhar(Ω) (1.31)
where Hdiv,0(Ω)and Hcurl,0(Ω) are the Sobolev space of square integrable vector
fields with a square integrable divergence and a free-divergence, and a square inte- grable curl and a free-curl, respectively. The Hhar is the space of harmonic scalar
functions q ∈ H1(Ω) having zero Laplacian. Using Eq. 1.31, the measured 4D flow MRI data (UM) can be written as:
vM = ˆv + v∧+ v∗ (1.32)
where ˆv ∈ Hdiv,0(Ω), v∧ ∈ Hcurl,0(Ω) and v∗ ∈ Hhar(Ω). Having upsampled
divergence-free data they then calculated a CFD solutions using Windkessel model as boundary condition and then compared CFD with upsampled 4D flow MRI. In each iteration, calculated CFD velocities were used as initial values for a new sim- ulation until the error between two datasets satisfied the convergence criteria.
Rispoli et al. [103] reported another algorithm using an edited version of SIM- PLER algorithm in Cartesian grids where they added an extra step to the algorithm using Tikhonov regularization [108] to calculate a flow field that satisfies the physics of flow while being close enough to the measured 4D flow MRI data. In this imple- mentation, they used a pseudo-transient solution with spatially-varying time steps in the algorithm [90]. The pseudo-transient solution in this case is to run CFD simulations between available 4D flow MRI measurements with constant boundary conditions for each simulation. In this method, using SIMPLER algorithm, first ve- locities are estimated using momentum equation (eq. 1.27) and constant boundary condition between available 4D flow MRI readings as:
Πn−1vn = bn−1 (1.33)
where Πn−1 is a D × D square hepta-diagonal matrix, where D is the number of
mesh nodes, containing the previous iteration information of all three components of velocity as well as density and viscosity. The velocity vector, vn, is represent-
ing current time step velocity components to be calculated. The right hand sides vectors, bn−1, contains previous time step velocity information as well as current
pressure gradient and the physical properties of the flow (density ρ, and viscosity µ).
For a given time step, convergence is achieved when the continuity equation (Eq. 1.28) is satisfied. In each iteration, velocity profiles, vn, as well as pressure gradients
are updated till the convergence. Having the velocity profiles, Rispoli et al. [103] minimized the error between CFD and 4D flow MRI using the following equations:
F(vn)=
1
2||Πn−1vn− bn−1||
2+ w||Γv
n− vM||2 (1.34)
The first term in the right-hand side of Eq. 1.34 is essentially Eq. 1.33, the second term is the comparison between CFD results and 4D flow MRI measurements (vM).
Coefficient w is adjustable scalars that determines the influence of 4D flow MRI on the final solution. Γ is a down-sampling matrix to relate CFD resolution into 4D flow MRI resolution, it can just as well be described as an averaging or blurring model. Having matrix Γ, and using Eqs. 1.34, the velocities can be calculated as:
vn = ΠTn−1Πn−1+ wΓTΓ −1 ΠTn−1bn−1+ wΓTvM (1.35)
The updated velocity profiles used as initial conditions for the next iteration.
This thesis will focused on development of multiple post-processing algorithms for 4D flow MRI scans. We limit our focus to brain aneurysms due to the importance and limitations of MRI images for this disease due to their sizes. We will present
our algorithms (Ensemble Kalman Filter, Proper Orthogonal Decomposition-ridge regression, and Proper Orthogonal Decomposition-Dynamic Mode Decomposition), and will follow up with a case study on the effect of different reconstruction methods on the value and patterns of WSS.
Chapter 2
Post-processing 4D Flow MRI Using Ensemble
Kalman Filter (EnKF)
12.1
Introduction
Kalman Filter was initially introduced by Kalman [67] as a linear sequential fil- ter, which means the model is integrated forward in time and whenever the mea- surements are available, these data are used to reinitialize the model before the integration continues.
Time Update (”Predict”) (1) Project the state ahead
ˆ
xk = Aˆxk−1 + Buk−1
(2) Project the error covariance ahead Pk = APk−1AT + Q
Measurement Update (”Correct”) (1) Compute the Kalman gain Kk = PkHT(HPkHT + R)−1
(2) Update estimate with measurement zk
ˆ
xk = ˆxk + Kk(zk − H ˆxk)
(3) Update the error covariance Pk = (I − KkH)Pk
k+1 Initial estimate for ˆxk−1 and Pk−1
Figure 2.1: Kalman filter is a prediction/correction method. In the prediction step, model is integrated forward in time until point where measurements are available and integration reinitialize before the integration continues. [130]
Fig. 2.1 represents the Kalman filter algorithm as a prediction/correction method.
1This preliminary results were presented at:
[8] Bakhshinejad, A., Rayz, V., & DSouza, R. M. (2016). Reconstructing Blood Velocity Profiles from Noisy 4D-PCMR Data using Ensemble Kalman Filtering. In Biomedical Engineering Society (BMES) 2016 Annual Meeting. inproceedings.
At step one, the state of the system (ˆxk) is predicted based on previous time step
results (ˆxk−1) and the boundary condition (uk−1). The second step is calculation of
the error covariance based on the error covariance of the previous time step (Pk−1)
as well as the process noise covariance (Q). In the correction step, Kalman gain (Kk)
is calculated based on the error covariance and the measurement noise covariance (R). The estimated state and error covariance is updated based on the calculated Kalman gain. The matrix H relates the state (ˆxk) to the measurement (zk).
As mentioned, the Kalman filter is formulated for linear systems. In order to deal with non-linear systems, an Extended Kalman Filter (EKF) was introduced. All steps of EKF are similar except for the error covarience calculation where A is the tangent linear operator (Jacobian) of the system. Due to calculation expense of the EKF, Ensemble Kalman Filter (EnKF) was proposed by Evensen [46].
Time Update (”Predict”)
(1) Project the state ahead ˆ
xk = f (ˆxk−1, uk−1) (2) Define the [X] matrix hol-
ding the ensemble members, [X] = [x1, x2, ..., xN] ∈ Rn×N (3) Calculate the ensemble mean,
[X] = [X][1N]
(4) Define the ensemble perturbation matrix, [X0] = [X] − [X]
(5) Calculate the ensemble covariance matrix [Pe] = N−11 [X0][X0]T
Measurement Update (”Correct”)
(1) Define the q vectors of perturbed observations, zj = z + εj, j = 1,· · · , L
(2) Define the [Z], [Z] = (z1, z2, ..., zL) ∈ Rm×L (3) The ensemble of perturbations,
[Υ] = (ε1, ε2, ..., εL) ∈ Rm×L (4) Calculate the measu-
rement error covariance, [Re] = [Υ][Υ]
T L−1 (5) Compute the Kalman gain Kk = [Pe][H]T([H][Pe][H]T+ [Re])−1 (6) Update prediction with measurement zk
ˆ xa
k = ˆxk + Kk(zk − H ˆxk)
k+1 Initial estimate for ˆxk−1
Figure 2.2: Ensemble Kalman filter (EnKF) is a prediction/correction method based on Kalman Filter. In the prediction step, the model is integrated forward in time until a point at which measurements are available, at which point the integration is reinitialized and continues forward.
the figure, EnKF is a multi-step prediction/correction method based on KF. The prediction steps are as follow:
1. Predict each ensemble based on previous time step’s state (xk−1) and boundary
condition as (uk−1):
ˆ
xk = f (xk−1, uk−1) (2.1)
2. Define matrix [X] holding all ensemble members as:
[X]= [x1, x2, · · · , xN] ∈ Rn×N (2.2)
where N is the number of ensemble members and n is the size of the model state vector.
3. The ensemble mean ([X]) is:
[X]= [X][1N] (2.3)
where [1N] is a N × N matrix with all elements equal to 1/N.
4. Having the ensemble mean, ensemble perturbation can be calculated as:
[X0]= [X] − [X] = [X]([I] − [1N]) (2.4)
5. The ensemble covariance matrix ([Pe] ∈ Rn×n) can be defined as:
[Pe]=
[X0]([X0])T
N −1 (2.5)
With the ensemble covariance matrix ([Pe]), one can correct the predicted state
1. For each measurement vector z ∈ Rm, with m being the size of the measurement
vector, one can define the L vectors of perturbed measurements as:
zj = z + εj, j = 1, · · · , L (2.6)
2. Define matrix [Z], with each perturbed observation as a column as:
[Z]= [z1, z2, · · · , zL] ∈ Rm×L (2.7)
3. The ensemble of perturbation is defined as
[Υ]= [ε1, ε2, · · · , εL] ∈ Rm×L (2.8)
4. With having the ensemble of perturbation, the measurement error covariance matrix can be calculated as:
[Re]=
[Υ][Υ]T
L −1 (2.9)
5. Kalman gain can be calculated as:
Kk = [Pe][H]T([H][Pe][H]T + [Re])−1 (2.10)
6. And finally, the predicted state will be corrected using Kalman gain as:
[X]a = [X] + Kk([Z] − [H][X]) (2.11)
Adopting the EnKF method, we developed an algorithm in order to de-noise the 4D flow MRI data as well as increase the resolution to an arbitrary high resolution.
In this approach, we integrate the Navier-Stokes (NS) equations for an incompress- ible fluid (a valid assumption for blood flow in small vessels) until the points at which we have 4D flow MRI readings. At time steps where we have 4D flow data, the NS integration is re-initiated using EnKF method as described in details in the following section.