我想在此图像中填充中心点,以便最后是白色,其余部分是黑色。我正在尝试使用ndimage.binary_fill_holes
(下面的代码)做到这一点。运行脚本时,出现错误'NoneType' object has no attribute 'astype'
。我应该怎么做才能解决这个问题?
mask_filled = np.array(mask,numpy.uint16)
ndimage.binary_fill_holes(mask_2, structure=np.ones((dim_x,dim_y)), origin=(75,75), output=mask_2_filled).astype(int)
np.savetxt(filename_filled, mask_filled, fmt='%i')
最佳答案
如果您提供binary_fill_holes
数组,则None
不返回任何内容(它会返回output
)。尝试这个:
ndimage.binary_fill_holes(mask_2, structure=np.ones((dim_x,dim_y)), origin=(75,75),
output=mask_2_filled)
mask2filled = mask2filled.astype(int)
或似乎根本无法传递任何输出,这样可以节省您需要在上一行中复制数组的情况。还要注意,在您的问题中,变量名不匹配,即mask vs mask2,mask_filled vs mask_2_filled。
关于python - 使用ndimage.binary_fill_holes填充形状,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21291197/