Thresholding discrepency in converted pipeline

Hi,
I had a pipeline that was working well in CellProfiler 2.0, but is not working the same in CellProfiler 2.1.0. I am losing a lot of my membrane/cell detection, but the object identification for the DNA looks fine. I ran several examples and have attached a particularly bad one. Previously, my pipeline identified 160 membranes/cells and now it’s only identifying 69. I’ve attached the old pipeline, the converted project, and an image set. Any help would be much appreciated.
-Anne





Hi Anne,

This discrepancy is due to a change in IdentifyPrimaryObjects in the “Fill holes” option. Previously in CP 2.0, if a foreground region is located within a hole, enabling this option would *not *fill the hole in. We thought this was undesirable for most fluorescence cases where the background is dim and the region of interest is light, so we changed it so that it will fill all holes whether they contain objects or not.

Since your regions-of-interest are reversed from this “typical” case, it didn’t work as it should; the dark borders of the bacteria are considered to be holes, surrounding a light region which is the bacteria interior. IdentifyPrimary then filled in everything, wiping out the bacteria interiors in the process, thus reducing the overall count.

So if you disable hole filling, you’ll get the expected result.

Sorry to have moved the scenery around :smiley: We’ll include a note mentioning as much in the documentation for the next release.
Regard,
-Mark

Hi Mark,
Thank you so much! That fixed the cell detection, but I still have another issue. I have a filter that discards all cells that do not have a child dna. This normally gets rid of only a few cells, but now seems to be getting rid of most of them. The DNA is all being detected, so that isn’t the issue.
-Anne

It seems as though the hole filling in the IdentifySecondary module #17 is throwing things off, for exactly the same reason as in IdentifyPrimary. Disable this option in this module (might be safe to do the same in the following IdentifySecondary, though with the example you gave, you don’t need to), and things will look better.
-Mark

Yay, that did it! Thank you so much. I’ve very glad it was an easy fix.
-Anne