Particules detection by defining an specif area

Good afternoon,

I am Jennifer Risso and I am working in the UVSQ UFR in the laboratory headed by Marie-Anne Rameix Welti. I am writing to you because we are a team in that we perform imaging analysis diarily and we want to improve our adapt our particle detection methodology on ICY software to our new experimental objective.

We usually identify fluorescent objects from a binary image by using a home made protocol in ICY by using the spot detector plugin. Basically we detect them by looking for a best threshold by aplying the Otsu Method. Our pathway looks basically like:

Best thershold > Thersholder > Wavelet spot detector > Filter ROI by size > ROI statistics

However, now we are interested in to detect specific objects (spot 2) that are located inside of our old detected spots (spot 1). It is important to say that each one of our target spots (1,2) are detected in the microscope in different channels. Therefore, we are interested in to know if it exists some strategy we can use to get it in the ICY software.

Basically, it could be interesting to detect and use our first ROIs (spot 1, chanel 1) as a region of interest to found (only inside this region) our spots number 2 located in channel 2.

It could be very interesting and useful to us your help. If you need more information about our objective or about the images we use as an input, please, do not hesitate to contact me.

Thank you in advance.

Have a nice day,


Dear Jennifer Risso-Ballester,

Welcome to the forum!

  1. With the Spot Detector Icy plugin, you can restrict the detection of spots to one or several regions of interest (ROIs) using the option “ROIs for detection mask” in the Wavelet Spot Detector block. To do so in your protocol, you need to link the output of the first Wavelet Spot Detector block (“detection as ROIs”), ie the spot 1 ROIs, to the input “ROIs for detection mask” of a second Wavelet Spot Detector block.

  2. Since you are detecting spots in two different channels, in your protocol, you need to provide only the channel of interest as “input Sequence” to each Wavelet Spot Detector block, using the Extract channel block. I guess that in your protocol you are selecting the channels in the Best Threshold block.

  3. Last but not least, you can choose to compute the wavelet adaptative threshold (WAT) on the whole image or on a region of interest. If the spots are distributed all over the image, you can compute the WAT on the whole image. On the contrary, if there are areas without any spots in the image, and others where they are concentrated, it is better to restrict the WAT computation to regions of interest delineating the spots areas. In this case, you need to provide a sequence with the ROIs delineating the spots area to the input parameter “ROIs from sequence for WAT” and tick the box “Compute WAT considering ROI” in the Wavelet Spot Detector block.

This goes a bit beyond your question, but I am wondering if the Spot Detector is adapted to the type of objects you are looking at for two reasons: (1) from what you describe, spots 1 seem way bigger than spots 2 and (2) you apply some extra thresholding before the Spot Detector. The Spot Detector is adapted for small objects, which size is below ~15 pixels (in 2D) and the WAT is, in principle quite insensitive to noise. To segment bigger objects, I would rather recommend the HK-Means Icy plugin. If you are interested in pursuing this topic (best segmentation method for spots 1 and 2), could you upload an example image and your protocol?

Best regards,

1 Like