PIL Plus / imToolkit替代品

时间:2011-08-09 17:29:22

标签: python image-processing python-imaging-library

我一直试图找到为PIL Plus for Python(也称为imToolkit)提供的能力的延续。我知道PIL Plus(又名imToolkit)是Python的商业扩展。它可供PIL支持客户使用。我也知道PIL Plus扩展已不再可用。

我的问题是,“将PIL Plus的功能/功能折叠到任何其他工具包中还是完全被忽视?”

我想要做的是复制Matlab的imfill可以执行的操作并填入'hole'来创建更好的二进制图像掩码。

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

我不确定imfill是如何运作的。是这样的:

import numpy as np
import scipy.ndimage.morphology as morphology

bw = np.array([[0, 0, 0, 0, 0, 0, 0, 0],
               [0, 1, 1, 1, 1, 1, 0, 0],
               [0, 1, 0, 0, 0, 1, 0, 0],
               [0, 1, 0, 0, 0, 1, 0, 0],
               [0, 1, 0, 0, 0, 1, 0, 0],
               [0, 1, 1, 1, 1, 0, 0, 0],
               [0, 0, 0, 0, 0, 0, 0, 0],
               [0, 0, 0, 0, 0, 0, 0, 0]])

print(morphology.binary_fill_holes(bw).astype('int'))

产量

[[0 0 0 0 0 0 0 0]
 [0 1 1 1 1 1 0 0]
 [0 1 1 1 1 1 0 0]
 [0 1 1 1 1 1 0 0]
 [0 1 1 1 1 1 0 0]
 [0 1 1 1 1 0 0 0]
 [0 0 0 0 0 0 0 0]
 [0 0 0 0 0 0 0 0]]

如果是这样,您可能需要查看scipy's morphology package