如何在python中使用wand阈值图像

时间:2013-10-12 22:35:54

标签: python imagemagick wand

使用imagemagick我可以阈值图像并指定百分比。

convert one.png -threshold 60% two.png

如何在python中使用wand做同样的事情?

2 个答案:

答案 0 :(得分:2)

他们似乎还没有实施评估'方法。您可以使用以下解决方法:

import wand.api
import wand.image
import ctypes

MagickEvaluateImage = wand.api.library.MagickEvaluateImage
MagickEvaluateImage.argtypes = [ctypes.c_void_p, ctypes.c_int, ctypes.c_double]

def evaluate(self, operation, argument):
  MagickEvaluateImage(
      self.wand,
      wand.image.EVALUATE_OPS.index(operation),
      self.quantum_range * float(argument))

with wand.image.Image(filename='one.png') as img:
  evaluate(img, 'threshold', 0.60)
  img.save(filename='two.png')

答案 1 :(得分:0)

我从未使用过魔杖,但这是如何进行阈值处理的。基本上,如果要对图像进行阈值处理,则需要将其转换为二进制图像(黑白)。

所以你要做的就是将图像转换为灰度,检查像素值是否超过一定数量(比方说130),如果它高于130则将值设置为255否则将其设置为0.

我检查过魔杖文档并纠正我,如果我错了,似乎没有内置的方法来进行阈值处理。