如果二进制图像几乎全是黑色,我如何在numpy中检查



如果二进制图像在numpy或scikit-image模块中几乎全黑或全白,我怎么能看到?

我想到了numpy.all函数或numpy.any,但我不知道如何既不为全黑图像也不为几乎黑色的图像。

假设所有像素都是1或0,像这样的事情可能会起作用(根本没有测试过):


def is_sorta_black(arr, threshold=0.8):
    tot = np.float(np.sum(arr))
    if tot/arr.size  > (1-threshold):
       print "is not black" 
       return False
    else:
       print "is kinda black"
       return True

以下是我能想到的一些想法:

  1. 获取np.sum(),如果它低于阈值,则认为它几乎是黑色的
  2. 计算图像的np.mean()np.std(),几乎是黑色的图像是具有低均值和低方差的图像

相关内容

  • 没有找到相关文章

最新更新