BEYOND VRML: EFFICIENT 3-D

advertisement
BEYOND VRML: EFFICIENT 3-D DATA TRANSFER FOR
REMOTE VISUALIZATION
M. NAGASAWA
Ultra-high Speed Network and Computer Technology Labs.
1-280, Higashi-Koigakubo, Kokubunji, Tokyo 185-8601, Japan
Abstract. For eective remote visualizations of massive 3D data, volumetric data compression algorithms and transmission protocols are investigated. Quantized Normal Vectors unify and compress 3D volumetric data
by quantizing surface normals and volume gradients. With this QNV representation, progressive transmission and Level-of-Detail control become
possible. Against the change of network quality or data loss, it is robust
enough to get smooth visualization results.
1.
Remote Visualization
The increased popularity of computer graphics and the wide-spread Internet are making easier handling of 3D media in remote environments.
Virtual Reality Modeling Language (VRML) is an international standard
that realizes interoperabilities of 3D graphics. However, there are many
limitations in current VRML, because it was designed for entertainment
computer graphics. For example, with multiple VRML streams on a single
display, people have to choose and optimize rendering resolutions. For effective use of network bandwidth, enhancement of VRML with some binary
compression forms is also needed (Taubin 1996). Standard VRML browsers
are using FTP protocol, so that the rendering starts after the completion
of data transfer. When the transmission error occurs, TCP/IP requests
re-sending whole data. General le compression utilities are not good for
an interactive quick-look. Users have to wait without any view during the
transfer.
416
1.1.
M. NAGASAWA
OUTLINES AND PRIORITY SORTING
A quick-look of outlines is eective for browsing polygons. Our outline data
format does not include adjacency list, but the positions of outline vertices.
The outlines are transmitted prior to the inner vertex information. The outlines are enough to display each group. The independency of each polygon
group is suitable for progressive transmission and rendering. If some vertices are shared by plural polygons, adjacency list is good for reducing data
redundancy. However, even a bit loss of list data during the transmission
will cause severe damage to the rendering.
Figure 1. Left: Group polygon outlines (180 polygons). Right: Whole data of outlined
polygons (50,000 polygons).
1.2.
PROGRESSIVE TRANSMISSION
For 2D images, techniques of progressive display exist. Using interlaced
GIF, coarse images appear rst and the details come later. One can grasp a
whole image quickly and interrupt the display screen when sucient recognition is obtained. Similarly, by rendering 3D patches in sorted order of area
size, the global structure could become manifest. The larger patch comes
in advance to the smaller ones. Both sorted and group-outlined polygon
transfer are found to reduce the transmission time to one third of that of
FTP transfer of standard VRML le.
In present environments, however, transmissions of full details of huge
volumetric 3D data are time consuming. Thus, we are to develop a new
high dimensional model which appropriately and eectively represents 3D
data characteristics.
BEYOND VRML: EFFICIENT 3-D DATA TRANSFER
2.
417
QNV Representation
There are macroscopic models for representing 3D data: analytic curves,
polygons, voxels, particles and vectors. These representation models use
geometrical approaches. Typical scientic visualizations require a exibility to treat complex 3D data structures with fragments, voids and multi
components (Nagasawa 1995). A special polygon representation for Levelof-Detail control was proposed by Hoppe (1996). While, we try to reproduce
smooth and diuse boundary structures appropriately in remote rendering
by neglecting polygon boundary.
2.1.
NORMAL AND GRADIENT QUANTIZATION
For global and direct visualizations of 3D volumetric data, it seems reasonable and challenging to skip some intermediate representations such as
geometrical isosurfaces (Lorensen & Cline 1987). In QNV representations,
3D objects are encoded as a set of normal vectors with an opacity prole. The QNV could represent both 3D surfaces and 3D volumetric data
depending on topologies of vector distributions. Each QNV is discretized
to have length proportional to its sampling area for surface rendering or
gradient magnitude for volume rendering.
Figure 2. Line drawing of QNV Voxel gradients are sorted in magnitude. Out of total
181,012 voxels, plotted are Left: 2202 (1.2%), Center: 6240 (3.5%), Right: 16490 (9.1%)
vectors, respectively.
We consider a method to get QNVs from surface polygons. For simplicity, we start from triangle patches for 3D surface to get outer vector
products. A gravity center of the triangle polygon corresponds to the vector position xk = (x; y; z ). The vector length of outer product is the area,
and the vector direction is orthogonal to the triangle. The vector positions
are decoded in Cartesian (x; y; z ), while directions are in polar coordinates
(A; ; ). A relaxation algorithm to get a uniform triangulation of 3D surface was also applicable (Turk 1992).
418
3.
M. NAGASAWA
Quantized Vector Rendering
In general, QNV is suitable for representing irregular sampling elements.
That is a merit for data compression and a demerit for high quality rendering at the same time. In surface renderings for polygonal data, we could
show jaggy features at some polygonal edges. While, rigid disk renderings
for QNV data show sparse surfaces than that of polygon renderings. Thus,
for QNV data set, we developed a general rendering algorithm applicable
both to surface and volume rendering by mapping opacity as textures on
its sampling area with normal directions.
3.1.
SURFACE NORMAL RENDERING
In decoding QNV data: f(x; y; z; ; ; A; :::)j k = 1; K g, an expectation value
of opacity at position x is calculated with the Gaussian kernel lter as
(ui 0 xk ) / exp(0jui 0 xk j2 =A),
For a given surface data, this decoding satises an exact conservation
of integrated surface area. With a smooth opacity lter, a robust decoding
of surface data is possible independent of local interpolation errors even if
some edges can not satisfy continuity conditions.
(a)
(b)
Figure 3. (a) Polygons and (b) Normal vectors for 3D surface representation.
In this adaptive control, vector representation has an advantage of being
able to compress non-uniform 3D data. However, we have to be careful to
treat voids of surface data. Some sparse regions happen to become larger.
That means a large area surface of insucient curvature, although a smooth
image quality is still guaranteed.
In the rendering, a ray cast integration is performed for vectors of total
number K with a given opacity prole.
8
9
K <
K
=
X
Y
C (ui ) = :c(xk )(ui ; xk )
[1 0 (ui ; xk )];
k=0
m=k+1
where ui = (ui ; vi ) are pixel coordinates.
(1)
BEYOND VRML: EFFICIENT 3-D DATA TRANSFER
3.2.
419
VOLUME GRADIENT RENDERING
We could apply QNV formats to volumetric rendering. From voxels, we can
calculate gradient vectors and represent them in QNV formats. Although
QNV length has another meaning of gradient magnitude in this volumetric
case, ray integration could be performed in an absolutely similar way to
the surface rendering.
If data is represented by sets of voxels or particles, our volume rendering
pipeline could be used (Nagasawa & Kuwahawa 1991).
We modied this volume rendering code to be applicable to the vector rendering. Due to absence of geometrical edges, opacity calculations
in volume rendering proceed much easier than for usual cubic voxels. Antialiasing treatment is not necessary due to smooth prole of kernel functions.
Figure 4. Volume rendering of the vectors in QNV format. Only a small fraction of
vectors are contributing.
As a benchmark visualization, we used MRI data set of CT study of a
cadaver head. This CT data is 11322562256 sliced voxel data of 14MBytes.
While, by volume rendering of QNV format data, we get a sucient quality
output from small amounts of QNV. Only about top 9% of large gradient
vectors are enough to produce the image.
Another example is the 3D isosurface of observational Orion molecular cloud. It amounts to 15,657 Kbytes in AVS geometry format, while is
compressed to 774 Kbytes in QNV format.
3.3.
IMPLEMENTATION ON AVS
As an eective compression and standard transmission algorithm of 3D
surface data, the QNV coding and rendering algorithm are implemented
on AVS platforms. AVS geometry data from scientic applications are converted directly into quantized vector representations. The quantized vector
coding for surface data could start from a set of isosurface polygons. In
420
M. NAGASAWA
addition to informations of normal vector and area of each polygon, an internal opacity prole is assigned. In polygon rendering, low resolution, say,
large patch area turns out to be jaggy at polygonal edges. While, in vector
rendering, it appears to be cloud-like fuzzy features. High resolution parts
are similarly distinct in both cases.
3.4.
EXTENTED VRML BROWSER: GHOSTSPACE
We developed an extended VRML browser GhostSpace that runs as a helper
application for WWW browser (UNCL 1997). GhostSpace provides ATM
ability to display multiple compressed 3D data. It can be used to browse
QNV and other proposed 3D data formats in rapid rendering schemes.
Pre-processed data archive in GhostSpace server increases system performance for highly interactive applications. Especially, sorting of vectors in
accordance with its magnitude is essential to accelerate decoding.
Z
θ
Α
φ
Y
X
Figure 5. Left: Data components of QNV. Right: Texture representations of QNV
opacity prole.
3.5.
HARDWARE ACCELERATION OF QNV RENDERING
There are studies to accelerate volume rendering by developing special hardwares based on texture mapping. In case of rendering with external lights,
a shading calculation is important to realize 3D eects. For a graphics API
similar to OpenGL, a texture map may contain color and/or transparency
in graphics pipelines. It can be used to modify original colors of polygons
in various ways. For including shading eects, we use a square polygon
patch as a surface element perpendicular to a surface normal or gradient.
A semi-transparent texture could represent a QNV disk. The texture is
assigned with the Gaussian prole as transparency. General 3D structures
are represented by a superposition of these semi-transparent textures.
421
BEYOND VRML: EFFICIENT 3-D DATA TRANSFER
3.6.
PERFORMANCE ON ATM NETWORK
To compress vector data, QNV elements have attributions in a discretized
3D space. Each element is discretized in eective bits for pixel resolutions.
Spatial resolution is 10 bits in each dimension, and the directional resolution
is 6 degree in polar coordinates. The QNV record length are formatted to
optimize the performance on ATM networks. The record length for each
vector is 8 Bytes and thus we could transmit 8 vectors on a single ATM
cell. With this optimization, transfer of QNV data gets higher robustness
and eectiveness in accordance with the ATM network protocols.
We have performance tests of visualizations based on vector representation. The system consists of polygon and QNV encoder, decoder and
renderer on both TCP/IP and Native-ATM socket communications. The
transmitter generates multiple independent ATM cells that load sampling
patches of dierent resolution.
Packet (AAL5)
...
...
ATM Cell
head
head
head
head
head
head
head
40 bytes of user data
48 bytes of user data
48 bytes of user data
48 bytes of user data
48 bytes of user data
48 bytes of user data
48 bytes of user data
trailer
8bytes/vector
1024
X
1024
Y
1024
Z
32
64
Θ
Φ
32768
A
256
C
Figure 6. Discrete data format of QNV representation as a payload on ATM cell.
By adding extra formats to standard VRML, polygon compressions
and QNV representations are in cooperation with specic network bandwidths through ATM negotiation protocol. With ATM socket communications, GhostSpace is able to decode and render up to 5 MBytes/s surface
data stream over ATM-OC3 of 155Mbps bandwidth. This means eective
3D communications of 0.20.3 Mpolygons/sec and 0.6 Mvectors/sec are
422
M. NAGASAWA
achieved. The encoder can produce other independent 3D data streams
of boundary-listed group polygons by reducing coplanar polygons in each
group (Nishioka & Nagasawa 1995).
4.
Conclusion
For fast and eective 3D renderings, we use QNV representations.
1. QNV encodes 3D objects as a set of surface normal or volume gradient
vectors. Each vector is quantized in position and direction.
2. With QNV formats, general and high quality renderings are possible
both for surface and volumetric data with Gaussian opacities.
3. Progressive browsing becomes possible by accelerating QNV rendering
with texture mapping hardware.
We implemented vector decoding and rendering functions for surface and
volumetric data browsing in GhostSpace. Compared with an ordinary polygon data transfer, QNV representations are robust for congested network
and keep 3D rendering image in high quality even with data abolishment.
GhostSpace is able to show smooth features of rendered 3D structure using
received normal vectors only, because no geometrical edge is needed. Quicklook applications could make use of this representation as an extension of
VRML in 3D data browsers.
Acknowledgements
We acknowledge the data courtesy of CThead voxel data by UNC Chapel Hill and
that of 3D Orion nebula isosurface by Dr. Tatematsu (NRAOJ).
References
Hoppe H. (1996) Progressive Meshes, Computer Graphics Proceedings (ACM SIGGRAPH) pp. 99-108
Lorensen W. and Cline H. (1987) Marching Cubes: A High Resolution 3D Surface Construction Algorithm Computer Graphics 21(4) pp. 163-169
Nagasawa M. (1995) Volume data compression using smoothed particle transformation,
Digital Video Compression (SPIE) 2419 pp. 288-295
Nagasawa M. and Kuwahara K. (1991) Smoothed Particle Rendering for Fluid Visualization in Astrophysics, Scientic Visualization of Physical Phenomena (ed.
N.M.Patrikalakis, Springer-Verlag Tokyo) pp. 589-605
Nishioka D. and Nagasawa M. (1995) Reducing polygonal data by structural grouping
algorithm, Lecture Notes in Computer Science (ed. Chin R. T. et al., Springer Hong
Kong), 1024, pp. 140-151
Taubin G. (1996) [http://www.austin.ibm.com/vrml/binary] VRML2.0 Compressed
Binary Format
Turk G. (1992) Re-Tiling Polygonal Surfaces, Computer Graphics 26(2) pp. 55-64
UNCL (1997) [http://www.iijnet.or.jp/uncl/GhostSpace] GhostSpace
Download