Geometric image approximation Adhemar Bultheel Department of - - PowerPoint PPT Presentation

geometric image approximation
SMART_READER_LITE
LIVE PREVIEW

Geometric image approximation Adhemar Bultheel Department of - - PowerPoint PPT Presentation

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Geometric image approximation Adhemar Bultheel Department of Computer Science K.U.Leuven Wavelets and fractals Esneux, April 26-28, 2010 Adhemar Bultheel


slide-1
SLIDE 1

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets

Geometric image approximation

Adhemar Bultheel

Department of Computer Science K.U.Leuven

Wavelets and fractals Esneux, April 26-28, 2010

Adhemar Bultheel Geometric image approximation

slide-2
SLIDE 2

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets

Survey

Motivation and problem setting Normal offsets in 1D and 2D Decoration with polynomial wavelets tree pruning and encoding Experimental results

Adhemar Bultheel Geometric image approximation

slide-3
SLIDE 3

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Special images and wavelets Many alternatives

Horizon images, the class H

Hα = {c : [0, 1] → R : |Dsc(x) − Dsc(x′)| ≤ Cα|x − x′|α−s}, s = ⌊α⌋ (H¨

  • lder class).

PSα,β = {f : [0, 1]2 → R, f ∈ Hβ, if y = c(x), c ∈ Hα} (piecewise smooth) α, β ∈ (1, 2] Hα = {f : [0, 1]2 → {0, 1} : f (x, y) = 1, if y ≤ c(x), 0 otherwise, c ∈ Hα} (horizon class, α ∈ (1, 2], most often α = 2, then we write H)

Adhemar Bultheel Geometric image approximation

slide-4
SLIDE 4

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Special images and wavelets Many alternatives

Horizon images, the class H

Hα = {c : [0, 1] → R : |Dsc(x) − Dsc(x′)| ≤ Cα|x − x′|α−s}, s = ⌊α⌋ (H¨

  • lder class).

PSα,β = {f : [0, 1]2 → R, f ∈ Hβ, if y = c(x), c ∈ Hα} (piecewise smooth) α, β ∈ (1, 2] Hα = {f : [0, 1]2 → {0, 1} : f (x, y) = 1, if y ≤ c(x), 0 otherwise, c ∈ Hα} (horizon class, α ∈ (1, 2], most often α = 2, then we write H)

Adhemar Bultheel Geometric image approximation

slide-5
SLIDE 5

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Special images and wavelets Many alternatives

Horizon images, the class H

Hα = {c : [0, 1] → R : |Dsc(x) − Dsc(x′)| ≤ Cα|x − x′|α−s}, s = ⌊α⌋ (H¨

  • lder class).

PSα,β = {f : [0, 1]2 → R, f ∈ Hβ, if y = c(x), c ∈ Hα} (piecewise smooth) α, β ∈ (1, 2] Hα = {f : [0, 1]2 → {0, 1} : f (x, y) = 1, if y ≤ c(x), 0 otherwise, c ∈ Hα} (horizon class, α ∈ (1, 2], most often α = 2, then we write H)

Adhemar Bultheel Geometric image approximation

slide-6
SLIDE 6

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Special images and wavelets Many alternatives

Horizon images, the class H

Hα = {c : [0, 1] → R : |Dsc(x) − Dsc(x′)| ≤ Cα|x − x′|α−s}, s = ⌊α⌋ (H¨

  • lder class).

PSα,β = {f : [0, 1]2 → R, f ∈ Hβ, if y = c(x), c ∈ Hα} (piecewise smooth) α, β ∈ (1, 2] Hα = {f : [0, 1]2 → {0, 1} : f (x, y) = 1, if y ≤ c(x), 0 otherwise, c ∈ Hα} (horizon class, α ∈ (1, 2], most often α = 2, then we write H)

Adhemar Bultheel Geometric image approximation

slide-7
SLIDE 7

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Special images and wavelets Many alternatives

Problem with dyadic wavelet approximation

Large number of dyadic squares of size 2−j that intersect the curve c(t). Slow decay of wavelet coefficients. Taking n largest wavelet coefficients gives approximant fn and f − fn2 = O(n−1/2) while wavelet approximation of c ∈ C 2 decays like O(n−2) (Classical) wavelets are good for point singularities, but behave poorly on line singularities

Adhemar Bultheel Geometric image approximation

slide-8
SLIDE 8

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Special images and wavelets Many alternatives

Problem with dyadic wavelet approximation

Large number of dyadic squares of size 2−j that intersect the curve c(t). Slow decay of wavelet coefficients. Taking n largest wavelet coefficients gives approximant fn and f − fn2 = O(n−1/2) while wavelet approximation of c ∈ C 2 decays like O(n−2) (Classical) wavelets are good for point singularities, but behave poorly on line singularities

Adhemar Bultheel Geometric image approximation

slide-9
SLIDE 9

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Special images and wavelets Many alternatives

Problem with dyadic wavelet approximation

Large number of dyadic squares of size 2−j that intersect the curve c(t). Slow decay of wavelet coefficients. Taking n largest wavelet coefficients gives approximant fn and f − fn2 = O(n−1/2) while wavelet approximation of c ∈ C 2 decays like O(n−2) (Classical) wavelets are good for point singularities, but behave poorly on line singularities

Adhemar Bultheel Geometric image approximation

slide-10
SLIDE 10

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Special images and wavelets Many alternatives

Problem with dyadic wavelet approximation

Large number of dyadic squares of size 2−j that intersect the curve c(t). Slow decay of wavelet coefficients. Taking n largest wavelet coefficients gives approximant fn and f − fn2 = O(n−1/2) while wavelet approximation of c ∈ C 2 decays like O(n−2) (Classical) wavelets are good for point singularities, but behave poorly on line singularities

Adhemar Bultheel Geometric image approximation

slide-11
SLIDE 11

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Special images and wavelets Many alternatives

Problem with dyadic wavelet approximation

Large number of dyadic squares of size 2−j that intersect the curve c(t). Slow decay of wavelet coefficients. Taking n largest wavelet coefficients gives approximant fn and f − fn2 = O(n−1/2) while wavelet approximation of c ∈ C 2 decays like O(n−2) (Classical) wavelets are good for point singularities, but behave poorly on line singularities

Adhemar Bultheel Geometric image approximation

slide-12
SLIDE 12

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Special images and wavelets Many alternatives

Many alternatives

A multitude of techniques and -lets. Optimize cvg rate of best approximation with n parameters in a class (α = 2). Ridgelets (Donoho) Curvelets/Contourlets (Cand` es, Donoho) O(n−2 log n) Wedgelets (Donoho) O(n−2) + δ (δ angular resolution) Dictionaries (e.g. Basis pursuit and matching pursuit) Bandelets (Mallat) (wavelets adapted to geometric contents) Domain partitioning (edge detection and segmentation) Binary space partitioning (e.g. geometric wavelets) Adaptive thinning (adaptive thinning of triangular mesh)

Adhemar Bultheel Geometric image approximation

slide-13
SLIDE 13

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Special images and wavelets Many alternatives

Many alternatives

A multitude of techniques and -lets. Optimize cvg rate of best approximation with n parameters in a class (α = 2). Ridgelets (Donoho) Curvelets/Contourlets (Cand` es, Donoho) O(n−2 log n) Wedgelets (Donoho) O(n−2) + δ (δ angular resolution) Dictionaries (e.g. Basis pursuit and matching pursuit) Bandelets (Mallat) (wavelets adapted to geometric contents) Domain partitioning (edge detection and segmentation) Binary space partitioning (e.g. geometric wavelets) Adaptive thinning (adaptive thinning of triangular mesh)

Adhemar Bultheel Geometric image approximation

slide-14
SLIDE 14

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Special images and wavelets Many alternatives

Many alternatives

A multitude of techniques and -lets. Optimize cvg rate of best approximation with n parameters in a class (α = 2). Ridgelets (Donoho) Curvelets/Contourlets (Cand` es, Donoho) O(n−2 log n) Wedgelets (Donoho) O(n−2) + δ (δ angular resolution) Dictionaries (e.g. Basis pursuit and matching pursuit) Bandelets (Mallat) (wavelets adapted to geometric contents) Domain partitioning (edge detection and segmentation) Binary space partitioning (e.g. geometric wavelets) Adaptive thinning (adaptive thinning of triangular mesh)

Adhemar Bultheel Geometric image approximation

slide-15
SLIDE 15

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Special images and wavelets Many alternatives

Many alternatives

A multitude of techniques and -lets. Optimize cvg rate of best approximation with n parameters in a class (α = 2). Ridgelets (Donoho) Curvelets/Contourlets (Cand` es, Donoho) O(n−2 log n) Wedgelets (Donoho) O(n−2) + δ (δ angular resolution) Dictionaries (e.g. Basis pursuit and matching pursuit) Bandelets (Mallat) (wavelets adapted to geometric contents) Domain partitioning (edge detection and segmentation) Binary space partitioning (e.g. geometric wavelets) Adaptive thinning (adaptive thinning of triangular mesh)

Adhemar Bultheel Geometric image approximation

slide-16
SLIDE 16

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Special images and wavelets Many alternatives

Many alternatives

A multitude of techniques and -lets. Optimize cvg rate of best approximation with n parameters in a class (α = 2). Ridgelets (Donoho) Curvelets/Contourlets (Cand` es, Donoho) O(n−2 log n) Wedgelets (Donoho) O(n−2) + δ (δ angular resolution) Dictionaries (e.g. Basis pursuit and matching pursuit) Bandelets (Mallat) (wavelets adapted to geometric contents) Domain partitioning (edge detection and segmentation) Binary space partitioning (e.g. geometric wavelets) Adaptive thinning (adaptive thinning of triangular mesh)

Adhemar Bultheel Geometric image approximation

slide-17
SLIDE 17

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Special images and wavelets Many alternatives

Many alternatives

A multitude of techniques and -lets. Optimize cvg rate of best approximation with n parameters in a class (α = 2). Ridgelets (Donoho) Curvelets/Contourlets (Cand` es, Donoho) O(n−2 log n) Wedgelets (Donoho) O(n−2) + δ (δ angular resolution) Dictionaries (e.g. Basis pursuit and matching pursuit) Bandelets (Mallat) (wavelets adapted to geometric contents) Domain partitioning (edge detection and segmentation) Binary space partitioning (e.g. geometric wavelets) Adaptive thinning (adaptive thinning of triangular mesh)

Adhemar Bultheel Geometric image approximation

slide-18
SLIDE 18

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Special images and wavelets Many alternatives

Many alternatives

A multitude of techniques and -lets. Optimize cvg rate of best approximation with n parameters in a class (α = 2). Ridgelets (Donoho) Curvelets/Contourlets (Cand` es, Donoho) O(n−2 log n) Wedgelets (Donoho) O(n−2) + δ (δ angular resolution) Dictionaries (e.g. Basis pursuit and matching pursuit) Bandelets (Mallat) (wavelets adapted to geometric contents) Domain partitioning (edge detection and segmentation) Binary space partitioning (e.g. geometric wavelets) Adaptive thinning (adaptive thinning of triangular mesh)

Adhemar Bultheel Geometric image approximation

slide-19
SLIDE 19

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Special images and wavelets Many alternatives

Many alternatives

A multitude of techniques and -lets. Optimize cvg rate of best approximation with n parameters in a class (α = 2). Ridgelets (Donoho) Curvelets/Contourlets (Cand` es, Donoho) O(n−2 log n) Wedgelets (Donoho) O(n−2) + δ (δ angular resolution) Dictionaries (e.g. Basis pursuit and matching pursuit) Bandelets (Mallat) (wavelets adapted to geometric contents) Domain partitioning (edge detection and segmentation) Binary space partitioning (e.g. geometric wavelets) Adaptive thinning (adaptive thinning of triangular mesh)

Adhemar Bultheel Geometric image approximation

slide-20
SLIDE 20

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Special images and wavelets Many alternatives

Many alternatives

A multitude of techniques and -lets. Optimize cvg rate of best approximation with n parameters in a class (α = 2). Ridgelets (Donoho) Curvelets/Contourlets (Cand` es, Donoho) O(n−2 log n) Wedgelets (Donoho) O(n−2) + δ (δ angular resolution) Dictionaries (e.g. Basis pursuit and matching pursuit) Bandelets (Mallat) (wavelets adapted to geometric contents) Domain partitioning (edge detection and segmentation) Binary space partitioning (e.g. geometric wavelets) Adaptive thinning (adaptive thinning of triangular mesh)

Adhemar Bultheel Geometric image approximation

slide-21
SLIDE 21

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Computer graphics Normal offset in 1D Normal offset in 2D

Some terminology

A method with origins in computer graphics Pixel values = z-coordinate, then image = object triangulation of image = triangular mesh on the object However in CG the objects are smooth

Adhemar Bultheel Geometric image approximation

slide-22
SLIDE 22

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Computer graphics Normal offset in 1D Normal offset in 2D

Some terminology

A method with origins in computer graphics Pixel values = z-coordinate, then image = object triangulation of image = triangular mesh on the object However in CG the objects are smooth

Adhemar Bultheel Geometric image approximation

slide-23
SLIDE 23

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Computer graphics Normal offset in 1D Normal offset in 2D

Some terminology

A method with origins in computer graphics Pixel values = z-coordinate, then image = object triangulation of image = triangular mesh on the object However in CG the objects are smooth

Adhemar Bultheel Geometric image approximation

slide-24
SLIDE 24

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Computer graphics Normal offset in 1D Normal offset in 2D

Some terminology

A method with origins in computer graphics Pixel values = z-coordinate, then image = object triangulation of image = triangular mesh on the object However in CG the objects are smooth

Adhemar Bultheel Geometric image approximation

slide-25
SLIDE 25

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Computer graphics Normal offset in 1D Normal offset in 2D

Normal offsets in 1D

normal bisector piercing point → normal offset defines refinement discontinuity rapidly detected vertical vs. normal offset

Adhemar Bultheel Geometric image approximation

slide-26
SLIDE 26

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Computer graphics Normal offset in 1D Normal offset in 2D

Normal offsets in 1D

normal bisector piercing point → normal offset defines refinement discontinuity rapidly detected vertical vs. normal offset

Adhemar Bultheel Geometric image approximation

slide-27
SLIDE 27

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Computer graphics Normal offset in 1D Normal offset in 2D

Normal offsets in 1D

normal bisector piercing point → normal offset defines refinement discontinuity rapidly detected vertical vs. normal offset

Adhemar Bultheel Geometric image approximation

slide-28
SLIDE 28

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Computer graphics Normal offset in 1D Normal offset in 2D

Normal offsets in 1D

normal bisector piercing point → normal offset defines refinement discontinuity rapidly detected vertical vs. normal offset

Adhemar Bultheel Geometric image approximation

slide-29
SLIDE 29

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Computer graphics Normal offset in 1D Normal offset in 2D

Normal offsets in 1D

normal bisector piercing point → normal offset defines refinement discontinuity rapidly detected vertical vs. normal offset

Adhemar Bultheel Geometric image approximation

slide-30
SLIDE 30

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Computer graphics Normal offset in 1D Normal offset in 2D

Normal offsets for a smooth curve

Normal offsets generate a regular grid on a smooth function.

Adhemar Bultheel Geometric image approximation

slide-31
SLIDE 31

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Computer graphics Normal offset in 1D Normal offset in 2D

Dyadic subdivision and singularity

Dyadic subdivision needs ‘infinitely many’ steps to locate the singularity.

Adhemar Bultheel Geometric image approximation

slide-32
SLIDE 32

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Computer graphics Normal offset in 1D Normal offset in 2D

Normal offsets in 2D

Not a normal in the centers of the triangles of the object mesh A normal bisector for every edge in that mesh in a vertical plane though that edge. In that plane you do the 1D-case, with projections of the piercing points giving a subdivision point on every edge of the triangulation

Adhemar Bultheel Geometric image approximation

slide-33
SLIDE 33

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Computer graphics Normal offset in 1D Normal offset in 2D

Normal offsets in 2D

Not a normal in the centers of the triangles of the object mesh A normal bisector for every edge in that mesh in a vertical plane though that edge. In that plane you do the 1D-case, with projections of the piercing points giving a subdivision point on every edge of the triangulation

Adhemar Bultheel Geometric image approximation

slide-34
SLIDE 34

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Computer graphics Normal offset in 1D Normal offset in 2D

Normal offsets in 2D

Not a normal in the centers of the triangles of the object mesh A normal bisector for every edge in that mesh in a vertical plane though that edge. In that plane you do the 1D-case, with projections of the piercing points giving a subdivision point on every edge of the triangulation

Adhemar Bultheel Geometric image approximation

slide-35
SLIDE 35

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Computer graphics Normal offset in 1D Normal offset in 2D

Possible splits

Need to take the best possible split into 4 finer triangles. Take the one that gives the smallest polynomial approximation error

Adhemar Bultheel Geometric image approximation

slide-36
SLIDE 36

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Computer graphics Normal offset in 1D Normal offset in 2D

Possible splits

Need to take the best possible split into 4 finer triangles. Take the one that gives the smallest polynomial approximation error

Adhemar Bultheel Geometric image approximation

slide-37
SLIDE 37

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Computer graphics Normal offset in 1D Normal offset in 2D

Possible splits

class H Rule of thumb: choose the one giving the least possible intersections with the discontinuity. Gray triangles need subdivision.

Adhemar Bultheel Geometric image approximation

slide-38
SLIDE 38

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Computer graphics Normal offset in 1D Normal offset in 2D

Possible splits

Left: regular subdivision; Right: adaptive subdivision Right has less intersections with singularity contour

Adhemar Bultheel Geometric image approximation

slide-39
SLIDE 39

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Computer graphics Normal offset in 1D Normal offset in 2D

Possible splits

Left: regular subdivision; Right: adaptive subdivision Right has less intersections with singularity contour

Adhemar Bultheel Geometric image approximation

slide-40
SLIDE 40

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Polynomial wavelets Tree pruning Encoding

Update: polynomial wavelet

Interpolating mesh gives poor approximation P∆= best polynomial approximation on triangle ∆ If ∆ is a subtriangle of ∆′, then the geometric wavelet is ψ∆ = P∆ − P∆′ restricted to ∆. [Dekel & Leviatan] We define ψ∆ = P∆ − Q∆ where Q∆ ∈ Π2 is an interpolating polynomial (comes for free). The wavelets are the detail info to be added to the object mesh.

Adhemar Bultheel Geometric image approximation

slide-41
SLIDE 41

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Polynomial wavelets Tree pruning Encoding

Update: polynomial wavelet

Interpolating mesh gives poor approximation P∆= best polynomial approximation on triangle ∆ If ∆ is a subtriangle of ∆′, then the geometric wavelet is ψ∆ = P∆ − P∆′ restricted to ∆. [Dekel & Leviatan] We define ψ∆ = P∆ − Q∆ where Q∆ ∈ Π2 is an interpolating polynomial (comes for free). The wavelets are the detail info to be added to the object mesh.

Adhemar Bultheel Geometric image approximation

slide-42
SLIDE 42

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Polynomial wavelets Tree pruning Encoding

Update: polynomial wavelet

Interpolating mesh gives poor approximation P∆= best polynomial approximation on triangle ∆ If ∆ is a subtriangle of ∆′, then the geometric wavelet is ψ∆ = P∆ − P∆′ restricted to ∆. [Dekel & Leviatan] We define ψ∆ = P∆ − Q∆ where Q∆ ∈ Π2 is an interpolating polynomial (comes for free). The wavelets are the detail info to be added to the object mesh.

Adhemar Bultheel Geometric image approximation

slide-43
SLIDE 43

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Polynomial wavelets Tree pruning Encoding

Tree pruning

Successive subtriangulations = graph Nodes = subdivision (geometric) data + detail info (wavelets) Pruning = cut away the less important branches

Adhemar Bultheel Geometric image approximation

slide-44
SLIDE 44

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Polynomial wavelets Tree pruning Encoding

Tree pruning

Successive subtriangulations = graph Nodes = subdivision (geometric) data + detail info (wavelets) Pruning = cut away the less important branches

Adhemar Bultheel Geometric image approximation

slide-45
SLIDE 45

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Polynomial wavelets Tree pruning Encoding

Tree pruning

Successive subtriangulations = graph Nodes = subdivision (geometric) data + detail info (wavelets) Pruning = cut away the less important branches

Adhemar Bultheel Geometric image approximation

slide-46
SLIDE 46

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Polynomial wavelets Tree pruning Encoding

Tree pruning

min f − ˜ fn, ˜ fn ←

  • t∈ℓ(S)

Q∆(t) +

  • t∈ℓ(S)

ψ∆(t) S subtree t nodes of tree ℓ(S) leaves of tree S ∆(t) triangle at node t Q∆(t) (linear) interpolating polynomial on ∆(t) ψ∆(t) polynomial (least squares) wavelet on ∆(t) Note: there can be a wavelet at every node but generated from leave-wavelets

Adhemar Bultheel Geometric image approximation

slide-47
SLIDE 47

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Polynomial wavelets Tree pruning Encoding

Optimal tree pruning (no ψ∆(t))

Define

R(S) monotonically increasing bit-rate functional on (sub)tree S D(S) monotonically decreasing distortion functional on (sub)tree S

Prune S such that minS D(S) + λ(R(S) − Rbudget), (λ regularization parameter) i.e., min˜

f D(˜

f ) such that R(˜ f ) ≤ Rbudget1 Optimal S for given λ by top-down pruning in linear time (in N = #nodes). Iteration on λ to approach Rbudget Complexity O(N log N)

1Chou, Lookabaugh, Gray (1989) Adhemar Bultheel Geometric image approximation

slide-48
SLIDE 48

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Polynomial wavelets Tree pruning Encoding

Optimal tree pruning (no ψ∆(t))

Define

R(S) monotonically increasing bit-rate functional on (sub)tree S D(S) monotonically decreasing distortion functional on (sub)tree S

Prune S such that minS D(S) + λ(R(S) − Rbudget), (λ regularization parameter) i.e., min˜

f D(˜

f ) such that R(˜ f ) ≤ Rbudget1 Optimal S for given λ by top-down pruning in linear time (in N = #nodes). Iteration on λ to approach Rbudget Complexity O(N log N)

1Chou, Lookabaugh, Gray (1989) Adhemar Bultheel Geometric image approximation

slide-49
SLIDE 49

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Polynomial wavelets Tree pruning Encoding

Optimal tree pruning (no ψ∆(t))

Define

R(S) monotonically increasing bit-rate functional on (sub)tree S D(S) monotonically decreasing distortion functional on (sub)tree S

Prune S such that minS D(S) + λ(R(S) − Rbudget), (λ regularization parameter) i.e., min˜

f D(˜

f ) such that R(˜ f ) ≤ Rbudget1 Optimal S for given λ by top-down pruning in linear time (in N = #nodes). Iteration on λ to approach Rbudget Complexity O(N log N)

1Chou, Lookabaugh, Gray (1989) Adhemar Bultheel Geometric image approximation

slide-50
SLIDE 50

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Polynomial wavelets Tree pruning Encoding

Optimal tree pruning (with normal offsets, wavelets and quantization)

Recall a wavelet at every node, but only encoded in the leaves. Approximation error on ∆(t): Da(t) = f − (Q∆(t) + ψ∆(t))2, ∀t ∈ S For subtree St rooted at t: Da(St) =

l∈ℓ(St) Da(l) − Da(t)

Quantization error on ∆(t): Dq(t) For subtree St rooted at t: Dq(St) =

l∈ℓ(St) Dq(l) − Dq(t)

Refinement cost function Rθ(t) (normal offsets + tesselation) Rθ(St) =

t∈S\ℓ(S) Rθ(t)

Quantization cost: Rq(St) =

l∈ℓ(St) Rq(l) − Rq(t)

Total cost for St: R(St) = Rθ(St) + Rq(St).

Adhemar Bultheel Geometric image approximation

slide-51
SLIDE 51

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Polynomial wavelets Tree pruning Encoding

Optimal tree pruning (with normal offsets, wavelets and quantization)

Recall a wavelet at every node, but only encoded in the leaves. Approximation error on ∆(t): Da(t) = f − (Q∆(t) + ψ∆(t))2, ∀t ∈ S For subtree St rooted at t: Da(St) =

l∈ℓ(St) Da(l) − Da(t)

Quantization error on ∆(t): Dq(t) For subtree St rooted at t: Dq(St) =

l∈ℓ(St) Dq(l) − Dq(t)

Refinement cost function Rθ(t) (normal offsets + tesselation) Rθ(St) =

t∈S\ℓ(S) Rθ(t)

Quantization cost: Rq(St) =

l∈ℓ(St) Rq(l) − Rq(t)

Total cost for St: R(St) = Rθ(St) + Rq(St).

Adhemar Bultheel Geometric image approximation

slide-52
SLIDE 52

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Polynomial wavelets Tree pruning Encoding

Optimal tree pruning (with normal offsets, wavelets and quantization)

Recall a wavelet at every node, but only encoded in the leaves. Approximation error on ∆(t): Da(t) = f − (Q∆(t) + ψ∆(t))2, ∀t ∈ S For subtree St rooted at t: Da(St) =

l∈ℓ(St) Da(l) − Da(t)

Quantization error on ∆(t): Dq(t) For subtree St rooted at t: Dq(St) =

l∈ℓ(St) Dq(l) − Dq(t)

Refinement cost function Rθ(t) (normal offsets + tesselation) Rθ(St) =

t∈S\ℓ(S) Rθ(t)

Quantization cost: Rq(St) =

l∈ℓ(St) Rq(l) − Rq(t)

Total cost for St: R(St) = Rθ(St) + Rq(St).

Adhemar Bultheel Geometric image approximation

slide-53
SLIDE 53

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Polynomial wavelets Tree pruning Encoding

Optimal tree pruning (with normal offsets, wavelets and quantization)

Recall a wavelet at every node, but only encoded in the leaves. Approximation error on ∆(t): Da(t) = f − (Q∆(t) + ψ∆(t))2, ∀t ∈ S For subtree St rooted at t: Da(St) =

l∈ℓ(St) Da(l) − Da(t)

Quantization error on ∆(t): Dq(t) For subtree St rooted at t: Dq(St) =

l∈ℓ(St) Dq(l) − Dq(t)

Refinement cost function Rθ(t) (normal offsets + tesselation) Rθ(St) =

t∈S\ℓ(S) Rθ(t)

Quantization cost: Rq(St) =

l∈ℓ(St) Rq(l) − Rq(t)

Total cost for St: R(St) = Rθ(St) + Rq(St).

Adhemar Bultheel Geometric image approximation

slide-54
SLIDE 54

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Polynomial wavelets Tree pruning Encoding

Optimal tree pruning (with normal offsets, wavelets and quantization)

Recall a wavelet at every node, but only encoded in the leaves. Approximation error on ∆(t): Da(t) = f − (Q∆(t) + ψ∆(t))2, ∀t ∈ S For subtree St rooted at t: Da(St) =

l∈ℓ(St) Da(l) − Da(t)

Quantization error on ∆(t): Dq(t) For subtree St rooted at t: Dq(St) =

l∈ℓ(St) Dq(l) − Dq(t)

Refinement cost function Rθ(t) (normal offsets + tesselation) Rθ(St) =

t∈S\ℓ(S) Rθ(t)

Quantization cost: Rq(St) =

l∈ℓ(St) Rq(l) − Rq(t)

Total cost for St: R(St) = Rθ(St) + Rq(St).

Adhemar Bultheel Geometric image approximation

slide-55
SLIDE 55

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Polynomial wavelets Tree pruning Encoding

Optimal tree pruning (with normal offsets, wavelets and quantization)

Recall a wavelet at every node, but only encoded in the leaves. Approximation error on ∆(t): Da(t) = f − (Q∆(t) + ψ∆(t))2, ∀t ∈ S For subtree St rooted at t: Da(St) =

l∈ℓ(St) Da(l) − Da(t)

Quantization error on ∆(t): Dq(t) For subtree St rooted at t: Dq(St) =

l∈ℓ(St) Dq(l) − Dq(t)

Refinement cost function Rθ(t) (normal offsets + tesselation) Rθ(St) =

t∈S\ℓ(S) Rθ(t)

Quantization cost: Rq(St) =

l∈ℓ(St) Rq(l) − Rq(t)

Total cost for St: R(St) = Rθ(St) + Rq(St).

Adhemar Bultheel Geometric image approximation

slide-56
SLIDE 56

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Polynomial wavelets Tree pruning Encoding

Optimal tree pruning (with normal offsets, wavelets and quantization)

Recall a wavelet at every node, but only encoded in the leaves. Approximation error on ∆(t): Da(t) = f − (Q∆(t) + ψ∆(t))2, ∀t ∈ S For subtree St rooted at t: Da(St) =

l∈ℓ(St) Da(l) − Da(t)

Quantization error on ∆(t): Dq(t) For subtree St rooted at t: Dq(St) =

l∈ℓ(St) Dq(l) − Dq(t)

Refinement cost function Rθ(t) (normal offsets + tesselation) Rθ(St) =

t∈S\ℓ(S) Rθ(t)

Quantization cost: Rq(St) =

l∈ℓ(St) Rq(l) − Rq(t)

Total cost for St: R(St) = Rθ(St) + Rq(St).

Adhemar Bultheel Geometric image approximation

slide-57
SLIDE 57

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Polynomial wavelets Tree pruning Encoding

Optimal tree pruning

Now we have a bit-rate function R(S) and a distortion function Da(S) + Dq(S) Prune over nested subtrees ∪t′∈ℓ(St)∆(t′) = ∆(t) A one-bit decoration indicator whether or not to add a wavelet at node t functions no longer linear or monotone → optimal pruning algorithm needs adaptation Wavelets represented by Bernstein polynomials ψ∆(x, y) =

|i|=1 biBi(z, y)

Adhemar Bultheel Geometric image approximation

slide-58
SLIDE 58

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Polynomial wavelets Tree pruning Encoding

Optimal tree pruning

Now we have a bit-rate function R(S) and a distortion function Da(S) + Dq(S) Prune over nested subtrees ∪t′∈ℓ(St)∆(t′) = ∆(t) A one-bit decoration indicator whether or not to add a wavelet at node t functions no longer linear or monotone → optimal pruning algorithm needs adaptation Wavelets represented by Bernstein polynomials ψ∆(x, y) =

|i|=1 biBi(z, y)

Adhemar Bultheel Geometric image approximation

slide-59
SLIDE 59

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Polynomial wavelets Tree pruning Encoding

Optimal tree pruning

Now we have a bit-rate function R(S) and a distortion function Da(S) + Dq(S) Prune over nested subtrees ∪t′∈ℓ(St)∆(t′) = ∆(t) A one-bit decoration indicator whether or not to add a wavelet at node t functions no longer linear or monotone → optimal pruning algorithm needs adaptation Wavelets represented by Bernstein polynomials ψ∆(x, y) =

|i|=1 biBi(z, y)

Adhemar Bultheel Geometric image approximation

slide-60
SLIDE 60

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Polynomial wavelets Tree pruning Encoding

Optimal tree pruning

Now we have a bit-rate function R(S) and a distortion function Da(S) + Dq(S) Prune over nested subtrees ∪t′∈ℓ(St)∆(t′) = ∆(t) A one-bit decoration indicator whether or not to add a wavelet at node t functions no longer linear or monotone → optimal pruning algorithm needs adaptation Wavelets represented by Bernstein polynomials ψ∆(x, y) =

|i|=1 biBi(z, y)

Adhemar Bultheel Geometric image approximation

slide-61
SLIDE 61

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Polynomial wavelets Tree pruning Encoding

Optimal tree pruning

Now we have a bit-rate function R(S) and a distortion function Da(S) + Dq(S) Prune over nested subtrees ∪t′∈ℓ(St)∆(t′) = ∆(t) A one-bit decoration indicator whether or not to add a wavelet at node t functions no longer linear or monotone → optimal pruning algorithm needs adaptation Wavelets represented by Bernstein polynomials ψ∆(x, y) =

|i|=1 biBi(z, y)

Adhemar Bultheel Geometric image approximation

slide-62
SLIDE 62

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Polynomial wavelets Tree pruning Encoding

Encoding

What needs encoding? tree structure of S the partition of each triangle (points on edges) the type of partitioning for each triangle coefficients of polynomials ψ∆ for leaf nodes

Adhemar Bultheel Geometric image approximation

slide-63
SLIDE 63

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Polynomial wavelets Tree pruning Encoding

Encoding

What needs encoding? tree structure of S the partition of each triangle (points on edges) the type of partitioning for each triangle coefficients of polynomials ψ∆ for leaf nodes

Adhemar Bultheel Geometric image approximation

slide-64
SLIDE 64

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Polynomial wavelets Tree pruning Encoding

Encoding

What needs encoding? tree structure of S the partition of each triangle (points on edges) the type of partitioning for each triangle coefficients of polynomials ψ∆ for leaf nodes

Adhemar Bultheel Geometric image approximation

slide-65
SLIDE 65

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Polynomial wavelets Tree pruning Encoding

Encoding

What needs encoding? tree structure of S the partition of each triangle (points on edges) the type of partitioning for each triangle coefficients of polynomials ψ∆ for leaf nodes

Adhemar Bultheel Geometric image approximation

slide-66
SLIDE 66

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Polynomial wavelets Tree pruning Encoding

Encoding

What needs encoding? tree structure of S the partition of each triangle (points on edges) the type of partitioning for each triangle coefficients of polynomials ψ∆ for leaf nodes

Adhemar Bultheel Geometric image approximation

slide-67
SLIDE 67

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Polynomial wavelets Tree pruning Encoding

Encoding

Problems with digital images

Adhemar Bultheel Geometric image approximation

slide-68
SLIDE 68

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Polynomial wavelets Tree pruning Encoding

Encoding

Statistics of offsets for uniform distribution of singularity to assign bits and bins.

Adhemar Bultheel Geometric image approximation

slide-69
SLIDE 69

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Polynomial wavelets Tree pruning Encoding

Encoding

51% wavelets 26% normal offsets 19% tree 4% triangular splits meta data

Adhemar Bultheel Geometric image approximation

slide-70
SLIDE 70

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Polynomial wavelets Tree pruning Encoding

Example

Adhemar Bultheel Geometric image approximation

slide-71
SLIDE 71

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Polynomial wavelets Tree pruning Encoding

Example

Adhemar Bultheel Geometric image approximation

slide-72
SLIDE 72

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Polynomial wavelets Tree pruning Encoding

Pruning effect

Adhemar Bultheel Geometric image approximation

slide-73
SLIDE 73

Problem setting Normal offsets Normal mesh triangulations and polynomial wavelets Polynomial wavelets Tree pruning Encoding

Reference

  • W. Van Aerschot, M. Jansen, and A. Bultheel.

Normal mesh based geometrical image compression. Image and Vision Computing, 27(4):459–468, 2009.

  • W. Van Aerschot, M. Jansen, E. Vanraes, and A. Bultheel.

Image compression using normal mesh techniques. In A. Cohen, J.-L. Merrien, and L.L. Schumaker, editors, Curves and Surface Fitting, Avignon 2006, pages 266–275, Brentwood, 2007. Nashboro Press. Ward Van Aerschot. Multiscale Geometric Image Approximation. PhD thesis, K.U.Leuven, September 2009.

Adhemar Bultheel Geometric image approximation