30
Image Vectorization Cai Qingzhong 2007/11/01

Image Vectorization Cai Qingzhong 2007/11/01. What is Vectorization?

Embed Size (px)

Citation preview

Page 1: Image Vectorization Cai Qingzhong 2007/11/01. What is Vectorization?

Image Vectorization

Cai Qingzhong2007/11/01

Page 2: Image Vectorization Cai Qingzhong 2007/11/01. What is Vectorization?

What is Vectorization?

Page 3: Image Vectorization Cai Qingzhong 2007/11/01. What is Vectorization?

Image Vectorization Goal

convert a raster image into a vector graphics

vector graphics include points lines curves polygons …

Page 4: Image Vectorization Cai Qingzhong 2007/11/01. What is Vectorization?

Why Vector Graphics

Compact Scalable Editable Easy to animate

Page 5: Image Vectorization Cai Qingzhong 2007/11/01. What is Vectorization?

Compact

input raster image

37.5KB

optimized gradient mesh

7.7KB

Page 6: Image Vectorization Cai Qingzhong 2007/11/01. What is Vectorization?

Why Vector Graphics

Compact Scalable Editable Easy to animate

Page 7: Image Vectorization Cai Qingzhong 2007/11/01. What is Vectorization?

Scalable

original image

vector form bicubic interpolation

Page 8: Image Vectorization Cai Qingzhong 2007/11/01. What is Vectorization?

Why Vector Graphics

Compact Scalable Editable Easy to animate

Page 9: Image Vectorization Cai Qingzhong 2007/11/01. What is Vectorization?

Editable

Page 10: Image Vectorization Cai Qingzhong 2007/11/01. What is Vectorization?

Why Vector Graphics

Compact Scalable Editable Easy to animate

Page 11: Image Vectorization Cai Qingzhong 2007/11/01. What is Vectorization?

Easy to animate

Page 12: Image Vectorization Cai Qingzhong 2007/11/01. What is Vectorization?

Related Work

Cartoon drawing vectorization skeletonization, tracing and

approximation Triangulation-based Method Object-based Vectorization

Bezier patch subdivision

Page 13: Image Vectorization Cai Qingzhong 2007/11/01. What is Vectorization?

Image Vectorization using Optimized Gradient Meshes

Jian Sun, Lin Liang, Fang Wen, Heung-Yeung ShumSiggraph 2007

Page 14: Image Vectorization Cai Qingzhong 2007/11/01. What is Vectorization?

About the author --- Jian Sun Lead Researcher, Visual

Computing Group, Microsoft Research Asia

Research interests in stereo matching interactive computer

vision computational

photography

Page 15: Image Vectorization Cai Qingzhong 2007/11/01. What is Vectorization?

Surface Representation

A tensor product patch is defined as

Bezier bicubic, rational biquadratic, B-splines… control points lying outside the surface

( , ) ( ) ( )Tm u v F u QF v

Page 16: Image Vectorization Cai Qingzhong 2007/11/01. What is Vectorization?

Ferguson Patch

( , ) T Tm u v UCQC V0 2 0 2

1 3 1 3

0 2 0 2

1 3 1 3

v v

v v

u u uv uv

u u uv uv

m m m m

m m m mQ

m m m m

m m m m

1 0 0 0

0 0 1 0

3 3 2 1

2 2 1 1

C

2 31U u u u 2 31V v v v

Page 17: Image Vectorization Cai Qingzhong 2007/11/01. What is Vectorization?

Gradient Mesh

Control Point Attributes: 2D position geometry derivatives RGB color color derivatives

( , ) f T Tf u v UCQ C V

Page 18: Image Vectorization Cai Qingzhong 2007/11/01. What is Vectorization?

Flow Chart

Original Initial Mesh Optimized Mesh Final Rendering

Page 19: Image Vectorization Cai Qingzhong 2007/11/01. What is Vectorization?

Mesh Initialization

Page 20: Image Vectorization Cai Qingzhong 2007/11/01. What is Vectorization?

Mesh Initialization

Decompose image into sub-objects Divide the boundary into four

segments Fitting segments by cubic Bezier

splines Refine the mesh-lines

evenly distributed interactive placement

Page 21: Image Vectorization Cai Qingzhong 2007/11/01. What is Vectorization?

Mesh Optimization

input image initial rendering final rendering

Page 22: Image Vectorization Cai Qingzhong 2007/11/01. What is Vectorization?

Mesh Optimization

To minimize the energy function

P: number of patches

2

1 ,

( ) ( ( , )) ( , )P

p pp u v

E M I m u v f u v

Page 23: Image Vectorization Cai Qingzhong 2007/11/01. What is Vectorization?

Levenberg-Marquardt algorithm Most widely used algorithm for Nonlin

ear Least Squares Minimization. First proposed by Levenberg, then im

proved by Marquardt A blend of Gradient descent and Gaus

s-Newton iteration

Page 24: Image Vectorization Cai Qingzhong 2007/11/01. What is Vectorization?

Smoothness

Page 25: Image Vectorization Cai Qingzhong 2007/11/01. What is Vectorization?

Smoothness Constraint

Add a smoothness term into the energy

which minimizes the second-order finite difference.

'

2

1 ,

2

( ) ( )

{ ( , ) 2 ( , ) ( , )

( , ) 2 ( , ) ( , ) }

P

p s t

E M E M

m s s t m s t m s s t

m s t t m s t m s t t

Page 26: Image Vectorization Cai Qingzhong 2007/11/01. What is Vectorization?

Vector line guided optimized gradient mesh

Page 27: Image Vectorization Cai Qingzhong 2007/11/01. What is Vectorization?

Vector line guided optimized gradient mesh

Given vector fields Vu and Vv, we optimize

2'' '

1 ,

2

( , )( ) ( ) { ( ( , )) , ( ( , ))

( , )( ( , )) , ( ( , ))

P

u up u v

v v

m u vE M E M w m u v V m u v

u

m u vw m u v V m u v

v

Page 28: Image Vectorization Cai Qingzhong 2007/11/01. What is Vectorization?

More Results

Page 29: Image Vectorization Cai Qingzhong 2007/11/01. What is Vectorization?

More Results

Page 30: Image Vectorization Cai Qingzhong 2007/11/01. What is Vectorization?

THE END.Thank you!