Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用Java将图像转换为双色_Java_Image Processing - Fatal编程技术网

用Java将图像转换为双色

用Java将图像转换为双色,java,image-processing,Java,Image Processing,我想使用Java将图像转换为黑白双色。我正在使用以下代码转换为灰度: ColorConvertOp op = new ColorConvertOp( ColorSpace.getInstance(ColorSpace.CS_GRAY), null); BufferedImage grayImage = op.filter(image, null); public static BufferedImage toBinaryImage(final Buff

我想使用Java将图像转换为黑白双色。我正在使用以下代码转换为灰度:

    ColorConvertOp op = new ColorConvertOp(
             ColorSpace.getInstance(ColorSpace.CS_GRAY), null);
    BufferedImage grayImage = op.filter(image, null);
public static BufferedImage toBinaryImage(final BufferedImage image) {
    final BufferedImage blackAndWhiteImage = new BufferedImage(
            image.getWidth(null), 
            image.getHeight(null), 
            BufferedImage.TYPE_BYTE_BINARY);
    final Graphics2D g = (Graphics2D) blackAndWhiteImage.getGraphics();
    g.drawImage(image, 0, 0, null);
    g.dispose();
    return blackAndWhiteImage;
}
但我不知道如何修改它以转换为黑白。

基于另一个答案(产生灰度):


您无法使用
ColorConvertOp
执行此操作,因为没有二进制颜色空间。

完美。。。我将稍微编辑您的答案,以生成一个完整的方法来实现这一点。