インデックス付き画像 (png8 または gif) の画像データ (パレット インデックスの配列) にアクセスするにはどうすればよいですか?
例:
- 画像パレット: {0xFF0000, 0x00FF00, 0x0000FF}
- 画像データ: {0,1,1,0,1,2,2,2,0,1,0,2,0,1,1,0}
私が必要とするのは:
ArrayList<Integer> getImageData(File image) {
/* ??? */
}
以下のコードは、画像データを値imageData
の配列である に読み込みint
ます。
BufferedImage image = ImageIO.read(imageFile);
int width = image.getWidth();
int height = image.getHeight();
int[] imageData = new int[width * height * image.getColorModel().getNumComponents()];
imageData = image.getData().getPixels(0, 0, width, height, imageData);