john brosz & faramarz samavati university of calgary shape modeling international – june 2010 1

Download John Brosz & Faramarz Samavati University of Calgary Shape Modeling International – June 2010 1

If you can't read please download the document

Upload: seth-st-ives

Post on 14-Dec-2015

216 views

Category:

Documents


0 download

TRANSCRIPT

  • Slide 1

John Brosz & Faramarz Samavati University of Calgary Shape Modeling International June 2010 1 Slide 2 Outline 1. Scenario/Motivation 2. Goals 3. Related Work 4. Observations 5. Projection Surface Formulation 6. Rendering 7. Applications 2 Slide 3 3 Slide 4 Figure from Transformations & Projection in Computer Graphics, Salomon, Springer, 2006 4 Slide 5 5 i = R Figure from Transformations & Projection in Computer Graphics, Salomon, Springer, 2006 Slide 6 6 z j = + ( i, j ) = ( R,, + ) Figure from Transformations & Projection in Computer Graphics, Salomon, Springer, 2006 Slide 7 7 Slide 8 8 Slide 9 Spherical Projection Equation 9 ( i, j ) = Slide 10 10 Slide 11 11 Slide 12 12 Slide 13 13 Slide 14 14 Slide 15 Goals Create panoramas that: 1. Allow for exploration & customization 2. Are defined by modeling 3. Build on existing intuition 4. Allow for visual understanding Single Viewpoint: no slit cameras. 15 Slide 16 Related Work Panoramas 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 16 Slide 17 Related Work Correcting Distortion Images from Carrol, Agrawala & Agarwala, Optimizing Content-Preserving Projections for Wide-Angled Images, Siggraph 2009 17 Slide 18 Related Work Single-Center Projections Images from Trapp & Dllner, Generalization of Single-Center Projections Using Projection Tile Screens, VISIGRAPP, 2008 Normal Map Panorama 18 Slide 19 19 Slide 20 Common Panoramas 20 Slide 21 Observations 1. Shapes are associated with panoramas 21 Slide 22 Observations 1. Shapes are associated with panoramas 2. Angular change 22 Slide 23 Observations 1. Shapes are associated with panoramas 2. Angular Change 3. Parameterization is important 23 ( i, j ) = ( R,, + ) ( i, j ) = Slide 24 Shape Defined Panoramas Defined by two curves 1. Outline: closed, controls horizontal sampling 24 Slide 25 Shape Defined Panoramas Defined by two curves 1. Outline: closed, controls horizontal sampling 25 Slide 26 Shape Defined Panoramas Defined by two curves 1. Outline: closed, controls horizontal sampling 2. Profile: open, controls vertical sampling 26 Slide 27 Shape Defined Panoramas Defined by two curves 1. Outline: closed, controls horizontal sampling 2. Profile: Open, controls vertical sampling Curves parameterized by arc-length 27 Slide 28 Shape Defined Panoramas Mix between surface of revolution and surface extrusion Profile Outline Extrusion Surface 28 Slide 29 Shape Defined Panoramas Mix between surface of revolution and surface extrusion Profile Outline Panorama Surface 29 Slide 30 Example 1 Profile Outline 30 Slide 31 Example 2 31 Outline Slide 32 Example 2 Before After 32 Slide 33 Shape Defined Panoramas Multiple Profiles 33 Slide 34 Shape Defined Panoramas Multiple Profiles 34 Slide 35 35 Slide 36 Rendering Ray-tracing Image Re-sampling Nonlinear Projection on GPU 36 Slide 37 Rendering Ray-tracing x x 37 Slide 38 Rendering Image Re-sampling 38 Slide 39 Rendering Nonlinear Projection on GPU 1. Find projection equation 2. Project vertices with equation on GPU 3. Be careful with seams 39 Slide 40 Find Projection Equation World Coordinates Normalized Device Coordinates 40 Slide 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) || 41 Slide 42 Find Projection Equation Search for u,v s.t. Q(u,v) with same spherical coords. 42 Slide 43 Project Vertices with GPU Override projection matrix with nonlinear projection equation. This only moves vertices! Triangles are filled as if linearly projected. Nonlinearly Projected Triangle Triangle w/ Linear Fill Algorithm 43 Slide 44 Seams 44 Slide 45 Seams 45 Slide 46 Rendering Performance Single pass algorithm 60 fps with 100K polygons on NVIDIA 8800 GTS 46 Slide 47 Application: Custom Panorama 47 Slide 48 Application: Re-projecting Panoramas 48 Slide 49 Application: Animated Projection 49 Slide 50 Application: Interactive Local Editing 50 Slide 51 Application: Interactive Local Editing 51 Slide 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. 52 Slide 53 THANK-YOU 53