zoukankan      html  css  js  c++  java
  • 图像形态学操作

    形态学-腐蚀操作

    img = cv2.imread('dige.png')
    
    cv2.imshow('img', img)
    cv2.waitKey(0)
    cv2.destroyAllWindows()

    kernel = np.ones((3,3),np.uint8) 
    erosion = cv2.erode(img,kernel,iterations = 1)
    
    cv2.imshow('erosion', erosion)
    cv2.waitKey(0)
    cv2.destroyAllWindows()

    pie = cv2.imread('pie.png')
    
    cv2.imshow('pie', pie)
    cv2.waitKey(0)
    cv2.destroyAllWindows()

      

    kernel = np.ones((30,30),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)
    res = np.hstack((erosion_1,erosion_2,erosion_3))
    cv2.imshow('res', res)
    cv2.waitKey(0)
    cv2.destroyAllWindows()

    形态学-膨胀操作

    img = cv2.imread('dige.png')
    cv2.imshow('img', img)
    cv2.waitKey(0)
    cv2.destroyAllWindows()
    kernel = np.ones((3,3),np.uint8) 
    dige_erosion = cv2.erode(img,kernel,iterations = 1)
    
    cv2.imshow('erosion', erosion)
    cv2.waitKey(0)
    cv2.destroyAllWindows()
    kernel = np.ones((3,3),np.uint8) 
    dige_dilate = cv2.dilate(dige_erosion,kernel,iterations = 1)
    
    cv2.imshow('dilate', dige_dilate)
    cv2.waitKey(0)
    cv2.destroyAllWindows()

     

    pie = cv2.imread('pie.png')
    
    kernel = np.ones((30,30),np.uint8) 
    dilate_1 = cv2.dilate(pie,kernel,iterations = 1)
    dilate_2 = cv2.dilate(pie,kernel,iterations = 2)
    dilate_3 = cv2.dilate(pie,kernel,iterations = 3)
    res = np.hstack((dilate_1,dilate_2,dilate_3))
    cv2.imshow('res', res)
    cv2.waitKey(0)
    cv2.destroyAllWindows()

    开运算与闭运算

    # 开:先腐蚀,再膨胀
    img = cv2.imread('dige.png')
    
    kernel = np.ones((5,5),np.uint8) 
    opening = cv2.morphologyEx(img, cv2.MORPH_OPEN, kernel)
    
    cv2.imshow('opening', opening)
    cv2.waitKey(0)
    cv2.destroyAllWindows()

    # 闭:先膨胀,再腐蚀
    img = cv2.imread('dige.png')
    
    kernel = np.ones((5,5),np.uint8) 
    closing = cv2.morphologyEx(img, cv2.MORPH_CLOSE, kernel)
    
    cv2.imshow('closing', closing)
    cv2.waitKey(0)
    cv2.destroyAllWindows()

    梯度运算

    # 梯度=膨胀-腐蚀
    pie = cv2.imread('pie.png')
    kernel = np.ones((7,7),np.uint8) 
    dilate = cv2.dilate(pie,kernel,iterations = 5)
    erosion = cv2.erode(pie,kernel,iterations = 5)
    
    res = np.hstack((dilate,erosion))
    
    cv2.imshow('res', res)
    cv2.waitKey(0)
    cv2.destroyAllWindows()

    gradient = cv2.morphologyEx(pie, cv2.MORPH_GRADIENT, kernel)
    
    cv2.imshow('gradient', gradient)
    cv2.waitKey(0)
    cv2.destroyAllWindows()

    礼帽与黑帽

    • 礼帽 = 原始输入-开运算结果
    • 黑帽 = 闭运算-原始输入
    #礼帽
    img = cv2.imread('dige.png')
    tophat = cv2.morphologyEx(img, cv2.MORPH_TOPHAT, kernel)
    cv2.imshow('tophat', tophat)
    cv2.waitKey(0)
    cv2.destroyAllWindows()

    #黑帽
    img = cv2.imread('dige.png')
    blackhat  = cv2.morphologyEx(img,cv2.MORPH_BLACKHAT, kernel)
    cv2.imshow('blackhat ', blackhat )
    cv2.waitKey(0)
    cv2.destroyAllWindows()




  • 相关阅读:
    Java基本数据类型学习
    【异常】Docker安装elasticsearch7, 浏览使用 9200 无法打开
    docker logs-查看docker容器日志
    centos开开放防火墙
    软工超越日报-android的简单旋转效果实现 5/13
    软工超越日报-Android文件下载器 5/12
    软工超越日报-团队第一阶段冲刺十日谈回顾总结 5/11
    软工超越日报-安卓APP联网获取数据(3) 5/10
    软工超越日报-安卓APP联网获取数据(2) 5/9
    软工超越日报-安卓APP联网下载数据(1) 5/8
  • 原文地址:https://www.cnblogs.com/exciting/p/10389661.html
Copyright © 2011-2022 走看看