【发布时间】:2020-08-26 11:51:57
【问题描述】:
我创建了一个蒙版来仅提取图像的红色部分。结果如下所示: 我只想保留最大的白色簇(并删除所有其他较小的簇)。 我查看了morphology.remove_small_objects 以删除其他文化,但有时这些第二个集群的大小几乎是最大的一个。所以我需要另一种方法来摆脱它们。
【问题讨论】:
标签: python image image-processing scikit-image image-morphology
我创建了一个蒙版来仅提取图像的红色部分。结果如下所示: 我只想保留最大的白色簇(并删除所有其他较小的簇)。 我查看了morphology.remove_small_objects 以删除其他文化,但有时这些第二个集群的大小几乎是最大的一个。所以我需要另一种方法来摆脱它们。
【问题讨论】:
标签: python image image-processing scikit-image image-morphology
morphology.remove_small_objects 当然可以,你只需要准确计算大小。您可以使用measure.label 和measure.regionprops 来做到这一点:
from skimage import measure, morphology
# assuming mask is a binary image
# label and calculate parameters for every cluster in mask
labelled = measure.label(mask)
rp = measure.regionprops(labelled)
# get size of largest cluster
size = max([i.area for i in rp])
# remove everything smaller than largest
out = morphology.remove_small_objects(mask, min_size=size-1)
【讨论】: