37
Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, [email protected] Graphics Programmer/Analyst Scientific Computing and Visualization Group Boston University

Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, [email protected] Graphics Programmer/Analyst Scientific Computing and Visualization Group

  • View
    220

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 1

Building Stereo Tiled Display Walls using Linux

Ray Gasser, [email protected]

Graphics Programmer/Analyst

Scientific Computing and Visualization Group

Boston University

Page 2: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 2

IntroductionAgenda

– Why Linux/Display Wall?– BU Deep Vision Display Wall– Stereo (Active vs. Passive)– Hardware– Software– Implementation Issues– Maintenance Issues– Resources– Current Projects– Conclusions

Page 3: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 3

Why Linux/Display Wall? Fakespace ImmersaDesk R2

Screen: rigid 6'w x 4'hProjection System: 1 8" CRT w stereoscopic enhancementResolution (fixed): 1280 x 1024 @ 120 Hz (1600 x 1200 opt)Lumens: 250Footprint 6.4'w x 7'd x 7.5'hStereo: Active Cost: $139,000 (includes Ascension space pad with wand+head

and 5 pair shutter glasses)

http://www.fakespacesystems.com/workdesk1.shtml

Page 4: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 4

Why Linux/Display Wall?Boston University Deep Vision Display Wall v1.0

Screen: flexible 10'w x 7'hProjection System: 8 LCD commodity XGA projectorsResolution (scalable): 2048 x 1536 aggregate stereo @ 75 HzLumens: 2000+ (2 overlapping projectors 2000 lumens each per tile)Footprint 10.5'w x 12'd x 7.5'hStereo: Passive Cost: $50,000 (of which 40k is for the 8 projectors) (80k for everything including Linux cluster)

http://scv.bu.edu/Wall

Page 5: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 5

Why Linux/Display Wall?

IDesk DVDW

Screen rigid 6’w x 4’h flexible 10’w x 7’

Projection 1 8” CRT 8 LCD

Resolution 1280 x 1024 2048 x 1536

Lumens 250 2000+

Footprint 6.4’w 7’d 7.5’h 10.5’w 12’d 7.5’h

Stereo Active 120Hz/2 Passive 75Hz

Cost $139,000 $50,000

Page 6: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 6

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

Page 7: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 7

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

Page 8: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 8

BU Deep Vision Display Wall

Page 9: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 9

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

Page 10: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 10

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)

Page 11: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 11

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

Page 12: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 12

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

Page 13: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 13

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

Page 14: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 14

Hardware: Projectors• LCD vs. DLP vs. CRT• Image Quality• Color

– calibration– convergence– uniformity– gamut

• Resolution• Inputs

– DVI– VGA– svideo

• Polarization Issues

Page 15: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 15

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

Page 16: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 16

Hardware: Projectors• Bulbs

– life-time– greatest maintenance expense– warranty– color

• Advanced Features– lens shifting– image warping– frame buffer access– microprocessor access– stacking

Page 17: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 17

Hardware: Video Cards• Display Channels

– number– DVI vs. VGA

• Framelock/Genlock

• Quad buffers (active stereo)

• Fully accelerated OpenGL

• Linux driver support

Page 18: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 18

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)

Page 19: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 19

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

Page 20: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 20

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

Page 21: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 21

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

Page 22: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 22

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

Page 23: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 23

Hardware: Audio• Covered in later session

Page 24: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 24

Software: Cluster Administration• Kickstart

– RedHat network installer• xCAT

– utilities for cluster monitoring, remote execution, installation, etc– IBM commercial product– http://x-cat.org

• Performance Co-Pilot– System level performance monitoring– http://oss.sgi.com/projects/pcp/

• Batch– OpenPBS

• http://www.openpbs.org– LSF

• http://www.platform.com/products/clusterware

Page 25: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 25

Software: System (multi-display)

• WireGL/Chromium • VRJuggler, NetJuggler• CaveLib, trackd• Syzygy• softGenlock

http://graphics.stanford.edu/software/wireglhttp://sourceforge.net/projects/chromiumhttp://graphics.stanford.edu/~humperhttp://www.vrjuggler.orghttp://www.vrco.com/products/cavelib/cavelib.htmlhttp://www.isl.uiuc.edu/ClusteredVR/ClusteredVR.htmhttp://netjuggler.sourceforge.nethttp://netjuggler.sourceforge.net/SoftGenLock.php

Page 26: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 26

Software: Graphic APIs and Libraries

• OpenGL

• Open Inventor

• OpenGL Performer v2.5

• Kitware VTK

http://www.sgi.com/software/openglhttp://oss.sgi.com/projects/inventor http://www.tgs.comhttp://www.sgi.com/software/performerhttp://www.kitware.com

Page 27: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 27

Software: Development• Covered in later session

Page 28: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 28

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

Page 29: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 29

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

Page 30: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 30

Software: Application design

Page 31: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 31

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

Page 32: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 32

Implementation Issues

• Physical Space– projector -> projector– projector -> screen Airflow

• Cooling

• Light– leaks– ambient

• Power

• Head tracking

Page 33: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 33

Maintenance Issues

• Alignment

• Color and Luminosity Matching

• Power Down

• Bulb usage

Page 34: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 34

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

Page 35: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 35

Resources• VR/Multigraphics

http://graphics.stanford.edu/projects/multigraphics http://www.evl.uic.edu/pape/CAVE/linux

Page 36: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 36

Current Projects

• Projector Mount Design

• Projector Control Software

• Auto Projector Alignment

• Auto Projector Color and Luminosity Matching

• Edge Blending

• User Interface Devices

• AG integration

Page 37: Slide 1 Building Stereo Tiled Display Walls using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group

Slide 37

Conclusions

Linux is a cost effective and rich environment for building large scale tiled display walls.