Our aim was to construct the Deep Vision Display Wall from commodity hardware and software to reduce cost and maintain flexibility. We decided to use Linux on readily available PC workstations as it provides an infrastructure for distributed processing and high-end graphics. Passive stereo eliminates the need to genlock the display video cards as well as allowing the use of very inexpensive projectors and glasses. By careful selection of projectors, polarizing filters, and screen material, problems such as cross-talk, chromatic aberration, and low luminance are minimized.
Issues involved in the development of tiled walls include synchronization of displays, synchronization of data being displayed, alignment of projectors, color matching, and blending of the overlapping projected images. Using this paradigm for stereo displays introduces a new set of problems to be solved: a new set of synchronization and alignment problems, a new set of constraints on projectors and projection surface, introduction of a new set of constraints on projectors and projection surface, the introduction of glasses for viewers, and user perception and comfort issues.
The Display Wall was originally implemented as a 4×3 tiled display with 1024×768 pixels per tile, giving an aggregate stereo resolution of 18 MPixels (1024×768×4×3×2), with 24 IBM Thinkstations driving 24 projectors. The current implementation uses a 2×2 layout, with two high-performance workstations driving eight projectors, giving an aggregate stereo resolution of 6 MPixels (1024×768×2×2×2).
- 8 (2 per tile in a 2×2 grid) NEC GT950 LCD Projectors.
- 1024×768 pixels per stereo tile display resolution.
- 2048×1536 pixels aggregate stereo screen resolution which produces a 6 MPixel display.
Polarizing Filters and Glasses
- 8 linear polarizing filters (1 per projector)
- Matching polarizing viewing glasses (enough for largest viewing audience)
- Wall computers: 2 Lenovo ThinkStation D20s with two 4-core 2.5GHz Intel E5420 processors with 8 GB RAM, two NVIDIA Quadro FX1700 graphics cards (each with two DVI out) and running a custom build of Red Hat Enterprise 5.
- Head node: 1 Lenovo ThinkStation D20 with two 4-core 2.5GHz Intel E5420 processors with 8 GB RAM, NVIDIA Quadro FX1700 graphic cards.
- Projectors are placed directly on standard shelving with no hardware positioners.
- Alignment and edge-blending are done in software using our GridAlign tool. A laser leveler is used in conjunction with the GridAlign tool.
Logitech Wingman and Boston University’s 3D driver software.
All the software we use is either open source or written by SCV staff members, with the exception of SGI’s OpenGL Performer. This has been vital in several cases as we have had to modify code to meet our needs.
Three methods for producing scientific visualizations have been used so far. The first uses OpenGL and GLUT for the graphics, with Chromium to drive the Wall. The second uses the Visualization Toolkit (VTK) or OpenDX for visualization and graphics, with Chromium to drive the wall. The third uses Boston University’s Distributed Applications Framework for Immersive Environments (DAFFIE) software to communicate between multiple clients across the network, produce and control graphics, and drive the Wall.
Custom derivative of Red Hat Enterprise 5.
SGI’s OpenGL Performer
VTK (scientific visualization package)
Kitware’s VTK 3.2 – we have modified the VTK code to produce side-by-side stereo on the Display Wall.
DAFFIE (Distributed Application Framework for Immersive Environments)
SCV’s DAFFIE system is a set of software libraries and applications for managing and displaying virtual environments and distributed visualizations over networks.
SCV’s DAFFIE Viewer is a 3D viewing application built on top of the OpenGL Performer and DAFFIE code libraries. It is used at Boston University for the viewing of large scientific visualizations and immersive art pieces.
SCV’s GridAlign software is a locally written tool used for aligning our projectors. The tool displays a grid image on each of the 8 coarsely aligned projectors in the display wall. As the projectors are not fully aligned yet, the grids are not uniform. The GridAlign tool is used to finely align the grid images and to overlap the left and right eye images. This is done by allowing a user to move the corners of each grid image i.e. warping the grid image with the keyboard until it is aligned properly. When exiting the GridAlign tool, the image warping matrix for each projector is saved to a separate configuration file. These configuration files are then read by applications running on the wall such as the DAFFIE viewer so that any images sent to the projectors can be correctly warped. The warping matrices are also used to determine where to blend the overlap between tiles in the display wall.