美文网首页
OpenCV+Python图像连通域

OpenCV+Python图像连通域

作者: 音符纸飞机 | 来源:发表于2018-07-17 15:23 被阅读2852次

connectedComponents

ret, labels = cv2.connectedComponents(gray_img, connectivity=None)
# connectivity 4或8 临近像素: 周围4像素或8像素
import cv2
import numpy as np

img = np.array([
    [0, 255, 0, 0],
    [0, 0, 0, 255],
    [0, 0, 0, 255],
    [255, 0, 0, 0]

], np.uint8)

_, labels = cv2.connectedComponents(img)
print(labels)
res = cv2.equalizeHist(cv2.convertScaleAbs(labels))
print(res)

"""
[[0 1 0 0]
 [0 0 0 2]
 [0 0 0 2]
 [3 0 0 0]]
[[  0  64   0   0]
 [  0   0   0 191]
 [  0   0   0 191]
 [255   0   0   0]]
"""

connectedComponentsWithStats

_, labels, stats, centroids = cv2.connectedComponentsWithStats(img)
# stats 是bounding box的信息,N*5的矩阵,行对应每个label,五列分别为[x0, y0, width, height, area]
# centroids 是每个域的质心坐标
import cv2
import numpy as np

img = np.array([
    [0, 255, 0, 0],
    [0, 0, 0, 255],
    [0, 0, 0, 255],
    [255, 0, 0, 0]

], np.uint8)
_, labels = cv2.connectedComponents(img)
# print(labels)

_, labels, stats, centroids = cv2.connectedComponentsWithStats(img)
print(labels)
print(stats)
print(centroids)

"""
[[0 1 0 0]
 [0 0 0 2]
 [0 0 0 2]
 [3 0 0 0]]
[[ 0  0  4  4 12]
 [ 1  0  1  1  1]
 [ 3  1  1  2  2]
 [ 0  3  1  1  1]]
[[1.41666667 1.5       ]
 [1.         0.        ]
 [3.         1.5       ]
 [0.         3.        ]]
"""

相关文章

  • OpenCV+Python图像连通域

    connectedComponents connectedComponentsWithStats

  • 图像处理面试题

    文章目录 1、给定0-1矩阵,求连通域。 二值图像分析最重要的方法就是连通区域标记,它是所有二值图像分析的基础,它...

  • 案例二 图像分割

    基于连通域的图像分割案例 可以用于物体计数和区域分割码上 后期进行更改优化

  • 初学连通域

    通域分析对于图像处理后面涉及到模式识别的内容来说是基础。 连通区域(Connected Component)一般是...

  • 连通域

    OpenCV中的新函数connectedComponentsWithStats使用

  • 邻域连通性标记

    4− 邻域连通域标记 连通域标记(Connected Component Labeling)是将邻接的像素打上相同...

  • 图像连通域搜寻skimage和opencv方法

    关于连通域的寻找和分割。在python中有两个库的函数可以使用,一个是scikit-image库中的measure...

  • HTML表单

    表单基础结构 表单语法 标签 单行文本域 按钮 图像域和隐藏域 图像域(图像提交按钮) 隐藏域 隐藏域的内容用户看...

  • 连通域标记

    seed-filling 思想 种子填充方法来源于计算机图形学,常用于对某个图形进行填充。思路:选取一个前景像素点...

  • 验证码去除干扰线

    在邦购登陆时,选择了人工检验验证码,这次用机器检测试试。先说基本逻辑:载入图像,转灰度,二值化,连通域检测,去除连...

网友评论

      本文标题:OpenCV+Python图像连通域

      本文链接:https://www.haomeiwen.com/subject/uouwpftx.html