ce file paths KernelJAI kernel; // filtering kernel // Create a RenderingHints object and set hints. RenderingHints rh = new RenderingHints(null); RecyclingTileFactory rtf = new RecyclingTileFactory(); rh.put(JAI.KEY_TILE_RECYCLER, rtf); rh.put(JAI.KEY_TILE_FACTORY, rtf); rh.put(JAI.KEY_IMAGE_LAYOUT, new ImageLayout().setTileWidth(32).setTileHeight( 32)); int counter = 0; // Read each image, filter it, and save the output to a file. for (int i = 0; i < sourceFiles.length; i++) { PlanarImage source = JAI.create("fileload", sourceFiles[i]); ParameterBlock pb = (new ParameterBlock()).addSource(source).add(kernel); // The TileFactory hint will cause tiles to be created by 'rtf'. RenderedOp dest = JAI.create("convolve", pb, rh); String fileName = "image_" + (++counter) + ".tif"; JAI.create("filestore", dest, fileName); // The TileRecycler hint will cause arrays to be reused by 'rtf'. dest.dispose(); } In the above code, if the
SampleModel
of all source images is identical, then data arrays should only be created in the first iteration.
@since JAI 1.1.2
@source $URL$