我正在寻找以下内容。我有一个标记为区域的 numpy 数组。numpy 数组表示分割的图像。区域是具有相同值的多个相邻单元格。每个地区都有自己独特的价值。具有 3 个区域的简化版本如下所示:
x = np.array([[1, 1, 1], [1, 1, 2], [2, 2, 2], [3, 3, 3]], np.int32)
输出:
array([[1, 1, 1],
[1, 1, 2],
[2, 2, 2],
[3, 3, 3]])
在上面的示例中,我们有 3 个单独的区域,每个区域都标有一个唯一值(在本例中为 1,2,3)。
我想要的是每个单独区域的相邻(邻居)区域的值。所以在这种情况下:
- 区域 1 与区域 2 相邻
- 区域 2 与区域 1 和 3 相邻
- 区域 3 与区域 2 相邻
实现这一目标的最优雅和最快的方法是什么?
非常感谢!