Share
Embed
Image processing with PDEs
Mohammed Hachama
November 06, 2026
Transcript
113 slides
-
Digital Image Processing Restoration I: PDEs (Week 1) NHSM -
5th year - Fall 2025 - Prof. Mohammed Hachama [email protected] hachama.github.io/home -
Image processing NHSM - 5th year: Digital Image Processing -
Introduction (Week 1) - M. Hachama ([email protected]) 2/30 -
Image processing • Image = Matrix • Pixel = indexes
+ intensities NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 2/30 -
Image processing • Image = Matrix • Pixel = indexes
+ intensities • Choice of a frame: Origin + Axes NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 2/30 -
Image processing • Image = Matrix • Pixel = indexes
+ intensities • Choice of a frame: Origin + Axes • Pixel Neighborhood: 2 horizontal and 2 vertical NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 2/30 -
Image processing • Matrix or a discrete function I :
{1, ..., N} × {1, ..., M} → {0, ..., 255} • Continuous representation: u : Ω ⊂ R2 → R NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 2/30 -
Image processing • Optimization problems: argminJ(u) u Z J(u) =
F (x , u, ∇u, ∇2 u)dx Ω • Evolution equations: u(t, x ) ∂u = H(t, x , u, ∇u, ∇2 u) ⇝ ū = u(∞, .) ∂t • Stationary PDE F (u, u0 ) = 0 NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 2/30 -
Image Restoration using PDEs NHSM - 5th year: Digital Image
Processing - Introduction (Week 1) - M. Hachama ([email protected]) 3/30 -
Outline • Models: PDE • Interpretation • Theoretical results •
Numerical schemes • Simulations: evaluation and comparison NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 4/30 -
Heat NHSM - 5th year: Digital Image Processing - Introduction
(Week 1) - M. Hachama ([email protected]) 5/30 -
Gaussian filter uσ = (gσ ⋆ u0 )(x ) NHSM
- 5th year: Digital Image Processing 1 |x |2 where gσ (x ) = exp − 2 . 2πσ 2 2σ - Introduction (Week 1) - M. Hachama ([email protected]) 6/30 -
Gaussian filter uσ = (gσ ⋆ u0 )(x ) NHSM
- 5th year: Digital Image Processing 1 |x |2 where gσ (x ) = exp − 2 . 2πσ 2 2σ - Introduction (Week 1) - M. Hachama ([email protected]) 6/30 -
Gaussian filter • Convolution NHSM - 5th year: Digital Image
Processing - Introduction (Week 1) - M. Hachama ([email protected]) 6/30 -
Gaussian filter • Convolution NHSM - 5th year: Digital Image
Processing - Introduction (Week 1) - M. Hachama ([email protected]) 6/30 -
Gaussian filter • Convolution NHSM - 5th year: Digital Image
Processing - Introduction (Week 1) - M. Hachama ([email protected]) 6/30 -
Gaussian filter • Convolution NHSM - 5th year: Digital Image
Processing - Introduction (Week 1) - M. Hachama ([email protected]) 6/30 -
Gaussian filter • Convolution NHSM - 5th year: Digital Image
Processing - Introduction (Week 1) - M. Hachama ([email protected]) 6/30 -
Gaussian filter • Convolution NHSM - 5th year: Digital Image
Processing - Introduction (Week 1) - M. Hachama ([email protected]) 6/30 -
Gaussian filter • Convolution NHSM - 5th year: Digital Image
Processing - Introduction (Week 1) - M. Hachama ([email protected]) 6/30 -
Gaussian filter • Gaussian filter 0 Fg = 1 0
NHSM - 5th year: Digital Image Processing 1 2 1 - Introduction (Week 1) - 0 1 0 M. Hachama ([email protected]) 6/30 -
Gaussian filter • Gaussian filter NHSM - 5th year: Digital
Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 6/30 -
Gaussian filter • Gaussian filter NHSM - 5th year: Digital
Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 6/30 -
Gaussian filter • Gaussian filter NHSM - 5th year: Digital
Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 6/30 -
Gaussian filter • Gaussian filter NHSM - 5th year: Digital
Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 6/30 -
Gaussian filter • Gaussian filter NHSM - 5th year: Digital
Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 6/30 -
Gaussian filter • Gaussian filter NHSM - 5th year: Digital
Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 6/30 -
Gaussian filter • Gaussian filter NHSM - 5th year: Digital
Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 6/30 -
Gaussian filter • Gaussian filter NHSM - 5th year: Digital
Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 6/30 -
Heat equation • PDE ∂u (x , t)
= ∆u(x , t), ∂t u(x , 0) = u0 (x ). t ≥ 0, x ∈ R2 • Non uniqueness without additional conditions NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 7/30 -
Heat equation • Existence and uniqueness on R2 We consider
that images are primarily defined on [0, 1]2 and extended to C = [−1, 1]2 via mirror symmetry. NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 7/30 -
Heat equation • Existence and uniqueness on R2 We consider
that images are primarily defined on [0, 1]2 and extended to C = [−1, 1]2 via mirror symmetry. NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 7/30 -
Heat equation • Existence and uniqueness on R2 We consider
that images are primarily defined on [0, 1]2 and extended to C = [−1, 1]2 via mirror symmetry. NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 7/30 -
Heat equation • Existence and uniqueness on R2 We consider
that images are primarily defined on [0, 1]2 and extended to C = [−1, 1]2 via mirror symmetry. NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 7/30 -
Heat equation • Existence and uniqueness on R2 We consider
that images are primarily defined on [0, 1]2 and extended to C = [−1, 1]2 via mirror symmetry. • L1# (C ) = u defined on C , such that Z u(x ) dx < +∞. C NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 7/30 -
Heat equation • Existence and uniqueness on R2 Then, u(t,
.) = g√2t ∗ u0 is the unique function in L1# (C ), satisfying ( ∂u ∂t = ∆u, ∥u − u0 ∥L1 (C ) → 0, (t, x ) ∈ (0, ∞) × R2 t → 0. and • ∀t1 > 0, ∃c > 0, ∀t ≥ t1 : sup |u(t, x )|≤ c(t1 ) ∥u0 ∥L1# (C ) x ∈R2 • Si u0 ∈ L∞ # (C ) : inf u0 (x ) ≤ u(t, x ) ≤ sup u0 (x ), ∀t > 0 x ∈R2 NHSM - 5th year: Digital Image Processing x ∈R2 - Introduction (Week 1) - M. Hachama ([email protected]) 7/30 -
Heat equation • Existence and uniqueness • On R2 ,
we need a prior bound on the growth rate of u for |x |→ ∞ 2 |u(x , t)|≤ Ae a|x | , (x ∈ Rn , 0 ≤ t ≤ T ) • On bounded domain Ω: u0 continuous or L2 with Dirichlet or Neumann BC. NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 7/30 -
Heat equation • Implementation: ∀t > 0, ∂u ∂t =
∆u ∂u u (n+1) − u (n) ≈ ∂t τ k k k k k ∆u ≈ ui+1,j + ui−1,j + ui,j+1 + ui,j−1 − 4ui,j k+1 k k k k k = (1 − 4 τ )ui,j + τ ui+1,j + τ ui−1,j + τ ui,j+1 + τ ui,j−1 ui,j 0 F = τ 0 τ 1 − 4τ τ 0 τ 0 • Numerical stability condition: τ ≤ 0.25 NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 8/30 -
Heat equation • Heat equation: ∀t > 0, NHSM -
5th year: Digital Image Processing ∂u ∂t = ∆u - Introduction (Week 1) - M. Hachama ([email protected]) 8/30 -
Heat equation Denoising effect/Blur NHSM - 5th year: Digital Image
Processing - Introduction (Week 1) - M. Hachama ([email protected]) 8/30 -
Anisotropic diffusion Denoising effect/Blur NHSM - 5th year: Digital Image
Processing - Introduction (Week 1) - M. Hachama ([email protected]) 8/30 -
Anisotropic diffusion NHSM - 5th year: Digital Image Processing -
Introduction (Week 1) - M. Hachama ([email protected]) 8/30 -
PM NHSM - 5th year: Digital Image Processing - Introduction
(Week 1) - M. Hachama ([email protected]) 9/30 -
Perona-Malik PDE • Equation: ∂u = div(c(|∇u|)∇u)
∂t u(x , 0) = u0 (x ) u = 0 n Ω × ]0, T [ , Ω, ∂Ω × ]0, T [ where c(s) > 0, non-increasing, c(0) = 1, and lim c(s) = 0: x →+∞ • c1 (s) = 1/(1 + s /λ ), • c2 (s) = exp −s 2 /(2λ2 ) , 2 2 • Charbonnier diffusivity: c3 (s) = 1/( p 1 + (s/k)2 ). • Ill-posed problem: A sol. (classical, weak, . . . ) does not exist. • Good numerical results. NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 10/30 -
Perona-Malik PDE • Central differences to approximate the gradient ci,j
= c(|∇ui,j |) s 2 2 ui,j+1 − ui,j−1 ui+1,j − ui−1,j + |∇ui,j |≃ 2 2 • Discretized divergence and time derivative: ∂u ∂t k+1 k ui,j −ui,j ∆t = ∂ ∂ ∂x (c(|∇u|)ux ) + ∂y (c(|∇u|)uy ) k k k k k k = ci+ ui+1,j − ui,j − ci− ui,j − ui−1,j 1 1 ,j 2 ,j 2 k k k k k k + ci,j+ ui,j+1 − ui,j − ci,j− ui,j − ui,j−1 1 1 2 2 • Spatial derivatives using centred scheme at Mid-points. • Evaluation c at mid-points = averages over neighboring pixels. • ∆t ≤ 0.25 to ensure stability. NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 10/30 -
Outline Image Restoration using PDEs Heat equation Perona-Malik PDE Catté-Morel-Lions’
PDE Weickert’s PDE Morphological PDE’s Mean Curvature Motion (MCM) Deconvolution Inpainting NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 11/30 -
PM variant: Catté-Morel-Lions’ PDE • Equation ∂u =
div(c(|∇Gσ ∗ u|)∇u) Ω × ]0, +∞[ , ∂t u(x , 0) = u0 (x ) Ω, u = 0 ∂Ω × ]0, +∞[ n • Existence and Uniqueness Let c: R+ −→ R+ ∗ be smooth, decreasing with c(0) = 1 , lim c(s) = 0 s→+∞ √ and s 7 −→ c( s) smooth. If u0 ∈ L2 (Ω), then there exists a unique solution u ∈ C([0, T ]; L2 (Ω)) ∩ (]0, T [ ; W 1,2 (Ω)). NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 12/30 -
PM variant: Catté-Morel-Lions’ PDE • Schauder’s fixed-point theorem u n+1
= T (u n ) ∂u n+1 = div (g(| (∇Gσ ∗ u n ) |)∇u n+1 ) Ω × ]0, +∞[ , ∂t u n+1 (x , 0) = u0 (x ) Ω, ∂un+1 = 0 ∂Ω × ]0, +∞[ ∂n (u n )n converges in C ([0, T ]; L2 (Ω)) to the unique solution. NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 12/30 -
Weickert NHSM - 5th year: Digital Image Processing - Introduction
(Week 1) - M. Hachama ([email protected]) 13/30 -
Weickert’s PDE • Take direction of the image gradients into
account ∂u = div(D(∇u)∇u) ∂t where D represents a matrix-valued diffusion tensor that describes the smoothing directions and the corresponding diffusivities. • D(∇u) = I: constant diffusion coefficient in all directions • D(∇u) = g(|∇uσ |)I: Perona-Malik type nonlinear diffusion • D is a function of the structure tensor " ux2 ∇u∇u T = ux uy ux uy uy2 # • Eigenvectors: v1 ∥∇u (λ1 = |∇u|) and v2 ⊥∇u (λ2 = 0). NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 14/30 -
Weickert’s PDE • Structure tensor = image feature describing the
local orientation information J(∇u) = gσ ∗ (∇uσ ∇uσT ). Isotropic struct. Linelike struct. Corners µ1 ≈ µ2 µ1 >> µ2 ≈ 0 µ1 ≥ µ2 >> 0 NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 14/30 -
Weickert’s PDE • Take direction of the image gradients into
account ∂u = div(D(J(∇u))∇u) ∂t • How to choose the matrix D(J(∇u))? • Keep the eigenvectors of J(∇u). • Choose the eigenvalues of D, λ1 and λ2 , depending on the eigenvalues of J(∇u), µ1 and µ2 . NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 14/30 -
Weickert’s PDE • Edge-enhancing anisotropic diffusion ∂u ∂t = div(D(J(∇u))∇u)
( 1 2 µ1 = 0 λ1 = 1 − exp −α else µ4 1 λ2 = NHSM - 5th year: Digital Image Processing 1 - Introduction (Week 1) - M. Hachama ([email protected]) 14/30 -
Weickert’s PDE NHSM - 5th year: Digital Image Processing -
Introduction (Week 1) - M. Hachama ([email protected]) 14/30 -
Weickert’s PDE • Coherence-enhancing aniso. diffusion ∂u ∂t = div(D(J(∇u))∇u)
λ1 = λ2 = α ( α µ1 = µ2 α + (1 − α) exp NHSM - 5th year: Digital Image Processing −1 (µ1 −µ2 )2 - Introduction (Week 1) - else M. Hachama ([email protected]) 14/30 -
Weickert’s PDE NHSM - 5th year: Digital Image Processing -
Introduction (Week 1) - M. Hachama ([email protected]) 14/30 -
Weickert’s PDE • Existance and uniqueness Assume that u0 ∈
L∞ (Ω), ρ ≥ 0, and σ, T > 0. Let a := ess inf u0 , b := ess sup u0 , and consider the problem ∂u = div (D(Jρ (∇uσ |)∇u) Ω × ]0, T ] , ∂t u(x , 0) = u0 (x ) Ω, u = 0 ∂Ω × ]0, T ] n where D ∈ C ∞ (R2×2 , R2×2 ),d12 (J) = d21 (J) for all symmetric matrices J, and ∀w ∈ L∞ (Ω, R2 ), there exists a positive lower bound for the eigenvalues of D(Jρ (w )). Then, the problem has a unique solution which satisfies u ∈ C ([0, T ]; L2 (Ω)) ∩ L2 (0, T ; H 1 (Ω)), ∂t u ∈ L2 (0, T ; H 1 (Ω)). NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 14/30 -
Weickert’s PDEs • Edge–Enhancing Diffusion (EED): • Smooths along edges,
prevents smoothing across edges. • Preserves sharp boundaries and contrast. • Noise reduced within homogeneous regions. • No structure elongation; locally adaptive. • Coherence–Enhancing Diffusion (CED): • Enhances elongated, coherent structures. • Diffuses strongly along dominant orientation. • Reconnects broken lines or ridges. • May blur edges not aligned with coherence. NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 15/30 -
Morphological NHSM - 5th year: Digital Image Processing - Introduction
(Week 1) - M. Hachama ([email protected]) 16/30 -
Morphological PDE’s • Mathematical morphology (morphological filters) NHSM - 5th
year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 17/30 -
Morphological PDE’s • Morphology is an approach to image analysis
based on shapes NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 17/30 -
Morphological PDE’s • Morphology is an approach to image analysis
based on shapes NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 17/30 -
Morphological PDE’s • Morphology is an approach to image analysis
based on shapes NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 17/30 -
Morphological PDE’s • Equation: Alvarez, Guichard, Lions and Morel ∂u
= g(curv (u), t)|∇u|. ∂t where G is a .. ? ∇u • If u ∈ C 2 , then curv (u) = div( |∇u| ). • Particular motions • Mean curvature motion (MCM) ∂u = curv (u) |∇u|. ∂t • Affine curvature motion (ACM) 1 ∂u = curv (u) 3 |∇u| ∂t NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 17/30 -
Outline Image Restoration using PDEs Heat equation Perona-Malik PDE Catté-Morel-Lions’
PDE Weickert’s PDE Morphological PDE’s Mean Curvature Motion (MCM) Deconvolution Inpainting NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 18/30 -
Mean Curvature Motion (MCM) • Mean curvature motion (MCM) ∂u
= curv (u) |∇u|. ∂t NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 19/30 -
Mean Curvature Motion (MCM) • Geometric interpretation • Heat equation:
∂u ∂u = ∆u ⇐⇒ = uηη + uξξ ∂t ∂t NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 19/30 -
Mean Curvature Motion (MCM) • Geometric interpretation • MCM equation:
∂u = |∇u|div ∂t ∇u |∇u| ⇐⇒ ∂u = uξξ , ∂t • Curves evolution ∂t C (p, t) = κ(p, t)⃗k t = ∂ss C (p, t) NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 19/30 -
Mean Curvature Motion (MCM) • Geometric interpretation • Mean curvature
motion (MCM) ∂u = curv (u) |∇u|. ∂t • A shape becomes convex and thereafter evolves towards an ellipse before collapsing. NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 19/30 -
Mean Curvature Motion (MCM) • Geometric interpretation • Mean curvature
motion (MCM) ∂u = curv (u) |∇u|. ∂t NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 19/30 -
Mean Curvature Motion (MCM) • Simulations NHSM - 5th year:
Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 19/30 -
Mean Curvature Motion (MCM) • Simulations NHSM - 5th year:
Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 19/30 -
Mean Curvature Motion (MCM) • Simulations NHSM - 5th year:
Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 19/30 -
Mean Curvature Motion (MCM) • Another interpretation: median filter 52
47 51 49 20 48 50 52 53 → 20, 47, 48, 49, 50, 50, 51, 52, 53 → 47 50 51 49 50 48 50 53 50 • Iterated weighted median filters on images converge to the MCM. NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 19/30 -
Mean Curvature Motion (MCM) • Another interpretation: median filter vs
gaussien filter NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 19/30 -
Mean Curvature Motion (MCM) • Another interpretation: median filter vs
gaussien filter NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 19/30 -
Mean Curvature Motion (MCM) • Another interpretation: median filter vs
gaussien filter NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 19/30 -
Mean Curvature Motion (MCM) • Another interpretation: median filter vs
gaussien filter NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 19/30 -
Affine Morphological Scale Space (AMSS) • MCM: Curve evolution ∂t
C (p, t) = κ(p, t)⃗k t = ∂ss C (p, t) NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 20/30 -
Affine Morphological Scale Space (AMSS) • AMSS: Curve evolution ∂t
C (p, t) = κ(p, t)1/3⃗k t = ∂ss C (p, t) ∂u = curv (u)1/3 |∇u|. ∂t NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 20/30 -
Affine Morphological Scale Space (AMSS) • Among all these possible
curvature-driven motions, formulated either in a scalar or in a geometrical way ∂u = |∇u|F (curv (u)), ∂t ∂C F (κ)N, ∂t the AMSS special case is affine invariant: if u is a solution then so is (x , t) 7→ u(Ax , t). NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 20/30 -
Affine Morphological Scale Space (AMSS) • MCM and AMSS have
also been applied to denoising. • The special invariances of AMSS are useful for shape recognition tasks, for corner detection, and for texture discrimination. • MCM and AMSS: ”Viscosity” solutions exist! • Min-Max flow (Malladi and Sethian): use either min(κ, 0) or max (κ, 0), depending on the average grey value within a certain neighbourhood. • Good denoising properties. But, well-posedness results are not known up to now, since the theory of viscosity solutions is no longer applicable. NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 20/30 -
Deconv NHSM - 5th year: Digital Image Processing - Introduction
(Week 1) - M. Hachama ([email protected]) 21/30 -
Deconvolution • Heat equation ∂u (x , t)
= ∆u(x , t), ∂t u(x , 0) = u0 (x ). NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - t ≥ 0, x ∈ R2 M. Hachama ([email protected]) 22/30 -
Deconvolution • Reverse Heat equation ∂u (x ,
t) = -∆u(x , t), ∂t u(x , T ) = u0 (x ). NHSM - 5th year: Digital Image Processing 0 ≤ t ≤ T , x ∈ R2 - Introduction (Week 1) - M. Hachama ([email protected]) 22/30 -
Deconvolution • Reverse Heat equation NHSM - 5th year: Digital
Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 22/30 -
Deconvolution • Van Cittert’s Algorithm • Model u0 = h
∗ u • Let ĝ = 1 − ĥ so that we can write formally ! +∞ X uˆ0 û = = ĝ k uˆ0 . 1 − ĝ k=0 If we put ûn = Pn k=0 ĝ k uˆ0 , we get ûn+1 = uˆ0 + ĝ ûn = uˆ0 + (1 − ĥ)ûn , un+1 = u0 + un − h ∗ un NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 22/30 -
Deconvolution • Van Cittert’s Algorithm NHSM - 5th year: Digital
Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 22/30 -
Deconvolution • Heat equation ∂u (x , t)
= ∆u(x , t), ∂t u(x , 0) = u0 (x ). NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - t ≥ 0, x ∈ R2 M. Hachama ([email protected]) 22/30 -
Deconvolution • Osher-Rudin ”shock filter” ∂u (x ,
t) = −sign(∆u(x , t)) |∇u(x , t)|, ∂t u(x , 0) = u0 (x ). NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - t ≥ 0, x ∈ R2 M. Hachama ([email protected]) 22/30 -
Deconvolution • Osher-Rudin ”shock filter” ut = −sign(∆u(x , t))
|∇u(x , t)| NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 22/30 -
Inpainting NHSM - 5th year: Digital Image Processing - Introduction
(Week 1) - M. Hachama ([email protected]) 23/30 -
Inpainting • I : Ω → R (Domain of definition
of the image) • D ⊂ Ω : (Missing values), I|D unknown NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 24/30 -
Inpainting Harmonic inpainting NHSM - 5th year: Digital Image Processing
- Introduction (Week 1) - M. Hachama ([email protected]) 25/30 -
Inpainting Harmonic inpainting NHSM - 5th year: Digital Image Processing
- Introduction (Week 1) - M. Hachama ([email protected]) 25/30 -
Inpainting Harmonic inpainting • Linear interpolation u(i, j) =
1 u(i − 1, j) + u(i + 1, j) + u(i, j − 1) + u(i, j + 1) 4 • Interpretation (Finite differences): ∆u(i, j) = 0 NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 25/30 -
Inpainting Harmonic inpainting • Equation ∆u u NHSM - 5th
year: Digital Image Processing = = 0, in D, g, on ∂D. - Introduction (Week 1) - M. Hachama ([email protected]) 25/30 -
Inpainting Harmonic inpainting • Equation ∆u u = = 0,
in D, g, on ∂D. • Inpainting + Denoising in D, −∆u = 0, −∆u = λ(g − u), in Ω\D. u = 0, on ∂Ω. NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 25/30 -
Inpainting Harmonic inpainting NHSM - 5th year: Digital Image Processing
- Introduction (Week 1) - M. Hachama ([email protected]) 25/30 -
Inpainting Harmonic inpainting NHSM - 5th year: Digital Image Processing
- Introduction (Week 1) - M. Hachama ([email protected]) 25/30 -
Inpainting Harmonic inpainting • Minimization over H 1 (smooth functions)
• cannot pick up structures such as edges. NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 25/30 -
Inpainting Total Variation Inpainting • Robust interpolation ( ) u(i,
j) = median u(i + 1, j), u(i − 1, j), u(i, j + 1), u(i, j − 1) • Iterating a median filter n times (n → +∞) -¿ mean curvature flow (PDE) ∇u =0 |∇u|.div |∇u| NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 26/30 -
Inpainting Total Variation Inpainting • Steady state PDE
∇u = 0, −div |∇u| ∇u −div |∇u| = λ(g − u), u = 0, in D, in Ω\D. on ∂Ω. • Evolution ut = div NHSM - 5th year: Digital Image Processing ∇u |∇u| - Introduction (Week 1) - M. Hachama ([email protected]) 26/30 -
Inpainting Total Variation Inpainting • Propagate sharp edges into the
damaged domain • Penalizes length of edges: cannot connect contours across very large distances • Can result in corners across the inpainting domain NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 26/30 -
Inpainting Absolutely minimising Lipschitz extensions NHSM - 5th year: Digital
Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 27/30 -
Inpainting Absolutely minimising Lipschitz extensions • Interpolate along the gradient
u(x0 ) = 1 (u(x0 + h∇u) + u(x0 − h∇u)) + O(h2 ) 2 • Absolutely minimizing Lipschitz extensions (AMLE): D 2 u(∇u, ∇u)(x0 ) = 0 NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 27/30 -
Inpainting Absolutely minimising Lipschitz extensions • The level lines are
interpolated linearly • connected by a straight line across the missing domain • The direction of the level lines is not preserved • Solution: use of higher-order derivatives • Encode additional information (not only the length of level lines) such that the curvature NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 27/30 -
Transport inpainting NHSM - 5th year: Digital Image Processing -
Introduction (Week 1) - M. Hachama ([email protected]) 28/30 -
Transport inpainting • Structural image inpainting means that we fill
in missing parts in images by using local structural information only. • L = Information and D = Direction ∇L.D = 0 , ∂I = ∇L.D , ∂t NHSM - 5th year: Digital Image Processing Steady state equation Evolution equation - Introduction (Week 1) - M. Hachama ([email protected]) 28/30 -
Transport Along Level Lines • Transport the known image structures
along the level lines. ⊥ ∇ |{z} ∆u . ∇ | {zu} Info. = 0 Direction • Evolution ut = ∇∆u.∇⊥ u • Adding anisotropic diffusion ut = ∇∆u.∇⊥ u + ν∇ . (g(|∇u|)∇u) NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 29/30 -
Transport Along Level Lines NHSM - 5th year: Digital Image
Processing - Introduction (Week 1) - M. Hachama ([email protected]) 29/30 -
Transport Along Level Lines NHSM - 5th year: Digital Image
Processing - Introduction (Week 1) - M. Hachama ([email protected]) 29/30 -
Transport Along Level Lines NHSM - 5th year: Digital Image
Processing - Introduction (Week 1) - M. Hachama ([email protected]) 29/30 -
References • G. Aubert, P. Kornprobst, ”Mathematical Problems in Image
Processing”; Applied Mathematical Sciences 147; Springer, New York; 2006. • T. Chan and J. Shen, ”Image Processing And Analysis: Variational, PDE, Wavelet, And Stochastic Methods”, Society for Industrial and Applied Mathematics, 2005. • Joachim Weickert, ”Anisotropic Diffusion in Image Processing, ECMI Series, Teubner-Verlag, Stuttgart, Germany, 1998. NHSM - 5th year: Digital Image Processing - Introduction (Week 1) - M. Hachama ([email protected]) 30/30