初学opencv/形态学处理

来源:互联网 发布:ios9.3.3数据精灵 编辑:程序博客网 时间:2024/05/19 02:44

膨胀算法:用3X3的结构元素,扫描二值图像的每一个像素,用结构元素与其覆盖的二值图像做“与”运算,使二值图像扩大一圈。
腐蚀算法:用3X3的结构元素,扫描二值图像的每一个像素,用结构元素与其覆盖的二值图像做“与”运算,使二值图像减小一圈。
闭运算用来连接被误分为许多小块的对象,而开运算用于移除由图像噪音形成的斑点

#coding:utf-8"""opencv形态学处理"""import cv2import numpy as npimport matplotlib.pyplot as pltimg = cv2.imread('images/figure_6.png')cv2.imshow('original image',img)#定义3*3的十字形结构元素kernel = cv2.getStructuringElement(cv2.MORPH_RECT,(3,3))#cv2.dilate膨胀图像dilated = cv2.dilate(img,kernel)cv2.imshow('dilated image',dilated)#cv2.erode腐蚀图像eroded = cv2.erode(img,kernel)cv2.imshow('eroded image',eroded)#对图像进行开运算去除噪音opened = cv2.morphologyEx(img,cv2.MORPH_OPEN,kernel)cv2.imshow('open img',opened)#对图像进行闭运算连接主要信息closed = cv2.morphologyEx(img,cv2.MORPH_CLOSE,kernel)cv2.imshow('closed img',closed)cv2.waitKey(0)cv2.destroyAllWindows()

结果

原图:
这里写图片描述

腐蚀:
这里写图片描述

膨胀:
这里写图片描述

闭运算:
这里写图片描述

开运算:
这里写图片描述

原创粉丝点击