Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo


Tree [07792c] master /

File Date Author Commit
QMake 2015-04-16 John Field John Field [5314d0] Add missing / in directory path
dev 2013-06-05 Charles Galambos Charles Galambos [261497] Some experimental CUDA stuff.
doc 2011-06-12 Charles Galambos Charles Galambos [46afe1] Rearrange directory structure to something more...
src 5 days ago Bill Christmas Bill Christmas [07792c] Added basic greyscale value manipulation to img...
.gitignore 2013-04-07 Charles Galambos Charles Galambos [1731e5] Ignore pydev stuff.
COPYING 2011-10-19 John Field John Field [af28fc] Update {L}GPL licenses
COPYING.LESSER 2011-10-19 John Field John Field [af28fc] Update {L}GPL licenses
INSTALL 2014-11-12 John Field John Field [67ac34] Bump revision numbers post AutoTools merge
INSTALL.ADVANCED 2014-11-12 Bill Christmas Bill Christmas [ad8a6b] Added comment on finding library names
README 2014-11-19 John Field John Field [ef03cd] Correct typo
config.guess 2011-11-29 John Field John Field [45d513] Move AutoTools support files to root of Git repo
config.sub 2011-11-29 John Field John Field [45d513] Move AutoTools support files to root of Git repo
configure 2014-11-26 John Field John Field [abf6f6] Documentation path is now mixed-case Ravl
configure.ac 2014-11-26 John Field John Field [abf6f6] Documentation path is now mixed-case Ravl
defs.mk 2014-11-26 John Field John Field [b83f16] Missing configure.ac from dist file
install-sh 2014-11-21 Charles Galambos Charles Galambos [034b2e] Give executable permissions.

Read Me

                RAVL, Recognition And Vision Library

RAVL provides a base C++ class library, together with a range of computer
vision, pattern recognition classes and supporting tools. The aim of RAVL is
to move software developed within the Centre for Vision, Speech and Signal
Processing at the University of Surrey, England for research purposes into
the public domain and to support its use in a wider community.

Why should you use this library?

+ It has a simple user interface: the user does not have to use pointers or
  deal with heap management. (Java programmers should find the interface
  reasonably familiar.)

+ It has an I/O library that supports a wide range of file formats and
  devices in a consistent manner (including image, video and audio). Type
  conversion between file formats can be handled transparently.

+ It uses reference counting for large objects, making them thread-safe for
  multi-threaded applications

+ It is freely available from SourceForge 

+ It is distributed under the GNU Lesser General Public License

+ It is straightforward to port to any operating system / platform that
  conforms to the Posix standard, has an ANSII C++ compiler and a make
  utility that supports the GNU extensions to that program.

Contributions to the library or suggestions on how it can be improved are
welcome they can be posted via the sourceforge web pages 
( http://sourceforge.net/projects/ravl ) or sent directly to me at


Version 1.1 of RAVL introduces the use of the GNU AutoTools for the
installation process. This greatly simplifies the initial configuration of
the environment needed to build RAVL. RAVL can now automatically determine
what external libraries are available on your system and use them as is
appropriate. Please refer to the enclosed INSTALL file for details on
installing RAVL on UNIX and UNIX-like systems.

Revision 1.1 of RAVL also moves to providing all of the class libraries
in a single library file. This greatly simplifies the use of the class library
as there is no longer a need to link with the correct list of multiple 
libraries, just the one RAVL library is needed. To this end, the user may now
employ the build tool of their choice and it is no longer necessary to build
client projects using the QMake utility. The user may configure their build
system either by manually declaring where the RAVL library and header files
have been installed or, if their build tool supports it, by directing it to
use the pkg-config utility which RAVL now supports.


The RAVL libraries are distributed under the GNU LESSER GENERAL PUBLIC 
LICENSE (LGPL), however some of the tools built with the library have been
issued under the more restrictive GNU GENERAL PUBLIC LICENSE, the headers
attached to each of the files in the project indicate which of these apply.
A copy of each software license is provided for information in the files


RAVL was originally derived from AMMA, written by Radek Marik with help from
many other members of CVSSP. The work of porting AMMA to RAVL was largely
undertaken by Charles Galambos, again with help from other members of CVSSP.
The RavlMath library includes ccmath, written by Daniel A. Atkinson. RAVL is
currently maintained by members of CVSSP and Omniperception.


A full suite of on-line documentation (including an on-line manual and slides
for an introductory presentation) is available from: