Identifying and coundting double-labeled cells



I am currently using Cell Profiler for the first time. I am trying to identify and count double-labeled and triple-labeled cells. The images were taken on a confocal at 20X magnification and the labels are Zenk, BrdU, and Hu. I am trying to count the double-labeled Zenk and BrdU cells, the double-labeled BrdU and Hu cells and the triple-labeled Zenk, BrdU, and Hu cells. I figured out how to identify and count the cells separately using the “IdentifyPrimaryObjects” pipeline where I would input the images from each laser separately (so an image of just BrdU, just Hu, and just Zenk) and then counted the cells from each image. However, I am no unsure as to how to count the cells that are contained in multiple images. Can anyone please help me with this? Thanks!



Its easier if you have one image that displays ALL nuclei independent of investigated markers (A DNA stain such as DAPI, e.g.). After you have identified those as objects, you can measure the intensities of the nuclei in any other image belonging to that set. If I understand correctly, you are identifying nuclei separately for each channel (i.e. label), which is a rather unusual approach. You could compare the count of nuclei identified per laser channel for each image set, but that will not guarantee you are measuring the same objects in every image! Furthermore, you need to be careful you are measuring ALL objects (as in, all objects are positive for at least one label) or you will not count all nuclei.

Hope this helps!


Oh unfortunately I did not use a nuclear stain. The Hu is the neuronal stain but some of the Brdu labeled cells are glial cells so not all neurons are labeled with the Hu. And the the other issue is that two of the labels are nuclear and one is cytoplasmic so I’m not sure how to do an overlap analysis if they may not colocalize in the same area of the cell…


You could try identifiying a large part of the cell body of all Hu-positive cells with IdentifyPrimaryObjects, and then take measurements of the corresponding brdu image. That way you will not be analysing the nuclei per se, but it might still work, assuming all your cells of interest are Hu-positive.


Oh ok, so assuming that the Hu cells are at a higher diameter range than
the BrdU cells?


I think so - the key requirement would be that all “Hu” objects cover as much of the corresponding nucleus as possible. It’s not elegant, but it would be as if your “Hu” stain represents the cell soma with nuclei, and you are measuring BrdU in a complementary image (which should be only nuclear). That way, you are not identifying the actual nuclei, but a larger area that allows you to measure the nucleus in the complementary image. Way simpler with DAPI though :slight_smile:


Sorry to keep bothering you, but would I identify the BrdU cells using
secondary objects? I am trying to do that but I can’t get any counts or set
some sort of size threshold. Thanks!


No problem, glad if I can help (but I am just a normal user, no Pro). However, I would be able to achieve more insight into your situation if you provide some sample pictures (Brdu, Hu, anything you want to investigate)… Then I can show you an example pipeline.


Thank you! Attached are some images! I have attached the Hu, BrdU and Zenk
as separate channels. Hu is green (Snapshot 3), BrdU is red (Snapshot 1)
and Zenk is blue (Snapshot 2). I have also attached an image with all three
channels overlaid (Snapshot 4) and then an image that has just the BrdU and
Zenk together (Snapshot 5). The one with all three channels I think may be
hard to analyze because Hu takes over everything. So it might actually be
better to just analyze double-labeling in the BrdU/Zenk image because all
the Zenk labeled cells are neurons.


Can you also post your pipeline (so far) too?


Sure! But really all I’ve done so far is to identify primary objects on the
first three images separately and counted the three different types of
cells on their own individual images. When I tried to identify secondary
objects with BrdU after identifying primary objects on a Zenk/BrdU image, I
didn’t actually obtain any counts and wasn’t sure about the threshold…


I also am having an issue with setting the proper threshold in the
IdentifyPrimary Objects module, as it sometimes does not include all the
cells I want it to count or it will take in artifacts.


In many cases, identifying objects needs to be controlled by adjusting not only the threshold (which you can also set manually), but also by the size. You could try processing the image with filters first to eliminate artefacts, or you could subject your “objects” to further selection based on other criteria after identification.

This is a very simple pipeline that you could build on. I like using manual thresholds whenever I can, but make sure your images all have similar background! Using higher resolution images (if you can get them) would help too.

Zenk_BrdU_test.cpproj (527.4 KB)

The next to last module will classify the objects, I use it just to see if the pipeline actually works (I prefer working with the original intensity values, but if you set your bins to classify the cells the way you want, the exported Nuclei.csv will contain the classification info)

Have fun!


I’m testing it out and I got this error message. Do I need to create a
special spreadsheet to which the data will be exported?


I don’t know, sorry :frowning: Try removing the ExportToSpreadsheet module, then add a new one…


Whoah! We’re having the same error here after I test my subject. I’m really stucked with this error problem. Please guys, how to solve this?

ZipTek Services


Can you make a new thread with more information, your version of CP and OS, and the rest of the information requested here? Thanks.