How do I visualize the illumination correction function?


I am trying to use CP4 to generate an illumination correction function using the CorrectIlluminationCalculate module. I am struggling to select a smooth filter size that is large enough, and I want to be able to see the ICF image that is generated from the module. The only way I know how to do this is to run the analysis with the module visualization on, but this is verrrryyyy slow. I can’t figure out how to just save the smoothed image that comes out - the module gives me options to retain the averaged and dilated images, but not the smoothed images, and SaveFiles module gives me errors if I try to save the ICF as a TIF or JPG rather than NPY file. Is there an obvious way I am missing to just save that file out?


Why NOT save it out as an npy file? You can still then open it and visualize it in CellProfiler (not in FIJI or anything else non-python, but Cellprofiler can certainly show it to you).

It won’t save as a TIFF or a JPG because of the way the image is scaled (I’m assuming here you’re using “Regular” mode and have rescaling enabled in the calculation); for VISUALIZATION PURPOSES ONLY, it’s fine to use RescaleImages to scale it back to 0-1 so you can save it out as another format, but make sure to also save the original as a .npy for later use.

Thanks for your reply, this does solve my problem.

All I really want the tif/jpg for is to visualize whether my smoothing step is sufficiently smoothing; I also want the npy file for correcting illumination later. If I run the CorrectIlluminationCalculate with the “see step” option on, which does show me what the smoothed image looks like, it’s extremely slow. It would be much faster for me to just run the analysis and save out the final ICF as an image, and then view that. At the moment I’ve just set up another pipeline to load the npy file and rescale the intensity to show it me, since I’m not seeing a way to designate the rescaleintensity module to run only after the last cycle (which if it runs every cycle again makes it slow). My workflow loads in a bunch of images and averages them up to create the correction function, so if it tries to show me that every cycle it takes forever.