Water quality analysis- simple grid patterns




I would like to get a sense of how easliy existing pipelines could be adapted for the simple grid pattern analysis described.

We’re a large bulk water supplier and are keen to validate a widely used water quality assessment system (Colilert). The system quantifies Total Coliforms and *E.coli *in water samples. Without going into detail the system uses a grid of wells containing the test water sample (image couldn’t be attached as board quota was already full). Substrates in each well are hydrolized by the target organisms yeiding either a yellow (coliforms) or fluorescent (E.coli) metabolite. The manufacturer has not provided an automated system for reading the results and our experience is that some analyists may interpret weak positive reactions differently. I’d like to consider an “objective” approch to analyzing the intensity of each well and counting those that lie above a suitable threshold. While these requirements are rather simple, my lack of image analysis, Matlab and Cellprofiler experience may prevent ready progress. I’d appreciate help from anyone with Cellprofiler grid analysis experience who may be willing to take a look at some images from my lab and give me a sense of simplest way to use Cellprofiler for the purpose described above.




Hi Neil,

I’ve just upped the attachment quota. Could you give another try at attaching one of your images to this thread?



Hi Mark

I’ve attached a thumbnail image of a Colilert result from our lab. Our objective would be to quantify the intensity of the yellow colour reaction in each well and count those wells above a threshold value. We’d still have to decide on the most appropriate way to establish the threshold value. The attached thumbnail is intended to provide an idea of the kind of images we’d want to analyze. High resolution images of Colilert trays containing both yellow (o-nitrophenol) and fluorescent wells (methyl-umbelliferone) could be provided to anyone willing to help.




Hi Neil,

We have a a ‘Define Grid’ module and ‘IdentifyObjectsInGrid’ module that are suited to the type of analysis you’d like to conduct. First, I cropped your image in photoshop so just the actual 5x10grid is showing- this is the only way the modules will work. Next, I used ColorToGray to split the image into R,G and B- I think you’ll agree that the blue channel looks most like the yellow wells. DefineGrid works best from ‘previous identified objects’ which I found by inverting the blue image- this doesn’t work perfectly, but the grid it supplies is rather accurate (I added an OverlayOutlines module so you can see the ‘spots’ inside the grid overlaid on the original image). To change the gridding is tricky, but you can try using manual methods (where you click a point in the upper left hand corner) and change the way the IdentifyObjectsInGrid picks the spots (right now they’re set to circles, but you could make them rectangles). Finally, MeasureObjectIntensity measures the GridSpots in the inverted image- I found the correlation to work rather well; that is, the darkest yellow spots had the highest values, usually > 0.8, in the final GridSpot measurement. Exporting ‘GridSpots’ as I’ve selected in the pipeline here well give you a set of X,Y locations of the spots, which is easy to translate to Row,Column locations (basically, each line in the spreadsheet is a spot).

This pipeline works best in the newest release of CellProfiler.
forumPIPE.mat (1.38 KB)


Hi Kate

Thanks so much for the help. I’ll implement what you’ve suggested on my side and try analyzing a few more images.

Thanks again,