Class ReduceShadesOfGray


public class ReduceShadesOfGray extends ImageToImageOperation
Reduces the number of shades of gray of a grayscale image. This class uses the most simple possible algorithm. Only the most significant N bits are kept (where N is the number specified with setBits(int)), the others are dropped and the result is scaled back to either 8 or 16 bits to fit into the two grayscale image types.

Supported image classes

This class works with Gray8Image and Gray16Image.

Usage example

Reduce a grayscale image to 3 bit (23 = 8 shades of gray):
 ReduceShadesOfGray reduce = new ReduceShadesOfGray();
 reduce.setBits(3);
 reduce.setInputImage(image); // some Gray8Image or Gray16Image
 reduce.process();
 PixelImage reducedImage = reduce.getOutputImage();
 
Since:
0.3.0
Author:
Marco Schmidt
  • Field Details

    • destBits

      private Integer destBits
      Number of significant bits in the destination grayscale image.
    • lut

      private int[] lut
      Lookup table, for each possible input sample stores the corresponding output sample.
  • Constructor Details

    • ReduceShadesOfGray

      public ReduceShadesOfGray()
  • Method Details