使用skimage计算mean_intensity报错:RegionProperties无该属性求解决
解决skimage regionprops中mean_intensity属性不存在的问题
问题原因
在skimage 0.18.1版本中,mean_intensity属于依赖原始图像的区域属性,这类属性不会仅通过标签图自动计算。只有当你在调用regionprops时传入原始强度图像(即生成标签图的原图像),才会生成该属性。而area、feret diameter这类属性仅依赖标签图的形状信息,因此无需额外参数就能正常获取。
解决方法
调用regionprops时,必须指定intensity_image参数,传入你的原始图像:
from skimage.measure import regionprops # 假设label_img是你的分割标签图,original_img是对应的原始图像 props = regionprops(label_img, intensity_image=original_img) # 现在可以正常访问mean_intensity for prop in props: print(prop.mean_intensity)
注意事项
- 确保
original_img和label_img的尺寸完全匹配,否则会抛出维度不匹配的错误。 - 如果原始图像是彩色图像,
mean_intensity会返回一个包含各通道均值的数组;灰度图像则返回单个数值。
内容的提问来源于stack exchange,提问作者mtamas
相关产品推荐
相关产品推荐

