public class LocalPhansalkarThreshold<T extends RealType<T>> extends LocalThreshold<T> implements Ops.Threshold.LocalPhansalkarThreshold
This is a modification of Sauvola's thresholding method to deal with low contrast images. In this algorithm the threshold is computed as t = mean*(1+p*exp(-q*mean)+k*((stdev/r)-1)) for an image that is normalized to [0, 1].
Phansalkar recommends k = 0.25, r = 0.5, p = 2 and q = 10. In the current implementation, the values of p and q are fixed but can be implemented as additional parameters.
Originally implemented from Phansalkar's paper description by G. Landini.
Phansalkar N. et al. Adaptive local thresholding for detection of nuclei in diversity stained cytology images. International Conference on Communications and Signal Processing (ICCSP), 2011, 218 - 220. doi:10.1109/ICCSP.2011.5739305
SpecialOp.Flavor
NAME
Constructor and Description |
---|
LocalPhansalkarThreshold() |
Modifier and Type | Method and Description |
---|---|
boolean |
conforms()
True if the contingency holds; i.e., the current circumstances conform to
the contingency's requirements.
|
protected CenterAwareComputerOp<T,BitType> |
unaryComputer(T inClass,
BitType outClass) |
compute, getShape, initialize
in, out, setInput, setOutput
ops, setEnvironment
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
ops, setEnvironment
compute, getIndependentInstance, run, run
run
candidates, filterArity, op
protected CenterAwareComputerOp<T,BitType> unaryComputer(T inClass, BitType outClass)
unaryComputer
in class AbstractCenterAwareNeighborhoodBasedFilter<T extends RealType<T>,BitType>
inClass
- First element from the input RandomAccessibleInterval
that may be used for determining the class.outClass
- First element from the output IterableInterval
that
may be used for determining the class.public boolean conforms()
Contingent
conforms
in interface Contingent
conforms
in class LocalThreshold<T extends RealType<T>>
Copyright © 2014–2022 ImageJ. All rights reserved.