获取图像中每个白色物体的大小 python opencv
Get the size of each white object in an image python opencv
我正在尝试获取此图像中每个单独对象的大小,以便我可以按大小将它们分开。我的目标是能够遍历它们并按大小将它们分开。我到处都看过,但在任何地方都找不到任何东西。我尝试过连通分量分析,但不确定如何从中检索大小值。
_, lab = cv2.connectedComponents(img)
使用connectedComponentsWithStats.
# Choose 4 or 8 for connectivity type
connectivity = 4
output = cv2.connectedComponentsWithStats(img, connectivity, cv2.CV_32S)
num_labels = output[0]
stats = output[2]
for label in range(1,num_labels):
blob_area = stats[label, cv2.CC_STAT_AREA]
blob_width = stats[label, cv2.CC_STAT_WIDTH]
blob_height = stats[label, cv2.CC_STAT_HEIGHT]
num_labels
将给出标签总数。您可以使用 stats
矩阵通过遍历每个标签来检索每个 blob 的大小。
我正在尝试获取此图像中每个单独对象的大小,以便我可以按大小将它们分开。我的目标是能够遍历它们并按大小将它们分开。我到处都看过,但在任何地方都找不到任何东西。我尝试过连通分量分析,但不确定如何从中检索大小值。
_, lab = cv2.connectedComponents(img)
使用connectedComponentsWithStats.
# Choose 4 or 8 for connectivity type
connectivity = 4
output = cv2.connectedComponentsWithStats(img, connectivity, cv2.CV_32S)
num_labels = output[0]
stats = output[2]
for label in range(1,num_labels):
blob_area = stats[label, cv2.CC_STAT_AREA]
blob_width = stats[label, cv2.CC_STAT_WIDTH]
blob_height = stats[label, cv2.CC_STAT_HEIGHT]
num_labels
将给出标签总数。您可以使用 stats
矩阵通过遍历每个标签来检索每个 blob 的大小。