Inverse pressure gradient estimation from PC-MRI velocity - - PowerPoint PPT Presentation

inverse pressure gradient estimation from pc mri velocity
SMART_READER_LITE
LIVE PREVIEW

Inverse pressure gradient estimation from PC-MRI velocity - - PowerPoint PPT Presentation

Inverse pressure gradient estimation from PC-MRI velocity measurements reducing the effect of errors in segmentation David Nolte, Cristbal Bertoglio, Axel Osses, Roel Verstappen Center for Mathematical Modeling, Universidad de Chile


slide-1
SLIDE 1

Inverse pressure gradient estimation from PC-MRI velocity measurements — reducing the effect of errors in segmentation

David Nolte, Cristóbal Bertoglio, Axel Osses, Roel Verstappen

Center for Mathematical Modeling, Universidad de Chile Computational Mechanics & Numerical Mathematics, University of Groningen

slide-2
SLIDE 2

Motivation: Cardiovascular flow

∙ Arterial blood pressure very important for diagnosing cardiovascular diseases ∙ Examples: stenosis, heart valve insufficiency Stenosis of the aorta: Low pressure High pressure Stenosis Blood velocity ∙ Surgery if pressure drop critical ∙ Pressure measurements are invasive: catheters equipped with pressure probes ▸ non-invasive methods?

1 / 20

slide-3
SLIDE 3

Phase-Contrast MRI

PC-MRI: measure flow velocities with magnetic resonance imaging PC-MRI measures blood velocity velocity pressure Navier-Stokes equations 2D slices 3D data ∙ Estimate pressure gradient from partial measurements with PDE-constrained optimization

2 / 20

slide-4
SLIDE 4

PDE-constrained Optimization

3 / 20

Approx. 3D geometry ̃ Ω 2D slice measurements Data Assimilation NSE model:

  • btain 3D+time

flow field (퐮, 푝)

slide-5
SLIDE 5

PDE-constrained Optimization

Forward model: Navier-Stokes equations. Incompressible, unsteady, laminar flow; blood as Newtonian fluid 휌휕퐮 휕푡 + 휌(퐮 ⋅ ∇)퐮 − 휇Δ퐮 + ∇푝 = ퟎ in ̃ Ω ∇ ⋅ 퐮 = 0 in ̃ Ω + Initial and boundary conditions Solver: ∙ Convection-dominated, complex flow → Fractional step-scheme (Chorin-Temam) ∙ Semi-implicit, skew-symmetric convection term ∙ Backflow stabilization at outflow boundaries ∙ FEM with ℙ1∕ℙ1 elements for velocity/pressure + streamline–diffusion stabilization

4 / 20

slide-6
SLIDE 6

PDE-constrained Optimization

∙ Inflow and outflow BCs a priori unknown ▸ Parameters 휃 ∈ ℝ푝 need to be estimated from measurements! ∙ Initial condition: assume 퐮(푡 = 0) = 0 ∙ Minimize discrepancy between model prediction and measurements ̂ 휃 = 햺헋헀 헆헂헇

1 2 | |휃 − 휃0| |

2 푃 −1

0 +

푘=1

1 2 | |푍푘 − 퐻푋푘(휃)| |

2 Γ−1

– 푋푘(휃) = (휃, 푋푘−1(휃푘−1)) ∈ ℝ푛: model state at time 푡푘 – 푍푘 ∈ ℝ푚: velocity measurement at time 푡푘 – 퐻 ∈ ℝ푛×푚: observation operator – 휃0 ∈ ℝ푝: initial guess of parameters – 푃0 ∈ ℝ푝×푝: initial parameter covariance matrix – Γ ∈ ℝ푚×푚: covariance of measurements

5 / 20

slide-7
SLIDE 7

PDE-constrained Optimization

Method: Reduced-order Unscented Kalman Filter (Moireau & Chapelle, 2011) ∙ Sequential method For 푘 = 1, ..., 푁푇 : 휃푘 = 햺헋헀 헆헂헇

퐽푘(휃) 퐽푘(휃) = 1 2 | |휃 − 휃푘−1| |

2 ̂ 푃 −1

푘 + 1

2 | |푍푘 − 퐻푋푘(휃)| |

2 Γ−1

∙ ̂ 푃푘 (Cov) updated recursively from deterministic particles ▸ Reduced rank of state covariance: rank( ̂ 푃푘) = 푝 ▸ Assume initial uncertainty only present in parameters ∙ ROUKF requires 푝 + 1 particles, i.e., 푝 + 1 forward evaluations per time step

6 / 20

slide-8
SLIDE 8

Geometric Uncertainties

∙ Inverse problem is set up and solved in domain extracted from medical images

Issue:

∙ Uncertainty associated to vessel wall position, at least of order

  • f image resolution

∙ Standard no-slip boundary conditions can introduce large errors in estimated pressure drop! ▸ numerical experiments to investigate effects!

7 / 20

slide-9
SLIDE 9

Numerical Experiments

Geometries: ∙ 3 stenoses with 40%, 50% and 60% obstruction ∙ Reference geometry ∙ ‘approximate‘ geometries with walls shifed inward by Δ = ퟣ 헆헆 (10%) and Δ = ퟤ 헆헆 (20%)

Figure: 60% stenosis, reference and 20% wall error

Reference solution: solve Navier-Stokes on true domain with BCs: ∙ Outflow condition: homogeneous Neumann, zero-stress ∙ Inflow condition: pulsating plug flow: 퐮 = 퐔 sin(휔푡) ∙ No-slip on walls

8 / 20

slide-10
SLIDE 10

Numerical Experiments: Reference

∙ Reference solutions. 푅푒 = 2500 at inlet at peak time ∙ velocity magnitude (top row), pressure (botom row) 40% stenosis 50% stenosis 60% stenosis ∙ Number of elements: ∼ 3 − 4 × 106

9 / 20

slide-11
SLIDE 11

Numerical Experiments

Synthetic Measurements: ∙ Generated by interpolating reference solution to coarse measurement meshes, defined at selected planes ∙ 2 planes: (A) inlet cross-section, (B) lengthwise intersection ∙ Image resolution: 퐻 = 1 & ퟤ 헆헆 (simulation: ℎ ≈ ퟢ.ퟤퟧ 헆헆) ∙ Temporal resolution: Δ푇 = ퟤퟢ 헆헌 (simulation: Δ푡 = ퟣ 헆헌)

10 / 20

slide-12
SLIDE 12

Numerical Experiments: No-slip results

Parameter estimation: ∙ Given measurements at INLET, approximate (erroneous) geometry, estimate plug flow parameter 퐔 ∙ Pressure drop: 훿푝푘 =

1 |Γ푖| ∫Γ푖 푝푘 − 1 |Γ푛| ∫Γ푛 푝푘

11 / 20

slide-13
SLIDE 13

Numerical Experiments: No-slip results

Parameter estimation: ∙ Given measurements at INLET, approximate (erroneous) geometry, estimate plug flow parameter 퐔 ∙ Pressure drop: 훿푝푘 =

1 |Γ푖| ∫Γ푖 푝푘 − 1 |Γ푛| ∫Γ푛 푝푘

Δ = 10% Δ = 20% reference

0.1 0.2 0.3 0.4 5 10 time (s) pressure drop (mmHg) 40% stenosis 0.1 0.2 0.3 0.4 10 20 30 time (s) 50% stenosis 0.1 0.2 0.3 0.4 50 100 time (s) 60% stenosis

11 / 20

slide-14
SLIDE 14

Numerical Experiments: No-slip results

∙ measurements only at inlet ∙ Velocity errors: 푘 = ‖퐮푘 − 퐮푘

푟푒푓‖퐿2( ̃ Ω)

Δ = 10% Δ = 20%

0.1 0.2 0.3 0.4 100 200 time (s) 퐿2 velocity error 40% stenosis 0.1 0.2 0.3 0.4 time (s) 50% stenosis 0.1 0.2 0.3 0.4 time (s) 60% stenosis ∙ HUGE errors in 훿푝; plug flow parameter recovered with good precision, within 0.5%

12 / 20

slide-15
SLIDE 15

Numerical Experiments: No-slip results

∙ Add measurements in interior! ∙ Error in 휃: 10 − 20% and 25 − 50%

Δ = 10% Δ = 20% reference

−2 2 4 6 훿푝 (mmHg) 40% stenosis 5 10 15 50% stenosis 20 40 60% stenosis 0 0.1 0.2 0.3 0.4 100 200 time (s) velocity error 0 0.1 0.2 0.3 0.4 time (s) 0 0.1 0.2 0.3 0.4 time (s)

13 / 20

slide-16
SLIDE 16

Slip/Transpiration BCs

∙ Instead of no-slip boundary conditions: allow for some slip and transpiration on the vessel wall ̃ Γ푤

14 / 20

slide-17
SLIDE 17

Slip/Transpiration BCs

∙ Instead of no-slip boundary conditions: allow for some slip and transpiration on the vessel wall ̃ Γ푤 ∙ Slip & transpiration BCs: 퐧 ⋅ [휇∇퐮 − 1푝] ⋅ 퐧 + 훽 퐮 ⋅ 퐧 = 0

  • n ̃

Γ푤,

푑−1

푘=1

퐧 ⋅ [휇∇퐮 − 1푝] ⋅ 퐭푘 +

푑−1

푘=1

훾 퐮 ⋅ 퐭푘 = 0

  • n ̃

Γ푤, (2) (3) where 훽, 훾 are coefficients controlling the slip and transpiration. ∙ BC is consistent with Poiseuille flow; 훽, 훾 known explicitly

14 / 20

slide-18
SLIDE 18

Slip/Transpiration BCs

∙ Instead of no-slip boundary conditions: allow for some slip and transpiration on the vessel wall ̃ Γ푤 ∙ Slip & transpiration BCs: 퐧 ⋅ [휇∇퐮 − 1푝] ⋅ 퐧 + 훽 퐮 ⋅ 퐧 = 0

  • n ̃

Γ푤,

푑−1

푘=1

퐧 ⋅ [휇∇퐮 − 1푝] ⋅ 퐭푘 +

푑−1

푘=1

훾 퐮 ⋅ 퐭푘 = 0

  • n ̃

Γ푤, (2) (3) where 훽, 훾 are coefficients controlling the slip and transpiration. ∙ BC is consistent with Poiseuille flow; 훽, 훾 known explicitly ∙ General case: estimate parameters

14 / 20

slide-19
SLIDE 19

Numerical Experiments: Slip/transpiration results

∙ Measurements: inlet and interior slice ∙ parameters: slip 훾, transpiration 훽, plug flow 퐔

15 / 20

slide-20
SLIDE 20

Numerical Experiments: Slip/transpiration results

∙ Measurements: inlet and interior slice ∙ parameters: slip 훾, transpiration 훽, plug flow 퐔

slip Δ = 10% slip Δ = 20% no-slip Δ = 10% no-slip Δ = 20% reference

0.1 0.2 0.3 0.4 −2 2 4 6 time (s) 훿푝 (mmHg) 40% stenosis 0.1 0.2 0.3 0.4 5 10 15 time (s) 50% stenosis 0.1 0.2 0.3 0.4 20 40 time (s) 60% stenosis

15 / 20

slide-21
SLIDE 21

Numerical Experiments: Slip/transpiration results

∙ Measurements: inlet and interior slice ∙ parameters: slip 훾, transpiration 훽, plug flow 퐔

slip Δ = 10% slip Δ = 20% no-slip Δ = 10% no-slip Δ = 20% reference

0.1 0.2 0.3 0.4 100 200 time (s) velocity error 0.1 0.2 0.3 0.4 time (s) 0.1 0.2 0.3 0.4 time (s) ∙ accuracy plug flow parameter: 1 − 10% and 10 − 25% for Δ = 10% and 20%

16 / 20

slide-22
SLIDE 22

Numerical Experiments: Slip/transpiration results

∙ Accuracy with slip/transpiration much beter than no-slip model for severe stenoses ∙ Plug-flow parameter overestimated with slip/transpiration ▸ increase weight of measurements at the inlet to obtain beter plug flow estimates?

17 / 20

slide-23
SLIDE 23

Numerical Experiments: Slip/transpiration results

∙ Accuracy with slip/transpiration much beter than no-slip model for severe stenoses ∙ Plug-flow parameter overestimated with slip/transpiration ▸ increase weight of measurements at the inlet to obtain beter plug flow estimates?

slip Δ = 10% slip Δ = 20% weighted slip Δ = 10% weighted slip Δ = 20% reference

0.1 0.2 0.3 0.4 −2 2 4 6 time (s) 훿푝 (mmHg) 0.1 0.2 0.3 0.4 5 10 time (s) 0.1 0.2 0.3 0.4 10 20 30 time (s)

17 / 20

slide-24
SLIDE 24

Numerical Experiments: Slip/transpiration results

∙ With weighted measurements pressure drop estimate more accurate for 40% and 50% ∙ Plug flow parameter within ≤ 1% or 2 − 3% for Δ = 10%, 20% ∙ velocity errors very similar (not shown) ∙ Evolution of parameters over time: (reparameterized as 휃′ = 2휃) 0.1 0.2 0.3 0.4 −40 −20 time (s) 휃 Slip parameter 0.1 0.2 0.3 0.4 12 14 16 time (s) Transpiration param. Δ = 10% Δ = 20% 0.1 0.2 0.3 0.4 5.2 5.4 time (s) Plug flow parameter

18 / 20

slide-25
SLIDE 25

Conclusion

∙ Geometrical inaccuracies due to limited image resolution can cause errors in estimated quantities ∙ Improved robustness with slip/transpiration BCs: compensate no-slip errors and improve the accuracy Next steps: ▸ Apply model to real data ▸ Turbulence ▸ FSI?

Phantom of CIB@PUC

19 / 20

slide-26
SLIDE 26

Thank you for your atention!

slide-27
SLIDE 27

Fractional step algorithm

1. tentative velocity step: 휌 Δ푡 (̃ 퐮푘+1 − 퐮푘) + 휌(퐮푘 ⋅ ∇)̃ 퐮푘+1 + 휌 2 (∇ ⋅ 퐮푘)̃ 퐮푘+1 − ∇ ⋅ (휇∇̃ 퐮푘+1) = ퟎ in Ω (4a) ̃ 퐮푘+1 = 퐠푘+1

  • n Γ푑 ⧵ Γ푤

(4b) 휇퐧 ⋅ ∇̃ 퐮푘+1 = ퟎ

  • n Γ푛

(4c)

푑−1

푘=1

퐧 ⋅ [ 휇∇̃ 퐮푘+1 − 1푝푘] ⋅ 퐭푘 + 훾 ̃ 퐮푘+1 ⋅ 퐭푘 = 0

  • n Γ푤

(4d) 퐧 ⋅ [ 휇∇̃ 퐮푘+1 − 1푝푘] ⋅ 퐧 + 훽̃ 퐮푘+1 ⋅ 퐧 = 0

  • n Γ푤.

(4e) 2. projection step: ∇2푝푘+1 = 휌 Δ푡 ∇ ⋅ ̃ 퐮푘+1 in Ω (5a) 퐧 ⋅ ∇푝푘+1 = 0

  • n Γ푑 ⧵ Γ푤

(5b) 푝푘+1 = 푔푘+1

  • n Γ푛

(5c) 퐧 ⋅ ∇푝푘+1 = 휌 Δ푡 (̃ 퐮푘+1 ⋅ 퐧 − 훽−1푝푘+1)

  • n Γ푤

(5d) 3. velocity update step: 퐮푘+1 = ̃ 퐮푘+1 − Δ푡 휌 ∇푝푘+1 in Ω (6) 20 / 20