I am trying to segment single molecule RNA fish spots in fixed mammalian cell lines. Here’s an example of a processed z-projected image:
My goal is to be able to count spots per cell based on a cell membrane marker or DIC and also measure their fluorescence in case I eventually have to filter out dimmer spots. My problem is that my RNA spot segmentation is not very good, so I wanted to know if anyone had a suggestion on how to improve it.
I use the Stellaris RNA FISH system that consist of 48 fluorescently labeled nucleotide probes that target a specific mRNA molecule. For imaging, I obtain a z-stack of approximately 20 planes with a 0.3 um step and using a 63X 1.25 NA objective. The single molecules are readily detectable as diffraction limited spots.
My pipeline so far has been the following:
First, I create the ROIs/labelled mask of the entire cells based on membrane fluorescence or DIC (either manually: rois + connected components tool to label them or with the morphological segmentation plugin of morpholibJ).
Then, for the RNA image, I apply a Laplacian of Gaussian filter on the RNA spots which cleans the image very well while preserving the spots (FeatureJ Laplacian), then invert the results and then Z-project it. Then, I make a binary mask of the spots using an intensity threshold and then use the analyze particles tool to add them to the ROI manager (filtering them by size and circularity). I can later assign each specific spot to a cell based on the cell labels (multiplication of the RNA binary mask by the labeled mask cells image), which allows me to eventually generate tables that I can later analyze in R.
Although the results I get with this strategy are not that bad, I think there should be something better. The problem is that since the spots are very close together, the intensity threshold segmentation often merges several spots together and also it doesn’t take into account the 3D shape of the RNA spots. Applying a watershed on the binary mask does not improve the results. I am curious whether there is a tool in Fiji that could be better than just an intensity threshold.
There is a Matlab tool to perform this kind of analysis that takes into account the shape of the spots, but it is not that easy to use and I would prefer to perform all the analysis in Fiji and R.
I am quite new to all these processing, so I would really appreciate if anyone could give any suggestion.This text will be hidden
In case it is useful, in the following link I put an example of a raw image stack of DAPI and the smFISH:
Thanks a lot!!