VEIL logo

The VEIL Project

VEIL (Virginia's Extensible Imaging Library) is a C++ library designed to simplify programming Datacube image processing hardware. VEIL uses a dataflow model of computation where the nodes of a graph represent image transformations and the arcs image paths. Users can either build graphs interactively using Nimue (a graphical user interface) or call VEIL from arbitrary C++ code.

VEIL provides a number of primitive operations, which can be combined to perform sophisticated image processing. Examples include: a VEIL graph in Nimue

Gaussian/Laplacian pyramids
Convolution
Histogram
Hough Transform
MagDir/DxDy operations
Morphology
SSD
Zero Crossings
Math/Logical operations
Overlay graphics and images

Currently, VEIL supports the following boards:

MaxVideo200
MaxVideo20
Digicolor
Digimax

and the following acquisition modules:

AS, AD, and AC

VEIL runs on Sun SPARC workstations using the Performance Technologies Sbus-to-VME adapter, as per DataCube's recommendations; changes might be necessary to make it run with other configurations.

VEIL can be compiled for SunOS (4.1.3), Solaris (5.4) or VxWorks. Many compilers can be used, including g++ 2.6.3 or 2.7.2.

The image on the right is a VEIL graph created using Nimue.

VEIL Publications and Information

A longer description of VEIL
The VEIL Tutorial (postscript)
Thomas J. Olson, Robert J. Lockwood and John R. Taylor. Programming a pipelined image processor. Journal of Computer Vision, Graphics, and Image Processing, September 1996. (postscript)

Getting VEIL

The latest version of VEIL (for Solaris, SunOS and VxWorks) is version 2.22. Download It!
An experimental version of VEIL, version 2.22x, is also available (for Solaris, SunOS and VxWorks). It simplifies communication between the host CPU and the Datacube by implicit synchronization. Read the release notes for more information, or just Download It!

Getting Nimue

Nimue is a graphical interface to VEIL, which was written in Tcl/Tk. VEIL graphs can be created graphically using Nimue and included in C++ programs. Nimue-2.22 is compatible with VEIL-2.22. Nimue-2.22x is compatible with VEIL-2.22x.

Download Nimue-2.22 (for SunOS) with Tcl/Tk.
Download Nimue-2.22 (for SunOS) without Tcl/Tk.
Download Nimue-2.22x (for SunOS) with Tcl/Tk.
Download Nimue-2.22x (for SunOS) without Tcl/Tk.
Download Nimue-2.22 (for Solaris) with Tcl/Tk.
Download Nimue-2.22 (for Solaris) without Tcl/Tk.
There is currently no special version of Nimue-2.22x for Solaris, although versions compiled under SunOS may work.


The VEIL anonymous FTP site.


Return to UVA Computer Vision Home Page

veil@virginia.edu