java对像素的取得

        Bitmap提供了操作像素的方法,。可以通过getPixels方法来获得该图像的饿像素并放到一个数组中,我们处理这个像素数组就可以了,最后通过setPixels设置这个像素数组到Bitmap中。

         每一个像素通过4个字节整数来展现:最高位字节用作Alpha通道,即用来实现透明与不透明控制,255代表完全不透明,0则代表完全透明;接下来的一个字节是Red红色通道,255代表完全是红色,一次类推,接下来的两个字节相应的是绿色和蓝色通道




对像素点得读取

bmp格式一个像素点占4个byte,第一个留用,后三个R,G,B

package src;



import java.awt.image.BufferedImage;
import javax.imageio.ImageIO;
import java.io.*;


public class Test {
public static void main(String args[]) {
int[] rgb = new int[3];


File file = new File("src/a.bmp");
BufferedImage bi = null;
try {
bi = ImageIO.read(file);
} catch (Exception e) {
e.printStackTrace();
}


int width = bi.getWidth();
int height = bi.getHeight();
int minx = bi.getMinX();
int miny = bi.getMinY();
System.out.println("width=" + width + ",height=" + height + ".");
System.out.println("minx=" + minx + ",miniy=" + miny + ".");


for (int i = minx; i < width; i++) {
for (int j = miny; j < height; j++) {
// System.out.print(bi.getRGB(jw, ih));
int pixel = bi.getRGB(i, j);
rgb[0] = (pixel & 0xff0000) >> 16;
rgb[1] = (pixel & 0xff00) >> 8;
rgb[2] = (pixel & 0xff);
System.out.println("i=" + i + ",j=" + j + ":(" + rgb[0] + ","
+ rgb[1] + "," + rgb[2] + ")");


}
}


}


}
阅读更多
个人分类: Java Android
想对作者说点什么? 我来说一句

color selecter

2010年12月07日 2.97MB 下载

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭