原理:

对二值图像进行操作。

腐蚀和膨胀是最基本的形态学运算。

腐蚀和膨胀是针对白色部分(高亮部分)而言的。

膨胀就是对图像高亮部分进行“领域扩张”,效果图拥有比原图更大的高亮区域;腐蚀是原图中的高亮区域被蚕食,效果图拥有比原图更小的高亮区域。

膨胀:

原理:最大值滤波,即把中心像素替换成模板里的最大值1(或操作),1值变多

作用:①增加像素;②平滑对象边缘;③减少对象之间的距离

腐蚀:最小值滤波,即把中心像素替换成模板里的最小值0(与操作),1值变少

作用:①减少像素,②平滑对象边缘;③弱化或分割图像之间的半岛型连接

中值滤波:用模板的中值进行滤波

代码如下:

import cv2 as cv

import numpy as np

def erode_demo(image):

gray=cv.cvtColor(image,cv.COLOR_BGR2GRAY)

ret,binary=cv.threshold(gray,0,255,cv.THRESH_BINARY|cv.THRESH_OTSU)

print('ret:',ret)

cv.imshow('binary:',binary)

kernel=cv.getStructuringElement(cv.MORPH_RECT,(3,3)) #获取结构元素,形态学矩形

dst=cv.erode(binary,kernel)

cv.imshow('erode',dst)

def dilate_demo(image):

gray=cv.cvtColor(image,cv.COLOR_BGR2GRAY)

ret,binary=cv.threshold(gray,0,255,cv.THRESH_BINARY|cv.THRESH_OTSU)

print('ret:',ret)

# cv.imshow('binary:',binary)

kernel=cv.getStructuringElement(cv.MORPH_RECT,(3,3)) #获取结构元素,形态学矩形,即虚拟框用来与或操作

dst=cv.dilate(binary,kernel)

cv.imshow('dilate',dst)

src=cv.imread('D:/pycharm/pycharmproject/test.jpg')

cv.imshow('src',src)

erode_demo(src)

dilate_demo(src)

cv.waitKey(0)

cv.destroyAllWindows()

python 腐蚀膨胀_opencv+python 膨胀与腐蚀相关推荐

  1. matlab图像的腐蚀和膨胀_OpenCV图像处理系列八 --- 腐蚀与膨胀

    今天,我们一起来学习图像形态学操作中两种最基本的形态学操作,即腐蚀与膨胀. 一.理论 数学形态学(Mathematical morphology) 是一门建立在格论和拓扑学基础之上的图像分析学科,是数 ...

  2. python绘制汉字_OpenCV Python 绘制中文字

    By 凌顺 2019年9月12日 本示例使用的OpenCV版本是:4.1.1 运行Python的编辑器:Jupyter notebook 示例目的 通过使用PLI在图片上添加中文字符. PIL(Pyt ...

  3. python 创建画板_OpenCV +Python 制作画板

    首先声明一下,本例思路不是博主原创,博主在前人的代码上进行了个性化的修改,制作了一个简单的画图工具.下面附上自己的理解,与君共勉. 效果图 画图工具实现 代码 # coding:utf-8 impor ...

  4. python均值滤波_opencv+python实现均值滤波

    本文实例为大家分享了opencv+python实现均值滤波的具体代码,供大家参考,具体内容如下 原理 均值滤波其实就是对目标像素及周边像素取平均值后再填回目标像素来实现滤波目的的方法,当滤波核的大小是 ...

  5. python 超参数_OpenCV python sklearn随机超参数搜索的实现

    """ 房价预测数据集 使用sklearn执行超参数搜索 """ import matplotlib as mpl import matpl ...

  6. python opencv保存图片_OpenCV Python 保存图片

    By 凌顺 2019年9月12日 本示例使用的OpenCV版本是:4.1.1 运行Python的编辑器:Jupyter notebook 示例目的 通过无损和有损的方式进行图片保存. 实现代码 1,加 ...

  7. python opencv 摄像头_opencv python中摄像头参数的设置

    我正在使用Windows7 64位操作系统以及Python3和OpenCV.我的电脑连接到以下型号的两个罗技网络摄像头: 1)罗技高清网络摄像头C615 2) 罗技QuickCam Pro 9000 ...

  8. python制作礼物_opencv+python制作硬核七夕礼物

    点击上方"蓝色小字"关注我呀 明天就是七夕了! 如果有对象,祝早生贵子!没有对象,祝早结连理! (搞笑一下,祝大家幸福美满吧,嘿嘿嘿) 给大家准备了一份已经写好的代码,利用pyth ...

  9. python 椭圆检测_opencv python中的椭圆检测

    我的图片在这里: 我正在寻找更好的解决方案或算法来检测这张照片中的椭圆形部分(盘),并在Opencv中的另一张照片中对其进行遮罩. 你能给我一些建议或解决方案吗? 我的代码是: circles = c ...

最新文章

  1. linux pwm 调屏_基于嵌入式Linux的LCD背光调节及驱动的实现
  2. GIS开发:大数据解决方案
  3. Java字符串、文件MD5工具类
  4. struts2下拉框在不同情况下的各种用法
  5. 开源开放 | 开源立体化漏洞情报知识图谱(四维创智)
  6. 经典计算机实现量子逻辑门,量子计算机:对量子逻辑门的探讨
  7. Ros学习——launch文件解析
  8. macOS Catalina下RX580/Vega系列显卡启动后DP输出黑屏和ALC1220声卡无法驱动的解决方案
  9. Jquery—JQuery对checkbox的操作(01)
  10. java抽象类泛型_java-使用泛型定义抽象方法
  11. php-openssl降级,openssl升级降级
  12. Cesium开发环境搭建的几种方法总结
  13. 学校人脸识别门禁功能介绍
  14. Python基础 Day03 列表
  15. 【20CSPS提高组】题解
  16. 韩信点兵(两种方法C语言)
  17. python发微信图片加文字_python向企业微信发送文字和图片消息的示例
  18. SQL Server 2012数据库应用与开发教程速成笔记
  19. 网易互娱2017实习生招聘在线笔试--源代码编译
  20. ChatGPT 大行其道,带你走近 AIGC

热门文章

  1. 如何查看虚拟机的ip
  2. 又一个跨平台的快速app开发工具:AppArchitect
  3. 力软快速开发平台推荐功能之APP开发
  4. [毕设系列] 一、张正友相机标定
  5. OPPO 首款智能手表采用泰雷兹 eSIM 解决方案, 让移动网络连接触“手”可及
  6. 计算机组成原理免费阅读,计算机组成原理1.docx
  7. js焦点处理的几种方式
  8. linux mbr 分区表修复,磁盘分区中MBR的模拟损坏及修复
  9. tftpd32服务器软件在Windows与linux 下的文件传输(服务器ip 的设置问题)
  10. 推荐一款易操作的固定资产管理系统