Fast Anisotropic Smoothing of Multi-Valued Images using - - PowerPoint PPT Presentation

fast anisotropic smoothing of multi valued images using
SMART_READER_LITE
LIVE PREVIEW

Fast Anisotropic Smoothing of Multi-Valued Images using - - PowerPoint PPT Presentation

Fast Anisotropic Smoothing of Multi-Valued Images using Curvature-Preserving PDEs David Tschumperl CNRS UMR 6072 (GREYC/ENSICAEN) - Image Team MIA2006, Paris/France, Sept. 2006 Presentation Layout Diffusion PDEs for Multi-Valued


slide-1
SLIDE 1

Fast Anisotropic Smoothing of Multi-Valued Images using Curvature-Preserving PDE’s

David Tschumperlé

CNRS UMR 6072 (GREYC/ENSICAEN) - Image Team

MIA’2006, Paris/France, Sept. 2006

slide-2
SLIDE 2

Presentation Layout

  • Diffusion PDE’s for Multi-Valued Images : A Quick Review
  • Introducing Curvature-Preserving PDE’s for Image Regularization
  • Connections with Line Integral Convolutions and Implementation
  • Application Results
slide-3
SLIDE 3

Presentation Layout ⇒ Diffusion PDE’s for Multi-Valued Images : A Quick Review

  • Introducing Curvature-Preserving PDE’s for Image Regularization
  • Connections with Line Integral Convolutions and Implementation
  • Application Results
slide-4
SLIDE 4

PDE’s and Image Regularization

  • Convolution and Linear PDE (Koenderink[84], Alvarez-Guichard-etal[92], ...) :

I(t) = I(t=0) ∗ Gσ where Gσ = 1 4πt e−x2+y2

4t

⇐ ⇒ ∂I ∂t = ∆I = div (∇I)

  • Nonlinear PDE (Perona-Malik[90], Alvarez [92], ...) :

∂I ∂t = div (c(∇I) ∇I) with c : R − → R

Noisy image Heat flow Perona-Malik

slide-5
SLIDE 5

Regularization PDE’s and Multi-Valued Images

  • Image I : Ω → N of multi-valued points : vectors (N = Rn), matrices (N = Mn).

(Alvarez, Aubert, Barlaud, Blanc-Feraud, Blomgren, Charbonnier, Chan, Cohen, Deriche, Kornprobst, Kimmel, Malladi, Munford, Morel, Nordström, Osher, Perona, Malik, Rudin, Sapiro, Sochen, Tschumperlé, Weickert,...)

Color image (N = R3) Scalar PDE applied on each channel Multi-valued PDE Color image Direction field Tensor field

slide-6
SLIDE 6

Basic Regularization Principle

  • PDE regularization is mainly based on local image smoothing.
  • Local smoothing rules :

– On a edge, smoothing performed only along the edge direction (anisotropic smoothing). – On homogeneous regions, smoothing performed equally in all directions (isotropic smoothing).

  • Generalization : Separating the definition of a smoothing geometry, and the

smoothing process itself.

slide-7
SLIDE 7

Definition of a smoothing geometry

  • I : Ω → Rn, a multi-valued image.
  • Computing the local geometry of I, described by the smoothed structure tensor

field Gσ : Gσ(x,y) =

  • i

∇Ii∇IT

i

  • ∗ Gσ
  • Eigenvalues λ+, λ− and Eigenvectors θ+, θ− of Gσ are very efficient descriptors
  • f the local configuration of I at (x, y).

⇒ The smoothing is then modelized by a tensor field T from G : T = f1(λ+ + λ−) θ−θT

− + f2(λ+ + λ−) θ+θT +

with      f1(s) =

1 1+sp

f2(s) =

1 1+sq

slide-8
SLIDE 8

Tensor field representation

Top of the Lena hat Corresponding diffusion tensor field T

⇒ Tensor field T tells about the desired smoothing directions and smoothing amplitudes.

slide-9
SLIDE 9

How the smoothing is then achieved ?

  • The smoothing itself is performed by the application of one or several iterations of
  • ne of these generic PDE’s :

∂Ii ∂t = div (T∇Ii)

  • r

∂Ii ∂t = trace (THi) ⇒ Most of existing regularization PDE’s conform with these equations. ⇒ Ideally, such PDE’s comply with the diffusion tensor field T :

Tensor-directed PDE applied on a color image.

slide-10
SLIDE 10

Issues encountered with above formulations

  • Slow iterative processes : Several iterations are needed to get a result that is

regularized enough (since dt → 0).

  • Problems with Divergence formulations :

– Non-unicity of the tensor field : ∃D1 = D2, div(D1∇I) = div(D2∇I). – Tensor shapes not always representative of the intuitive smoothing behavior : D1 = Id and D2 = ∇I∇IT ∇I2 ⇒ ∂I ∂t = ∆I.

slide-11
SLIDE 11

Issues encountered with above formulations

  • Problems with Trace formulations :

– Better respect of the considered tensor-valued geometry. – But tends to over-smooth high-curvature structures (corners).

slide-12
SLIDE 12

Issues encountered with above formulations

  • Can be understood from the mono-directional smoothing case :

∂I ∂t = Trace(wwTH)

  • Geometrical interpretation in terms of local smoothing by gaussian kernels
  • riented by w(x,y).

100 200 300 400 500 600 700 800 100 200 300 400 500 600 700 800

  • Ideally, we would be able to locally smooth with a kernel that curves itself regarding

to the local image structure.

slide-13
SLIDE 13

Coming Next... ⇒ Need for specific PDE’s avoiding smoothing of structures having high curvatures.

slide-14
SLIDE 14

Presentation Layout

  • Diffusion PDE’s for Multi-Valued Images : A Quick Review

⇒ Introducing Curvature-Preserving PDE’s for Image Regularization

  • Connections with Line Integral Convolutions and Implementation
  • Application Results
slide-15
SLIDE 15

Curvature-preserving PDE’s

  • For the mono-directional case, we propose the following PDE :

∂Ii ∂t = trace

  • wwT Hi
  • + ∇IT

i Jww

where Jw =   

∂u ∂x ∂u ∂y ∂v ∂x ∂v ∂y

   and Hi =    

∂2Ii ∂x2 ∂2Ii ∂x∂y ∂2Ii ∂x∂y ∂2Ii ∂y2

   . ⇒ Classical “Trace” formulation + Constraint term depending on the variations of w.

slide-16
SLIDE 16

How did the constraint term appear ?

  • If CX stands for the integral curve of w starting from X = (x, y), and parameterized by a s.a :

CX

(0) = X et ∂CX (a) ∂a

= w(CX

(a)), then :

CX

(h)

= CX

(0) + h

∂CX

(a)

∂a

|a=0

+ h2 2 ∂2CX

(a)

∂a2

|a=0

+ O(h3) = X + hw(X) + h2 2 Jw(X)w(X) + O(h3) with h → 0, and O(hn) = hn ǫn. Thus, we get : Ii(CX

(h))

= Ii X + hw(X) + h2 2 Jw(X)w(X) + O(h3) ! = Ii(X) + h∇Ii

T (X) (w(X) + h

2 Jw(X)w(X)) + h2 2 trace “ w(X)wT

(X)Hi(X)

” + O(h3)

  • and then...

∂2Ii(CX

(a))

∂a2

|a=0

= lim

h→0

1 h2 h Ii(CX

(h)) + Ii(CX (−h)) − 2Ii(CX (0))

i = lim

h→0

1 h2 h h2 ∇IT

i Jw(X)w(X) + h2 trace

“ w(X)wT

(X)Hi(X)

” + O(h3) i = trace “ w(X)wT

(X)Hi(X)

” + ∇IT

i Jw(X)w(X)

slide-17
SLIDE 17

Interpretation of the constraint term

  • Our curvature-preserving PDE can be written as :

∂Ii ∂t = ∂2Ii(CX

(a))

∂a2

|a=0 = ∆X C Ii

where CX is the integral line of w starting from X, and parameterized as : CX

(0) = X

and ∂CX

(a)

∂a = w(CX

(a))

  • PDE equivalent to a heat flow on the integral lines of w.
  • If w is chosen to be the directions of the image contours (eigenvector θ− of Gσ),

the smoothing will respect the shape of the contour, whatever its curvature is.

slide-18
SLIDE 18

Smoothing along integral lines

(a) An integral line CX (b) Some integral lines around a triple-junction.

⇒ The performed smoothing will preserve the curved structure.

slide-19
SLIDE 19

Extension to a tensor-based geometry

  • More generaly, we are more interested to a tensor-valued smoothing geometry T

than a vectorial one w.

  • We propose to decompose the field T along all orientations of the plane :

T = 2 π √ T π

α=0

aαaT

α dα

√ T where aα =

  • cos α sin α

T .

  • This suggests to extend naturally our original PDE to this tensor-directed one :

∂Ii ∂t = trace(THi) + 2 π∇IT

i

π

α=0

J√

Taα

√ Taα dα

slide-20
SLIDE 20

Extension to a tensor-based geometry

  • Local behavior of our equation :

– When the tensor T is isotropic, we are on an homogeneous region : the smoothing is performed with the same strength in all directions aα. – When the tensor T is anisotropic, we are on an image contour : the smoothing is performed only along this contour (also respecting its curvature).

slide-21
SLIDE 21

Presentation Layout

  • Diffusion PDE’s for Multi-Valued Images : A Quick Review
  • Introducing Curvature-Preserving PDE’s for Image Regularization

⇒ Connections with Line Integral Convolutions and Implementation

  • Application Results
slide-22
SLIDE 22

Line Integral Convolutions (LIC’s)

  • [Cabral & Leedom, 93] : Way to create textured versions of 2D vector fields F.

⇒ From a pure noisy image Inoise, one computes for each pixel X = (x, y) ILIC

(x,y) = 1

N +∞

−∞

f(p) Inoise(CX

(p)) dp

where    CX

(0)

= X

∂CX

(a)

∂a

= F(CX

(a))

slide-23
SLIDE 23

Link between our PDE and LIC’s

  • Our mono-directional PDE is a 1D heat flow on an integral line CX.
  • The solution of a classical heat flow is a convolution of the data by a Gaussian

kernel (Koenderink[84], Alvarez-Guichard-etal[92]). ⇒ We can then implement all sub-smoothings of our PDE along w = √ Taα, as local convolutions of the pixel data by a 1D Gaussian, along the integral lines CX of w. ⇒ Possible and direct implementation of our PDE by iterative short LIC computations. Iregul

(X)

= 1 N π dt

−dt

f(a) Inoisy(Cθ

(X,a)) da dθ

where f() is a 1D Gaussian function, N = f(a)dadθ, and dt corresponds to the time step (global smoothing strength for one iteration).

slide-24
SLIDE 24

Algorithm properties ⇒ The maximum principle is verified (only local means of pixel intensities are computed). ⇒ Very stable and fast algorithm, compared to classical PDE implementations. The time step (dt) can be very large (≃ 50) while process remains stable. ⇒ LIC-based numerical schemes allows a sub-pixel accuracy for the smoothing (4th-

  • rder Runge-Kutta integration) ⇒ Better preservation of small structures.

(a) Original image (b) PDE Regul. (explicit Euler scheme) (c) LIC-base scheme

slide-25
SLIDE 25

Presentation Layout

  • Diffusion PDE’s for Multi-Valued Images : A Quick Review
  • Introducing Curvature-Preserving PDE’s for Image Regularization
  • Connections with Line Integral Convolutions and Implementation

⇒ Application Results

slide-26
SLIDE 26

Application : Image Denoising

“Babouin” (détail) - 512x512 - (1 iter., 19s)

slide-27
SLIDE 27

Application : Image Denoising

“Tunisie” - 555x367

slide-28
SLIDE 28

Application : Image Denoising

“Tunisie” - 555x367 - (1 iter., 11s)

slide-29
SLIDE 29

Application : Image Denoising

“Tunisie” - 555x367 - (1 iter., 11s)

slide-30
SLIDE 30

Application : Image Denoising

“Baby” - 400x375

slide-31
SLIDE 31

Application : Image Denoising

“Baby” - 400x375 - (2 iter, 5.8s)

slide-32
SLIDE 32

Application : Image Denoising

“Baby” - 400x375 - (2 iter, 5.8s)

slide-33
SLIDE 33

Application : Image Denoising

“La pêche aux moules”.

slide-34
SLIDE 34

Application : Image Denoising

“La pêche aux moules” (1 iter. 3.2s)).

slide-35
SLIDE 35

Application : Image Denoising

“Chloé”

slide-36
SLIDE 36

Application : Reducing JPEG artefacts

“Van Gogh”

slide-37
SLIDE 37

Application : Reducing JPEG artefacts

“Van Gogh” - (1 iter, 5.122s).

slide-38
SLIDE 38

Application : Reducing JPEG artefacts

“Flowers” (JPEG, 10% quality).

slide-39
SLIDE 39

Application : Creating Painting Effects

“Corail” (1 iter.)

slide-40
SLIDE 40

Application : Image Inpainting

“Chloé au zoo”, original color image.

slide-41
SLIDE 41

Application : Image Inpainting

“Chloé au zoo”, inpainting mask definition.

slide-42
SLIDE 42

Application : Image Inpainting

“Chloé au zoo”, inpainted with our PDE.

slide-43
SLIDE 43

Application : Image Inpainting and Reconstruction

“Parrot” 500x500 (200 iter., 4m11s) “Owl” 320x246 (10 iter., 1m01s)

slide-44
SLIDE 44

Application : Image Inpainting

“Bird”, original color image.

slide-45
SLIDE 45

Application : Image Inpainting

“Bird”, inpainting mask definition.

slide-46
SLIDE 46

Application : Image Inpainting

“Bird”, inpainted with our PDE.

slide-47
SLIDE 47

Application : Image Resizing

“Nude” - (1 iter., 20s)

slide-48
SLIDE 48

Application : Image Resizing

“Forest” - (1 iter., 5s)

slide-49
SLIDE 49

Application : Image Resizing

(c) Details from the image resized by bicubic interpolation. (d) Details from the image resized by a non-linear regularization PDE.

slide-50
SLIDE 50

Application : Image Resizing

(a) Original color image (b) Bloc Interpolation (c) Linear Interpolation (d) Bicubic Interpolation (e) PDE/LIC Interpolation

slide-51
SLIDE 51

Summary

  • Generic Tensor-driven PDE denoising : multi-channels, contour preservation.
  • Preserve curvatures and small image structures very well.
  • Very fast and precise implementation scheme.
  • Algorithm ’GREYCSTORATION’ available on the web :
http://www.gre y . en si a en. fr / dts h um p/ gre y st
  • ra
ti
  • n
/