Adjusts the contrast of an image.
The amount of adjustment is given to the constructor as a percentage value between -100 and 100.
-100 will make the resulting image middle-gray, 0 will leave it unchanged, 100 will map it to
the eight corners of the color cube.
Usage examples
Both examples increase contrast by 30 percent.
If all you want is to create a new image with adjusted contrast from the image
data of an existing image, simply use the static helper method:
PixelImage adjustedImage = Contrast.adjust(inputImage, 30);
This leaves the original image inputImage unchanged and allocates a second
image object which is here assigned to the variable adjustedImage.
If you want more control over parameters, create your own Contrast object.
You can then reuse image objects, e.g. to write the adjusted image data
to the original image object:
Contrast op = new Contrast();
op.setInputImage(image);
op.setOutputImage(image);
op.setContrast(30);
op.process();
// at this point, image will contain the adjusted image data,
// the original data wil be overwritten
adjust
public static PixelImage adjust(PixelImage input,
int percentage)
This static helper method is more simple to use when all
you need are the standard options.
input
- the image to work onpercentage
- contrast modification, from -100 to 100
- a new image with adjusted contrast
createLookupTable
private int[] createLookupTable(int numSamples,
int contrast)
getContrast
public int getContrast()
Returns the contrast adjustment value associated with this opperation.
The value lies between -100 and 100 (including both values).
setContrast
public void setContrast(int newContrast)
Sets the value for contrast adjustment to be used within this operation.
newContrast
- new contrast, between -100 and 100 (including both values)