我想使用
Java将图像转换为2色,黑色和白色.我正在使用以下代码转换为灰度:
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,null);
g.dispose();
return blackAndWhiteImage;
}
你不能用ColorConvertOp来做,因为没有二进制颜色空间.