Graphic STI
logo EPFL
text EPFL
english only
Biomedical Imaging Group
ImageJ plugins
BIG > Daniel Sage > Image Processing > Spot Detector: 3D LoG17 July 2024

BM 4.135, Station 17
CH-1015 Lausanne
+41 21 693 51 89 (EPFL)
+41 21 691 54 25 (Ecublens)
photo EPFL

Spot detector based on a 3D LoG filter

Author: Daniel Sage


The freely available software module below is a 3D LoG filter. It applies a LoG (Laplacian of Gaussian or Mexican Hat) filter to a 2D image or to 3D volume. Here, we have a fast implementation. It is a perfect tool to enhance spots, like spherical particles, in noisy images. This module is easy to tune, only by selecting the standard deviations in X, Y and Z directions.

formula LOGplot


To run the plugin you should first download a version of ImageJ; it only takes a couple of minutes to install ImageJ and it is available on all platforms (Windows, Mac, Linux, ..). The ZIP archive file contains the Java class files. After having extracted the archive file, you should put the "LoG3D" directory into the plugins directory of ImageJ.

You are free to use this software for research purposes, but you should not redistribute it without our consent. In addition, we expect you to include a citation or acknowledgment whenever you present or publish results that are based on it.

Fast implementation

For 3D data, it is very advantageous to have a separable implementation to make the computation time acceptable. Here, we extend the formulation of Huertas and Medioni to the 3D case and express the LoG detector as a sum of 3 separable filters. This new separable implementation of the 3D LoG filter speeds up computation time dramatically. For a (100*100*100) volume data and a LoG detector with , we decrease the time from 145 sec. for a non-separable implementation in the space domain to 2.3 sec. for the separable algorithm on an Apple PowerMac DP G5 2.0 GHz.


Graphical User Interface: This plugin can be can from the ImageJ plugin menu: LoG_3D.

Macro: This plugin can be called from a macro. The parameters σx, σy and σz which define the size of the LoG filter. The parameter displaykernel is 1 for displaying the LoG kernel, 0 otherwise and the parameter volume is 1 for processing as volume, 0 process slice per slice.

run("LoG 3D", "sigmax=1 sigmay=1 sigmaz=13 displaykernel=0 volume=1");


D. Sage, F.R. Neumann, F. Hediger, S.M. Gasser, M. Unser, "Automatic Tracking of Individual Fluorescence Particles: Application to the Study of Chromosome Dynamics," IEEE Transactions on Image Processing, vol. 14, no. 9, pp. 1372-1383, September 2005.