Help with same-object 2 color measurement pipeline

First, thanks to all of the CP team for making a great product freely available and for the time you spend answering questions on how to use it! You are doing all of us who struggle to get numbers from images a great service!

I need some help with a pipeline and in interpreting the spreadsheets it produces. I have a project where I have a bacterium that expresses two fluorochromes - mCherry is constitutively expressed and GFP is inducibly expressed. My goal is to understand protein expression dynamics at the single-cell bacterium level by comparing GFP expression against mCherry expression. In the end, I want to be able to compare the intensity of each bacterium’s red and green signal, as well as the number of red and green pixels per bacterium (each bacterium is identified by its mCherry signal). It seems to me that this is an AND-type operation, as in, analyze pixels that are red AND green, but I’m not sure my pipeline is actually doing this, or which metric in the .csv file is the appropriate measurement for my analysis.

Can you help me by looking at my pipeline, and letting me know how to interpret the spreadsheet for my purposes? I have attached my pipeline and a representative image.

Thanks for your time and attention!


mCherry-GFP expression analysis.cpproj (408 KB)

Hi Josh,

Your pipeline looks like a great start, though I think it could even be simpler! Since all bacteria should have mCherry expression, you could simply use a single IDPrimary module, and then measure the green and red channels’ intensity. Unless you think that your mCherry expression is variable such that there might be some GFP objects that don’t have mCherry expression. But if not, then you could remove the RelateObjects an MaskObjects modules I believe. And you would need to add both red and green images to your MeasureObjectIntensity module.

Then to find out how much red/green is in each object/bacteria, look in your Object Table for that object, e.g. MyExpt_constutive_mCherry_bact.csv (or whatever you name your new, single object). I will assume you want the mean intensity of the reg and green across the object. So in here, find the column labeled Intensity_MeanIntensity_<OBJECT_NAME>. You’ll have to decide what a good threshold is to define cells that you consider “green” (you could do this in CP with a DisplayDataOnImage module followed by a ClassifyObjects).

If you want the area of each object (since you say “as well as the number of red and green pixels per bacterium”), then you should add a MeasureObjectSizeShape module and measure the single object’s size. In my scheme, there is only one object, so there is no size difference between “red” and “green” objects. But in your scheme, you could measure the Masked objects that have overlapping regions.

Hope that helps!