zoukankan      html  css  js  c++  java
  • 机器学习进阶-图像形态学操作-腐蚀操作 1.cv2.erode(进行腐蚀操作)

    1.cv2.erode(src, kernel, iteration)

    参数说明:src表示的是输入图片,kernel表示的是方框的大小,iteration表示迭代的次数

    腐蚀操作原理:存在一个kernel,比如(3, 3),在图像中不断的平移,在这个9方框中,哪一种颜色所占的比重大,9个方格中将都是这种颜色

    代码:

    1.读取带有毛刺的图片

    2.使用cv2.erode进行腐蚀操作,比较不同的kernel对结果的影响

    3.读取圆的图片

    4.使用cv2.erode进行腐蚀操作,比较不同的迭代次数对结果的影响

    import cv2
    import numpy as np
    
    # 1.读取带有毛刺的图片
    img = cv2.imread('dige.png')
    cv2.imshow('img', img)
    cv2.waitKey(0)
    cv2.destroyAllWindows()

    # 2.比较不同的kernel最终的腐蚀效果
    kernel = np.ones((3, 3), np.uint8)
    erosion_1 = cv2.erode(img, kernel, iterations=1)
    kernel_1 = np.ones((6, 6), np.uint8)
    erosion_2 = cv2.erode(img, kernel_1, iterations=1)
    cv2.imshow('erosion', np.hstack((erosion_1, erosion_2)))
    cv2.waitKey(0)
    cv2.destroyAllWindows()

    # 3.读取圆的图片
    pie = cv2.imread('pie.png')
    cv2.imshow('pie', pie)
    cv2.waitKey(0)
    cv2.destroyAllWindows()

    # 4.比较不同的迭代次数对最终结果的影响
    kernel = np.ones((20, 20), np.uint8)
    erosion_1 = cv2.erode(pie, kernel, iterations=1)
    erosion_2 = cv2.erode(pie, kernel, iterations=2)
    erosion_3 = cv2.erode(pie, kernel, iterations=3)
    imgs = np.hstack((erosion_1, erosion_2, erosion_3))
    cv2.imshow('pie', imgs)
    cv2.waitKey(0)
    cv2.destroyAllWindows()

  • 相关阅读:
    按照两种模式排序用户列表
    WINDOWS系统属性符号说明
    一个无敌删除命令
    SQL判断某列中是否包含中文字符、英文字符、纯数字
    泰勒公式的发现以及证明
    陶哲轩实分析 引理7.1.4 证明
    多项式函数在某一点处的泰勒展开
    域上多项式的带余除法
    陶哲轩实分析 命题7.18 证明
    陶哲轩实分析 引理7.1.4 证明
  • 原文地址:https://www.cnblogs.com/my-love-is-python/p/10394831.html
Copyright © 2011-2022 走看看