PIL Plus/imToolkit 替代方案
我一直在寻找关于PIL Plus的后续功能的信息,PIL Plus是Python的一个扩展,也叫imToolkit。我知道PIL Plus(也就是imToolkit)曾经是一个商业扩展,只有购买了PIL支持的客户才能使用。而且我也知道PIL Plus这个扩展现在已经不再提供了。
我想问的是,“PIL Plus的功能有没有被整合到其他工具包中,还是说完全被忽略了?”
我现在想做的是复制Matlab中的imfill功能,填补图像中的“空洞”,以便创建更好的二值图像遮罩。
提前感谢你的帮助。
1 个回答
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的形态学包。