您好,欢迎来到抵帆知识网。
搜索
您的当前位置:首页膨胀与腐蚀相关例程

膨胀与腐蚀相关例程

来源:抵帆知识网


腐蚀主要函数:cv2.erode(img,kernel,iterations)

膨胀主要函数:cv2.dilate(img,kernel,iterations)

开运算:opening = cv2.morphologyEx(img, cv2.MORPH_OPEN, kernel)

闭运算:closing = cv2.morphologyEx(img, cv2.MORPH_CLOSE, kernel)

1、腐蚀图像和膨胀图像例程:

#coding=utf-8

import cv2

import numpy as np

img = cv2.imread('D:/binary.bmp',0)

#OpenCV定义的结构元素

kernel = cv2.getStructuringElement(cv2.MORPH_RECT,(3, 3))

#腐蚀图像

eroded = cv2.erode(img,kernel)

#显示腐蚀后的图像

cv2.imshow(\"Eroded Image\

#膨胀图像

dilated = cv2.dilate(img,kernel)

#显示膨胀后的图像

cv2.imshow(\"Dilated Image\

#原图像

cv2.imshow(\"Origin\

#NumPy定义的结构元素

NpKernel = np.uint8(np.ones((3,3)))

Nperoded = cv2.erode(img,NpKernel)

#显示腐蚀后的图像

cv2.imshow(\"Eroded by NumPy kernel\

cv2.waitKey(0)

cv2.destroyAllWindows()

2、开运算和闭运算例程:

开运算和闭运算就是将腐蚀和膨胀按照一定的次序进行处理

#coding=utf-8

import cv2

import numpy as np

img = cv2.imread('D:/binary.bmp',0)

#定义结构元素

kernel = cv2.getStructuringElement(cv2.MORPH_RECT,(5, 5))

#闭运算

closed = cv2.morphologyEx(img, cv2.MORPH_CLOSE, kernel)

#显示腐蚀后的图像

cv2.imshow(\"Close\

#开运算

opened = cv2.morphologyEx(img, cv2.MORPH_OPEN, kernel)

#显示腐蚀后的图像

cv2.imshow(\"Open\

cv2.waitKey(0)

cv2.destroyAllWindows()

3、创建窗口滚动条实现动态腐蚀与膨胀的功能例程:

import cv2

import numpy as np

import matplotlib.pyplot as plt

def nothing(x):

pass

cv2.namedWindow('image')

img=cv2.imread('images/111.jpg')

cv2.namedWindow('image')

cv2.createTrackbar('Er/Di','image',0,1,nothing)

#创建腐蚀或膨胀选择滚动条,只有两个值

cv2.createTrackbar('size','image',0,21,nothing)

#创建卷积核大小滚动条

while(1):

s = cv2.getTrackbarPos('Er/Di', 'image')

si=cv2.getTrackbarPos('size','image')

#分别接收两个滚动条的数据

k=cv2.waitKey(1)

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

#根据滚动条数据确定卷积核大小

erroding = cv2.erode(img, kernel)

dilation = cv2.dilate(img, kernel)

if k==27:

Break #esc键退出

if s==0:

cv2.imshow('image',erroding)

else:

cv2.imshow('image',dilation) #判断是腐蚀还是膨胀

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- dfix.cn 版权所有 湘ICP备2024080961号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务