The primary domain of Vish is Scientific Visualization, though the environment
has been designed in a most general way and can be adapted to other purposes as well.
Among other projects, we work together with application scientists such as the Department of Mechanical
Engineering at LSU for new ways to visualize their simulations of a stir tank
(e.g. Benger,W., Ritter,M., Acharya,S., Roy,S., Jijao,F.;
Fiberbundle-based visualization of a Stir Tank Fluid).
We employ most generic concepts here such that all implementation efforts can be
reused in another concept, such as numerical relativity or medical imaging.
Central to this effort is a mathematically founded model - based on the
theory of fiber bundles - on how to describe
and visualize scientific data, see e.g.
W. Benger 2008,
Colliding galaxies, rotating neutron stars and merging black holes—visualizing high dimensional datasets on arbitrary meshes,
New Journal of Physics, Vol 10
Special focus and active research aspect is the visualizion
of tensor fields as high-dimensional data beyond vector fields.
Tensor fields occur in many domains, from medical imaging,
computational fluid dynamics to general relativity and beyond.
They are usually not visualized because of their complexity
and lack of appropiate methods. Based on prior experience and
success, we intend to break those barrier and to advance methods
to visualize provide insight into quantities that are usually not
even looked at.
(book image cover depicts visualization of geodesics,
i.e. particles in a rotating spacetime).
|
Special attention is given in the Vish
rendering modules to not only display data
fast, but also in a visually pleasing way.
We see Vish not just as
a tool to analyse scientific data (as there are
many others out there), but also as a bridge to
cross the gap between the ivory tower of computational
science and public interest.
Prior experience has shown that not only functional,
but also
aesthetic visualization is important for communicating
the needs of scientists. Our visualization algorithms build
on this philosophy, which requires attention and special care
beyond numbers and bits and bytes.
Beyond the purely scientific visualization components,
Vish provides preliminiary support for character animations
such as those used in Second Live. Further development in
this direction is envisioned for collaborative
work via networks and direct interaction
of researchers and users with scientific data.
Vish also provides preliminiary support for OpenAL,
envisioned for direct sonification of scientific data.
The usual workflow of creating movies in scientific visualization
is to render an image sequence from 3D data and use some postprocessing
and video editing tool such as Premiere, FinalCut, etc.
However, the operations used in such tools have much in common to
what is also required for setting up animation sequences from 3D
data, such as camera paths, keying of visualization parameters etc.
Moreover, image sequences can be seen as a special case of input
data for scientific visualization as well. The transition between
3D rendering and video postprocessin is therefore actually smooth.
We envision Vish to be developed into a direction such that it
can also be used as video editing tool - with limited functionality,
but enabling additional smooth blending and direct access to the original 3D/4D
data stemming from the original data sources.
|
Vish consists of a minimal kernel which provides abstraction layers
through which certain components interact with another efficiently,
while also being shielded against each other.
Due to its highly modular design, Vish is ideally suited for involving
students in doing complex tasks without exposing them to the full
complexity of the problem.
For instance, a newly initiated developer may focus on the very aspects
of an algorithm to be developed, without worrying about aspects of
a graphical user interface, or file formats.
Extensive developer's documentation of the
Vish kernel classes
and the Fiberbundle-based data model classes
is available with
programming tutorials
provided by early users themselves.
At the same time, the Vish environment directly provides
the functionalities required for public outreach, such
as rendering movies in
high quality (pixel resolution only
limited by disk space), high dynamic range,
multiple projections such as for VR environments
(we preliminiary cooperate with the Baton Rouge planetarium
to show some of our renderings there) or professional
movie theaters (we cooperate with Imax film teams on providing
renderings).
Moreover, Vish can be provided as a
"click & go application", such as to install it under Windows
like any other user-friendly application.
We intend to expand this installer with a selection of
datasets to showcase our work.
|
Vish has been designed from the ground up to be usable
withing networking environments:
It provides an integrated webserver, that allows to remotely
take snapshots of the current rendering. The integrated
webserver also provides a web interface allowing interaction
with the visualization program. Such interactions are visible
to all connecting clients, including PDA's.
Besides providing web pages as a server, Vish can also be used as
a client to receive 3D and 4D data sets via a socket connections from
a data server, such as a running simulation code. In this scenario,
data are streamed via the network and rendered locally in Vish, there
full interaction with the dataset is possible. We employ HDF5 and its
specifically developed streaming file driver here; alternative transport
mechanisms are possible as well.
Vish can also be used as its own client. It provides a network server that
allows to stream three-dimensional rendering information (pixels and depth),
that can be used within a three-dimensional scene of another Vish client.
This functionality allows smooth transitions between remotely and locally
rendered data.
For entirely remote, possibly distributed rendering, Vish can be
used as a library that is integrated into external applications, such
as parallelized MPI applications. The same functionalities will be able
immediatly, however without a graphical user interface that is otherwise
provided by the GUI frontend.
Vish can handle large data such in the GB-range easily, and files with
several hundreds of GB are used as part of daily development scenarios.
While Vish cannot overcome limitations by hardware such as available
memory and disk speed, it has been designed that opening large files
can be done in a minimal amount of time and interactive
explorative browsing of data such a 300GB feasible.
New concepts such as the Visualization Cascade (paper
accepted for publication) have been developed and implemented
specifically for this purpose.
|