Bijective Composite Mean Value Mappings Kai Hormann Universit - - PowerPoint PPT Presentation

bijective composite mean value mappings
SMART_READER_LITE
LIVE PREVIEW

Bijective Composite Mean Value Mappings Kai Hormann Universit - - PowerPoint PPT Presentation

Bijective Composite Mean Value Mappings Kai Hormann Universit della Svizzera italiana, Lugano joint work with Michael S. Floater & Teseo Schneider Introduction special bivariate interpolation problem find mapping f between two


slide-1
SLIDE 1

Bijective Composite Mean Value Mappings

Kai Hormann

Università della Svizzera italiana, Lugano joint work with

Michael S. Floater & Teseo Schneider

slide-2
SLIDE 2

1/36 MAIA 2013 – Erice – 30 September 2013

Introduction

  • special bivariate interpolation problem
  • find mapping f between two simple polygons
  • bijective
  • linear along edges
slide-3
SLIDE 3

2/36 MAIA 2013 – Erice – 30 September 2013

Motivation

  • image warping
  • riginal image

warped image mask

slide-4
SLIDE 4

3/36 MAIA 2013 – Erice – 30 September 2013

Barycentric coordinates

  • functions

with

  • partition of unity
  • linear reproduction
  • Lagrange property
  • interpolation of data fi given at vi
slide-5
SLIDE 5

4/36 MAIA 2013 – Erice – 30 September 2013

Barycentric coordinates

  • special case n = 3
  • general case
  • homogeneous weight functions with
  • barycentric coordinates
slide-6
SLIDE 6

5/36 MAIA 2013 – Erice – 30 September 2013

  • Wachspress (WP) coordinates
  • mean value (MV) coordinates
  • discrete harmonic (DH) coordinates

Examples

slide-7
SLIDE 7

6/36 MAIA 2013 – Erice – 30 September 2013

Barycentric mappings

source polygon target polygon

slide-8
SLIDE 8

7/36 MAIA 2013 – Erice – 30 September 2013

Wachspress mappings

  • based on WP coordinates

[Wachspress 1975]

  • bijective for convex polygons

[Floater & Kosinka 2010]

slide-9
SLIDE 9

8/36 MAIA 2013 – Erice – 30 September 2013

Wachspress mappings

  • based on WP coordinates

[Wachspress 1975]

  • bijective for convex polygons

[Floater & Kosinka 2010]

  • not bijective for non-convex target
  • not well-defined for non-convex source
slide-10
SLIDE 10

9/36 MAIA 2013 – Erice – 30 September 2013

Mean value mappings

  • based on MV coordinates

[Floater 2003]

  • well-defined for non-convex source
  • not bijective
slide-11
SLIDE 11

10/36 MAIA 2013 – Erice – 30 September 2013

Mean value mappings

  • based on MV coordinates

[Floater 2003]

  • well-defined for non-convex source
  • not bijective, even for convex polygons
slide-12
SLIDE 12

11/36 MAIA 2013 – Erice – 30 September 2013

Barycentric mappings

WP MV convex → convex   convex → non-convex   non-convex → convex   non-convex → non-convex  

  • general barycentric mappings

[Jacobson 2012]

  • not bijective for non-convex target polygon
slide-13
SLIDE 13

12/36 MAIA 2013 – Erice – 30 September 2013

Composite barycentric mappings

slide-14
SLIDE 14

13/36 MAIA 2013 – Erice – 30 September 2013

  • is bijective, if

[Meisters & Olech 1963]

  • and without self-intersection
  • f bijective on the boundary
  • Sufficient condition
slide-15
SLIDE 15

14/36 MAIA 2013 – Erice – 30 September 2013

Perturbation bounds

  • move one

to

  • f bijective, if

with

  • move all

to

  • f bijective, if

with

slide-16
SLIDE 16

15/36 MAIA 2013 – Erice – 30 September 2013

Composite barycentric mappings

  • continuous vertex paths
  • intermediate polygons
  • barycentric mappings
slide-17
SLIDE 17

16/36 MAIA 2013 – Erice – 30 September 2013

Composite barycentric mappings

  • partition
  • f [0,1]
  • composite barycentric mapping
  • fτ bijective, if

with

max displacement max gradient

slide-18
SLIDE 18

17/36 MAIA 2013 – Erice – 30 September 2013

Composite barycentric mappings

slide-19
SLIDE 19

18/36 MAIA 2013 – Erice – 30 September 2013

Composite mean value mappings

  • use mean value coordinates to define mappings fk
  • well-defined, as long as without self-intersections
  • bounded for
  • if is convex

[Rand et al. 2012]

  • if is non-convex ⇒ future work
  • constant M* is finite
  • fτ bijective for uniform steps
  • continuous vertex paths ϕi
  • m sufficiently large
slide-20
SLIDE 20

19/36 MAIA 2013 – Erice – 30 September 2013

Vertex paths

  • by linearly interpolating

[Sederberg at al. 1993]

  • edges lengths
  • signed turning angles
  • barycentre
  • orientation of one edge
slide-21
SLIDE 21

20/36 MAIA 2013 – Erice – 30 September 2013

Adaptive binary partition

checkInterval (0, 1) Jmin = computeJmin ( , ) if Jmin ≤ 0 then c = ( + )/2 τ = τ ∪ c checkInterval ( , c) checkInterval (c, ) end end τ ={0, 1}

slide-22
SLIDE 22

21/36 MAIA 2013 – Erice – 30 September 2013

Adaptive binary partition

checkInterval (0, 1) Jmin = computeJmin (0, 1) if Jmin ≤ 0 then c = ( + )/2 τ = τ ∪ c checkInterval ( , c) checkInterval (c, ) end end τ ={0, 1}

slide-23
SLIDE 23

22/36 MAIA 2013 – Erice – 30 September 2013

Adaptive binary partition

checkInterval (0, 1) Jmin = computeJmin (0, 1) if Jmin ≤ 0 then c = (0 + 1)/2 τ = τ ∪ c checkInterval (0, c) checkInterval (c, 1) end end τ ={0, 0.5, 1}

slide-24
SLIDE 24

23/36 MAIA 2013 – Erice – 30 September 2013

Adaptive binary partition

checkInterval (0, 0.5) Jmin = computeJmin (0, 0.5) if Jmin ≤ 0 then c = ( + )/2 τ = τ ∪ c checkInterval ( , c) checkInterval (c, ) end end τ ={0, 0.5, 1}

slide-25
SLIDE 25

24/36 MAIA 2013 – Erice – 30 September 2013

Adaptive binary partition

checkInterval (0, 0.5) Jmin = computeJmin (0, 0.5) if Jmin ≤ 0 then c = ( + )/2 τ = τ ∪ c checkInterval ( , c) checkInterval (c, ) end end τ ={0, 0.5, 1}

slide-26
SLIDE 26

25/36 MAIA 2013 – Erice – 30 September 2013

Adaptive binary partition

checkInterval (0.5, 1) Jmin = computeJmin (0.5, 1) if Jmin ≤ 0 then c = ( + )/2 τ = τ ∪ c checkInterval ( , c) checkInterval (c, ) end end τ ={0, 0.5, 1}

slide-27
SLIDE 27

26/36 MAIA 2013 – Erice – 30 September 2013

Adaptive binary partition

checkInterval (0.5, 1) Jmin = computeJmin (0.5, 1) if Jmin ≤ 0 then c = (0.5 + 1)/2 τ = τ ∪ c checkInterval (0.5, c) checkInterval (c, 1) end end τ ={0, 0.5, 0.75, 1}

slide-28
SLIDE 28

27/36 MAIA 2013 – Erice – 30 September 2013

Adaptive binary partition

checkInterval (0.5, 1) Jmin = computeJmin (0.5, 1) if Jmin ≤ 0 then c = (0.5 + 1)/2 τ = τ ∪ c checkInterval (0.5, c) checkInterval (c, 1) end end τ ={0, 0.5, 0.75, ..., 1}

slide-29
SLIDE 29

28/36 MAIA 2013 – Erice – 30 September 2013

Composite barycentric mapping

slide-30
SLIDE 30

29/36 MAIA 2013 – Erice – 30 September 2013

Image warping comparison

mean value

slide-31
SLIDE 31

30/36 MAIA 2013 – Erice – 30 September 2013

Image warping comparison

composite mean value

slide-32
SLIDE 32

31/36 MAIA 2013 – Erice – 30 September 2013

Infinite barycentric mappings

slide-33
SLIDE 33

32/36 MAIA 2013 – Erice – 30 September 2013

Infinite barycentric mappings

slide-34
SLIDE 34

33/36 MAIA 2013 – Erice – 30 September 2013

Infinite barycentric mappings

slide-35
SLIDE 35

34/36 MAIA 2013 – Erice – 30 September 2013

Infinite barycentric mappings

1.E-02 1.E-01 1.E+00 1.E+01

100 1000

m error

10 10-1 10-2

slide-36
SLIDE 36

35/36 MAIA 2013 – Erice – 30 September 2013

Infinite barycentric mappings

  • infinite barycentric mapping:
slide-37
SLIDE 37

36/36 MAIA 2013 – Erice – 30 September 2013

Conclusion

  • construction of bijective barycentric mappings
  • composition of intermediate mappings
  • theoretical bounds on the displacement
  • real-time composite mean value mappings
  • construction of the adaptive binary partition
  • real-time GPU implementation
  • infinite composite mappings
  • natural inverse
  • empiric result of convergence