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.