用Java将图像转换为双色
我想使用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
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
执行此操作,因为没有二进制颜色空间。完美。。。我将稍微编辑您的答案,以生成一个完整的方法来实现这一点。