@chapsummary
 VXL is efficient, simple, and fun to use.
@endchapsummary


 @vxl{} is a collection of C++ libraries designed for
computer vision research.  Because it's for computer vision it needs to be
@emph{efficient}, handling large quantities of numerical data with little
overhead.  Because it's for research it must be @emph{portable}, so that
one can write and run one's program on any machine available, for example
in order to access a special camera or fast image processing hardware.

This document describes the image processing libraries in @vxl{}.
These libraries were largely written by Terry Boult at Lehigh University
in 1997/8. They have were adapted for use in VXL by Peter Vanroose.

@section Contents

The image processing libraries can be found in the tbl module on the VXL source code
tree.

@itemize @bullet

@item vipl: The Templated Image Processing Library.

vipl provides filtering classes which can be used with almost any input or
output image type, any pixel type, and any region of interest. It deals with images
that are too large to fit in memory, loading and processing them in sections.
It provides all this efficiently by being heavily templated. This can be somewhat
intimidating, and so there is an alternative library ...

@item vepl: The Easy Image Processing Library for use with vil

vepl provides simple functions to perform the most common image processing operations.
The implementations of these functions are using the vipl generic filtering classes.

@item vepl1: The Easy Image Processing Library for use with vil1

vepl1 provides simple functions to perform the most common image processing operations,
but with the legacy vil1_image class instead of with vil_image_view<T>.

@end itemize
