Class SubtractOffsetAndScaleNormalizer

java.lang.Object
qupath.lib.images.servers.transforms.SubtractOffsetAndScaleNormalizer
All Implemented Interfaces:
BufferedImageOp, BufferedImageNormalizer

public class SubtractOffsetAndScaleNormalizer extends Object implements BufferedImageNormalizer
Normalizes the pixel values of a BufferedImage by subtracting and offset and multiplying by a scale factor.

An expected use is to subtract a constant background value in a fluorescence image, with optional channel rescaling.

Note that the result is necessarily clipped to the range of the output data type, and non-integer values are rounded if necessary.

Since:
v0.6.0
  • Method Details

    • createScaled

      public static SubtractOffsetAndScaleNormalizer createScaled(double... scales)
      Create a normalizer that scales each channel by a constant.
      Parameters:
      scales -
      Returns:
    • createSubtractOffset

      public static SubtractOffsetAndScaleNormalizer createSubtractOffset(double... offsets)
      Create a normalizer that subtracts a constant from each channel, without clipping.
      Parameters:
      offsets -
      Returns:
    • createSubtractOffsetAndClipZero

      public static SubtractOffsetAndScaleNormalizer createSubtractOffsetAndClipZero(double... offsets)
      Create a normalizer that subtracts a constant from each channel, clipping the lower bound to 0.
      Parameters:
      offsets -
      Returns:
    • create

      public static SubtractOffsetAndScaleNormalizer create(double[] offsets, double[] scales)
      Create a normalizer that subtracts a constant from each channel, then multiples the result by a scale factor. The result is not clipped.
      Parameters:
      offsets -
      scales -
      Returns:
    • createWithClipRange

      public static SubtractOffsetAndScaleNormalizer createWithClipRange(double[] offsets, double[] scales, double minClip, double maxClip)
      Create a normalizer that subtracts a constant from each channel, then multiples the result by a scale factor - clipping the result to a defined range.
      Parameters:
      offsets -
      scales -
      minClip -
      maxClip -
      Returns:
    • filter

      public BufferedImage filter(BufferedImage img, BufferedImage output)
      Specified by:
      filter in interface BufferedImageOp