bijective composite mean value mappings

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

Upload: teseo-schneider

Post on 17-Jul-2015

137 views

Category:

Science


0 download

TRANSCRIPT

Bijective Composite Mean Value Mappings Teseo Schneider University of Lugano

joint work with

Kai Hormann, Michael S. Floater

GD/SPM 2013 – Denver – 13 November 2013

Introduction

! special bivariate interpolation problem

! find mapping f between two simple polygons !  bijective

!  linear along edges

GD/SPM 2013 – Denver – 13 November 2013

Motivation

!  image warping

original image warped image mask

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

GD/SPM 2013 – Denver – 13 November 2013

Barycentric coordinates

! special case n= 3

! general case !  homogeneous weight functions with

!  barycentric coordinates

GD/SPM 2013 – Denver – 13 November 2013

! Wachspress (WP) coordinates

! mean value (MV) coordinates

! discrete harmonic (DH) coordinates

Examples

GD/SPM 2013 – Denver – 13 November 2013

Barycentric mappings

source polygon target polygon

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

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

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

GD/SPM 2013 – Denver – 13 November 2013

Composite barycentric 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

GD/SPM 2013 – Denver – 13 November 2013

Perturbation bounds

! move one to !  f bijective, if

with

! move all to !  f bijective, if

with

GD/SPM 2013 – Denver – 13 November 2013

Composite barycentric mappings

! continuous vertex paths

!  intermediate polygons

! barycentric 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

GD/SPM 2013 – Denver – 13 November 2013

Composite barycentric 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

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

GD/SPM 2013 – Denver – 13 November 2013

Uniform steps example 1

GD/SPM 2013 – Denver – 13 November 2013

Uniform steps example 2

GD/SPM 2013 – Denver – 13 November 2013

Uniform steps example 3

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}

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}

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}

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}

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}

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}

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}

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}

GD/SPM 2013 – Denver – 13 November 2013

Composite barycentric mapping

GD/SPM 2013 – Denver – 13 November 2013

Real time image warping

GD/SPM 2013 – Denver – 13 November 2013

Image warping comparison

mean value composite mean value

GD/SPM 2013 – Denver – 13 November 2013

Infinite barycentric mappings

GD/SPM 2013 – Denver – 13 November 2013

Infinite barycentric 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

GD/SPM 2013 – Denver – 13 November 2013

Infinite barycentric mappings

!  infinite barycentric mapping:

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

GD/SPM 2013 – Denver – 13 November 2013