Class JAIUtils


  • public class JAIUtils
    extends Object
    A collection of global JAI functions allowing a type-safe usage of various JAI imaging operators.
    • Constructor Detail

      • JAIUtils

        public JAIUtils()
    • Method Detail

      • setDefaultTileCacheCapacity

        public static void setDefaultTileCacheCapacity​(int megabytes)
        Sets the memory capacity of the default tile cache in megabytes
        Parameters:
        megabytes - the memory capacity in megabytes
      • createTileFormatOp

        public static javax.media.jai.RenderedOp createTileFormatOp​(RenderedImage img,
                                                                    int tileWidth,
                                                                    int tileHeight)
      • createTiledImage

        public static javax.media.jai.TiledImage createTiledImage​(float[] data,
                                                                  int width,
                                                                  int height)
      • createTiledImage

        public static javax.media.jai.TiledImage createTiledImage​(float[][] data,
                                                                  int width,
                                                                  int height,
                                                                  int numBands)
      • createTiledImage

        public static javax.media.jai.TiledImage createTiledImage​(Raster raster)
        Creates a tiled image from the supplied raster. Note that this method allocates a new raster for the tiled image returned. The data of the given raster is then copied into the new one.
      • createPlanarImage

        public static javax.media.jai.PlanarImage createPlanarImage​(WritableRaster raster)
      • createColorToGrayOp

        public static javax.media.jai.RenderedOp createColorToGrayOp​(RenderedImage src)
        Use this method to scale an CS_sRGB into a grayscale Image (CS_GRAY)
      • getExtrema

        public static double[][] getExtrema​(RenderedImage src)
      • getExtrema

        public static double[] getExtrema​(RenderedImage src,
                                          double[] extrema)
      • createScaleOp

        public static javax.media.jai.RenderedOp createScaleOp​(RenderedImage src,
                                                               double xScale,
                                                               double yScale,
                                                               double xTrans,
                                                               double yTrans,
                                                               javax.media.jai.Interpolation ip)
      • createRectifyOp

        public static javax.media.jai.RenderedOp createRectifyOp​(RenderedImage src,
                                                                 int degree,
                                                                 RectificationGrid grid,
                                                                 javax.media.jai.Interpolation interp)
      • createRescaleOp

        public static javax.media.jai.RenderedOp createRescaleOp​(RenderedImage src,
                                                                 double scale,
                                                                 double offset)
      • createFormatOp

        public static javax.media.jai.RenderedOp createFormatOp​(RenderedImage src,
                                                                int dataType)
      • createClampOp

        public static javax.media.jai.RenderedOp createClampOp​(RenderedImage src,
                                                               double minValue,
                                                               double maxValue)
      • createLookupOp

        public static javax.media.jai.RenderedOp createLookupOp​(RenderedImage src,
                                                                byte[][] lookupTable)
      • createLogOp

        public static javax.media.jai.RenderedOp createLogOp​(RenderedImage src)
      • createExpOp

        public static javax.media.jai.RenderedOp createExpOp​(RenderedImage src)
      • createNullOp

        public static javax.media.jai.RenderedOp createNullOp​(RenderingHints rh)
      • createRotateOp

        public static javax.media.jai.RenderedOp createRotateOp​(RenderedImage src,
                                                                double xOrigin,
                                                                double yOrigin,
                                                                double angle)
      • createByteCastOp

        public static javax.media.jai.RenderedOp createByteCastOp​(RenderedImage src)
      • createShortCastOp

        public static javax.media.jai.RenderedOp createShortCastOp​(RenderedImage src)
      • createUShortCastOp

        public static javax.media.jai.RenderedOp createUShortCastOp​(RenderedImage src)
      • createIntCastOp

        public static javax.media.jai.RenderedOp createIntCastOp​(RenderedImage src)
      • createStretchOp

        public static javax.media.jai.RenderedOp createStretchOp​(RenderedImage src,
                                                                 double minValue,
                                                                 double maxValue)
      • createStretchOp

        public static javax.media.jai.RenderedOp createStretchOp​(RenderedImage src,
                                                                 double minValueOld,
                                                                 double maxValueOld,
                                                                 double minValueNew,
                                                                 double maxValueNew)
      • createValueToIndexOp

        public static javax.media.jai.RenderedOp createValueToIndexOp​(RenderedImage src,
                                                                      double minValue,
                                                                      double maxValue,
                                                                      int numIndices)
      • createValueToIndexOp

        public static javax.media.jai.RenderedOp createValueToIndexOp​(RenderedImage src,
                                                                      int numIndices)
      • createPaletteOp

        public static javax.media.jai.PlanarImage createPaletteOp​(RenderedImage src,
                                                                  byte[] r,
                                                                  byte[] g,
                                                                  byte[] b)
      • createWindowLevelImage

        public static javax.media.jai.PlanarImage createWindowLevelImage​(RenderedImage image,
                                                                         double window,
                                                                         double level)
        Returns a rescaled version of the given source image in the range
            low  = level - window / 2
            high = level + window / 2
         

        The image returned is always of type 'byte' and has the same number of bands as the source image.

        Parameters:
        image - the source image, can be of any type
        window - the range window
        level - the range level
        Returns:
        a rescaled version of the source image
      • createRescaledImage

        public static javax.media.jai.PlanarImage createRescaledImage​(RenderedImage image,
                                                                      double low,
                                                                      double high)
        Returns a rescaled version of the given source image in the given sample value range.

        The image returned is always of type 'byte' and has the same number of bands as the source image.

        Parameters:
        image - the source image, can be of any type
        low - the minimum value of the range
        high - the maximum value of the range
        Returns:
        a rescaled version of the source image
      • getHistogramOf

        public static javax.media.jai.Histogram getHistogramOf​(javax.media.jai.PlanarImage sourceImage)
        Retrieves the histogram (if any) of the given image.
      • getNativeMinMaxOf

        public static double[] getNativeMinMaxOf​(javax.media.jai.PlanarImage sourceImage,
                                                 double[] minmax)
        Returns an array containing the minimum and maximum value of the native data type used to store pixel values in the given image.
      • createHistogramImage

        public static javax.media.jai.RenderedOp createHistogramImage​(javax.media.jai.PlanarImage sourceImage,
                                                                      int binCount)
        Creates an image with a histogram attached to it. The actual histogram instance can be optained via the getHistogramOf() method.
      • createHistogramImage

        public static javax.media.jai.RenderedOp createHistogramImage​(javax.media.jai.PlanarImage sourceImage,
                                                                      int binCount,
                                                                      double minValue,
                                                                      double maxValue)
        Creates an image with a histogram attached to it. The actual histogram instance can be optained via the getHistogramOf() method.
      • createHistogramEqualizedImage

        public static javax.media.jai.RenderedOp createHistogramEqualizedImage​(javax.media.jai.PlanarImage sourceImage)
        Creates an equalization CDF image.
      • createHistogramNormalizedImage

        public static javax.media.jai.RenderedOp createHistogramNormalizedImage​(javax.media.jai.PlanarImage sourceImage)
        Creates a normalization CDF image.
        Parameters:
        sourceImage - the image to normalze
        Returns:
        the normalized image
      • createHistogramNormalizedImage

        public static javax.media.jai.RenderedOp createHistogramNormalizedImage​(javax.media.jai.PlanarImage sourceImage,
                                                                                double[] mean,
                                                                                double[] stdDev)
        Creates a normalization CDF image.
        Parameters:
        sourceImage - The image to normalize
        mean - The mean values for each band of the image.
        stdDev - The standard deviation for each band of the image.
        Returns:
        the normalized image
      • createAlphaOverlay

        public static javax.media.jai.PlanarImage createAlphaOverlay​(javax.media.jai.PlanarImage baseImage,
                                                                     javax.media.jai.PlanarImage alphaImage,
                                                                     Color color)
      • createColorLookupTable

        public static javax.media.jai.LookupTableJAI createColorLookupTable​(IndexColorModel icm)
      • computePreferredTileSize

        public static Dimension computePreferredTileSize​(int imageWidth,
                                                         int imageHeight,
                                                         int granularity)
      • computePreferredTileSize

        public static int computePreferredTileSize​(int imageSize,
                                                   int granularity)
      • createMapping2

        public static javax.media.jai.PlanarImage createMapping2​(RenderedImage sourceImage,
                                                                 IntMap indexMap)
      • createIndexedImage

        public static javax.media.jai.PlanarImage createIndexedImage​(RenderedImage sourceImage,
                                                                     IntMap intMap,
                                                                     int undefinedIndex)