public final class AWTImageTools extends Object
BufferedImage form.
To work with images in primitive array form,
use the ome.codecs.ImageTools class.
Much code was stolen and adapted from
DrLaszloJamf's posts
on the Java forums.| Modifier and Type | Field and Description |
|---|---|
protected static Component |
OBS
ImageObserver for working with AWT images.
|
| Modifier and Type | Method and Description |
|---|---|
static BufferedImage |
constructImage(int c,
int type,
int w,
int h,
boolean interleaved,
boolean banded,
DataBuffer buffer)
Creates an image with the given DataBuffer.
|
static BufferedImage |
constructImage(int c,
int type,
int w,
int h,
boolean interleaved,
boolean banded,
DataBuffer buffer,
ColorModel colorModel)
Creates an image with the given DataBuffer.
|
static byte[][] |
getBytes(BufferedImage image)
Extracts pixel data as arrays of unsigned bytes, one per channel.
|
static byte[] |
getBytes(BufferedImage img,
boolean separated)
Get the bytes from an image, merging the channels as necessary.
|
static byte[][] |
getBytes(WritableRaster r)
Extracts pixel data as arrays of unsigned bytes, one per channel.
|
static byte[][] |
getBytes(WritableRaster r,
int x,
int y,
int w,
int h)
Extracts pixel data as arrays of unsigned bytes, one per channel.
|
static double[][] |
getDoubles(BufferedImage image)
Extracts pixel data as arrays of doubles, one per channel.
|
static double[][] |
getDoubles(WritableRaster r)
Extracts pixel data as arrays of doubles, one per channel.
|
static double[][] |
getDoubles(WritableRaster r,
int x,
int y,
int w,
int h)
Extracts pixel data as arrays of doubles, one per channel.
|
static float[][] |
getFloats(BufferedImage image)
Extracts pixel data as arrays of floats, one per channel.
|
static float[][] |
getFloats(WritableRaster r)
Extracts pixel data as arrays of floats, one per channel.
|
static float[][] |
getFloats(WritableRaster r,
int x,
int y,
int w,
int h)
Extracts pixel data as arrays of floats, one per channel.
|
static int[][] |
getInts(BufferedImage image)
Extracts pixel data as arrays of signed integers, one per channel.
|
static int[][] |
getInts(WritableRaster r)
Extracts pixel data as arrays of signed integers, one per channel.
|
static int[][] |
getInts(WritableRaster r,
int x,
int y,
int w,
int h)
Extracts pixel data as arrays of signed integers, one per channel.
|
static byte[][] |
getPixelBytes(BufferedImage img,
boolean little)
Return a 2D array of bytes representing the image.
|
static byte[][] |
getPixelBytes(BufferedImage img,
boolean little,
int x,
int y,
int w,
int h)
Return a 2D array of bytes representing the image.
|
static byte[][] |
getPixelBytes(WritableRaster r,
boolean little)
Return a 2D array of bytes representing the image.
|
static byte[][] |
getPixelBytes(WritableRaster r,
boolean little,
int x,
int y,
int w,
int h)
Return a 2D array of bytes representing the image.
|
static Object |
getPixels(BufferedImage image)
Gets the image's pixel data as arrays of primitives, one per channel.
|
static Object |
getPixels(BufferedImage image,
int x,
int y,
int w,
int h)
Gets the image's pixel data as arrays of primitives, one per channel.
|
static Object |
getPixels(WritableRaster raster)
Gets the raster's pixel data as arrays of primitives, one per channel.
|
static Object |
getPixels(WritableRaster raster,
int x,
int y,
int w,
int h)
Gets the raster's pixel data as arrays of primitives, one per channel.
|
static short[][] |
getShorts(BufferedImage image)
Extracts pixel data as arrays of unsigned shorts, one per channel.
|
static short[][] |
getShorts(WritableRaster r)
Extracts pixel data as arrays of unsigned shorts, one per channel.
|
static short[][] |
getShorts(WritableRaster r,
int x,
int y,
int w,
int h)
Extracts pixel data as arrays of unsigned shorts, one per channel.
|
static ColorModel |
makeColorModel(int c,
int dataType)
Gets a color model for the given number of color components.
|
static ColorSpace |
makeColorSpace(int c)
Gets a color space for the given number of color components.
|
static BufferedImage |
makeImage(byte[][] data,
int w,
int h,
boolean signed)
Creates an image from the given byte data.
|
static BufferedImage |
makeImage(byte[][] data,
int w,
int h,
int bpp,
boolean fp,
boolean little,
boolean signed)
Creates an image from the given raw byte array,
performing any necessary type conversions.
|
static BufferedImage |
makeImage(byte[] data,
int w,
int h,
boolean signed)
Creates an image from the given single-channel byte data.
|
static BufferedImage |
makeImage(byte[] data,
int w,
int h,
int c,
boolean interleaved,
boolean signed)
Creates an image from the given byte data.
|
static BufferedImage |
makeImage(byte[] data,
int w,
int h,
int c,
boolean interleaved,
int bpp,
boolean fp,
boolean little,
boolean signed)
Creates an image from the given raw byte array,
performing any necessary type conversions.
|
static BufferedImage |
makeImage(double[][] data,
int w,
int h)
Creates an image from the given double-precision floating point data.
|
static BufferedImage |
makeImage(double[] data,
int w,
int h)
Creates an image from the given single-channel double data.
|
static BufferedImage |
makeImage(double[] data,
int w,
int h,
int c,
boolean interleaved)
Creates an image from the given double data.
|
static BufferedImage |
makeImage(float[][] data,
int w,
int h)
Creates an image from the given single-precision floating point data.
|
static BufferedImage |
makeImage(float[] data,
int w,
int h)
Creates an image from the given single-channel float data.
|
static BufferedImage |
makeImage(float[] data,
int w,
int h,
int c,
boolean interleaved)
Creates an image from the given float data.
|
static BufferedImage |
makeImage(int[][] data,
int w,
int h,
boolean signed)
Creates an image from the given int data.
|
static BufferedImage |
makeImage(int[] data,
int w,
int h,
boolean signed)
Creates an image from the given single-channel int data.
|
static BufferedImage |
makeImage(int[] data,
int w,
int h,
int c,
boolean interleaved,
boolean signed)
Creates an image from the given int data.
|
static BufferedImage |
makeImage(short[][] data,
int w,
int h,
boolean signed)
Creates an image from the given short data.
|
static BufferedImage |
makeImage(short[] data,
int w,
int h,
boolean signed)
Creates an image from the given single-channel short data.
|
static BufferedImage |
makeImage(short[] data,
int w,
int h,
int c,
boolean interleaved,
boolean signed)
Creates an image from the given short data.
|
static BufferedImage |
makeRGBImage(byte[][] data,
int w,
int h) |
static BufferedImage |
makeRGBImage(byte[] data,
int c,
int w,
int h,
boolean interleaved) |
protected static final Component OBS
public static BufferedImage makeImage(byte[] data, int w, int h, boolean signed)
data - Array containing image data.w - Width of image plane.h - Height of image plane.signed - Whether the byte values should be treated as signed
(-128 to 127) instead of unsigned (0 to 255).public static BufferedImage makeImage(short[] data, int w, int h, boolean signed)
data - Array containing image data.w - Width of image plane.h - Height of image plane.signed - Whether the short values should be treated as signed
(-32768 to 32767) instead of unsigned (0 to 65535).public static BufferedImage makeImage(int[] data, int w, int h, boolean signed)
data - Array containing image data.w - Width of image plane.h - Height of image plane.signed - Whether the int values should be treated as signed
(-2^31 to 2^31-1) instead of unsigned (0 to 2^32-1).public static BufferedImage makeImage(float[] data, int w, int h)
data - Array containing image data.w - Width of image plane.h - Height of image plane.public static BufferedImage makeImage(double[] data, int w, int h)
data - Array containing image data.w - Width of image plane.h - Height of image plane.public static BufferedImage makeImage(byte[] data, int w, int h, int c, boolean interleaved, boolean signed)
data - Array containing image data.w - Width of image plane.h - Height of image plane.c - Number of channels.interleaved - If set, the channels are assumed to be interleaved;
otherwise they are assumed to be sequential.
For example, for RGB data, the pattern "RGBRGBRGB..." is interleaved,
while "RRR...GGG...BBB..." is sequential.signed - Whether the byte values should be treated as signed
(-128 to 127) instead of unsigned (0 to 255).public static BufferedImage makeImage(short[] data, int w, int h, int c, boolean interleaved, boolean signed)
data - Array containing image data.w - Width of image plane.h - Height of image plane.c - Number of channels.interleaved - If set, the channels are assumed to be interleaved;
otherwise they are assumed to be sequential.
For example, for RGB data, the pattern "RGBRGBRGB..." is interleaved,
while "RRR...GGG...BBB..." is sequential.signed - Whether the short values should be treated as signed
(-32768 to 32767) instead of unsigned (0 to 65535).public static BufferedImage makeImage(int[] data, int w, int h, int c, boolean interleaved, boolean signed)
data - Array containing image data.w - Width of image plane.h - Height of image plane.c - Number of channels.interleaved - If set, the channels are assumed to be interleaved;
otherwise they are assumed to be sequential.
For example, for RGB data, the pattern "RGBRGBRGB..." is interleaved,
while "RRR...GGG...BBB..." is sequential.signed - Whether the int values should be treated as signed
(-2^31 to 2^31-1) instead of unsigned (0 to 2^32-1).public static BufferedImage makeImage(float[] data, int w, int h, int c, boolean interleaved)
data - Array containing image data.w - Width of image plane.h - Height of image plane.c - Number of channels.interleaved - If set, the channels are assumed to be interleaved;
otherwise they are assumed to be sequential.
For example, for RGB data, the pattern "RGBRGBRGB..." is interleaved,
while "RRR...GGG...BBB..." is sequential.public static BufferedImage makeImage(double[] data, int w, int h, int c, boolean interleaved)
data - Array containing image data.w - Width of image plane.h - Height of image plane.c - Number of channels.interleaved - If set, the channels are assumed to be interleaved;
otherwise they are assumed to be sequential.
For example, for RGB data, the pattern "RGBRGBRGB..." is interleaved,
while "RRR...GGG...BBB..." is sequential.public static BufferedImage makeImage(byte[][] data, int w, int h, boolean signed)
data - Array containing image data.
It is assumed that each channel corresponds to one element of the array.
For example, for RGB data, data[0] is R, data[1] is G, and data[2] is B.w - Width of image plane.h - Height of image plane.signed - Whether the byte values should be treated as signed
(-128 to 127) instead of unsigned (0 to 255).public static BufferedImage makeImage(short[][] data, int w, int h, boolean signed)
data - Array containing image data.
It is assumed that each channel corresponds to one element of the array.
For example, for RGB data, data[0] is R, data[1] is G, and data[2] is B.w - Width of image plane.h - Height of image plane.signed - Whether the short values should be treated as signed
(-32768 to 32767) instead of unsigned (0 to 65535).public static BufferedImage makeImage(int[][] data, int w, int h, boolean signed)
data - Array containing image data.
It is assumed that each channel corresponds to one element of the array.
For example, for RGB data, data[0] is R, data[1] is G, and data[2] is B.w - Width of image plane.h - Height of image plane.signed - Whether the int values should be treated as signed
(-2^31 to 2^31-1) instead of unsigned (0 to 2^32-1).public static BufferedImage makeImage(float[][] data, int w, int h)
data - Array containing image data.
It is assumed that each channel corresponds to one element of the array.
For example, for RGB data, data[0] is R, data[1] is G, and data[2] is B.w - Width of image plane.h - Height of image plane.public static BufferedImage makeImage(double[][] data, int w, int h)
data - Array containing image data.
It is assumed that each channel corresponds to one element of the array.
For example, for RGB data, data[0] is R, data[1] is G, and data[2] is B.w - Width of image plane.h - Height of image plane.public static BufferedImage makeImage(byte[] data, int w, int h, int c, boolean interleaved, int bpp, boolean fp, boolean little, boolean signed)
data - Array containing image data.w - Width of image plane.h - Height of image plane.c - Number of channels.interleaved - If set, the channels are assumed to be interleaved;
otherwise they are assumed to be sequential.
For example, for RGB data, the pattern "RGBRGBRGB..." is interleaved,
while "RRR...GGG...BBB..." is sequential.bpp - Denotes the number of bytes in the returned primitive type
(e.g. if bpp == 2, we should return an array of type short).fp - If set and bpp == 4 or bpp == 8, then return floats or doubles.little - Whether byte array is in little-endian order.signed - Whether the data values should be treated as signed
instead of unsigned.public static BufferedImage makeImage(byte[][] data, int w, int h, int bpp, boolean fp, boolean little, boolean signed)
data - Array containing image data, one channel per element.w - Width of image plane.h - Height of image plane.bpp - Denotes the number of bytes in the returned primitive type
(e.g. if bpp == 2, we should return an array of type short).fp - If set and bpp == 4 or bpp == 8, then return floats or doubles.little - Whether byte array is in little-endian order.signed - Whether the data values should be treated as signed
instead of unsigned.public static BufferedImage makeRGBImage(byte[] data, int c, int w, int h, boolean interleaved)
public static BufferedImage makeRGBImage(byte[][] data, int w, int h)
public static BufferedImage constructImage(int c, int type, int w, int h, boolean interleaved, boolean banded, DataBuffer buffer)
public static BufferedImage constructImage(int c, int type, int w, int h, boolean interleaved, boolean banded, DataBuffer buffer, ColorModel colorModel)
public static Object getPixels(BufferedImage image)
public static Object getPixels(BufferedImage image, int x, int y, int w, int h)
public static Object getPixels(WritableRaster raster)
public static Object getPixels(WritableRaster raster, int x, int y, int w, int h)
public static byte[][] getBytes(BufferedImage image)
public static byte[][] getBytes(WritableRaster r)
public static byte[][] getBytes(WritableRaster r, int x, int y, int w, int h)
public static short[][] getShorts(BufferedImage image)
public static short[][] getShorts(WritableRaster r)
public static short[][] getShorts(WritableRaster r, int x, int y, int w, int h)
public static int[][] getInts(BufferedImage image)
public static int[][] getInts(WritableRaster r)
public static int[][] getInts(WritableRaster r, int x, int y, int w, int h)
public static float[][] getFloats(BufferedImage image)
public static float[][] getFloats(WritableRaster r)
public static float[][] getFloats(WritableRaster r, int x, int y, int w, int h)
public static double[][] getDoubles(BufferedImage image)
public static double[][] getDoubles(WritableRaster r)
public static double[][] getDoubles(WritableRaster r, int x, int y, int w, int h)
public static byte[][] getPixelBytes(BufferedImage img, boolean little)
public static byte[][] getPixelBytes(WritableRaster r, boolean little)
public static byte[][] getPixelBytes(BufferedImage img, boolean little, int x, int y, int w, int h)
public static byte[][] getPixelBytes(WritableRaster r, boolean little, int x, int y, int w, int h)
public static byte[] getBytes(BufferedImage img, boolean separated)
public static ColorSpace makeColorSpace(int c)
public static ColorModel makeColorModel(int c, int dataType)
Copyright © 2005–2025 Open Microscopy Environment. All rights reserved.