370 likes | 485 Views
Building Stereo Tiled Display Walls using Linux. Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group Boston University. Introduction. Agenda Why Linux/Display Wall? BU Deep Vision Display Wall Stereo (Active vs. Passive) Hardware Software
E N D
Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group Boston University
Introduction Agenda • Why Linux/Display Wall? • BU Deep Vision Display Wall • Stereo (Active vs. Passive) • Hardware • Software • Implementation Issues • Maintenance Issues • Resources • Current Projects • Conclusions
Why Linux/Display Wall? Fakespace ImmersaDeskR2 Screen: rigid 6'w x 4'h Projection System: 1 8" CRT w stereoscopic enhancement Resolution (fixed): 1280 x 1024 @ 120 Hz (1600 x 1200 opt) Lumens: 250 Footprint 6.4'w x 7'd x 7.5'h Stereo: Active Cost: $139,000 (includes Ascension space pad with wand+head and 5 pair shutter glasses) http://www.fakespacesystems.com/workdesk1.shtml
Why Linux/Display Wall? Boston University Deep Vision Display Wall v1.0 Screen: flexible 10'w x 7'h Projection System: 8 LCD commodity XGA projectors Resolution (scalable): 2048 x 1536 aggregate stereo @ 75 Hz Lumens: 2000+ (2 overlapping projectors 2000 lumens each per tile) Footprint 10.5'w x 12'd x 7.5'h Stereo: Passive Cost: $50,000 (of which 40k is for the 8 projectors) (80k for everything including Linux cluster) http://scv.bu.edu/Wall
Why Linux/Display Wall? • Large Format Display • High Resolution / Scalable Resolution • Scalable graphics performance (rendering cluster) • Multiple displays within wall • Bright • Low cost / Scalable cost
BU Deep Vision Display Wall v1.0 (first public showing SC2001 Nov 10-16, 2001) • 10'w x 7.5'h rear projected display screen • 2x2 stereo array (8 LCD XGA projectors) • 2048x1536 aggregate stereo screen resolution • 4 Linux render nodes + one control/application node • each render node drives 2 projectors • Passive stereo using linear polarizing glasses/filters • Fast Ethernet interconnect http://scv.bu.edu/Wall
BU Deep Vision Display Wall v2.0 (under construction) • 15'w x 8'h rear projected display screen • 4x3 stereo array (24 LCD XGA projectors) • 4096x2304 aggregate stereo screen resolution • 24 Linux render nodes + 1 control node • each render node drives 1 projector • 52 Linux compute nodes • Passive stereo using linear polarizing glasses/filters • Myrinet interconnect
Stereo (active vs. passive) Active Stereo • Pros • only one projector per tile (easier alignment) • no special screen material needed • Cons • expensive • shutter glasses • high refresh CRT projectors • requires quad buffer support on video card/drivers • requires framelock/genlock (hardware or software) • possible eye strain (splitting refresh rate between eyes)
Stereo (active vs. passive) Passive Stereo • Pros • inexpensive • polarizing filters • polarizing glasses • LCD/DLP projectors • glasses robust • don't need Quad buffers • don't need framelock/genlock • less eye strain (full refresh rate for each eye) • Cons • two projectors per tile • alignment issues • space issues • need special non-depolarizing screen
Passive Stereo Linear Polarizing Filters • Pros • inexpensive • more light • Cons • limited head movement (cross talk) • ok for walls, bad for CAVEs Circular Polarizing Filters (linear + wave retarder) • Pros • unlimited head movement (still need head tracking) • Cons • more expensive • less light
Hardware: Screen • front vs. rear projection • non depolarizing for passive stereo • rigid vs. flexible • Fresnel/Lenticular • transmission properties • http://www.evl.uic.edu/pape/papers/lowcost.spie02/node5.html • viewing angle • Gain • mounting hardware • portability
Hardware: Projectors • LCD vs. DLP vs. CRT • Image Quality • Color • calibration • convergence • uniformity • gamut • Resolution • Inputs • DVI • VGA • svideo • Polarization Issues
Hardware: Projectors • Brightness • Controls • interface • tethered remote • serial • tcp/ip • documentation of control codes • calibration and configuration • accuracy • Stability (zoom, focus) • Refresh Rate • Weight • Size
Hardware: Projectors • Bulbs • life-time • greatest maintenance expense • warranty • color • Advanced Features • lens shifting • image warping • frame buffer access • microprocessor access • stacking
Hardware: Video Cards • Display Channels • number • DVI vs. VGA • Framelock/Genlock • Quad buffers (active stereo) • Fully accelerated OpenGL • Linux driver support
Hardware: PC Clusters • Render • Compute • Control • Processors • 32 bit (Intel XEON, Intel Pentium4, AMD Athlon) • 64 bit coming (Intel Itanium2, AMD Opteron) • Cache L1, L2 • number (realtime needs 2)
Hardware: PC Clusters • I/O • AGP 3.0 bus (2x/4x/8x) 2.1 GB/s bandwidth • ATA/100, Ultra 160 SCSI, Ultra 320 SCSI • System Bus: 133MHz, 400MHz • Memory • DDR SDRAM • RDRAM (dual-channel) • Kernel supports up to 64GB of physical memory
Hardware: Network/Interconnect • Ethernet Switch • 100BaseT (Fast Ethernet) • 10 MB/sec (100Mb/sec) • Gigabit Ethernet • Typically delivers 30-60 MB/sec • 100-1000 microsecond latency • 10 Gigabit • latest • possible replacement for Myrinet • Myrinet 2000 • 200 MB/sec • 10-15 microsecond latency • scales to 1000’s of nodes • ~30% of total cost
Hardware: User Interface • Head/user tracking • radio/accelerometers • video tracking • Ascension spacepad • $1600.00 • needs isa slot • 6 DOF mice • Ascension Flock of Birds • handheld computer • VRCO trackd (software) http://www.ascension-tech.com
Hardware: Mounting/Alignment • 6 DOF adjusters • independent control • stepper motor/ remote control • auto alignment • camera feedback loop • image warp • http://www.merl.com/projects/ProjectorCalib ANL Positioner
Hardware: Audio • Covered in later session
Software: Cluster Administration • Kickstart • RedHat network installer • xCAT • utilities for cluster monitoring, remote execution, installation, etc • IBM commercial product • http://x-cat.org • PerformanceCo-Pilot • System level performance monitoring • http://oss.sgi.com/projects/pcp/ • Batch • OpenPBS • http://www.openpbs.org • LSF • http://www.platform.com/products/clusterware
Software: System (multi-display) • WireGL/Chromium • VRJuggler, NetJuggler • CaveLib, trackd • Syzygy • softGenlock http://graphics.stanford.edu/software/wiregl http://sourceforge.net/projects/chromium http://graphics.stanford.edu/~humper http://www.vrjuggler.org http://www.vrco.com/products/cavelib/cavelib.html http://www.isl.uiuc.edu/ClusteredVR/ClusteredVR.htm http://netjuggler.sourceforge.net http://netjuggler.sourceforge.net/SoftGenLock.php
Software: Graphic APIs and Libraries • OpenGL • Open Inventor • OpenGL Performer v2.5 • Kitware VTK http://www.sgi.com/software/opengl http://oss.sgi.com/projects/inventor http://www.tgs.com http://www.sgi.com/software/performer http://www.kitware.com
Software: Development • Covered in later session
Software: Tools • Tiled Window Managers • NCSA • MoviePlayers • NCSA Pixel Blaster • Argonne Movie Player • Synchronization Libraries • Communication Libraries (DAFFIE) • http://www.ncsa.uiuc.edu/TechFocus/Deployment/DBox • http://scv.bu.edu/SCV/DAFFIE
Software: Application design • Multi-channel • local compute/local render • IR multi-channel • Clent/Server • local compute/distributed render • WireGL/Chromium • Master/Slave • distributed compute/distributed render (mixed compute/render) • Syzygy, VRJuggler, Performer + synchronization
Implementation Issues • Type of Stereo (active vs. passive) • Type of Projection (front vs. rear) • Projector Control • Projector Mounts • Projector Alignment • Projector Color and Luminosity Matching • Luminosity Falloff within a tile • software computation of inverse filter applied during rendering • Edge Blending
Implementation Issues • Physical Space • projector -> projector • projector -> screen Airflow • Cooling • Light • leaks • ambient • Power • Head tracking
Maintenance Issues • Alignment • Color and Luminosity Matching • Power Down • Bulb usage
Resources • Stereo • http://www.stereoscopy.com/links/index.html • http://www.stereographics.com/homepage/frame-wp.html • http://astronomy.swin.edu.au/~pbourke/stereographics • Walls http://scv.bu.edu/Wall http://www-fp.mcs.anl.gov/fl/activemural http://www-fp.mcs.anl.gov/fl/publication http://www.ncsa.uiuc.edu/TechFocus/Deployment/DBox http://www.cs.princeton.edu/omnimedia
Resources • VR/Multigraphics http://graphics.stanford.edu/projects/multigraphics http://www.evl.uic.edu/pape/CAVE/linux
Current Projects • Projector Mount Design • Projector Control Software • Auto Projector Alignment • Auto Projector Color and Luminosity Matching • Edge Blending • User Interface Devices • AG integration
Conclusions Linux is a cost effective and rich environment for building large scale tiled display walls.