spacer.png, 0 kB
  spacer.png, 0 kB
spacer.png, 0 kB
spacer.png, 0 kB
Fast Gaussian Filtering PDF Print
Written by Vladimír Ulman   
Wednesday, 20 February 2008
Article Index
Fast Gaussian Filtering
Design Considerations I.
Design Considerations II.
The Convolution Routines
Results
Download

Download

We provide source codes for the entire projectdownload source files . This is a ZIP archive (0.49MB) designed originaly for Linux operating systems. Beside source codes of the i3dcore, i4dcore and LinearFilters libraries, it contains Makefiles for each library and a global Makefile to easily compile everything including a sample program for 2D oriented filtering. Documentation of filtering functions can be found here.

The included i3dcore was tailored to handle only TIFF, JPEG, TGA, METAIO and I3D file formats. It is expected that libtiff, libjpeg and libz be installed in the operating system already. The original i3dcore can also benefit from ICS (via libics) and Bio-Formats -supported image file formats. These are less common software packages probably not installed on your system. Hence, for the sake of simplicity, we've decided not to support them in this release of i3dcore. However, anyone interested in the topic is welcome to contant us for further details on how to enable these.

A binary versions for Linux (ZIP, 2.0MB)download Linux binary and Windows (TM) (ZIP, 3.3MB)download Windows binary can be downloaded too. A simple example on how to compile your programs with these libraries is included.

7th August 2009

The new version of the library has been released.

We no longer provide separate download boundle of just the LinearFilters library (the links in the text above lead to the version from 25th March 2009). The optical flow download page is now the correct and valid source where this library, among others, can be found. The page also summarizes a small how-to compile and install the library.

 25th March 2009

The published version here already implements the improved extension of the approach of Lam and Shi, the function ApplyANIGaussU2(). Also this release includes first implementations of spatial Gabor filtering.

 

Please, take a note of the licence below before downloading.

Example of use

The following is a sample snapshot of C++ code that computes convolution with a general Gaussian filter using our library:

#include <i3d/image3d.h>
#include <of/ofLinearFilter.h>
using namespace i3d;
int main(void) {
//read input image
Image3d<float> i_orig("3Dcell.tif");
//create output image
Image3d<float> i_res;
//do Gaussian filtering in the direction of vector (1,1,1),
//the sigma in this direction is 4, the other two sigmas are 2
//
//Lampert and Wirjadi
ApplyANIGaussL<float>(i_orig,i_res,DegToRad(45),DegToRad(45),4,2,2);
//
//extension of Lam and Shi 
ApplyANIGaussU2<float>(i_orig,i_res,DegToRad(45),DegToRad(45),4,2,2);
//save output image
i_res.SaveImage("3Dcell-filtered.tif",IMG_TIFF);
return(0);
} 

Acknowledgement

The research on the topic is supported by the scientific project NPVII (2B06052) by the Ministry of Education of the Czech Republic.

Licence

The library is part of the OpticalFlow boundle in which every part is available under the GNU GPL license. Hence, the LinearFilters library is available under the GNU GPL license.

Conference Paper

This work has also been published in the Proceedings of the 8th WSEAS International Conference on Signal Processing, Computational Geometry and Artificial Vision (ISCGAV'08). Click here to download the paper.



Last Updated ( Monday, 01 February 2010 )
 
spacer.png, 0 kB
spacer.png, 0 kB
spacer.png, 0 kB