我正在用 python 编写一个程序来在 L*L 矩阵中找到 1、0 或 -1 的“孤岛”。我需要它来找到连接组件的这些“区域”,标记它们中的每一个,并能够为矩阵 m[x][y] 的给定元素返回它所属的岛的大小。
import numpy as np
from scipy import ndimage
from scipy import misc
import matplotlib.pyplot as plt
m = np.random.randint(-1,2,(L,L))
mask1 = (m == -1)
mask2 = (m == 0)
mask3 = (m == 1)
label_m1, nb_labels1 = ndimage.label(mask1)
label_m2, nb_labels2 = ndimage.label(mask2)
label_m3, nb_labels3 = ndimage.label(mask3)
这应该给我标记了随机矩阵 m 的岛(只是一个例子),但我不知道如何获得给定点所属的“区域”的大小。你可以帮帮我吗?我几乎没有编程经验,所以如果问题很愚蠢,请原谅我。
谢谢