の各ピクセルのRGB値を取得する最速の方法は何BufferedImage
ですか?
現在、以下のコードに示すように2つのループを使用してRGB値をfor
取得していますが、ネストされたループが画像に対して合計479999回実行されるため、これらの値を取得するのに時間がかかりすぎました。16ビット画像を使用すると、この数値はさらに高くなります。
ピクセル値を取得するためのより高速な方法が必要です。
これが私が現在使用しようとしているコードです:
BufferedImage bi=ImageIO.read(new File("C:\\images\\Sunset.jpg"));
int countloop=0;
for (int x = 0; x <bi.getWidth(); x++) {
for (int y = 0; y < bi.getHeight(); y++) {
Color c = new Color(bi.getRGB(x, y));
System.out.println("red=="+c.getRed()+" green=="+c.getGreen()+" blue=="+c.getBlue()+" countloop="+countloop++);
}
}