How to compare to previous images


Is there a way to compare the image (or objects) in the current cycle with the image (or objects) from the cycle before? (or more generically ‘a previous cycle’, whether it be the first cycle, a manually defined one or a relation such as ‘the cycle 5 before the current one’…)

My series of images are essentially a time lapse series and I’d be interested in comparing (or correlating) the objects values of the current image with those in the last image, does any such feature or method exist within Cellprofiler, as I haven’t found a way to do it as yet…?



Having thought about this some more, there might be a somewhat easier solution.

I can very easily do all the comparisons between the images/objects in excel with the exported data from one pipeline, and then make a new pipeline to overlay the data and grid onto the images and then save the images.

The scenario might be as follows:
10 images
Each image has a 5x5 grid
Within each ‘cell’ on the grid I would like to display 3 different numbers that have been worked out in excel (and possibly copied into a .txt file as per below)

I’m aware of the LoadText and DisplayGridInfo modules however it seems to me that you can essentially only make a ‘static’ overlay. What I mean by that is, I can only make it display the 3 values that I want in each cell of the 5 x 5 grid, but the numbers will then be the same for all 10 images (you can’t read in new data for each image in the pipeline).
Further to this you cannot seem to save the image with the overlaid text using the SaveImages module.

Is it possible to make the LoadText / DisplayGridInfo somewhat more dynamic?
Say if I separated the data in the .txt file into blocks of 25 numbers separated by a blank line. If you used all 3 of the available text fields in the LoadText module, it would load the first 25 values (based on the size of the defined grid, in this case 5 x 5) for the first text field, then the next 25 for the second text field and similarly for the third field.
Then when the next cycle is processed the load text module loads the fourth ‘block’ of 25 numbers and so it carries on…
Obviously you’d need to be able to save the image at each cycle with the overlaid text as well, so that might require a small revision of the save images module as well…

Just a thought, maybe there is already a way to achieve the effect I’m after, I hope so anyway :smile:

Hi Kris,

You have some good thoughts here. Unfortunately, there’s currently no means to overlay measurements in the per-cycle format you’ve described. However, we will put this on our list of features to-do for an upcoming release.