【发布时间】:2015-03-23 08:34:29
【问题描述】:
我有一个 2D 标记图像(numpy 数组),每个标签代表一个对象。我必须找到对象的中心及其区域。我目前的解决方案:
centers = [np.mean(np.where(label_2d == i),1) for i in range(1,num_obj+1)]
surface_area = np.array([np.sum(label_2d == i) for i in range(1,num_obj+1)])
请注意,用于中心的label_2d 与用于表面积的label_2d 不同,因此我不能将这两种操作结合起来。我当前的代码大约慢了 10-100 倍。
在 C++ 中,我将遍历图像一次(2 个 for 循环)并填充表格(一个数组),然后计算中心和表面积。
由于在 python 中 for 循环非常慢,我必须找到另一个解决方案。有什么建议吗?
【问题讨论】:
标签: python image-processing numpy iteration labeling