3d screen-space widgets for non-linear projection
DESCRIPTION
3D Screen-space Widgets for Non-linear Projection. Patrick Coleman, Karan Singh (Univ of Toronto) Nisha Sudarsanam, Cindy Grimm (Washington Univ in St. Louis) Leon Barrett (Univ of Calif, Berkeley). What is non-linear perspective?. Perception uses locally linear perspective - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: 3D Screen-space Widgets for Non-linear Projection](https://reader031.vdocuments.mx/reader031/viewer/2022012922/568159ca550346895dc71d9c/html5/thumbnails/1.jpg)
1
3D Screen-space Widgets for Non-linear Projection
Patrick Coleman, Karan Singh (Univ of Toronto)Nisha Sudarsanam, Cindy Grimm (Washington Univ in St. Louis)
Leon Barrett (Univ of Calif, Berkeley)
![Page 2: 3D Screen-space Widgets for Non-linear Projection](https://reader031.vdocuments.mx/reader031/viewer/2022012922/568159ca550346895dc71d9c/html5/thumbnails/2.jpg)
2Graphite 2005, 12/1/2005
What is non-linear perspective?
•Perception uses locally linear perspective• Depth, placement in scene
•Fovea only encompasses a small number of degrees
• 3D sense built out of saccades•Artists use this fact to make better use of 2D canvas
• Local perspective maintained• Continuity between local perspectives
Marie Cassett
![Page 3: 3D Screen-space Widgets for Non-linear Projection](https://reader031.vdocuments.mx/reader031/viewer/2022012922/568159ca550346895dc71d9c/html5/thumbnails/3.jpg)
3Graphite 2005, 12/1/2005
What does this mean?
![Page 4: 3D Screen-space Widgets for Non-linear Projection](https://reader031.vdocuments.mx/reader031/viewer/2022012922/568159ca550346895dc71d9c/html5/thumbnails/4.jpg)
4Graphite 2005, 12/1/2005
Mechanics
•Define more than one camera Ci
•Define region of influence of each camera wi
•Use blended combination of cameras • Different camera for each vertex
• (Dual of free-form deformation)• Blend matrices, projected point, camera
parameters…
Karan Singh, A Fresh Perspective, Graphics Interface 2002
vCwv ii )('
![Page 5: 3D Screen-space Widgets for Non-linear Projection](https://reader031.vdocuments.mx/reader031/viewer/2022012922/568159ca550346895dc71d9c/html5/thumbnails/5.jpg)
5Graphite 2005, 12/1/2005
It’s all in the user interface…
•Each camera has 11 degrees of freedom• 6 for pose (position, orientation)• 5 internal (zoom/focal length, center of projection,
skew, aspect ratio)•Using n cameras implies 11n parameters…
• One mouse
![Page 6: 3D Screen-space Widgets for Non-linear Projection](https://reader031.vdocuments.mx/reader031/viewer/2022012922/568159ca550346895dc71d9c/html5/thumbnails/6.jpg)
6Graphite 2005, 12/1/2005
Some observations
•Scene should have some coherency• Dominant (default) view
•Other cameras are small, local changes to default view• Bow the wall out
•Changes happen in screen space• Can be sketched• Simple geometry
![Page 7: 3D Screen-space Widgets for Non-linear Projection](https://reader031.vdocuments.mx/reader031/viewer/2022012922/568159ca550346895dc71d9c/html5/thumbnails/7.jpg)
7Graphite 2005, 12/1/2005
Basic approach
•Use geometric proxies• Lines, points, boxes
•Image-space change controls camera change• Point moves, camera pans• Also controls region of influence of new camera
![Page 8: 3D Screen-space Widgets for Non-linear Projection](https://reader031.vdocuments.mx/reader031/viewer/2022012922/568159ca550346895dc71d9c/html5/thumbnails/8.jpg)
8Graphite 2005, 12/1/2005
Flow•User picks default view (may pick more than one)•Draws geometric proxies
• Defines 3D and 2D geometry•User edits 2D proxies
• System solves for new cameras• Displays result
![Page 9: 3D Screen-space Widgets for Non-linear Projection](https://reader031.vdocuments.mx/reader031/viewer/2022012922/568159ca550346895dc71d9c/html5/thumbnails/9.jpg)
9Graphite 2005, 12/1/2005
Changing weight of camera
•User can then edit the region of influence of each camera• 3D implicit volume
![Page 10: 3D Screen-space Widgets for Non-linear Projection](https://reader031.vdocuments.mx/reader031/viewer/2022012922/568159ca550346895dc71d9c/html5/thumbnails/10.jpg)
10Graphite 2005, 12/1/2005
Remainder of talk
•Description of geometric proxies• Simple (lines, points)• Combined• Special purpose (fish-eye, panorama)
•Mechanics of camera solving
![Page 11: 3D Screen-space Widgets for Non-linear Projection](https://reader031.vdocuments.mx/reader031/viewer/2022012922/568159ca550346895dc71d9c/html5/thumbnails/11.jpg)
11Graphite 2005, 12/1/2005
Simple proxies•Point
• Causes camera pan•Line
• Moving causes pan• Changing orientation
rotates camera• Changing size changes
zoom
![Page 12: 3D Screen-space Widgets for Non-linear Projection](https://reader031.vdocuments.mx/reader031/viewer/2022012922/568159ca550346895dc71d9c/html5/thumbnails/12.jpg)
12Graphite 2005, 12/1/2005
Complex proxies•Wedge (two lines)
• Position, orientation, size as before• Angle changes perspective
![Page 13: 3D Screen-space Widgets for Non-linear Projection](https://reader031.vdocuments.mx/reader031/viewer/2022012922/568159ca550346895dc71d9c/html5/thumbnails/13.jpg)
13Graphite 2005, 12/1/2005
Complex proxies, cont•Two lines
• Position, orientation, size as before• Changing relative size (rotation)• Changing relative angle (perspective)
![Page 14: 3D Screen-space Widgets for Non-linear Projection](https://reader031.vdocuments.mx/reader031/viewer/2022012922/568159ca550346895dc71d9c/html5/thumbnails/14.jpg)
14Graphite 2005, 12/1/2005
Complex proxies, cont
•Cube edge
![Page 15: 3D Screen-space Widgets for Non-linear Projection](https://reader031.vdocuments.mx/reader031/viewer/2022012922/568159ca550346895dc71d9c/html5/thumbnails/15.jpg)
15Graphite 2005, 12/1/2005
Complex proxies, cont.
•Bounding box• Size:
zoom• Position:
pan
![Page 16: 3D Screen-space Widgets for Non-linear Projection](https://reader031.vdocuments.mx/reader031/viewer/2022012922/568159ca550346895dc71d9c/html5/thumbnails/16.jpg)
16Graphite 2005, 12/1/2005
Mixing proxies
•Wedge plus bounding box• Wedge controls
orientation• Bounding box controls
size, position•Wedge and wedge•Line and wedge•…•Still solves for single camera
![Page 17: 3D Screen-space Widgets for Non-linear Projection](https://reader031.vdocuments.mx/reader031/viewer/2022012922/568159ca550346895dc71d9c/html5/thumbnails/17.jpg)
17Graphite 2005, 12/1/2005
Continuous camera change
•Fish-eye• Two boxes, outer controls region of influence• Inner controls amount of zoom• Zoom smoothly
Outer box
Original inner box
New box
![Page 18: 3D Screen-space Widgets for Non-linear Projection](https://reader031.vdocuments.mx/reader031/viewer/2022012922/568159ca550346895dc71d9c/html5/thumbnails/18.jpg)
18Graphite 2005, 12/1/2005
Continuous camera change
•Line to curve• Sequence of position, orientation changes
• Line segments• Project point to line to determine how much to pan
![Page 19: 3D Screen-space Widgets for Non-linear Projection](https://reader031.vdocuments.mx/reader031/viewer/2022012922/568159ca550346895dc71d9c/html5/thumbnails/19.jpg)
19Graphite 2005, 12/1/2005
Solver
•Proxy + edit defines allowable camera changes• E.g., pan allows only translation in film plane
•Proxy defines error metric• E.g., point constraint is distance of projected point
from desired image point•Find camera that minimizes error metric
• Simplex, or amoeba, solver
Inverse kinematics approach:Through the Lens Camera Control, Gleicher, Siggraph 1992
![Page 20: 3D Screen-space Widgets for Non-linear Projection](https://reader031.vdocuments.mx/reader031/viewer/2022012922/568159ca550346895dc71d9c/html5/thumbnails/20.jpg)
20Graphite 2005, 12/1/2005
Camera degrees of freedom
•Translate in film plane direction• Proxy moved in image plane
•Focal length• Change in scale
•Translate in/out• Proxy changed perspective
•Rotate/spin around look vector• Proxy rotated in film plane
•Rotate left/right, up/down• Asymmetric change in proxy
![Page 21: 3D Screen-space Widgets for Non-linear Projection](https://reader031.vdocuments.mx/reader031/viewer/2022012922/568159ca550346895dc71d9c/html5/thumbnails/21.jpg)
21Graphite 2005, 12/1/2005
User control
•Camera parameters to interpolate• Skew, center of projection, aspect ratio
•Importance of matching each geometric proxy•Region of influence of camera•Grouping of proxies
![Page 22: 3D Screen-space Widgets for Non-linear Projection](https://reader031.vdocuments.mx/reader031/viewer/2022012922/568159ca550346895dc71d9c/html5/thumbnails/22.jpg)
22Graphite 2005, 12/1/2005
Summary
•Non-linear projection difficult to control•Tool box for specifying camera changes
• Image-based• Default view editing
•Proxies also provide natural region-of-influence•Still cumbersome
![Page 23: 3D Screen-space Widgets for Non-linear Projection](https://reader031.vdocuments.mx/reader031/viewer/2022012922/568159ca550346895dc71d9c/html5/thumbnails/23.jpg)
23Graphite 2005, 12/1/2005
Future work
Sketch-based, global widgets
![Page 24: 3D Screen-space Widgets for Non-linear Projection](https://reader031.vdocuments.mx/reader031/viewer/2022012922/568159ca550346895dc71d9c/html5/thumbnails/24.jpg)
24Graphite 2005, 12/1/2005