I attached a new pipeline. These are the basic changes:
- I replaced EnhanceEdges with EnhanceOrSuppressFeatures. Not for any theorteical reason, but FindEdges is often hard to “tune” and EnhanceOrSuppressFeatures can often enhance edges, even though it wasn’t quite designed for that. I used the “Speckles” Feature Type here, though I expected “Neurites” to work better, but again, empirically, it didn’t.
- Then ID the cell edges with IDPrimObjects. I changed the thresholding method to RobustBackground because Otsu was apparently being thrown off by a lot of pixels near zero and setting my threhold far too low. Otsu was assuming that this zero peak was the background, but it was just the low end of the background. RobustBackground will throw out these low intensity pixels from the threshold calculation
** I also removed any “clumped objects” processing. You want to keep the objects (cell membranes) intact here.
** I lowered the threshold correction factor, but if you need the membranes to connect, try lowering this further.
- ConvertObjectsToImages: Necessary since Morph needs an image as input (binary here)
- Morph: Skeletonizes the binary image, then de-spurs to get rid of “spur” artifacts
I didn’t look at the pipeline below that, so be sure to inspect it.
Let us know if that helps.
PIPE.cp (7.44 KB)