johnston@george.lbl.gov (Bill Johnston) (01/10/91)
Archive-name: graphics/pixutils/scry/1991-01-09
Archive: csam.lbl.gov:/pub/Scry.1.2.README [128.3.254.6]
Original-posting-by: johnston@george.lbl.gov (Bill Johnston)
Original-subject: Re: SOURCE CODE AVAILABLE SOFTWARE: BERKELEY SCRY SCIENCE ANIMATION SYS
Reposted-by: emv@ox.com (Edward Vielmetti)
Since Alexander-James Annala has referenced Scry, let me say that
the next version of Scry (1.2) should be available shortly. The
README for the new distribution follows. Questions should be
addressed to David Robertson.
Bill Johnston (wejohnston@lbl.gov)
David Robertson (davidr@george.lbl.gov)
==================================================================
Scry
A Distributed Image Handling System
Version 1.2
An Imaging Technologies Project
of the
Information & Computing Sciences Division
Lawrence Berkeley Laboratory
1 Cyclotron Road
Berkeley, California 94720
Scry is a distributed image handling system that provides image
transport and compression on local and wide area networks, image view-
ing on workstations, recording on video equipment, and storage on
disk. The system can be distributed among workstations, between
supercomputers and workstations, and between supercomputers, worksta-
tions and video animation controllers. The system is most commonly
used to produce video based movie displays of images resulting from
visualization of time dependent data, complex 3D data sets, and image
processing operations. Both the clients and servers run on a variety
of systems that provide UNIX-like C run-time environments, and 4BSD
sockets.
Programs have been written using the Scry client library for
diverse applications including an image processing system (HIPS), a
color image manipulation system (URT/RLE), and graphics systems (Dore'
and AVS). Scry clients have been tested under Unix and UNICOS, and
should be easy to port to CTSS with the Sun Remote Procedure Call
(RPC) library, and VMS with public domain portable Sun RPC modified to
use the Multinet socket library. The next revision of Scry will han-
dle reading in an image a scan line at a time for use by smaller-
memory clients such as PC's.
The system has been used to make numerous movies for Lawrence
Berkeley Laboratory scientists. Scry has led directly to new insights
from scientific data because of the ease with which the system gen-
erates movies due to a simple software interface, the ubiquitous avai-
lability of video technology, and to the rapid turnaround between gen-
erating and viewing movie ``clips''.
The image is generated by a client process (typically the user
application). The image display servers, that is the systems that
receive the image, can be either a window based workstation, such as a
Sun color workstation using X Windows and the XView toolkit, or a PC-
based animation controller using MS-DOS with PC-NFS or Excelan socket
libraries. All of the image servers present the same interface to the
client programs. A typical use of the X workstation-based server, for
example, is to have a graphics window which displays the images as
they come in from a remote site, while storing the compressed form of
the image on disk for later video recording or preview. The PC server
is used to convert images to video format and then display and record
them, either on tape or video-optical disk.
Note on this Distribution:
This distribution consists of the source code and documentation
needed to build both the Scry servers and clients. The development of
Scry is supported by the U.S. Department of Energy, Energy Research
Division, under contract DE-AC03-76SF00098.
This is the second revision of the original Scry distribution.
Based on feedback from Scry users, a number of changes have been made.
The workstation-based server and Anima movie previewer now have both X
Windows (XView) and Sunview implementations. The Anima file compres-
sion format has been changed to the one used by Sun's IFF (Image File
Format) in storing image sequences. This compression format produces
more compact Anima files (a conversion utility is provided to change
an Anima file from the old to the new format). Consistent with the
decision to make Scry 1.2 concentrate specifically on software easing
the use of image compression, transmission, viewing, and recording,
the 3D rendering and 2D minimal GKS client modules have been dropped
from this release. Routines have been written for interfacing AVS and
Dore' (3D rendering). (These will be provided in the appropriate
user-contributed portion of those commercial software packages.)
The image format has been generalized from the original TARGA-16
512w x 400h images. Raw 8-, 16-, 24-, and 32-bit images are accepted,
and client programs to use Scry to handle RLE, HIPS, and Sun raster-
files are provided. If the depth of the image (color resolution) is
different from that required by the server, an appropriate transforma-
tion is performed either on the client or the server. If the width or
height of the image is greater than that of the server, the image is
truncated to the server's spatial resolution. Dealing with additional
image formats would not be difficult; mainly requiring adding several
Scry calls to a program that reads in that particular format image
file. Specific support has been added for transmitting images to
TARGA M8 and ATVista equipped PC's, and for transmitting to servers
which have the X visual format 8-bit PseudoColor.
The compression schemes available have also been modified.
Frame-to-frame differencing has been dropped. Images that compress
well using this technique usually have large amounts of same-color
areas, and the Unix function ``compress'', along with the Color Cell
Compression (CCC) algorithm of Campbell et al. [SIGGRAPH 1986], usu-
ally perform almost as well on such images. There will, of course, be
sequences where frame-to-frame differencing makes a big difference,
but it was felt that the gain in simplified and modular code was worth
eliminating this feature.
A new color quantization algorithm replaces the old one. The new
code is borrowed from Paul Raveling's IMG code, version 1.3. This
algorithm quantizes to 6 bits each of R, G, B for color map entries.
Scry's current implementation of the CCC algorithm uses this new
quantization, and run-length coding has been added as a final step.
The code was also simplified by eliminating the UDP transmission
option. (Non-uniform UDP packet size made the code more complex.)
Images are now transmitted only with TCP/IP.
The PC server implementation now works with both the Excelan and
Sun PC-NFS socket libraries (and therefore with all of the Ethernet
boards supported by PC-NFS).
The marching cubes implementation is no longer included with
Scry. It will be provided in a separate tar file, march.tar.Z, in the
same directory as the Scry tar file.
For those interested in video, a simple movie scripting facility
for both the Panasonic TQ2026F videodisk and Sony LVR-5000 videodisks
is included.
The clients run under UNIX and UNICOS. The X Windows-based
server and Anima animation previewer should run on a variety of works-
tations; they have been tested on Sun 3's and 4's.
Scry will be available by anonymous ftp (login: ``anonymous'',
password: user e-mail address) starting on December 20 from
csam.lbl.gov (128.3.254.6) in pub/scry.tar.Z (a compressed tar file,
so don't forget to set binary mode in ftp). Once on your machine, run
uncompress on scry.tar.Z, and extract the files using ``tar xvf
scry.tar scry''
In addition to the tar file, scry.trouble (in the same directory
on csam.lbl.gov) contains hints on dealing with problems people have
encountered, and bug fixes as they become available.
We invite your comments and suggestions about this code. For
further information contact:
Bill Johnston, (wejohnston@lbl.gov, ...ucbvax!csam.lbl.gov!johnston)
or
David Robertson (dwrobertson@lbl.gov, ...ucbvax!csam.lbl.gov!davidr)
Imaging Technologies Group
MS 50B/2239
Lawrence Berkeley Laboratory
1 Cyclotron Road
Berkeley, CA 94720
--
Bill Johnston, Imaging Technologies Group
Information and Computing Sciences Division
Lawrence Berkeley Laboratory
wejohnston@lbl.gov (...ucbvax!csam.lbl.gov!johnston)