int[] pixels = new int[bit.getWidth()*bit.getHeight()];//保存所有的像素的数组,图片宽×高
bit.getPixels(pixels,0,bit.getWidth(),0,0,bit.getWidth(),bit.getHeight());
for(int i = 0; i < pixels.length; i++){
int clr = pixels[i];
int red = (clr & 0x00ff0000) >> 16; //取高两位
int green = (clr & 0x0000ff00) >> 8; //取中两位
int blue = clr & 0x000000ff; //取低两位
System.out.println("r="+red+",g="+green+",b="+blue);
bit.getPixels(pixels,0,bit.getWidth(),0,0,bit.getWidth(),bit.getHeight());
for(int i = 0; i < pixels.length; i++){
int clr = pixels[i];
int red = (clr & 0x00ff0000) >> 16; //取高两位
int green = (clr & 0x0000ff00) >> 8; //取中两位
int blue = clr & 0x000000ff; //取低两位
System.out.println("r="+red+",g="+green+",b="+blue);
}
其中getPixels中第三个参数要为图片的宽度

本文详细介绍了如何使用Java编程语言从图像中提取像素并分析其颜色分量(红、绿、蓝)。通过理解图像处理的基础知识,读者将学会如何获取图像的像素数据,并通过位运算提取每个像素的颜色值,进而进行颜色分析。
2159





