C++ Libraries for Computer Vision Research and Implementation
[Download and install]
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:
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.
- 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.
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.
Documentation on the whole of VXL
There are two main references for information on the whole of VXL:
You can also download the
release 1.17 documentation.
- The VXL package documentation includes auto-generated descriptions
of every class and function in VXL.
- The VXL book is a single reference for all high-level documentation on VXL.
These are short guides to specific areas in VXL:
xcv and vgui have not changed a lot since the last release of VXL so these guides should be useful for both
the release and development versions of VXL.
- xcv is an application built to demonstrate the functionality of the VXL libraries.
- vgui is the VXL graphical user interface library.
- The MUL
book is an overview of libraries concerned with probability modelling,
classification, and 3d and registered images.
You can download the latest official release
Or get the latest development version from the Git \.
Problems and where to get help
There is a vxl-users FAQ.
There are other FAQs in the VXL book.
The Issues Tracker is the best location to report issues with VXL.
The historical mailing list (Not used in the past few years) VXL mailing
lists are at SourceForge.
The dashboards at
are a summary (collated from different machines at different sites in
different timezones) of the current build status of VXL. More builds
are welcome; just follow the instructions for submitting a build.
If you think you have found a bug, or if you have an installation or build problem, please submit a bug
report on the Issues Tracker. Please check the vxl-users
list policy to find out what information will be helpful in sorting out your bug.