我想将我的彩色图像转换成B&W。基本上,我想调用这个ImageMagick命令:
convert input.png -threshold 80% output.png但是使用im4java库。我知道IMOperation.threshold()方法,但我不知道如何使用该方法编写与上述命令等价的命令。该方法重载:
threshold()
threshold(java.lang.Integer red)
threshold(java.lang.Integer red, java.lang.Integer green)
threshold(java.lang.Integer red, java.lang.Integer green, java.lang.Integer blue)
threshold(java.lang.Integer red, java.lang.Integer green, java.lang.Integer blue,
java.lang.Integer opacity)
threshold(java.lang.Integer red, java.lang.Integer green, java.lang.Integer blue,
java.lang.Integer opacity, java.lang.Boolean percent) 我尝试使用不同的值作为参数来调用该方法的不同重载,但它们都没有产生好的结果(我通常得到一个全白图像或全黑图像)。
那么,什么是“阈值80%”的im4java?
发布于 2014-09-08 13:49:18
显然,我需要使用blackThreshold
op.blackThreshold(80.0, true);我不确定它是否等同于我指定的ImageMagick命令,输出看起来有点不同,但实际上它给了我所需的东西。
发布于 2014-09-04 14:50:35
在这种情况下,您将考虑其他Java框架。使用Marvin图像处理框架:
MarvinImage image = MarvinImageIO.loadImage('image.jpg');
blackAndWhite(image, 30);关于不同BW级别的输出的示例:

https://stackoverflow.com/questions/25664823
复制相似问题