[ VIGRA Homepage | Function Index | Class Index | Namespaces | File List | Main Page ]
|VIGRA Reference Manual|
VIGRA is a computer vision library that puts its main emphasis on flexible algorithms, because algorithms represent the principle know-how of this field. The library was consequently built using generic programming as introduced by Stepanov and Musser and exemplified in the C++ Standard Template Library. By writing a few adapters (image iterators and accessors) you can use VIGRA's algorithms on top of your data structures, within your environment. Alternatively, you can also use the data structures provided within VIGRA, which can be easily adapted to a wide range of applications. VIGRA's flexibility comes almost for free: Since the design uses compile-time polymorphism (templates), performance of the compiled program approaches that of a traditional, hand tuned, inflexible, solution.
VIGRA's design is documented in the chapter "Reusable Software in Computer Vision" by Ullrich Köthe, in: B. Jähne, H. Haußecker, P. Geißler: "Handbook on Computer Vision and Applications", volume 3, Acadamic Press, 1999. If you don't have the book, you may read a draft of this article. A shorter article STL Style Generic Programming with Images describing some of the ideas has appeared in the January 2000 issue of C++ Report Magazine. The most comprehensive source of information is U. Köthe's PhD thesis Generische Programmierung für die Bildverarbeitung, but this is written in German.
VIGRA is subject to this LICENSE.