CP v11710 and CP 2.1 count different numbers of primary obj

Dear all,

I’m at the moment testing whether both CP versions give the same results on my images. Unfortunately they don’t, and I don’t understand why. If I run my standard pipeline on v11710, then convert it to a CP 2.1 pipeline and let it run again on the very same images, I get a discrepancy in the nuclei counts. The difference between versions v11710 and 2.1 are maybe around +/- 2 nuclei per image and not systematic. I admit that this is fairly low, but it introduces an error of around 1% in the end result I calculate from the CP results (Percentage of cells positive for a marker):

I don’t see any differences in the IdentifyPrimaryObjects modules, and the Illumination correction I do beforehand is also the same. Have there been any changes in the algorithms which could explain this?

Thanks a lot for your help!

Here’s the Identify Primary Objects part from v11710:

IdentifyPrimaryObjects:[module_num:14|svn_version:\'10826\'|variable_revision_number:8|show_window:False|notes:\x5B\'Identify the nuclei from the nuclear stain image. Some manual adjustment of the smoothing filter size and maxima supression distance is required to optimize segmentation.\'\x5D] Select the input image:CorrBlue Name the primary objects to be identified:Nuclei Typical diameter of objects, in pixel units (Min,Max):6,30 Discard objects outside the diameter range?:Yes Try to merge too small objects with nearby larger objects?:No Discard objects touching the border of the image?:Yes Select the thresholding method:Otsu Adaptive Threshold correction factor:1 Lower and upper bounds on threshold:0.008,1.0 Approximate fraction of image covered by objects?:0.1 Method to distinguish clumped objects:Intensity Method to draw dividing lines between clumped objects:Intensity Size of smoothing filter:10 Suppress local maxima that are closer than this minimum allowed distance:5 Speed up by using lower-resolution image to find local maxima?:Yes Name the outline image:NucOutlines Fill holes in identified objects?:Yes Automatically calculate size of smoothing filter?:Yes Automatically calculate minimum allowed distance between local maxima?:Yes Manual threshold:0.0 Select binary image:MoG Global Retain outlines of the identified objects?:Yes Automatically calculate the threshold using the Otsu method?:Yes Enter Laplacian of Gaussian threshold:.5 Two-class or three-class thresholding?:Two classes Minimize the weighted variance or the entropy?:Weighted variance Assign pixels in the middle intensity class to the foreground or the background?:Foreground Automatically calculate the size of objects for the Laplacian of Gaussian filter?:Yes Enter LoG filter diameter:5 Handling of objects if excessive number of objects identified:Continue Maximum number of objects:500 Select the measurement to threshold with:None

And here from 2.1:

IdentifyPrimaryObjects:[module_num:17|svn_version:\'Unknown\'|variable_revision_number:10|show_window:False|notes:\x5B\'Identify the nuclei from the nuclear stain image. Some manual adjustment of the smoothing filter size and maxima supression distance is required to optimize segmentation.\'\x5D|batch_state:array(\x5B\x5D, dtype=uint8)|enabled:True]
    Select the input image:CorrBlue
    Name the primary objects to be identified:Nuclei
    Typical diameter of objects, in pixel units (Min,Max):6,30
    Discard objects outside the diameter range?:Yes
    Try to merge too small objects with nearby larger objects?:No
    Discard objects touching the border of the image?:Yes
    Method to distinguish clumped objects:Intensity
    Method to draw dividing lines between clumped objects:Intensity
    Size of smoothing filter:10
    Suppress local maxima that are closer than this minimum allowed distance:5
    Speed up by using lower-resolution image to find local maxima?:Yes
    Name the outline image:NucOutlines
    Fill holes in identified objects?:Yes
    Automatically calculate size of smoothing filter for declumping?:Yes
    Automatically calculate minimum allowed distance between local maxima?:Yes
    Retain outlines of the identified objects?:Yes
    Automatically calculate the threshold using the Otsu method?:Yes
    Enter Laplacian of Gaussian threshold:.5
    Automatically calculate the size of objects for the Laplacian of Gaussian filter?:Yes
    Enter LoG filter diameter:5
    Handling of objects if excessive number of objects identified:Continue
    Maximum number of objects:500
    Threshold setting version:1
    Threshold strategy:Adaptive
    Thresholding method:Otsu
    Select the smoothing method for thresholding:Automatic
    Threshold smoothing scale:1
    Threshold correction factor:1
    Lower and upper bounds on threshold:0.008,1.0
    Approximate fraction of image covered by objects?:0.1
    Manual threshold:0.0
    Select the measurement to threshold with:None
    Select binary image:MoG Global
    Masking objects:From image
    Two-class or three-class thresholding?:Two classes
    Minimize the weighted variance or the entropy?:Weighted variance
    Assign pixels in the middle intensity class to the foreground or the background?:Foreground
    Method to calculate adaptive window size:Image size
    Size of adaptive window:10

Hi,

Would you be able to post an example image and the 2.0 and 2.1 pipelines that reproduces this problem? Hopefully, an image that produces a more egregious discrepancy…

Regards,
-Mark

And please also refer to my answer to another, similar post.
No definitive answer, but it might help a little.
David