# All Classes and Interfaces

Class
Description
ArbitraryPaletteQuantizer
A color quantizer that maps an `RGBImage` to any given palette.
AreaFilterOperation
Base class for operations that convert images to images and determine an output sample by doing calculations on the input sample at the same position plus some neighboring samples.
ArrayConverter
Helper class with static methods to convert between byte arrays and primitive types.
ArrayHistogram1D
A one-dimensional histogram data class that stores its counters in memory.
ArrayRotation
Provides static methods to rotate (in steps of 90 degrees), flip and mirror array elements.
ArrayScaling
This class currently only scales up an image given as a one-dimensional array of values.
AutoDetectColorType
Detects the minimum (in terms of memory) color type of an image.
AwtInfo
Retrieve some information on the current graphical environment.
AwtMenuWrapper
A wrapper around an AWT MenuBar object.
AwtOperationProcessor
Performs operations specified by parent class `OperationProcessor`, uses various AWT dialogs to get parameters from user in a GUI application.
BaseCoOccurrenceFrequencyMatrix
This abstract class encapsulates all data of a co-occurrence frequency matrix except for the frequency values.
BatchProcessorOperation
Abstract base class to do batch processing on files and complete directory trees.
BellFilter
A Bell resample filter.
BilevelImage
An interface for bilevel pixel image data classes.
BMPCodec
A codec to read and write Windows BMP image files.
BMPSwitch
BorderSampleGenerator
Abstract base class for classes that fill an `int` array with samples from a rectangular region of an image's channel by (1) copying `int` samples from an `IntegerImage` object and by (2) generating samples that lie outside of the image.
BoxFilter
A box filter (also known as nearest neighbor).
Brightness
Adjusts the brightness of an image.
BSplineFilter
A B-spline resample filter.
BufferedRGB24Image
A bridge class to use `BufferedImage` objects (class defined in the standard runtime library, package `java.awt.image`) as `RGB24Image` objects within JIU.
ByteChannelImage
An extension of the `IntegerImage` interface that restricts the image to byte samples.
ClusteredDotDither
Apply a clustered dot ordered dither to a grayscale image, converting it to a bilevel image in the process.
CMYKConversion
Convert from CMYK color space to RGB color space.
CodecMode
This class is an enumeration type for the two modes that an image codec can be used in, `CodecMode.LOAD` and `CodecMode.SAVE`.
ColorIndexer
Loads image files and generates color index information for them.
ComparatorInterface
To be able to do sorting in Java 1.1 as defined in java.util.Arrays (which is only available in Java 1.2 and higher), we offer a java.util.Comparator clone under a different name: ComparatorInterface.
ContouringColorPair
A data structure for storing the index values of a pair of contouring colors plus their respective self co-occurrence frequency values.
Contrast
Adjusts the contrast of an image.
ConvolutionKernelData
This class encapsulates the information for a specific convolution kernel filter.
ConvolutionKernelFilter
Applies a convolution kernel filter to an image.
CoOccurrenceFrequencyMatrix
An interface for a co-occurrence frequency matrix.
CoOccurrenceMatrix
An interface for co-occurrence matrices.
Crop
Copies a rectangular area of one image to another image that is exactly as large as that rectangular area.
CropDialog
A dialog to enter the parameters for an image crop operation.
DestinationDirectorySwitch
Dialogs
Convenience class that provides a number of static helper methods to deal with dialogs.
DiamondSpotFunction
A diamond spot function.
DirectoryTree
Small data class for names of directories that are to be processed.
dumpcodecs
Command line program that lists all codecs registered with ImageLoader.
EditorState
Represents the state of the editor, including image(s), modified flag, current file name and directories and more.
EqualizeHistogram
Equalize the image using histogram information separately for each channel.
ErrorDiffusionDithering
This class is used to apply error diffusion dithering to images that are being reduced in their color depth.
Flip
Flips images (top row becomes bottom row and vice versa, and so on).
GammaCorrection
Corrects the gamma of an image.
GammaCorrectionDialog
A dialog to enter the parameters for a gamma correction operation.
GIFCodec
A codec to write Compuserve GIF (Graphics Interchange Format) files.
Gray16Image
Interface for grayscale images using integer samples that are sixteen bits large.
Gray8Image
Interface for grayscale images using integer samples that are eight bits large.
GrayImage
An interface for grayscale images.
GrayIntegerImage
An empty interface for grayscale images which have integer values of up to 32 bits (`int` or smaller) as samples.
HermiteFilter
A Hermite resampling filter.
Histogram1D
An interface for a one-dimensional histogram.
Histogram1DCreator
This class creates one-dimensional histograms for images with integer samples.
Histogram3D
An interface for classes that store three-dimensional histograms.
Histogram3DCreator
This class creates three-dimensional histograms for images with integer samples.
Histogram3DNode
Internal data class for the on demand histogram.
HistogramSerialization
This class has static methods for saving histograms.
HueSaturationValue
Adjusts saturation and value of a color image, optionally hue as well.
HueSaturationValueDialog
A dialog to enter the parameters for an hue/saturation/value adjustment operation.
IFFCodec
A codec to read Amiga IFF image files.
ImageCanvas
An AWT canvas that displays an `Image` object.
ImageCodec
The base class for image codecs, operations to read images from or write them to streams.
ImageCreator
A class to create `Image` objects from various JIU image data types and vice versa.
ImageDescriptionCreator
Returns textual descriptions of the properties of JIU image objects.
ImageLoader
A convenience class with static methods to load images from files using JIU codecs.
ImagesToImageOperation
An operation that takes several input images and produces one output image.
ImageToImageOperation
An operation that acesses an input image and produces data for an output image.
InfoDialog
A modal AWT dialog that displays text in a non-editable text area component (so that it can be selected and easily copied to the system's clipboard).
IntegerDialog
An AWT dialog to select an `int` value from a given interval.
IntegerImage
Extends the `PixelImage` interface to access image data as `int` values.
InvalidFileStructureException
This exception is thrown during image loading, when the decoding process is made impossible by errors in the image file.
InvalidImageIndexException
This exception is thrown when the caller has defined an image index that specifies the image to be loaded in a multiple-image file and that index is unavailable.
Invert
Creates an inverted (negated) version of an image.
jiuawt
Graphical user interface application based on the AWT (Abstract Windowing Toolkit, part of Java's standard runtime library since 1.0) that demonstrates features of JIU.
jiuawtapplet
Applet version of jiuawt.
JiuAwtFrame
The frame class for the AWT demo program `jiuawt`.
JiuBlur
Small example command line program which loads a JPEG file, applies a blur filter, increases its contrast and saves it back to another JPEG file.
jiuconvert
A command line program to convert between file formats.
JiuConvertSettings
JiuCountColors
Small example command line program to count the number of unique colors in image files.
JiuHelloWorld
Small example command line program which creates a new image, prints the text Hello World! into it and saves it as a PNG file.
JiuInfo
Contains several constants with information on JIU.
JPEGCodec
A codec for the JPEG file format.
JPEGConstants
Constants necessary to encode and decode JPEG streams.
JPEGData
Data for decoding or encoding images from or to JPEG File Interchange Format (JFIF) files.
JPEGFrame
Data class to store information on a JPEG frame.
JPEGFrameComponent
Data class for information on a JPEG frame component.
JPEGHuffmanTable
Data class that stores a single Huffman table, including class (AC or DC), ID and codes for the 16 possible bit lengths from 1 to 16.
JPEGMarkerReader
Static helper methods to read various JPEG bitstream headers from a `DataInput` source into objects of the appropriate data classes.
JPEGQuantizationTable
Data for a JPEG bitstream quantization table.
JPEGScan
Data class for information from a JPEG scan header (stored in an SOS marker).
JPEGScanComponentSpecification
Data class to store information on one component in one scan.
Lanczos3Filter
The Lanczos 3 resample filter.
LineSpotFunction
A line spot function.
LogLuvConversion
Convert from LogLuv color representation to RGB color space and from LogL to grayscale.
LookupTableOperation
An operation that replaces samples with values taken from a lookup table.
MapToArbitraryPaletteDialog
A dialog to enter the parameters for an operation to map an RGB truecolor image to any given palette.
MatrixCreator
This class creates and initializes co-occurrence matrices and co-occurrence frequency matrices.
MatrixSerialization
Write co-occurrence and co-occurrence frequency matrices to text files.
MaximumFilter
Filter operation that replaces each sample by the maximum value of itself and its neighbor samples.
MeanDifference
This operation determines the mean difference between two images.
MeanFilter
Applies a mean filter that replaces each pixel by the mean of itself and its neighbors.
Median
Pick the median value from an array (or an interval of an array).
MedianCutContourRemoval
Performs the Median Cut color quantization algorithm in combination with a contour removal algorithm.
MedianCutDialog
A dialog to enter the parameters for a Median Cut color quantization operation.
MedianCutNode
An instance of this node class represents a cuboid part of the color cube representing the three-dimensional RGB color space.
MedianCutQuantizer
Performs the Median Cut color quantization algorithm for a given list of colors.
MedianFilter
Applies a Median filter that replaces each pixel by the median of itself and its neighbors.
MemoryBilevelImage
An implementation of the `BilevelImage` interface that stores image data in a `byte` array in memory.
MemoryByteChannelImage
An implementation of `ByteChannelImage` that stores image channels as `byte[]` arrays in memory.
MemoryCoOccurrenceFrequencyMatrix
Implements the `CoOccurrenceFrequencyMatrix` interface by using a large array of values in memory.
MemoryCoOccurrenceMatrix
This class stores a co-occurrence matrix, a two-dimensional array of int counters.
MemoryGray16Image
An implementation of `Gray16Image` that keeps the complete image in memory.
MemoryGray8Image
An implementation of `Gray8Image` that keeps the complete image in memory.
MemoryPaletted8Image
This class stores a paletted image with one byte per sample in memory.
MemoryRGB24Image
A class to store 24 bit RGB truecolor images in memory.
MemoryRGB48Image
A class to store 48 bit RGB truecolor images in memory.
MemoryShortChannelImage
An implementation of `ShortChannelImage` that stores image channels as `short[]` arrays in memory.
MenuIndexConstants
Constant int values for all menu items.
MenuWrapper
Abstract menu wrapper.
MinimumFilter
Filter operation that replaces each sample by the minimum value of itself and its neighbors.
Mirror
Mirrors images (leftmost column becomes rightmost column and vice versa, and so on).
MissingParameterException
Exception class to indicate that an operation's parameter is missing (has not been specified by caller and there was no default value that could be used).
MitchellFilter
The Mitchell resample filter.
NaiveHistogram3D
A class for a three-dimensional histogram that allocates one `int` value per counter at construction time.
NoAwtLoadingSwitch
NormalizeHistogram
Normalize the image using histogram information, separately for each channel.
OctreeColorQuantizer
Performs the octree color quantization algorithm for a given RGB truecolor image.
OctreeDialog
A dialog to enter the parameters for an Octree color quantization operation.
OctreeNode
A single node in an octree.
OilFilter
Applies a filter that makes the image look like an oil painting.
OnDemandHistogram3D
A data class for a three-dimensional histogram, creating counters on demand only, not allocating counters for all possible entries at the beginning.
Operation
Base class for all operations.
OperationFailedException
Exception class to indicate that an operation failed during the execution of the method `Operation.process()`.
OperationProcessor
Abstract base class for performing JIU operations in combination with an `EditorState`.
OrderedDither
This operation reduces the color depth of RGB truecolor images and grayscale images by applying ordered dithering.
OverwriteSwitch
Palette
This class represents a palette, a list of RGB colors.
Paletted8Image
An interface for classes that store paletted images with eight bit integers for each pixel.
PalettedImage
This interface defines methods for paletted images.
PalettedIntegerImage
An empty interface for a paletted image type that uses integer values as samples.
PaletteSerialization
This class loads and saves palettes.
PalmCodec
A codec to read and write image files in the native image file format of Palm OS, an operating system for handheld devices.
PalmSwitch
PCDCodec
A codec to read Kodak Photo-CD (image pac) image files.
PCDYCbCrConversion
Convert from YCbCr color space (as used in Kodak PCD files) to RGB.
PixelImage
The base interface for all image data types in JIU.
PNGCodec
A codec for the Portable Network Graphics (PNG) format.
PngIdatInputStream
An input stream that reads from an underlying stream of PNG IDAT chunks and skips all header information.
PNMCodec
A codec to read and write Portable Anymap (PNM) image files.
PNMSwitch
PopularityQuantizer
Performs the popularity color quantization algorithm that maps an image to the colors occurring most frequently in the input image.
PrintHelpSwitch
PrintVersionSwitch
ProgressListener
This interface must be implemented by classes that want to be notified about progress of an image operation.
PromotionGray16
Converts BilevelImage and Gray8Image objects to Gray16Image objects.
PromotionGray8
Converts BilevelImage objects to Gray8Image objects.
PromotionPaletted8
Converts `BilevelImage` and `Gray8Image` objects to `Paletted8Image` objects.
PromotionRGB24
Converts several image types to RGB.
PromotionRGB48
Converts several image types to `RGB48Image`.
PSDCodec
A codec to read images from Photoshop PSD files.
QuietSwitch
RASCodec
A codec to read and write Sun Raster (RAS) image files.
ReduceGrayscaleDialog
A dialog to enter the parameters for a grayscale reduction operation.
ReduceRGB
Reduces the color depth of RGB truecolor images.
ReduceShadesOfGray
Reduces the number of shades of gray of a grayscale image.
ReduceToBilevelThreshold
Reduces a `GrayIntegerImage` to a `BilevelImage` by setting all values below a certain threshold value to black and everything else to white.
Resample
Resizes grayscale and truecolor images using filters.
ResampleFilter
Abstract base class for filters to be used with the `Resample` operation.
RGB24Image
An empty interface for RGB truecolor images with integer samples that are each eight bits large (thus, 24 bits per pixel).
RGB48Image
An empty interface for RGB truecolor images with integer samples that are each sixteen bits large (thus, 48 bits per pixel).
RGBA
This class converts between the 32 bit RGBA int values (used throughout the AWT) and various standard pixel formats like 24 bits RGB, 8 bits gray, 16 bits gray, 1 bit black and white.
RGBColor
Encapsulates a single color from RGB (red, green, blue) color space plus a frequency counter.
RGBColorComparator
Compares two `RGBColor` objects.
RGBColorList
Holds an array of `RGBColor` objects.
RGBImage
An interface for RGB truecolor images.
RGBIndex
This interface provides three `int` constants as index values for the three channels of an RGB image: red, green and blue.
RGBIntegerImage
An interface for RGB truecolor images that have integer samples.
RGBQuantizer
An interface for an RGB color quantizer.
RGBToGrayConversion
Converts RGB color images (both truecolor and paletted) to grayscale images.
Rotate180
Rotates images by 180 degrees.
Rotate90Left
Rotates images by 90 degrees counter-clockwise (to the left).
Rotate90Right
Rotates images by 90 degrees clockwise (to the right).
RoundSpotFunction
A round spot function.
ScaleDialog
A dialog to enter the parameters for an image scaling operation.
ScaleReplication
Changes the pixel resolution of an image by replicating (or dropping) pixels.
SeekableByteArrayOutputStream
An extension of `OutputStream` that writes data to an internal byte array, resizing it when necessary.
Shear
Shears an image by a given angle.
ShearDialog
An AWT dialog to enter the angle for a shearing operation.
ShortChannelImage
An extension of the `IntegerImage` interface that restricts the image to `short` samples.
Sort
Provides sorting of an Object array.
SpotFunction
An interface for spot functions to be used for clustered dot dithering.
Statistics
A number of static methods to compute statistical properties of an array of double values.
StringIndexConstants
Interface of integer index values to be used with `Strings`.
StringLoader
This class loads a `Strings` resource from a text file.
Strings
String resource for the various apps.
Switch
SystemInfo
Class to retrieve system information in a human-readable form.
TestSwitch
TextureAnalysis
This class determines a number of properties for a given co-occurrence matrix.
TIFFCodec
A codec to read Tagged Image File Format (TIFF) image files.
TIFFConstants
This class provides a lot of constant values for a TIFF encoder or decoder.
TIFFDecoder
The abstract base class for a TIFF decoder, a class that decompresses one tile or strip of image data and understands one or more compression types.
TIFFDecoderDeflated
A TIFF decoder for files compressed with the Deflated method.
TIFFDecoderLogLuv
A TIFF decoder for files compressed with the LogLuv RLE method.
TIFFDecoderModifiedHuffman
A TIFF decoder for files compresseed with the Modified Huffman method (also known as CCITT 1D Modified Huffman Run Length Encoding).
TIFFDecoderPackbits
A TIFF decoder for files compressed with the Packbits method.
TIFFDecoderUncompressed
A TIFF decoder for uncompressed TIFF files.
TIFFFaxCodes
Information to be used to decode and encode TIFF files in one of the bilevel compression types Modified Huffman, CCITT Group 3 or CCITT Group 4.
TIFFImageFileDirectory
This class encapsulates all data of a TIFF image file directory (IFD).
TIFFRational
Data class to store a TIFF rational number.
TIFFTag
This encapsulates the data stored in a TIFF tag (a single image file directory entry).
ToolkitLoader
This class loads an instance of `Image` using `Toolkit`'s built-in loading capabilities and converts it to `RGB24Image` using `ImageCreator`.
TransparencyInformation
An interface that represents transparency information which may be available for a pixel image.
TriangleFilter
A triangle filter (also known as linear or bilinear filter).
UniformPaletteQuantizer
A color quantizer that maps to a palette which is equidistantly distributed in the RGB color cube.
UniformPaletteQuantizerDialog
An AWT dialog to enter the parameters for a uniform palette color quantization operation.
UnsharpMaskKernel
An unsharp mask kernel to be used with `ConvolutionKernelFilter`.
UnsupportedCodecModeException
This exception is thrown when a codec does not support the codec mode wanted by the user.
UnsupportedTypeException
This exception is thrown during image loading.
VerbositySwitch
WebsafePaletteCreator
This class creates `Palette` objects that contain the so-called websafe palette.
WindowSizeDialog
A dialog to enter values for the width and height of a window (typically for a spatial filter like median or mean.
WrongFileFormatException
This exception is thrown during image loading.
WrongParameterException
Exception class to indicate that an operation's parameter is of the wrong type, does not fall into a valid interval or a similar mistake.
YCbCrIndex
This interface simply provides three integer constants as index values for the three channels of an YCbCr image: gray, blue chrominance and red chrominance.
YesNoDialog
A dialog that asks a question and offers a Yes and a No button (and optionally a Cancel button).