我想使用 python 对 3D CT 体积进行侵蚀。我已经尝试过腐蚀函数 prom SciPy 和 Scikit-image,但它们似乎不能正常工作(膨胀也没有)。这是我尝试过的:
import numpy as np
from scipy import ndimage
from skimage import morphology
np_image_data = sitk.GetArrayFromImage(imageData) #Numpy array with CT data
boneMask = np_image_data>=1000
struct = ndimage.generate_binary_structure(3, 1)
# Scipy erosion
erodedMask1 = ndimage.binary_erosion(boneMask.astype(uint), structure=struct, iterations=1)
# Scikit-image erosion
erodedMask2 = morphology.binary_erosion(boneMask.astype(uint), struct)
它们都几乎侵蚀了整个图像(只剩下一些体素)。有什么建议吗?我尝试了 SimpleITK 中的 BinaryErodeImageFilter,但它很慢并且占用了大量内存。
谢谢大家!