【发布时间】:2014-05-12 13:10:06
【问题描述】:
我正在使用scipy.ndimage 进行图像处理和数学形态学,我非常喜欢它。我们的工作涉及模拟电荷在各种电影中的移动,并且我们正在尝试使用图像分析工具来估计为什么不同的形态比其他形态更好。
我很快就能够使用 ndimage.label 和 distance_transform_edt 找到连接的组件并确定它们的大小。我还实现了广度优先搜索,以找到组件和代表电极的边缘之间的最小路径。
现在,我想确定“瓶颈”或“窄渠道”区域。我什至不确定我是否在搜索正确的关键字,因为我的专业知识并不是真正的图像处理。我在下面给出了两个例子。我想找到像红色圆圈这样的特征并计算它们并确定它们的大小分布。 (考虑到收费将更容易通过更广泛的瓶颈。)
问题是我无法标记这些,因为它们不是独立的组件。距离变换在边缘给了我很小的数字。我想要通过这些瓶颈的最小距离。
有什么建议或一般策略吗?
【问题讨论】:
-
您可以使用打开/关闭,然后从原始图像中减去结果图像。如果您提供原始图像的链接(没有红色),我可能有时间发布一个示例作为答案。
-
我想我想要一个骨架或中轴(来自 skimage),然后查看沿结果数组的非零元素的距离分布。
-
beedot 的解决方案对我来说似乎不错,所以我不会费心去做另一个(事实上,比我的建议更好,因为它解决了全部问题,而不仅仅是找到瓶颈位置)。这不正是您想要的吗?
标签: scipy.ndimage python image-processing numpy scipy mathematical-morphology