JFrame rootPane = new JFrame();
JLabel imgHolder = new JLabel();
label.setIcon(new ImageIcon(image));    //image为jpg或者bmp类型
rootPane.add(label);现在我想通过一个指定的阈值将得到的image转化成2值图像(黑白图)  请问可以通过哪个类实现
谢谢了希望能给个伪代码看下
比如导入一副temp.bmp
如何获取bmp图像上每个像素的修改权限呢?我想把一副彩色图改成灰色的
根据阈值(比如128)低于他的都为黑(setColor(0,0,0))  高于的都为白(setColor(255,255,255)

解决方案 »

  1.   


    import java.awt.color.ColorSpace;
    import java.awt.image.*;
    import java.io.*;import javax.imageio.ImageIO;public class Convertor {
    public static void gray(String source, String result) {
    try {
    BufferedImage src = ImageIO.read(new File(source));
    ColorSpace cs = ColorSpace.getInstance(ColorSpace.CS_GRAY);
    ColorConvertOp op = new ColorConvertOp(cs, null);
    src = op.filter(src, null);
    ImageIO.write(src, "JPEG", new File(result));
    } catch (IOException e) {
    e.printStackTrace();
    }
    } public static void main(String[] args) {
    gray("c:/temp/2.bmp", "c:/temp/3.bmp");
    }
    }摘自:http://11lingxian.javaeye.com/blog/225280
      

  2.   

    看了下文档  好像BufferedImage可以处理这个问题我先去憋会 谢谢楼上的了