Image 3D library

Quick start with i3dlib


The basic image class is i3d::Image3d and is responsible for all the operation applied to the given image. The simple instantiation is done by calling its constructor with the name of the image to be openned:

i3d::Image3d<i3d::GRAY8> my_image("lena.tif"); // open 8b grasyscale image

Consequently, the object "my_image" can be called with various methods or functions:

i3d::Gauss(my_image); // gaussian smooth
i3d::Negative(my_image); // color inversion
i3d::Threshold(my_image, (i3d::GRAY8) 128); // global thresholding
... etc.

Saving the results is straightforward:

my_image.SaveImage("new_name.jpg"); // save the image

Several simple examples are stored in the examples directory.

Data storage

The library supports various image formats:

When using any of them, default compression algorithm is used:

Data representation

The I3D is capable of manipulation with 1b, 8b, 16b, 24b, 48b raster image data (TIFF and TARGA support 48b TrueColor images). For this purpose special data type have been defined:

Which common functions are available?


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: