For design visualization, an image of a new design is made to hang in space, viewed in the correct perspective by each person on the design team; the 3D object can be critiqued by pointing at features of the object, and the whole team will observe the action using the see-through display. In such applications, the systems offers advantages over traditional projection-based systems such as virtual workbenches and CAVE systems. The augmented reality system works in normal room light.
Designated the ARES-100, the sytem as described here is offered by CGSD including the data visualization and viewing software. The display can be upgraded to the ruggedized stereo Sony HMD. The system includes complete hardware documentation and a comprehensive User's Manual. Source code licensing is available as an option. Contact P.Y. Cheng pcheng@cgsd.com, tel: 650-903-4924, fax: 650-967-5252 for order information. Delivery is 45 days ARO.
The system was developed with cost-effectiveness as a goal. We can provide options to increase the area of tracked coverage, the graphics performance an image quality, and other aspects of system performance. Please contact us with your requirements.
The system is primarily set up initially via the keyboard and trackball. The main control functions are menu driven with a Windows interface. For convenience of the user, some control functions may be repeated with wand and wand button.
The development and runtime software for the system includes: Sense8 WorldToolKit, Microsoft Visual C++, and Windows NT.
We
modified the X2 display in several ways. We added plastic light shields both
above and below the original display. Without light shields, stray light entering
the eye around the display can cause the user’s eyes to adapt to a higher brightness
level than if the stray light were shielded. The user would then turn up the
HMD display brightness, making the room objects more even more difficult to
see. When stray light is blocked with the light shields, the room illumination
may be made quite bright, if desired, to provide good visibility through the
display.
The top light shield is designed with a mount for three tracking diodes. The diodes are used with a ceiling-mounted optical tracker. Infrared emitting diodes are lit in sequence to provide the spot targets required for tracking.
Two sensors are used in the tracker to obtain a distance measurement from the stereo disparity. With no filtering of the data to reduce noise errors, the accuracy is approximately one cm, at a distance of four meters, with accuracy increasing to about 0.2 mm at closer distances. Our experience is that this is roughly an order of magnitude better than extended range magnetic trackers, under equal conditions with no filtering being applied.
The optical tracker is immune to electromagnetic field interference, and for our particular application there is not much risk of line-of-sight to the diodes being lost. The tracker was obtained with an optional 70 degree field of view, and is mounted on a high ceiling, up to 4 m high).
Unlike a magnetic tracker, the optical tracker cannot measure the roll, pitch, and yaw of the HMD directly. The three diodes on the HMD permit indirect measurement of the angles from three position measurements. However, a fair amount of filtering must be applied to the angle measurements to reduce the noise, and filtering always introduces lag.
We added a commercially-available inertial tracker to improve the responsiveness of the measurements of the angles. The inertial tracker senses gravity to establish which direction is down, and integrates a two-axis rate gyro measurement to provide yaw. There is an assumption that there is no significant user acceleration, which is reasonable for the data visualization system. The–yaw measurement requires an initial angle and is subject to both drift of the gyroscope and to a hysteresis effect in which the gyro measurement can be significantly biased after a large rapid rotation in yaw. We observed hysteresis of ten degrees or more with our gyro unit.
The filtered angular measurements of the optical tracker can be used to correct the drift and hysteresis. The fast response of the inertial tracker thus compliments the stability of the optical tracker. We wrote simple exponential filtering software to estimate and remove the gyro errors. Note that tracking accuracy is important in a see-through system, because the superimposed imagery is viewed relative to the absolute environment of the room. Advances are being made rapidly in inertial sensors, and we plan to upgrade ARES as new technology become available.
The i-glasses X2 we selected uses an unusual stereo format in which the image for one eye is written on the odd numbered scan lines, and the image for the other eye is written on the even numbered scanlines. To support this mode of operation, the graphics card must support, in fast hardware, the stencil mode in OpenGL.
Finally, the potential for using transparency in various data representations requires that the graphics accurately render overlapping transparent objects.
Brightness maps the minimum to zero brightness (black) and maximum to full brightness (white). The default brightness is full brightness.
Color maps minimum to blue and maximum to red, with the default green. The linear Munsell chromaticity scale is used for the intermediate values. Shades of purple (RB) and violet (BR) are not used.
Transparency maps the minimum to completely transparent, max to completely opaque. The default transparency is completely opaque
Size maps the minimum to a graphics object width of zero, maximum to an object width of 0.25 meter.
Volume is like size, only varying by the cube root so the volume of the graphics object represents the data value.
In the image above, data are displayed as cubes coded by color and brightness.
Check points are used to check the alignment of the data set with the room. Each check point is represented by the tip of a six sided pyramid. Each pyramid is 0.2 m high with a base 0.1 meter across. The sides of the pyramid are violet, a color not used in the data display. The pyramids are oriented so their axes pass through the center of the room.
Other data display modes present interpolated data points, contour lines, and textured transparent planes.
A tracked pointer (or wand) can provide the occlusion input. At the start of the viewing session the user could touch the various corners of the real object (oven) and press the pointer button each time he touches a corner. This will tell the computer the size, orientation, and location of the real object in 3-D space. The computer can then create a series of black polygons to represent the object. The black polygons is used as described above eliminating the confusing imagery that would otherwise be shown to the user.
Other wand functions are selected using the buttons on the wand. The functions include display mode selection, data editting, placement of a dynamic clipping plane, and many other functions.