3D Stereo Visualization - Leibniz Institute for ... Stereo Visualization Arman Khalatyan...

28
Introduction Cues Rendering 3D Stereo Visualization Arman Khalatyan Astrophysical Institute Potsdam Cosmology group 12th January 2005 Arman Khalatyan 3D Stereo Visualization

Transcript of 3D Stereo Visualization - Leibniz Institute for ... Stereo Visualization Arman Khalatyan...

IntroductionCues

Rendering

3D Stereo Visualization

Arman Khalatyan

Astrophysical Institute PotsdamCosmology group

12th January 2005

Arman Khalatyan 3D Stereo Visualization

IntroductionCues

Rendering

1 Introduction.

2 Depth cuesDepth cues in 3DIllusionsStereographics using stereo pairsParallax

3 RenderingDiagramOpenGLAnaglyph

Arman Khalatyan 3D Stereo Visualization

IntroductionCues

Rendering

Introduction

Computer based generation of stereo pairs as used to create aperception of depth.Such depth perception can be useful in many fields:

Scientific visualization

PhysicalMedical etc.

Entertainment

Games

Appreciation ofarchitectural spaces etc.

Arman Khalatyan 3D Stereo Visualization

IntroductionCues

Rendering

Introduction

Computer based generation of stereo pairs as used to create aperception of depth.Such depth perception can be useful in many fields:

Scientific visualization

PhysicalMedical etc.

Entertainment

Games

Appreciation ofarchitectural spaces etc.

Arman Khalatyan 3D Stereo Visualization

IntroductionCues

Rendering

Introduction

Computer based generation of stereo pairs as used to create aperception of depth.Such depth perception can be useful in many fields:

Scientific visualization

PhysicalMedical etc.

Entertainment

Games

Appreciation ofarchitectural spaces etc.

Arman Khalatyan 3D Stereo Visualization

IntroductionCues

Rendering

Depth cues in 3DIllusionsStereographicsParallax

Depth cues

There are a number of cues that the human visual system usesthat result in a perception of depth. These are present even in 2Dimages:

Perspective.Objects get smaller the further away they are andparallel line converge in distance.

Sizes of known objects.We expect certain object to be smallerthan others.

Detail.Close objects appear in more detail, distant objects less.

Occlusion. An object that blocks another is assumed to be inthe foreground.

Lighting, shadows.Closer objects are brighter, distant onesdimmer.

Relative motion.Objects further away seem to move moreslowly than objects in the foreground.

Arman Khalatyan 3D Stereo Visualization

IntroductionCues

Rendering

Depth cues in 3DIllusionsStereographicsParallax

Depth cues

There are a number of cues that the human visual system usesthat result in a perception of depth. These are present even in 2Dimages:

Perspective.Objects get smaller the further away they are andparallel line converge in distance.

Sizes of known objects.We expect certain object to be smallerthan others.

Detail.Close objects appear in more detail, distant objects less.

Occlusion. An object that blocks another is assumed to be inthe foreground.

Lighting, shadows.Closer objects are brighter, distant onesdimmer.

Relative motion.Objects further away seem to move moreslowly than objects in the foreground.

Arman Khalatyan 3D Stereo Visualization

IntroductionCues

Rendering

Depth cues in 3DIllusionsStereographicsParallax

Depth cues

There are a number of cues that the human visual system usesthat result in a perception of depth. These are present even in 2Dimages:

Perspective.Objects get smaller the further away they are andparallel line converge in distance.

Sizes of known objects.We expect certain object to be smallerthan others.

Detail.Close objects appear in more detail, distant objects less.

Occlusion. An object that blocks another is assumed to be inthe foreground.

Lighting, shadows.Closer objects are brighter, distant onesdimmer.

Relative motion.Objects further away seem to move moreslowly than objects in the foreground.

Arman Khalatyan 3D Stereo Visualization

IntroductionCues

Rendering

Depth cues in 3DIllusionsStereographicsParallax

Depth cues

There are a number of cues that the human visual system usesthat result in a perception of depth. These are present even in 2Dimages:

Perspective.Objects get smaller the further away they are andparallel line converge in distance.

Sizes of known objects.We expect certain object to be smallerthan others.

Detail.Close objects appear in more detail, distant objects less.

Occlusion. An object that blocks another is assumed to be inthe foreground.

Lighting, shadows.Closer objects are brighter, distant onesdimmer.

Relative motion.Objects further away seem to move moreslowly than objects in the foreground.

Arman Khalatyan 3D Stereo Visualization

IntroductionCues

Rendering

Depth cues in 3DIllusionsStereographicsParallax

Depth cues

There are a number of cues that the human visual system usesthat result in a perception of depth. These are present even in 2Dimages:

Perspective.Objects get smaller the further away they are andparallel line converge in distance.

Sizes of known objects.We expect certain object to be smallerthan others.

Detail.Close objects appear in more detail, distant objects less.

Occlusion. An object that blocks another is assumed to be inthe foreground.

Lighting, shadows.Closer objects are brighter, distant onesdimmer.

Relative motion.Objects further away seem to move moreslowly than objects in the foreground.

Arman Khalatyan 3D Stereo Visualization

IntroductionCues

Rendering

Depth cues in 3DIllusionsStereographicsParallax

Depth cues

There are a number of cues that the human visual system usesthat result in a perception of depth. These are present even in 2Dimages:

Perspective.Objects get smaller the further away they are andparallel line converge in distance.

Sizes of known objects.We expect certain object to be smallerthan others.

Detail.Close objects appear in more detail, distant objects less.

Occlusion. An object that blocks another is assumed to be inthe foreground.

Lighting, shadows.Closer objects are brighter, distant onesdimmer.

Relative motion.Objects further away seem to move moreslowly than objects in the foreground.

Arman Khalatyan 3D Stereo Visualization

IntroductionCues

Rendering

Depth cues in 3DIllusionsStereographicsParallax

Depth cues

There are a number of cues that the human visual system usesthat result in a perception of depth. These are present even in 2Dimages:

Perspective.Objects get smaller the further away they are andparallel line converge in distance.

Sizes of known objects.We expect certain object to be smallerthan others.

Detail.Close objects appear in more detail, distant objects less.

Occlusion. An object that blocks another is assumed to be inthe foreground.

Lighting, shadows.Closer objects are brighter, distant onesdimmer.

Relative motion.Objects further away seem to move moreslowly than objects in the foreground.

Arman Khalatyan 3D Stereo Visualization

IntroductionCues

Rendering

Depth cues in 3DIllusionsStereographicsParallax

Depth cues not in 2D

There are other cues that are not present in 2D images:

Binocular disparity.This is the difference in the imagesprojected onto the back the eye (and then onto the visualcortex) because the eyes are separated horizontally by theinterocular distance.

Accommodation.This is the muscle tension needed to changethe focal length of the eye lens in order to focus at aparticular depth.

Convergence.This is the muscle tension required to rotateeach eye so that it is facing the focal point.

Arman Khalatyan 3D Stereo Visualization

IntroductionCues

Rendering

Depth cues in 3DIllusionsStereographicsParallax

Depth cues not in 2D

There are other cues that are not present in 2D images:

Binocular disparity.This is the difference in the imagesprojected onto the back the eye (and then onto the visualcortex) because the eyes are separated horizontally by theinterocular distance.

Accommodation.This is the muscle tension needed to changethe focal length of the eye lens in order to focus at aparticular depth.

Convergence.This is the muscle tension required to rotateeach eye so that it is facing the focal point.

Arman Khalatyan 3D Stereo Visualization

IntroductionCues

Rendering

Depth cues in 3DIllusionsStereographicsParallax

Depth cues not in 2D

There are other cues that are not present in 2D images:

Binocular disparity.This is the difference in the imagesprojected onto the back the eye (and then onto the visualcortex) because the eyes are separated horizontally by theinterocular distance.

Accommodation.This is the muscle tension needed to changethe focal length of the eye lens in order to focus at aparticular depth.

Convergence.This is the muscle tension required to rotateeach eye so that it is facing the focal point.

Arman Khalatyan 3D Stereo Visualization

IntroductionCues

Rendering

Depth cues in 3DIllusionsStereographicsParallax

Depth cues not in 2D

There are other cues that are not present in 2D images:

Binocular disparity.This is the difference in the imagesprojected onto the back the eye (and then onto the visualcortex) because the eyes are separated horizontally by theinterocular distance.

Accommodation.This is the muscle tension needed to changethe focal length of the eye lens in order to focus at aparticular depth.

Convergence.This is the muscle tension required to rotateeach eye so that it is facing the focal point.

Arman Khalatyan 3D Stereo Visualization

IntroductionCues

Rendering

Depth cues in 3DIllusionsStereographicsParallax

Wrong reconstruction:Illusions

On this famous illusion, we try to see a 3D object, but it is only a2D shape. That mean, with a single image, our mind uses theknowledge of how the object looks like, to be able to reconstructthe third dimension. There is a pattern recognition phase followedby a reconstruction phase.

Arman Khalatyan 3D Stereo Visualization

IntroductionCues

Rendering

Depth cues in 3DIllusionsStereographicsParallax

Stereographics using stereo pairs

To render a stereo pair one needs to create two images, one foreach eye in such a way that when independently viewed they willpresent an acceptable image to the visual cortex and it will fusethe images and extract the depth information as it does in normalviewing.

Arman Khalatyan 3D Stereo Visualization

IntroductionCues

Rendering

Depth cues in 3DIllusionsStereographicsParallax

Parallax

The distance between the leftand right eye projections iscalled the horizontal parallax

The object is behind theprojection plane.

Object is located in frontof the projection plane.

Object lies at theprojection plane.

Arman Khalatyan 3D Stereo Visualization

IntroductionCues

Rendering

DiagramOpenGLAnaglyph

Rendering

There are a couple of methods of setting up a virtual camera andrendering two stereo pairs.

Toe-in(Incorrect) Off-axis (Correct)

Arman Khalatyan 3D Stereo Visualization

IntroductionCues

Rendering

DiagramOpenGLAnaglyph

Rendering

There are a couple of methods of setting up a virtual camera andrendering two stereo pairs.

Toe-in(Incorrect)

Off-axis (Correct)

Arman Khalatyan 3D Stereo Visualization

IntroductionCues

Rendering

DiagramOpenGLAnaglyph

Rendering

There are a couple of methods of setting up a virtual camera andrendering two stereo pairs.

Toe-in(Incorrect) Off-axis (Correct)

Arman Khalatyan 3D Stereo Visualization

IntroductionCues

Rendering

DiagramOpenGLAnaglyph

Rendering

Note

Off-axis method requires a non symmetric camera frustum, this issupported by some rendering packages, in particular,OpenGL.

Arman Khalatyan 3D Stereo Visualization

IntroductionCues

Rendering

DiagramOpenGLAnaglyph

Arman Khalatyan 3D Stereo Visualization

IntroductionCues

Rendering

DiagramOpenGLAnaglyph

Arman Khalatyan 3D Stereo Visualization

IntroductionCues

Rendering

DiagramOpenGLAnaglyph

Setting drawing mode glutInitDisplayMode( GLUT STEREO);

For Drawing:glDrawBuffer(GL BACK LEFT)MyDrawLeft();glDrawBuffer(GL BACK RIGHT);MyDrawRight();glutSwapBuffers();

Arman Khalatyan 3D Stereo Visualization

IntroductionCues

Rendering

DiagramOpenGLAnaglyph

If your graphics card doesn’t support stereographics or even leftand right buffers, then try Anaglyph(old method).

Arman Khalatyan 3D Stereo Visualization

IntroductionCues

Rendering

DiagramOpenGLAnaglyph

Arman Khalatyan,http://pmviewer.sourceforge.net/

Paul Bourke,http://astronomy.swin.edu.au/ pbourke/stereographics/

Till Tantau,http://sourceforge.net/projects/latex-beamer/

http://www.cs.mcgill.ca/ gstamm/P644/stereo.html

Arman Khalatyan 3D Stereo Visualization