|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.jhlabs.image.AbstractBufferedImageOp
com.jhlabs.image.WholeImageFilter
com.jhlabs.image.QuantizeFilter
public class QuantizeFilter
A filter which quantizes an image to a set number of colors - useful for producing images which are to be encoded using an index color model. The filter can perform Floyd-Steinberg error-diffusion dithering if required. At present, the quantization is done using an octtree algorithm but I eventually hope to add more quantization methods such as median cut. Note: at present, the filter produces an image which uses the RGB color model (because the application it was written for required it). I hope to extend it to produce an IndexColorModel by request.
Field Summary | |
---|---|
protected static int[] |
matrix
Floyd-Steinberg dithering matrix. |
Fields inherited from class com.jhlabs.image.WholeImageFilter |
---|
originalSpace, transformedSpace |
Constructor Summary | |
---|---|
QuantizeFilter()
|
Method Summary | |
---|---|
protected int[] |
filterPixels(int width,
int height,
int[] inPixels,
java.awt.Rectangle transformedSpace)
Actually filter the pixels. |
boolean |
getDither()
Return the dithering setting |
int |
getNumColors()
Get the number of colors to quantize to. |
boolean |
getSerpentine()
Return the serpentine setting |
void |
quantize(int[] inPixels,
int[] outPixels,
int width,
int height,
int numColors,
boolean dither,
boolean serpentine)
|
void |
setDither(boolean dither)
Set whether to use dithering or not. |
void |
setNumColors(int numColors)
Set the number of colors to quantize to. |
void |
setSerpentine(boolean serpentine)
Set whether to use a serpentine pattern for return or not. |
java.lang.String |
toString()
|
Methods inherited from class com.jhlabs.image.WholeImageFilter |
---|
filter, transformSpace |
Methods inherited from class com.jhlabs.image.AbstractBufferedImageOp |
---|
clone, createCompatibleDestImage, getBounds2D, getPoint2D, getRenderingHints, getRGB, setRGB |
Methods inherited from class java.lang.Object |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
protected static final int[] matrix
Constructor Detail |
---|
public QuantizeFilter()
Method Detail |
---|
public void setNumColors(int numColors)
numColors
- the number of colors. The default is 256.public int getNumColors()
public void setDither(boolean dither)
dither
- true to use ditheringpublic boolean getDither()
public void setSerpentine(boolean serpentine)
serpentine
- true to use serpentine patternpublic boolean getSerpentine()
public void quantize(int[] inPixels, int[] outPixels, int width, int height, int numColors, boolean dither, boolean serpentine)
protected int[] filterPixels(int width, int height, int[] inPixels, java.awt.Rectangle transformedSpace)
WholeImageFilter
filterPixels
in class WholeImageFilter
width
- the image widthheight
- the image heightinPixels
- the image pixelstransformedSpace
- the output bounds
public java.lang.String toString()
toString
in class java.lang.Object
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |