shape defined panoramas

53
SHAPE DEFINED PANORAMAS John Brosz & Faramarz Samavati University of Calgary Shape Modeling International – June 2010 1

Upload: bat

Post on 22-Feb-2016

79 views

Category:

Documents


0 download

DESCRIPTION

John Brosz & Faramarz Samavati University of Calgary Shape Modeling International – June 2010. Shape defined Panoramas. Outline. Scenario/Motivation Goals Related Work Observations Projection Surface Formulation Rendering Applications. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Shape defined Panoramas

1

SHAPE DEFINED PANORAMASJohn Brosz & Faramarz SamavatiUniversity of Calgary

Shape Modeling International – June 2010

Page 2: Shape defined Panoramas

2

Outline1. Scenario/Motivation2. Goals3. Related Work4. Observations5. Projection Surface Formulation6. Rendering7. Applications

Page 3: Shape defined Panoramas

3

Page 4: Shape defined Panoramas

Figure from Transformations & Projection in Computer Graphics, Salomon, Springer, 20064

Page 5: Shape defined Panoramas

5

i = R

Figure from Transformations & Projection in Computer Graphics, Salomon, Springer, 2006

Page 6: Shape defined Panoramas

6

z

j = +

( i, j ) = ( R ,

, + )Figure from Transformations & Projection in Computer Graphics, Salomon, Springer, 2006

Page 7: Shape defined Panoramas

7

Page 8: Shape defined Panoramas

8

Page 9: Shape defined Panoramas

9

Spherical Projection Equation

( i, j ) =

Page 10: Shape defined Panoramas

10

Page 11: Shape defined Panoramas

11

Page 12: Shape defined Panoramas

12

Page 13: Shape defined Panoramas

13

Page 14: Shape defined Panoramas

14

Page 15: Shape defined Panoramas

15

Goals

Create panoramas that:1. Allow for exploration &

customization2. Are defined by modeling3. Build on existing intuition4. Allow for visual understanding

Single Viewpoint: no “slit cameras”.

Page 16: Shape defined Panoramas

16

Related WorkPanoramas from Perspective Images

Image from http://www.cirq.de/mosaicing.html

Image from Szeliski & Shum, Creating full view panoramic image mosaics and environment maps, Siggraph 1997

Page 17: Shape defined Panoramas

17

Related WorkCorrecting Distortion

Images from Carrol, Agrawala & Agarwala, Optimizing Content-Preserving Projections for Wide-Angled Images, Siggraph 2009

Page 18: Shape defined Panoramas

18

Related WorkSingle-Center Projections

Images from Trapp & Döllner, Generalization of Single-Center Projections Using Projection Tile Screens, VISIGRAPP, 2008

Normal Map

Panorama

Page 19: Shape defined Panoramas

19

Page 20: Shape defined Panoramas

20

Common Panoramas

Page 21: Shape defined Panoramas

21

Observations1. Shapes are associated with

panoramas

Page 22: Shape defined Panoramas

22

Observations1. Shapes are associated with panoramas2. Angular change

Page 23: Shape defined Panoramas

23

Observations1. Shapes are associated with panoramas2. Angular Change3. Parameterization is important

( i, j ) = ( R ,

, + )

( i, j ) =

Page 24: Shape defined Panoramas

24

Shape Defined Panoramas

Defined by two curves1. Outline: closed, controls horizontal

sampling

Page 25: Shape defined Panoramas

25

Shape Defined Panoramas

Defined by two curves1. Outline: closed, controls horizontal

sampling

Page 26: Shape defined Panoramas

26

Shape Defined Panoramas

Defined by two curves1. Outline: closed, controls horizontal

sampling2. Profile: open, controls vertical

sampling

Page 27: Shape defined Panoramas

27

Shape Defined Panoramas

Defined by two curves1. Outline: closed, controls horizontal

sampling2. Profile: Open, controls vertical

sampling Curves parameterized by arc-length

Page 28: Shape defined Panoramas

28

Shape Defined Panoramas Mix between surface of revolution

and surface extrusion

ProfileOutline

Extrusion Surface

Page 29: Shape defined Panoramas

29

Shape Defined Panoramas Mix between surface of revolution

and surface extrusion

ProfileOutline

Panorama Surface

Page 30: Shape defined Panoramas

30

Example 1

ProfileOutline

Page 31: Shape defined Panoramas

31

Example 2

Outline

Page 32: Shape defined Panoramas

32

Example 2Before

After

Page 33: Shape defined Panoramas

33

Shape Defined Panoramas

Multiple Profiles

Page 34: Shape defined Panoramas

34

Shape Defined Panoramas

Multiple Profiles

Page 35: Shape defined Panoramas

35

Page 36: Shape defined Panoramas

36

Rendering

Ray-tracing Image Re-sampling Nonlinear Projection on GPU

Page 37: Shape defined Panoramas

37

Rendering

Ray-tracing

x

x

Page 38: Shape defined Panoramas

38

Rendering

Image Re-sampling

Page 39: Shape defined Panoramas

39

Rendering

Nonlinear Projection on GPU

1. Find projection equation2. Project vertices with equation on GPU3. Be careful with seams

Page 40: Shape defined Panoramas

40

Find Projection Equation

World Coordinates Normalized Device Coordinates

Page 41: Shape defined Panoramas

41

Find Projection Equation

Only surfaces that map onto spherical coordinates.

Projection Surface: Q(u,v) = (x,y,z) Projection Volume: t (0,0,0) + (1-t) Q(u,v)1. Find spherical coordinates of p = (x,y,z)2. Search for u,v s.t. Q(u,v) with same

spherical coords.3. t = || p ||

|| Q(u,v) ||

Page 42: Shape defined Panoramas

42

Find Projection Equation

Search for u,v s.t. Q(u,v) with same spherical coords.

Page 43: Shape defined Panoramas

43

Project Vertices with GPU

Override projection matrix with nonlinear projection equation.

This only moves vertices! Triangles are filled as if linearly projected.

Nonlinearly ProjectedTriangle

Triangle w/ Linear Fill Algorithm

Page 44: Shape defined Panoramas

44

Seams

Page 45: Shape defined Panoramas

45

Seams

Page 46: Shape defined Panoramas

46

Rendering Performance

Single pass algorithm 60 fps with 100K polygons on NVIDIA

8800 GTS

Page 47: Shape defined Panoramas

47

Application:Custom Panorama

Page 48: Shape defined Panoramas

48

Application:Re-projecting Panoramas

Page 49: Shape defined Panoramas

49

Application:Animated Projection

Page 50: Shape defined Panoramas

50

Application:Interactive Local Editing

Page 51: Shape defined Panoramas

51

Application:Interactive Local Editing

Page 52: Shape defined Panoramas

52

Conclusions

Use of modeling to define a projection. Use of Arc-length to dictate

parameterization. Visual means for creating panoramas. Realtime GPU based rendering of

panoramas.

Page 53: Shape defined Panoramas

53

THANK-YOU