libcvd - efficient and easy to use C++ computer vision library.
Latest commit 8ae1e38 Oct 15, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
ad_hoc_tests Begin removal of separate subimage code. Apr 18, 2013
cmake Fix the name of the debug library. Dec 12, 2017
cvd Merge branch 'master' of github.com:edrosten/libcvd Oct 15, 2018
cvd_src Fix warnings Oct 15, 2018
doc Minor cosmetic/typographic fixes. Jan 29, 2008
examples Comment out the tensor_voting example that depends on cxxopts. Nov 17, 2017
m4 Configuration fixes: Jun 30, 2017
progs Fix warnings Oct 15, 2018
tests Merge branch 'master' of github.com:edrosten/libcvd Oct 15, 2018
.gitignore Add CMake configuration to build on Windows (and hopefully other plat… Nov 16, 2017
Authors Change license. Nov 18, 2014
CMakeLists.txt Include the internal/io header files in the install list. Dec 12, 2017
Doxyfile Update dox for colourmap + add example Mar 21, 2013
LICENSE Change license. Nov 18, 2014
Makefile.in Tests and fixes Nov 29, 2017
README.md Another formatting error. Nov 21, 2017
TODO Updated. May 26, 2006
TODO-remove-subimage Notes. Apr 25, 2013
circle.yml Force use of linker. Nov 30, 2017
config.guess Update config.{sub,guess} to latest versions. Jul 28, 2017
config.sub Update config.{sub,guess} to latest versions. Jul 28, 2017
configure Another configure fix (v4l) Nov 17, 2017
configure.ac Another configure fix (v4l) Nov 17, 2017
configure_osx_32bit Change license. Nov 18, 2014
debian-prepare.sh Change license. Nov 18, 2014
install-sh Change license. Nov 18, 2014

README.md

libCVD

Note, the master branch is now libCVD-2.0 which is in beta and requires C++14.

Compiling and installing

libCVD currently has both an autoconf and cmake based build system. The autoconf one works on any unix-like system, and is well testes. The CMake one should work on any system but is a little newer so may be buggy in untested configurations.

To install on a UNIX system:

./configure && make && sudo make install

To verify that a few things work, you can optionally run

make test

To build on UNIX with CMake:

mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release .. 
make 

and optionally:

make test

To build on Windows, use CMake:

mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=<directory> ..
cmake --build . --target INSTALL --config Release

Dependencies

There are no mandatory dependencies. For a reasonably complete installation you probably want:

  • TooN (header only, install from source)
  • libjpeg, libtiff, libpng, ffmpeg, X11, OpenGL. You might also want:
  • libdc1394
  • libuvc

On Ubuntu 16.04, run:

sudo apt-get install libjpeg-dev libpng-dev libtiff-dev libx11-dev libavformat-dev libavdevice-dev libavcodec-dev libavutil-dev libswresample-dev libglu-dev libdc1394-22

System compatibility

You need a C++14 compiler.

All libraries are optional but you will be missing features if the libraries aren't present. The configure script will tell you what's present and what's not.

Ubuntu 16.04 / gcc 5

The default C++ compiler on Ubuntu 16.04 will not compile libCVD because of a bug in the standards compliance of the compiler.. If you want to use libcvd, you will need to install a newer compiler. The easiest eay is to add the toolchain test PPA:

sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install g++-7

Now you can build libcvd with either:

CXX=g++-7 ./configure
make

or

mkdir build 
cd build
CXX=g++-7 cmake -DCMAKE_BUILD_TYPE=Release .. 
make 

Documentation

Documentation Status

Latest documentation here: https://codedocs.xyz/edrosten/libcvd/ or just run Doxygen.

Status of unit tests

Build Status

News and main page

https://www.edwardrosten.com/cvd/