Distinguishing between nuclei


Thanks so much for the Cell Profiler software! I’ve really enjoyed tweaking with it, and I think it’s going to give a lot of oomph to my research.

I’m working on quantitizing nucleolar protein based on immunofluorescent pictures. I have a detergent I use to break protein-protein interactions in the nucleus while leaving protein-protein interactions in the nucleolus intact, thereby effectively washing away most nuclear staining I’m not interested in.

Basically, I use a nucleolar stain (NOL1 antibody) to identify nucleoli within CellProfiler. I use DAPI to identify nuclei. I measure the size of nuclei and nucleoli as this has some interest to our lab. I have CP measure the intensity of my protein of interest within the nucleoli outlines defined by my nucleolar staining. I compare this to other intensity measurements just to make sure nothing crazy is going on, and I imagine I’ll need to show later how effectively I washed away the nuclear population of my protein of interest.

So, I’m pretty sure I have this figured out…but I’m still having issues getting CP to distinguish between my nuclei easily. I enhance both my nuclei and nucleoli using EnhanceorSuppressFeatures, which helps very much with my nucleolar staining (actually, these pictures have more background than normal due to an issue with my secondary antibody, but CP doesn’t seem to be having huge issues distinguishing nucleoli) and certainly makes my DAPI picture beautiful, but I still can’t get it quite right. Also, I was originally using EnhanceEdges on my dapi image which found distinct nuclei with NO problems, but then I had issues getting IdentifyPrimaryObjects to realize that each edged nucleus was a primary object. I tried playing around with thresholds, the smoothing filter, and methods of distinguishing extensively using either EnhanceEdges or EnhanceFeatures, but I keep getting just a couple nuclei clumped together. I think CP is doing a better job with my nucleoli (plus, it’s hard for humans to distinguish between clumped nucleoli perfectly - some variation there is ok), but doing a great job with recognizing my nuclei is an important step, particularly since my lab is also interested in seeing how many nucleoli there are per nucleus (which I also do in this pipeline).

I’ve attached relevant pictures and my current pipeline. I’d so appreciate some help tweaking!


intensity with nucleoli mask.cp (8.78 KB)

Hi Anne,

A few suggestions:

  • I think you may a better time using IdentifyPrimaryObjects on the original DAPI with three-class thresholding with the middle class set to Background. I seem to get similar results and you can remove EnhanceOrSuppress to save time.

  • Also, I recommend identifying the nuclei first, cropping the raw nucleoli image into the nuclei shapes, and then doing a per-object
    Otsu three-class thresholding with the middle class set to Background. This might also make the other EnhanceOrSuppress module redundant.

Unfortunately, if you are referring to segmenting the DAPI stain that are largely overlapping (such the cluster at the bottom right), you probably won’t have much luck in delineating them. However, tThere may be a couple of alternatives:

  • The ssrp image actually looks cleaner to me than the DAPI image. I’m not familar with this marker, but unless you expect the ssrp marker to be largely absent from some nuclei, why not use that image instead?

  • If you can use the nucleoli image to identify the nucleoli as contiguous clumps, one per nucleus, you might be able to use IdentifySecondary to detect the nuclei from there. However, this method is probably more prone to error than you would like.

I’m attached a pipeline which has some of thoughts above implemented.

2010_10_20.cp (10.5 KB)

Thanks so much for the thoughts! I’m going to keep tinkering.

I love this software!