Top Banner
Bijective Composite Mean Value Mappings Teseo Schneider University of Lugano joint work with Kai Hormann, Michael S. Floater
38

Bijective Composite Mean Value Mappings

Jul 17, 2015

Download

Science

Teseo Schneider
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Bijective Composite Mean Value Mappings

Bijective Composite Mean Value Mappings Teseo Schneider University of Lugano

joint work with

Kai Hormann, Michael S. Floater

Page 2: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 2013

Introduction

! special bivariate interpolation problem

! find mapping f between two simple polygons !  bijective

!  linear along edges

Page 3: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 2013

Motivation

!  image warping

original image warped image mask

Page 4: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 2013

Barycentric coordinates

! functions with

!  partition of unity

!  linear reproduction

!  Lagrange property

!  interpolation of data fi given at vi

Page 5: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 2013

Barycentric coordinates

! special case n= 3

! general case !  homogeneous weight functions with

!  barycentric coordinates

Page 6: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 2013

! Wachspress (WP) coordinates

! mean value (MV) coordinates

! discrete harmonic (DH) coordinates

Examples

Page 7: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 2013

Barycentric mappings

source polygon target polygon

Page 8: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 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

Page 9: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 2013

Mean value mappings

! based on MV coordinates [Floater 2003]

! well-defined for non-convex source

! not bijective, even for convex polygons

Page 10: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 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

Page 11: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 2013

Composite barycentric mappings

Page 12: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 2013

!  is bijective, if [Meisters & Olech 1963]

!  and without self-intersection

!  f bijective on the boundary

! 

Sufficient condition

Page 13: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 2013

Perturbation bounds

! move one to !  f bijective, if

with

! move all to !  f bijective, if

with

Page 14: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 2013

Composite barycentric mappings

! continuous vertex paths

!  intermediate polygons

! barycentric mappings

Page 15: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 2013

Composite barycentric mappings

! partition of [0 ,1 ]

! composite barycentric mapping

! f¿ bijective, if

with

max displacement

max gradient

Page 16: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 2013

Composite barycentric mappings

Page 17: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 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

Page 18: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 2013

Vertex paths

!  by linearly interpolating [Sederberg at al. 1993] !  edges lengths

!  signed turning angles

!  barycentre

!  orientation of one edge

t =0 t =0.25 t =0.5 t =0.75 t =1

Page 19: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 2013

Uniform steps example 1

Page 20: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 2013

Uniform steps example 2

Page 21: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 2013

Uniform steps example 3

Page 22: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 2013

Adaptive binary partition checkInterval (0, 1)

Jmin = computeJmin ( , )

if Jmin ∙ 0 then c = ( + )/2 ¿ = ¿ [ c checkInterval ( , c) checkInterval (c, ) end

end

¿ ={0, 1}

Page 23: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 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}

Page 24: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 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}

Page 25: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 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}

Page 26: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 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}

Page 27: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 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}

Page 28: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 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}

Page 29: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 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}

Page 30: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 2013

Composite barycentric mapping

Page 31: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 2013

Real time image warping

Page 32: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 2013

Image warping comparison

mean value composite mean value

Page 33: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 2013

Infinite barycentric mappings

Page 34: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 2013

Infinite barycentric mappings

Page 35: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 2013

Infinite barycentric mappings

1.E-02

1.E-01

1.E+00

1.E+01

100 1000 m

erro

r

10

0

10-1

10-2

Page 36: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 2013

Infinite barycentric mappings

!  infinite barycentric mapping:

Page 37: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 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

Page 38: Bijective Composite Mean Value Mappings

GD/SPM 2013 – Denver – 13 November 2013