Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.
The 2D API has a simple image processing model based on the BufferedImage class. Image processing operations are represented by the java.awt.image.BufferedImageOp interface. Classes that implement this interface know how to process an existing BufferedImage, called the source image, to produce a new image, the destination image. It's very easy. Figure 10.1 shows a schematic representation of this model.
Once you have a BufferedImage to use as the source, processing the image is simple. You just instantiate your favorite BufferedImageOp implementation and call its filter() method with the source image. This method returns the destination image to you as another BufferedImage: