[ Home :
Programs
|
libCVD
|
Hardware hacks
|
Publications
|
Teaching
|
TooN
|
Research
]
CVD Projects
libCVD - computer vision library
libCVD is a very portable and high performance C++ library for computer vision,
image, and video processing. The emphasis is on providing simple and efficient
image and video handling and high quality implementations of common low-level
image processing function. The library is designed in a loosely-coupled manner,
so that parts can be used easily in isolation if the whole library is not
required. The video grabbing module provides a simple, uniform interface for
videos from a variety of sources (live and recorded) and allows easy access to
the raw pixel data. Likewise, the image loading/saving module provides simple,
uniform interfaces for loading and saving images from bitmaps to 64 bit per
channel RGBA images. The image processing routines can be applied easily to
images and video, and accelerated versions exist for platforms supporting SSE.
Versions
Platforms have stabilised a lot in recent years, so libCVD has switched back to
versioned releases.
News
Also, there is an Atom feed on freshmeat
Downloading
The use of git or a release is recommended. The tip of master should be in
a stable state.
Documentation
CVD Documentation .
CVD Tutorial .
Mailing list. This list covers everything (commits, general questions, etc...)
Mailing list archives
Dependencies
Build
- unix:
- GNU make and a modern C++ compiler (gcc version >= 3.1)
- Works on Linux, ucLinux, FreeBSD, OpenBSD, OSX, Solaris, IRIX, Cygwin, MingW
- Cross and native compilation supported.
- Runs on x86, x86-64, ARM, Blackfin, MIPS, SPARC, PPC.
- Windows:
- MinGW and Cygwin
- Visual Studio 2008 with the feature pack
- VS2008 build file builds under VS2010
- Other:
- The library is very modular and significant parts have been compiled on other systems such as Symbian.
- Doxygen (if you want to build the documentation)
Options
Note, on unix systems there are no required dependencies, but support
for advanced features requires external libraries. Features which come as
standard on certain platforms are not listed.
All platforms
- X11 and OpenGL - required for cheap and cheerful GUI, and for useful GL bindings.
- TooN
- TooN - numerics support ( TooN needs LAPACK and BLAS for some operations).
- BLAS and LAPACK are available under the vecLib framework on OSX.
- libjpeg - loading and saving of JPEG images.
- libpng - loading and saving of PNG images.
- libTIFF - loading of TIFF images
- ffmpeg - reading of AVI and MPG files (version >= 0.4.9 required).
- libuvc for direct control over USB Video Class cameras on platforms with limited support (works, but unnecessary on Linux)
Linux
OSX
- libdc1394v2 and
libraw1394 - IIDC firewire camera and IIDC over USB support. Note, this provides better control over the cameras than the Quicktime API (which is also supported).
AMD
- ACML - BLAS and LAPACK optimized for AMD processors.
Other pages
Other useful libraries
- TooN: a numerics library used by libCVD.
- TaG: Extra algorithms for TooN, some of which are useful for computer vision tasks.
- GVars3: A configuration library which integrates well with TooN.
Updated April 11th 2022, 03:25