VistaLab Image Processing Framework

 
When developing image processing software, reuse plays an important role. This is why image processing libraries have evolved during the last years. Developers and researchers can utilize existing methods in their own projects but are bound to predefined datatypes and application interfaces which sometimes do not match their work.

Plug-in based software frameworks enforce modularity due to their design. However, developers are still confronted with writing code foreign to the functional domain when defining a plug-in's external interface or communicating with the main application.

VistaLab is a modular framework for developing image processing algorithms with minimal overhead. New plug-ins can be easily distributed in binary form --- they are realized as shared libraries. This way, reuse can be achived in an easy way. Furthermore, the code for integrating own C++-classes into a plug-in is kept at a minimum via generative programming. Not only does it help developers concentrate on implementing new functionality in the image processing domain (and not in writing configuration dialogs), it also enables plug-ins to be kept in a future-proof way as no data structures defined by the framework have to be known - they are built automatically via generative techniques. This feature makes developing new image processing modules a child's play.

Download

See sourceforge Project Page for current versions. Source code for unix systems is available as a .tar.gz-archive. For MS Windows, a binary installer is provided.

Documentation

The MS windows installer comes with documentation in pdf. There is also a separate package on the project page which contains the two documents (tutorials for using VistaLab and developing own plugins).

License

VistaLab is released under GPL with a special exception: Own plugins may have their own terms under certain conditions (see file License for more information).

Requirements:

Linux / Unix / MacOS X (building from source):

  • wxWidgets 2.6 (with OpenGL support)
  • libxml2
  • gettext
  • gcc 2.95/3.0 and above

Microsoft Windows (for developing own plugins using the binary installer):

  • MS Visual Studio 2005 (with MSVC8.0)
  • Alternative: autotools (automake, autoconf, libtool) and gcc 2.95/3.0 or above
  • wxWidgets 2.6.2 - if plugins use GUI functionality such as dialogs (monolithic unicode build with OpenGL support).

Author:

Fabian Wenzel ()