New spots colocalization plugin (ComDet v.0.3.6)

I’ve put online/added to website simple spots/particles colocalization plugin, called ComDet.

In short, main features are:

  • finds spots of specific sizes in each channel ignoring inhomogeneous background and based on the distance between them calculates colocalization in 2 channels.
  • calculates spots’ integrated intensity (minus background estimated from perimeter);
  • can detect spots only in one channel and quantify the same area in another;
  • calculates ratio of intensities for colocalized spots;
  • can limit detection to selected ROI, works with stacks.

There are instructions on how to install and use it.
Plus, of course, it is open-source with code available on github.

Any feedback/comments are welcome.


Nice work, @ekatrukha, and welcome to the forum!

I just had a very quick glimpse at the source code, and after trying on a few sample images, I have a few questions:

  • The detected particles are displayed by bounding boxes. Is the area calculated only for a thresholded part within that box, or for the whole rectangle? And how is the integrated intensity measured.
  • The plugin currently detects spots separately per frame and per slice. Any plans to make it work truly on 3D?
  • Can you explain in more detail how you evaluate colocalization? Do you simply look at the distance of the centroids, or is the area of each particle taken into account? If the former, what’s your threshold for colocalization of two spots?

Also, I suggest to use Maven to manage the dependencies (such as jama) for your plugin.


Thank you, @imagejan!

And thanks for your comments/suggestions. Helps to look at it with fresh point of view!
1a) The calculated area is indeed the thresholded area, after dilation/erosion. I will add more detailed description. Plus if the thresholded spot is larger than specified particle size, there is local maximum inside it and “Include larger particles” is off, it calculates the area in the squared rectangle (i know, it is not very straightforward, but it helps to locate spots that are very close to each other).
1b) Integrated intensity is measured in the following way. First, average intensity over perimeter of bounding rectangle is calculated, it is background intensity, I_{bg}. Then I calculate sum of intensities of all N pixels inside the rectangle S_{in}. To get the final value, IntgInt=S_{in} - I_{bg}*N. So from each pixel intensity I subtract average background value. This method is similar to the one described in this paper. I will add more detailed description of it.

  1. Yes, development of true 3D is possible, the only problem is that I don’t have a dataset to play with. If you have one, send it to me.

  2. Number 1, it is just the distance between centroids and the threshold (max distance between colocalized spots) is user provided parameter of plugin (see this dialog, below). I will try to adjust the description to explain it more clearly.

Yes, I should devote some time and switch to Maven (now I use Ant builder), thanks for the kick!


Hi @ekatrukha

thanks for your effort! In case you need a few more example images in 3D, I have uploaded a set of a few images from various microscope types. From the biological side all images share the same staining target in at least one of the channels (nuclear pore complexes).
Feel free to have a look and test.