我在找到最大面积的另一个问题下找到了此代码。
但是我需要找到最小的区域。为此,我写了np.argmin
而不是np.argmax
,但是得到了相同的结果。
如何修改此代码以查找最小面积?提前非常感谢您。
最好的问候。
img = np.array('array')
new_img = np.zeros_like(img)
for val in np.unique(img)[1:]:
mask = np.uint8(img == val)
labels, stats = cv2.connectedComponentsWithStats(mask, 4)[1:3]
largest_label = 1 + np.argmax(stats[1:, cv2.CC_STAT_AREA])
new_img[labels == largest_label] = val
print(new_img)