Visualization is the study of data presentation into visual form. The data can be numerical (e.g., points in multidimensional space), geometric (e.g., objects such as polygons) or even purely logical data (e.g., a graph). The goal of visualization is (to paraphrase Richard Hamming) is intuition, not pretty pictures. Of course, pretty pictures often help. As a major area of research, it has been considerably stimulated by an 1987 NSF report [1] on visualization applications in scientific computing.
Visualization systems are ultimately based on computer graphics technology. But since the goal of visualization is to provide intuition about the data, we have interest in the interfaces to help users visualize and manipulate the data, and in the nature of human perception. For example, one goal of traditional computer graphics is to produce photo-realistic pictures. But visualization may be very interested in unrealistic pictures which can help the visualization process.
The resolution at the center of the retina is about 1 arcminute under ideal conditions, and this falls off rapidly outside the central 2 degree region. At 10 degrees eccentricity, the resolution is about 10 arcminute. A high resolution display with 1280 pixels across a 60 degree field of view achieves about 3 arcminutes per pixel. This means that outside the foveal region, much of the screen resolution is wasted.
There are really two related aspects.
(a) First, how efficient are they? There are strong reasons to believe that they will drastically reduce the necessary bandwidth for visualization. Our current research is to obtain efficient methods to produce and display foveated images. We are experimenting with a new method based on wavelets. For a java demo, please go to our foveated image server.
(b) The second aspect relates to user acceptability. A group at University of Texas Austin has produced a realtime system to track the eye and produce foveated images. They reported [3] that under certain conditions, the user detected only minimal perceptual artifacts while achieving a bandwidth reduction of 94.7% (factor of 18.8). See also.
Visualization is ultimately a psycho-physiological phenomenon and we can try to exploit this. Human vision is a very active process involving four principal eye movements: saccades, pursuit movements, vestibular systems and vergence [Robinson]. Active visualization seeks to present images that match some of these eye motions. This is over and on top of capabilities that are currently being exploited, such as head and body navigation. One advantage of active visualization is that we can now display foveated images, which have considerably lower data bandwidth than uniform resolution images (see logmaps below).
Eric Schwartz [2] has established empirically that the map from the retina to the various layers of the visual cortex has the form
Active visualization is similar to active vision in the attempt to close a feedback loop between the visualizer and the image generation process. But the two areas are interested in opposite poles of this loop. Active vision (as in computer vision generally) is trying duplicate the visualizer's process, i.e., reconstruct the unknown model from the generated images. Active visualization (as in visualization generally) is interested in the process of forming images from the known model. In active visualization, we expect the visualization tools to allow active control the image generation process.
This is a server-client model of visualization where the server of images has power computational resources and the client has modest computational power, but they are connected by a very thin wire. Visualization over the internet provides such examples. We believe that active visualization is the best approach to such visualizations. Normally, the amount of throughput is overwhelmingly from the server to the client. With active visualization, and for a modest input from the client to the server, we want to greatly reduce the throughput from the server to the client.
If active visualization involves presenting images that follow the eye, it might appear that eye-tracking is an indispensable part of this research. This is actually false. In visualization, we may assume that the visualizer has a stake in the production of useful images. The user will therefore cooperate by informing the image generation process where the eye is currently focussed on. Any reasonable motor input device (such as the mouse) can be used. Of course, if we automatically track the user's eye, this can improve the usability of our system.