[ImageJ-devel] How to implement filters in ImgLib?

Stephan Preibisch preibisch at mpi-cbg.de
Thu Jan 20 07:58:04 CST 2011


Hi Wilhelm,

there are some examples in the imglib-algorithms package. They include
Gaussian Convolution and Fourier Convolution (convolution with any kernel).
The basic idea is to implement the OutputAlgorithm interface and maybe also
Benchmark and MultiThreading. So the current implementations support
benchmarking, but no thorough benchmark has been done yet. But it is quite
fast, especially the Fourier Convolution where the convolution time is
independent of the kernel size. 

I would have a look at the class
mpicbg.imglib.algorithm.gauss.GaussianConvolution3 which is a generic
Gaussian convolution, it even supports different Input, Processing and
Output datatypes (e.g. input is Byte, compute in Float, output Byte again).
Of course, for a start one can assume that the type is the same throughout
the whole computation to make it not too complicated.

Nice greetings,
Stephan

-----Original Message-----
From: Burger Wilhelm [mailto:Wilhelm.Burger at fh-hagenberg.at] 
Sent: Thursday, January 20, 2011 1:37 PM
To: imagej-devel at imagejdev.org
Cc: Stephan Preibisch; Burger Wilhelm
Subject: How to implement filters in ImgLib?

Dear Stephan and others,

I was wondering how one would implement a typical filter on top of ImgLib
(say a Gaussian blur or other linear filter) - are there any examples and/or
benchmarks yet?

Thanks much,
Wilhelm







More information about the ImageJ-devel mailing list