net.sourceforge.jiu.color

Class Invert


public class Invert
extends ImageToImageOperation

Creates an inverted (negated) version of an image. This is done by subtracting each sample value of a channel from the maximum sample for that channel. The maximum sample for a channel is given by IntegerImage.getMaxSample(int). For paletted images, just the palette is treated that way. Supported image types: IntegerImage. Input and output image can be the same object.

Usage

There are two ways of using this class. Either create an Invert object and set all paramters yourself. This lets you reuse image objects or add a progress listener.
 Invert invert = new Invert();
 invert.setInputImage(image);
 invert.addProgressListener(listener); // this is optional
 invert.process();
 PixelImage invertedImage = invert.getOutputImage();
 
The other method is by sing the static convenience method
 PixelImage invertedImage = Invert.invert(someImage);
 
You will have to catch the potential exceptions in both cases.
Author:
Marco Schmidt

Field Summary

Fields inherited from class net.sourceforge.jiu.ops.ImageToImageOperation

canInAndOutBeEqual, inputImage, outputImage

Fields inherited from class net.sourceforge.jiu.ops.Operation

abort, progressListeners

Method Summary

static PixelImage
invert(PixelImage inputImage)
Helper method to return an inverted image from the argument image.
private void
prepare(PixelImage in)
void
process()
Inverts the input image, reusing an output image if one has been specified.
private void
process(IntegerImage in)
private void
process(Paletted8Image in)

Methods inherited from class net.sourceforge.jiu.ops.ImageToImageOperation

canInputAndOutputBeEqual, ensureImagesHaveSameResolution, ensureInputImageIsAvailable, ensureOutputImageResolution, getInputImage, getOutputImage, setCanInputAndOutputBeEqual, setInputImage, setOutputImage

Methods inherited from class net.sourceforge.jiu.ops.Operation

addProgressListener, addProgressListeners, getAbort, process, removeProgressListener, setAbort, setProgress, setProgress

Method Details

invert

public static PixelImage invert(PixelImage inputImage)
            throws OperationFailedException
Helper method to return an inverted image from the argument image.
Parameters:
inputImage - image to be inverted
Returns:
new image object with inverted image
Throws:
OperationFailedException - on operation errors

prepare

private void prepare(PixelImage in)
            throws MissingParameterException,
                   WrongParameterException

process

public void process()
            throws MissingParameterException,
                   WrongParameterException
Inverts the input image, reusing an output image if one has been specified. For paletted images, inverts the palette. For all other types, subtracts each sample of each channel from the maximum value of that channel.
Overrides:
process in interface Operation
Throws:
MissingParameterException - if the input image is missing
WrongParameterException - if any of the specified image parameters are unsupported or of the wrong width or height

process

private void process(IntegerImage in)

process

private void process(Paletted8Image in)