Introduction: What is VXL?
VXL (the Vision-something
-Libraries) is a collection of C++ libraries designed for computer
vision research and implementation. It was created from TargetJr and the
IUE
with the aim of making a light, fast and
consistent system. VXL is written in ANSI/ISO C++ and is designed to be portable over many platforms.
The core libraries in VXL are:
- vnl (numerics)
: Numerical containers and algorithms. e.g. matrices,
vectors, decompositions, optimisers.
- vil (imaging)
: Loading, saving and manipulating images in many common file formats,
including very large images.
- vgl (geometry)
: Geometry for points, curves and other elementary objects in 1, 2 or 3 dimensions.
- vsl (streaming I/O), vbl (basic templates), vul (utilities)
:
Miscellaneous platform-independent functionality.
As well as the core libraries, there are libraries covering numerical algorithms, image processing,
co-ordinate systems, camera geometry, stereo, video manipulation, structure recovery from
motion, probability modelling, GUI design, classification, robust estimation,
feature tracking, topology, structure manipulation, 3d imaging
, and much more.
Each core library is lightweight, and can be used without reference to the
other core libraries. Similarly, the non-core libraries don't depend on more
than absolutely necessary, so you can compile and link just
the libraries you really need.
For a more detailed description of the libraries see
the VXL book
.
VXL is developed and used by an international
team
from academia and industry, including some of the world's leading
computer vision experts.