59
Poisson Image Editing Ligang Liu Graphics&Geometric Computing Lab USTC http://staff.ustc.edu.cn/~lgliu

Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

  • Upload
    others

  • View
    11

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Poisson Image Editing

Ligang LiuGraphics&Geometric Computing Lab

USTChttp://staff.ustc.edu.cn/~lgliu

Page 2: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)
Page 3: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Images in the Internet

Images everywhere!

Page 4: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Images Everywhere

• Digital camera

• Personal digital album

• Photoshop

Page 5: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Digital Image

Page 6: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Math Model of Image

• Continuous– f(x,y)

• Discrete– I (i,j)

– Pixel 

(R, G, B)

Page 7: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Image Processing

• Image filtering

• Image coding

• Image transformation

• Image enhancement

• Image segmentation

• Image understanding

• Image recognition

• …

Page 8: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Gradient Domain Image Editing

• Motivation:– Human visual system is very sensitive to gradient

– Gradient encode edges and local contrast quite well

• Approach:– Edit in the gradient domain

– Reconstruct image from gradient

Page 9: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Gradient Domain: View of Image

Page 10: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Membrane Interpolation

Page 11: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Membrane Interpolation

Page 12: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Poisson Equations

)(4 xρπG−=ΔΦ

Page 13: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Siméon Denis Poisson 

• His teachers: Laplace, Lagrange, …• Poisson’s terms:

– Poisson's equation 

– Poisson's integral

– Poisson distribution

– Poisson brackets

– Poisson's ratio 

– Poisson's constant

1781-1840, France

“Life is good for only two things: to study mathematics and to teach it.”

Page 14: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Background:

02 =+⋅+⋅+⋅+⋅+⋅+⋅ GfFfEfDfCfBfA yxyyxyxx

• Partial Differential Equations (PDE)

• The PDE's which occur in physics are mostly second order and linear:

0),,,,,( =yyxyxxyx ffffffE

Page 15: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

– Hyberbolic• wave equation:

– Parobolic• heat equation:

– Elliptic• Laplace equation:

• Poisson equation:

:2BCA <⋅

:2BCA =⋅

2

2

21

tf

vf

∂∂

fktf

Δ⋅=∂∂

:2BCA >⋅

0=Δf

ρ−=Δf

02 =+⋅+⋅+⋅+⋅+⋅+⋅ GfFfEfDfCfBfA yxyyxyxx

Page 16: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Poisson Equation

ρ−=Δf

yx 2

2

2

2

∂∂

+∂∂

≡Δ

),( yxρρ =

Page 17: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Boundary conditions

• Dirichlet boundary conditions:

• Neumann boundary conditions:

dsΩ∂Ω

Ω∂|f

Ω∂∂∂ |sf

Page 18: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Existence of solution

dsΩ∂Ω

The solution of an Poisson Equation is uniquelydetermined in , if Dirichlet boundary conditions or Neumann boundary conditions are specified on

ΩΩ∂

Page 19: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Discrete Poisson Equation  

jijijijijijiji

hfff

hfff

,2,1,1,

2,,1,1 22

ρ=−+

+−+ −+−+

ρ−=Δf

Page 20: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Matrix Nature of Poisson Equation

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

−−

−−

−−

−−

33

23

13

32

22

12

31

21

11

33

23

13

32

22

12

31

21

11

41141

141141

141141

141141

14

bbbbbbbbb

fffffffff

Large sparse linear system

Page 21: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Poisson Equation Solver

• Direct method

• Iterative methods– Jacobi, Gauss‐Seidel, SOR

• Multigrid method

Page 22: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Variational interpretation

Ω∂Ω∂Ω=−∇= ∫∫ ||s.t minarg *2* ffff f v

Ω∂Ω∂ ==Δ ||s.t )( * ffdivf v

Euler Equation: 0=∂∂

−∂∂

−yx fff F

yF

xF

F

v is a guidance field, needs not to be a gradient field.

Page 23: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Physical Origins of Poisson Equation

• Electrostatic potential

• Gravitational potential

)(4 xρπG−=ΔΦ

0

)(ερ x

−=ΔΦ

Page 24: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Electrostatic potential

Charge Density

Electric Potential

Electric Field Φ

E

E

Φ

)(xρ

)(xρ

Φ−∇=E

30

21

4 rqq

πεrF =

Page 25: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Derivations

∫∫ =⋅VS

dvd0

)(ερ xsE

0

)(ερ x

−=ΔΦ

Gauss’s Law: V

S

ds

∫∫ ⋅∇=⋅VS

dvd EsEGauss’stheorem:

0

)(ερ xE =⋅∇

Φ−∇=E Poisson Equation

Page 26: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Φ

E

ρ

0

)(ερ x

−=ΔΦ

Φ−∇=E V

ddiv S

V

∫ ⋅≡=

sEEx

0

lim)()(

0ερ

Relationships

DensityPotential

Field

Page 27: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Φ E),()( 00 yxδρ =x

Page 28: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Gravitational potential

Mass Density

Gravitational Potential

Force Field

(acceleration)

g

Φ

)(xρ

Φ−∇=g

gF m=

m

)(xρ

Φ

3rmMGrF =

Page 29: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

V

ddivG S

V

∫ ⋅≡=

sggx

0

lim)()(4 ρπ

Φ

g

ρ

Φ−∇=g

Relationships

DensityPotential

Field

)(4 xρπG−=ΔΦ

Page 30: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Analogy for Image

Image Density

Image (Potential)

Image Gradientg

I

)(xρ

I−∇=g

Page 31: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

V

ddiv S

V

∫ ⋅≡=

sggx

0

lim)()(ρ

I

g

ρ

I−∇=g

Relationships

DensityPotential

Field

)(xρ−=ΔI

Page 32: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

V

ddiv S

V

∫ ⋅≡=

sggx

0

lim)()(ρI−∇=g

)(xρ−=ΔI

Page 33: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

)(xρ−=ΔI

Page 34: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Motivation for Image Editing

I

ρDensity

Potential

)(xρ−=ΔI

Page 35: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Poisson Image Editing

P. Pérez, M. Gangnet, and A. BlakeSIGGRAPH 2003

Page 36: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Seamless Cloning

Precise selection: tedious and unsatisfactory

Alpha-Matting: powerful but involved

Seamless cloning: loose selection but no seams?

Page 37: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Seamless Poisson Cloning

Page 38: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Ω∂Ω∂ =∇=Δ || s.t. )( BA IIIdivI

AI BI

Cloning by solving Poisson Equation

Page 39: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Why we do analogy for image?

• Easier in the image gradient domain

– Local editing         global effects

– Seamless ‐ cloning, editing, tilling

Page 40: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Variational Interpretation

Ω∂Ω∂Ω=∇−∇= ∫∫ ||s.t minarg *2*

BAf IIIII

Euler Equation: 0=∂∂

−∂∂

−yx fff F

yF

xF

F

AI∇ is a gradient field to be cloned.

Ω∂Ω∂ =∇=Δ || s.t. )( BA IIIdivI

Page 41: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)
Page 42: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

ComposeDemo

Page 43: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Change Features

Page 44: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Change Texture

Page 45: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Conceal

Page 46: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Mix Lights

Page 47: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Change Colors

Page 48: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Change Colors

Page 49: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Seamless TilingSingle image

Page 50: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Seamless TilingMultipleimagestiled at random

Page 51: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Image Stitching

Page 52: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Alpha Blending / Feathering

Page 53: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Affect of Window Size

Page 54: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Affect of Window Size

Page 55: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Good Window Size

Page 56: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Gradient based Stitching

• Input images

Page 57: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)
Page 58: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Recap: Gradient Domain Image Editing

• Motivation:– Human visual system is very sensitive to gradient

– Gradient encode edges and local contrast quite well

• Approach:– Edit in the gradient domain

– Reconstruct image from gradient

Page 59: Poisson Image Editing - USTCstaff.ustc.edu.cn/.../Courseware/DGP16_PoissonImageEditing.pdf · Digital Image. Math Model of Image • Continuous – f(x,y) • Discrete – I (i,j)

Q&A