使用CV2查找相同元素的轮廓和统计量

时间:2019-12-28 11:21:51

标签: python-3.x opencv

我正在使用CV2查找不同的元素(在我的情况下,是黑色背景上的白色小圆圈),并使用以下命令获取其统计信息和边框:

grey_img = cv2.imread(file_path, cv2.IMREAD_GRAYSCALE)
img = np.array(grey_img)
connectivity = 8
output = cv2.connectedComponentsWithStats(img, connectivity, cv2.CV_32S)

然后,我使用cv2.CC_STAT属性来获取信息。

但是,我还需要找到轮廓以获取其他信息,例如边缘长度,所以我使用以下内容:

ret, thresh = cv2.threshold(img, 127, 255, 0)
contours, hierarchy = cv2.findContours(thresh, cv2.RETR_LIST, cv2.CHAIN_APPROX_NONE)

第一步中找到的组件列表与第二步中找到的轮廓列表的顺序不同,所以我不知道如何将两者连接起来,例如,我可以获取每个组件的位置轮廓(通过使用cv2.CC_STAT属性)。

我该如何实现?预先感谢!

0 个答案:

没有答案