ImgFusion was designed to be multi-platform library that can be used for image fusion. The application is written in C++.
Image fusion is a process of combining multiple images into a single image which contains as much information from the source images as possible. Image fusion has many applications in fields such as medicine, GIS, security or photography.
Here is a short list of how image fusion may be used:
· Extending depth of focus - multiple images with the same contents but varying quality (photographs for example) may be fused together to obtain perfect result. Typical in microscopy where it is hard to focus on entire volume of the observed specimen.
· Increasing spatial resolution of existing map by combining a low resolution color map with high resolution grayscale detail map.
· Visualization of CT, MRI or PET data, image guided surgery, image guided radiotherapy.
· Additional sharpening of blurred photographs taken both with and without flash to construct perfect sharp photograph with natural colors.
The library offers several methods for image fusion that offer good trade-off between speed and quality of the result.
Currently the fusion algorithm tries to preserve the maximum detail in the image by maximizing the frequency contents (sharp edges) but new fusion rules can be defined in order to change the fusion behaviour or quality of the result.
Emphasis has been put on the computational efficiency and minimal memory requirements of the image processing algorithms. All transformations are made in-place and require only a little extra memory.
This fact is crucial for processing large images since the transformation coefficients are represented by single precision floating point values (which typically occupy 4 Bytes) and therefore a single image of dimensions 4000 x 4000 pixels, for example, spans 64 MBytes.
For this reason we designed the system in a way that allows processing each image separately. The major advantage of such approach is that the memory consumption does not depend on the number of images being fused but is proportional to the image size only.
Here are some key features of "ImgFusion":
· Laplacean operator based fusion.
· Fast method producing good looking results.
· Real valued wavelet transform fusion.
· Better in preserving contrast than Laplacean method, introduces ugly artefacts on sharp edges.
· Complex valued dual tree wavelet transform fusion.
· Slow method producing best looking results.
· Color images.
· By now color images are converted to grayscale. Restoring color information as a postprocessing will be added soon.
· Image registration.
· Not implemented yet.
What's New in This Release: [ read full changelog ]
· Several c++ compliance fixes
· Added MSVC 2008 solution