Pixel Classifier m4 When to use other than the default feature?

While using the pixel classifier, I typically use the default feature, Gaussian. When does it make sense to use other features? When would it make sense to use more than one feature? I love the options but find myself always moving forward with just using the defaults.

Reading material welcome too.


Note that that feature isn’t complete and can’t really be applied across a project.

That said, I think the laplacian can be useful for finding blurry regions, and gradient magnitude/deviation for finding edges/changes. The best way to find out though is to look at the results (Show button) of the features in the area you are interested in, and see if they highlight the objects or part of the objects you are trying to segment.

Pete added in the Hessian stuff recently and I haven’t looked into it, he might be able to share more.

You can try selecting a few, and then use ‘show features’ to see how they look for a bit of the image as an ImageJ stack.

An overview of the features currently:

  • Gaussian: a smoothed version of the original image
  • Laplacian of Gaussian: good for ‘blob-like’ things
  • Weighted deviation: intended to reflect ‘local variation’… zero in flat parts of the image, higher if a lot if happening
  • Gradient magnitude: good if you want to detect edges
  • Hessian determinant: good for ‘blob-like’ things; this can be more specific than Laplacian of Gaussian (which can pick up other kinds of edges), but weirdly doesn’t distinguish between bright & dark blobs… so you might need both
  • Hessian eigenvalues (middle only exists for z-stacks): mostly for lines/ridges

In general, I stick with Gaussian and select a few scales; this gives the ‘original’ image smoothed to varying degrees. I find it I add too many features, the classification often falls apart… but with Gaussian it is more predictable and easier to interpret when it makes mistakes. The caveat is that it is really just using local color information and not much else.

I don’t feel the features have been tamed yet, and I’m still on the lookout for better ones to include in the pixel classifier.


Eh, just use a deep learning model to determine the features…

runs away and hides

Thanks all for the guidance. Very much appreciated. Using ‘show features’ was a helpful tip.