Looking for pointers

Howdy Folks,

My better third is struggling with some microscopy data, counting cells, and I thought: surely there is a computer program that can do this for her. So I started poking around and I found Cell Profiler. I went through the tutorials, and I created a pipeline based on one of her images. Her is a zip file with the image and the pipeline (findingdots.cp):


If you look at the image, the black dots represent the cells she is trying to count. I started mucking around with the different options in the ‘identifyprimaryobjects’ module. Quite frankly the number of options and the different combination are a little daunting, and I was wondering if someone with more experience could provide me with some advice on how to go forward.

Both my better third and I would surely appreciate it.


See the attached pipeline as a starter. The module notes have some annotation on the setting choices. Basically the strategy was this:

  • Find the color channel that has the best contrast

  • Pre-process the image to enhance the dots

  • Select the best thresholding method for the image.

Hope this helps!
2010_06_16.cp (4.97 KB)

Hey Mark,

Thanks for the reply. I’m a little confused by the threshold module.
Here I’m trying to take the output of the threshold module and identify
the primary objects from that. However, I cannot seem to find any.


Alternatively, is it possible to get the area taken up by the output of the
threshold module?


Hey Mark,

I think I figured it out. I looked at your example and I didn’t realize that it was the white sections that the program was looking for to establish regions. I inverted the threshold and it works really well. I also see that the area is provided in the summary from the primary objects module. I think this will work out really well for my girlfriend.

This software is very flexible and at the same time very user friendly.

Thanks a lot for the help,

Hi John,

Good to hear you got it working!

One final note: The display window for IdentifyPrimaryObjects shows the area occupied by the detected objects but you’ll need to explicitly calculate it in order to have it output. You can either:

  • MeasureObjectArea to measure the area of each individual spot, which cam then be output as per-object data

  • MeasureImageAreaOccupied to measure the total area occupied by the spots, which can be output as per-image data. This is equivalent to what the display window for IdentifyPrimaryObjects shows.