Variable background intensity

I’m something of a novice user and have recently run into a problem related to variable background illumination in different wells. The basic principle behind my algorithm is that objects with pixel intensities above a pre-determined threshold are classified as positive, and those below it are classified as negative. The majority of wells have a similar range of pixel intensities for positive and negative cells, but a handful of wells (10-15% of wells in a 384-well plate) have elevated background intensities, leading to classification of non expressing cells as positive.

I’m curious if there is a way to standardize the pixel intensities for each respective image such that the range of intensities between a normal and high background image would be roughly the same.

Thanks in advance for any assistance!

The short answer is yes, you could probably use some combination of MeasureImageIntensity and Rescale modules to do this; the caveat is that I don’t think that’s at all advisable. Is there a reason why you are trying to use an absolute intensity threshold rather than using a thresholding method like Otsu, RobustBackground, etc to make your determination?

Another option is to use CorrectIlluminationCalculate (and then CorrectIlluminationApply) using the “each image” option, prior to identifying objects or measuring anything. This would likely get your images into a reasonable range relative to each other such that subsequent measures of ‘positive’ and ‘negative’ are more reasonable. It does introduce a major potential for error, though, so you need to use caution - you could read the help for those modules to understand why.

(If you were just asking about identifying objects, you could indeed use an automated thresholding method as Beth suggests, but I think you are wanting to use FilterObjects (or Classify) to classify each already-identified object as positive and negative, and this is where you need the pipeline to be more flexible?)