Is it possible to include matlab processing in pipelines?


I am using Cell Profiler 2.0 and I was wondering if it was possible to include a processing step (blind deconvolution) into my pipeline, using matlab or scipy (numpy)? Will I be able to do iterative deconvolution with the Cell Profiler math modules? What do most people do? I would like to try to use the Cell Profiler Illumination correction with deconvolution (hopefully with matlab), and follow it by FFT filtering using imageJ.

It has been my experience that if a particular stains needs a deconvolution operation performed to improve the signal to noise that it probably is not a great candidate for quantitative analysis. Maybe you could improve the staining method so that the images do not need to be deconvoluted. If you still would like to decon before analysis I would suggest going through the routine of capturing an instrument point spread function from a 100-200nm fluorescent bead which has to be physically smaller than the Rayleigh diffraction limit for your particular fluor and objective mag. Blind deconvolution is a patented image processing method so you would have to buy Autoquant which is quite expensive and slow at statistical image restoration. I have found that iterative decon works for smooth textured stains but seems to fall apart if there is significant granularity in the stain texture because the algorithm will lock onto the bright speckles and try to reassign non-speckled intensities to the speckles so it does not perform that well in my book. Also, image deconvolution as a general rule is optimally applicable to images acquired with oil objectives at 63x or 100x. Newer confocal microscopes are the best option in my view since it is a true optical sectioning technique that does not require FFT->convolution>inverse FFT tranformations(i.e. deconvolution) to clean up the image most of the time. But as you probably know with all confocal measurements there is a trade off between sensitivity (detection limit) and spatial resolution when a significant fraction of out of focus photons are discarded. Last I checked the pipeline modules do not do FFT transforms or convolution operations so I would expect that the answer is no to your question if the math modules will even be able to deconvolute your images in CellProfiler. Huygens or Autoquant are probably your best options for image deconvolution preprocessing before CP quantification. Illumination correction should probably be performed with CellProfiler since it is quite good at it from my testing.



First of all, thanks for adding your thoughts, Derek!

CellProfiler cannot interface with MATLAB code, unfortunately. However, if blind deconvolution is available in ImageJ, you can use the module RunImageJ to call ImageJ with an image as input and receive the deconvolved result as output for downstream use in the pipeline. The same approach may apply for the FFT filtering that you would like to do.