美文网首页
图像膨胀腐蚀——opencv

图像膨胀腐蚀——opencv

作者: snowpigppp | 来源:发表于2019-08-08 14:46 被阅读0次

    图像腐蚀:

    • 图像二值化,将图像的灰度值根据阈值进行0,1处理得到的图像;
    • 卷积核,对应信号处理中的高低频滤波器。常用numpy去设置,np.ones((m,n), np.uint8) 表示指定m*n的卷积核;
    • 图像的腐蚀,cv2.erode(二值化图像, 卷积核, 迭代次数)

    代码处理过程:

    import cv2
    import numpy as np
    ## 测试图片,为反斜杠
    pic = 'C:/1.jpg'
    ## a.图像的二值化 ,这里没有做阈值处理
    src = cv2.imread(pic,cv2.IMREAD_UNCHANGED)
    
    ## b.设置卷积核5*5
    kernel = np.ones((5,5),np.uint8)
    ## c.图像的腐蚀,默认迭代次数
    erosion = cv2.erode(src,kernel)
    ## 效果展示
    cv2.imshow('origin',src)
    ## 腐蚀后
    cv2.imshow('after erosion',erosion)
    

    图像膨胀

    图像膨胀时腐蚀的逆过程,往往先通过腐蚀使图片线条变窄,然后腐蚀可以去除噪声。图像膨胀的处理过程:

    • 图像二值化,将图像的灰度值根据阈值进行0,1处理得到的图像;
    • 卷积核,对应信号处理中的高低频滤波器。常用numpy去设置,np.ones((m,n), np.uint8) 表示指定m*n的卷积核;
    • 图像的腐蚀,cv2.dilate(二值化图像, 卷积核, 迭代次数)

    代码处理过程:

    import cv2
    import numpy as np
    ## 测试图片,为反斜杠
    pic = 'C:/1.jpg'
    ## a.图像的二值化 ,这里没有做阈值处理
    src = cv2.imread(pic,cv2.IMREAD_UNCHANGED)
    
    ## b.设置卷积核5*5
    kernel = np.ones((5,5),np.uint8)
    ## c.图像的腐蚀,默认迭代次数
    erosion = cv2.erode(src,kernel)
    ## 图像的膨胀
    dst = cv2.dilate(erosion,kernel)
    ## 效果展示
    cv2.imshow('origin',src)
    ## 腐蚀后
    cv2.imshow('after erosion',erosion)
    ## 膨胀后
    cv2.imshow('after dilate',dst)
    

    相关文章

      网友评论

          本文标题:图像膨胀腐蚀——opencv

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