CBIA 3D image algorithms library


This library provides a palette of image processing algorithms. The short name is i3dalgo. It is developed entirely in the C++ programming language with extensive use of templates. Technically, it is directly dependent on the CBIA 3D image representation library, i3dcore, which provides I/O operations and image representation. The i3dcore's documentation can be found at http://cbia.fi.muni.cz/user_dirs/i3dlib_doc/i3dcore/ .

All algorithms are somewhat connected to biomedical image processing. Still, many of them may be recognized as a part of say standard image processing suite. The selection for algorithms was driven by a real needs of people in CBIA most of the time. However, some classes of algorithms were implemented mostly for experimental reasons. Note that all functions work on a single image in contrast to, for instance, computation of the optical flow where at least two images need to be supplied.

The variety of algorithms in the i3dalgo ranges from simple global thresholding over morphology to more complex ones like, for instance, segmentation based on level sets. One may also find here many specialized and/or complex algorithms based on the literature from the image processing field. In such cases, the source is properly cited in the documentation.

List of available common functions


The library is licensed under the GNU GPL license. Its text is included in the library and is also accessible from the documentation, see The GNU General Purpose License .

Supported Platforms

Our goal is to develop the library according to the C++ standard. In principle, it should work on any platform with a good C++ compiler. However, we have succesfully compiled and tested this library only on the following x86-based architectures:

The installation guide can be found at http://cbia.fi.muni.cz/user_dirs/i3dlib_doc/install.html .


The sources of the CBIA's i3dalgo are freely available at http://cbia.fi.muni.cz/projects/the-cbia-i3dcore-and-i3dalgo-libraries.html . You may need to register before downloading.


A collection of sample programs is present in the original source package of both libraries. This collection is also available at http://cbia.fi.muni.cz/user_dirs/i3dlib_doc/i3d_examples.zip (20kB) for reference.


It is a common work of members of CBIA as well as students from Faculty of informatics, Masaryk University. Nevertheless, the major contributors were: Petr Mejzlík, Petr Matula <pem@fi.muni.cz>, Pavel Matula <pam@fi.muni.cz> and David Svoboda <svoboda@fi.muni.cz>.

Where to go from here?

Appart to this library, there are other independent developement projects based on the i3dcore and i3dalgo in the CBIA. These tend to provide some more functionality in visualizations, modified or enhanced algorithms or simply new algorithms for some dedicated field of biomedical image processing and analysis, for example for the field of microarray imaging. The list of projects can be found at CBIA's official web pages, http://cbia.fi.muni.cz/software-development.html .


There are some header and source code files which are part of this library but weren't created by the CBIA. We redistribute these files as a part of our library but do not provide any warranty if using these codes.

This files are: