Opencv快速獲取連通域

2021-10-03 12:04:07 字數 784 閱讀 3263

對於ndarray資料中的連通域查詢,opencv提供了介面,非常方便。

import cv2

import numpy as np

img = np.array([

[0, 255, 255, 0, 0, 0, 255, 255,],

[0, 0, 255, 0, 255, 255, 255, 0],

[0, 0, 0, 0, 255, 255, 0, 255],

[255, 255, 0, 0, 0, 0, 0, 0],

[255, 255, 0, 0, 0, 0, 0, 0],

[255, 255, 0, 0, 0, 0, 0, 0]

], dtype=np.uint8)

num, labels = cv2.connectedcomponents(img)

labels_dict =

height, width = img.shape

for h in range(height):

for w in range(width):

if labels[h][w] in labels_dict:

cv2.connectedcomponents()函式返回查詢到的連通域個數和對應的label。

上面**返回連通域個數為4(包含值為0區域,可通過lables過濾), labels結果如圖所示:

opencv實現連通域

文章 在本文中使用影象連通域統計使用opencv中的cvfloodfill方法,但是在cvfloodfill方法中cvconnectedcomp引數無法返回具體點座標位置資訊,找了些資料 給cvseq分配空間但是還是contour內容沒有值,估計是opencv2.00版本不支援。如果想獲取點座標資訊...

opencv實現連通域

在本文中使用影象連通域統計使用opencv中的cvfloodfill方法,但是在cvfloodfill方法中cvconnectedcomp引數無法返回具體點座標位置資訊,找了些資料 給cvseq分配空間但是還是contour內容沒有值,估計是opencv2.00版本不支援。如果想獲取點座標資訊有兩種...

opencv實現連通域

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!在本文中使用影象連通域統計使用opencv中的cvfloodfill方法,但是在cvfloodfill方法中cvconnectedcomp引數無法返回具體點座標位置資訊,找了些資料 給cvseq分配空間但是還是contour內容沒有值,估計是ope...