zoukankan      html  css  js  c++  java
  • opencv-学习笔记(5)形态学转变

                  opencv-学习笔记(4)形态学转变

    本章讲了几种形态学操作

    1. 腐蚀erode
    2. 膨胀dilate
    3. 开运算MORPH_OPEN
    4. 闭运算MORPH_CLOSE
    5. 形态学梯度MORPH_GRADIENT
    6. 礼帽MORPH_TOPHAT
    7. 黑帽子MORPH_BLACKHAT

    腐蚀erode

    首先卷积核滑动,如果对应的原图像所有像素都是1,中心元素就保持,否则为0

    随着卷积核的靠近前景的所有像素都会被腐蚀-变0.

    我们可以去除白噪声,也可以断开两个连在一起的物体

    import cv2

    import numpy as np

    img=cv2.imread('black.png',0)

    kernel=np.ones((5,5),np.uint8)#定义一个卷积核以及图像类型

    erosion=cv2.erode(img,kernel,iterations=1)

    cv2.imshow('sdss',img)

    cv2.imshow('sds',erosion)

    cv2.waitKey(0)

     


    膨胀操作dilate

    可以连接物体

    import cv2

    import numpy as np

    img=cv2.imread('connection.jpg',0)

    kernel=np.ones((7,7),np.uint8)

    erosion=cv2.erode(img,kernel,iterations=1)

    dilate=cv2.dilate(img,kernel,iterations=1)

    cv2.imshow('sdss',img)

    cv2.imshow('sdsa',dilate)

    cv2.waitKey(0)


    开运算morphologyEx(图像对象,cv2.MORPH_OPEN,kernel)#morph改变

    对图像进行腐蚀再膨胀就叫开运算

    同样也用于去噪声

     


    闭运算morphologyEx(img,cv2.MORPH,kernel)

    就是先膨胀再腐蚀

    一般用来填充前景物体中的小洞

     


     

    形态学梯度

             就是衣服图像膨胀和腐蚀的差别

             看上去想轮廓而已

             morphologyEx(img,cv2.MORPH_GRADIENT,kernel)


     

    礼帽

    是图像与开运算后的差,可以获取背景噪声

    参数cv2.MORPH_TOPHAT

     


    黑帽

    是图像与闭运算后的差,获取前景噪声

    参数cv2.MORPH_BLACKHAT

  • 相关阅读:
    获取当前时区时间
    python lambda表达式详解
    Odoo 12开发之开发环境准备
    初步了解odoo12
    web前端面试题
    实现一个优先级队列
    面试题
    python读取和生成excel文件
    Django基础
    virtualenv
  • 原文地址:https://www.cnblogs.com/DJC-BLOG/p/9126979.html
Copyright © 2011-2022 走看看