【OpenCv 4 Python 3.7】图像形态学操作之开闭操作

opencv-python 形态学之开闭运算、形态学梯度、图像顶帽和黑帽运算 opencv-python 形态学之开闭运算、形态学梯度、图像顶帽和黑帽运算 形态学的高级形态,建立在腐蚀和膨胀这两个基本操作之上 一. 图像开运算 图像开运算是图像依次经过腐蚀、膨胀处理后的过程。 开运算主要使用的函数morphologyEx,它是形态学扩展的一组函数,其参数cv2.MORPH_OPEN对应开运算。其原型如下: dst = cv2.morphologyEx(src, cv2... 阅读详情

1、开操作:

图像形态学的重要操作之一,基于膨胀与腐蚀操作组合形成的。
 主要是应用在二值图像分析中,灰度图像亦可。
 开操作=腐蚀+膨胀, 输入图像 + 结构元素

2、闭操作

 图像形态学的重要操作之一,基于膨胀与腐蚀操作
组合形成的。
 主要是应用在二值图像分析中,灰度图像亦可。
 闭操作=膨胀+腐蚀, 输入图像 + 结构元素

开闭操作的作用:
 去除小的干扰块-开操作
 填充闭合区域 – 闭操作
 水平或者垂直线提取

注意:不同结构元素结果不一样!!!

代码实现:


#结构元素的选取和大小的设置很重要!

import cv2 as cv
import numpy as np

#开操作
def open_demo(image):
    print(image.shape)
    gray = cv.cvtColor(image, cv.COLOR_BGR2GRAY)
    #二值化
    ret, binary = cv.threshold(gray, 0, 255, cv.THRESH_BINARY_INV | cv.THRESH_OTSU)
    cv.imshow("binary", binary)
    #矩形的结构元素   (15, 15):可以更改此项 以达到寻找不同结构元素的目的,cv.MORPH_RECT(3,3)  会把小的干扰快去除
    #例:cv.MORPH_RECT (15, 1) 是横条元素(用于提取水平线)   (1, 15) :是竖条元素(用于提取竖直线条)
    kernel = cv.getStructuringElement(cv.MORPH_RECT, (3, 3))#MORPH_ELLIPSE 检测圆
    #morphologyEx :形态学操作
    binary = cv.morphologyEx(binary, cv.MORPH_OPEN, kernel)
    cv.imshow("open-result", binary)

#闭操作
def close_demo(image):
    print(image.shape)
    gray = cv.cvtColor(image, cv.COLOR_BGR2GRAY)
    ret, binary = cv.threshold(gray, 0, 255, cv.THRESH_BINARY | cv.THRESH_OTSU)
    cv.imshow("binary", binary)
    kernel = cv.getStructuringElement(cv.MORPH_RECT, (15, 15))
    binary = cv.morphologyEx(binary, cv.MORPH_CLOSE, kernel)
    cv.imshow("close_demo", binary)


print("--------- Python OpenCV Tutorial ---------")
src = cv.imread("E:/ji_qi_xue_xi/opencv_kejian/opencv_python_image/circle.png")
cv.namedWindow("input image", cv.WINDOW_AUTOSIZE)
cv.imshow("input image", src)
open_demo(src)
cv.waitKey(0)

cv.destroyAllWindows()

开操作结果:

在这里插入图片描述

闭操作结果:

在这里插入图片描述

OpenCV-Python:形态学处理(腐蚀、膨胀、开闭运算、边缘检测) 一、定义结构元素 形态学处理的核心就是定义结构元素,在OpenCV-Python中,可以使用其自带的 getStructuringElement 函数,也可以直接使用 Numpy 的 ndarray 来定义一个结构元素。形象图如下: 如下代码:为上图的十字型结构。当然还可以定义椭圆和矩形等。 椭圆: cv2.getStructuringElement(cv.MORPH_ELLIPSE,(... 阅读详情

相关推荐

计算机视觉 | 面试题:36、形态学中的开操作和闭操作

问题 形态学中的膨胀、腐蚀、开操作和闭操作是图像处理中常见的问题之一,因为自己偶尔会记混“开操作和闭操作”的概念和应用,所以整理一下当作复习复习。 形态学中最基本的操作是膨胀和腐蚀,它们能实现很多功能:例如消除噪声、分割出独立的图像元素以及在图像中连接相邻的元素等。 膨胀 ● 膨胀是指使用卷积核B(可以理解为模板)对图像A(或者某部分区域)进行卷积操作,卷积核可以是任意形状或大小。 ● 卷积核B通常有一个自定义的参考点(anchor point),一般位于中心位置。 ● 膨胀是求局部最大值的操作。当卷积核B

Mrrunsen的博客 1501

数字图像处理(六)开操作和闭操作

开操作       开操作简单说就是先腐蚀再膨胀即: A∘B=(A⊖B)⊕BA \circ B = (A \ominus B) \oplus BA∘B=(A⊖B)⊕B 开操作一般会平滑物体的轮廓、断开狭窄的狭颈并消除突出物。       开操作具有的性质: (1). AAA ∘\circ∘ BBB 是 AAA 的一个子集(子图像)。 (2).如果 CCC 是 DDD 的一个子集,那么C∘BC \circ BC∘B,则 C∘BC \circ BC∘B 是 D∘BD..

一个RS农民工 4997

【图像处理】——Python OpenCV实现形态学膨胀、腐蚀开闭操作(可以用于图像滤波、图像分割等)

转载博客请注明详细地址,谢谢 本文讲了形态学基本操作膨胀腐蚀开闭操作的原理 本文讲解了用OpenCV-Python实现形态学操作

python_AI_fans的博客 2126

数字图像处理之开操作和闭操作

实验目的 1.理解并掌握形态学图像处理中的开操作和闭操作 2.熟悉并掌握MATLAB软件的使用 实验环境 操作系统:Windows 10 软件:MATLAB R2014a 相关知识 1.定义 开操作:使图像的轮廓变得光滑,断开较窄的狭颈和消除细的突出物。 使结构元B对集合A进行开操作,定义为: A○B=(A⊖B)⊕BA○B=(A⊖B)⊕BA○B=(A⊖B)⊕B ...

W_Tortoise的博客 2万+

OpenCV-Python实战(5)——OpenCV图像运算

图像处理技术是计算机视觉项目的核心,通常是计算机视觉项目中的关键工具,可以使用它们来完成各种计算机视觉任务。因此,如果要构建计算机视觉项目,就需要对图像处理有足够的了解。图像运算也是图像处理技术的一种,在本文中,将介绍可以对图像执行的常见算术运算,例如按位运算、加减法、形态变换等。

盼小辉丶的博客 3万+

优化QT QML中RTSP流播放延迟:海康摄像头实时监控实践

本文详细探讨了在QT QML中优化海康摄像头RTSP流播放延迟的实践方法。通过调整MediaPlayer缓冲策略、硬件加速、解码器优选等五大技巧,显著降低实时监控场景下的延迟问题。文章还提供了海康摄像头RTSP连接实战代码和避坑指南,帮助开发者快速实现高效流媒体播放。

weixin_28363123的博客 557

顶帽运算和黑帽运算

顶帽(Top Hat) 顶帽运算(Top Hat)又常常被译为”礼帽“运算。为原图像与上文刚刚介绍的“开运算“的结果图之差,数学表达式如下: 因为开运算带来的结果是放大了裂缝或者局部低亮度的区域,因此,从原图中减去开运算后的图,得到的效果图突出了比原图轮廓周围的区域更明亮的区域,且这一操作和选择的核的大小相关。 顶帽运算往往用来分离比邻近点亮一些的斑块。当一幅图像具有大幅的背景的时候,而...

weixin_33795093的博客 1161

5G R18标准:AI/ML如何重塑空口优化与网络架构

人工智能与机器学习正逐步成为通信网络优化的核心技术。其核心原理在于通过数据驱动模型,从海量网络数据中学习信道变化、用户行为等统计规律,替代传统的基于固定规则的优化方法。这一技术范式能显著提升网络性能与效率,尤其在空口资源管理、干扰协调和能耗控制等场景中价值突出。在5G Advanced(R18)标准化框架下,AI/ML被系统性地引入空口设计,聚焦于信道状态信息反馈增强、波束管理与预测等关键用例。通过定义网络侧AI、终端侧AI及联合学习的标准化接口与流程,R18旨在实现跨厂商设备的智能协同,推动无线网络向自适

weixin_35671843的博客 244

图像处理之开操作详解

开操作概述: 图像处理中的开闭运算是两个非常重要的数学形态学操作,它们同时都继承自基本的腐蚀与 膨胀操作,这些操作一般都会应用在二值图像的分析与处理上。开操作有点像腐蚀操作,主 要是会remove前景像素边缘,但是不会像腐蚀操作remove那么多边缘像素。开操作主要 是用来保留某种结构操作,remove其他不符合结构元素的前景区域像素。 开操作原理: 一个开操作是一个腐蚀操作再接着...

web开发 1492

Excel-MCP实战指南:零代码实现大模型与Excel的智能交互

本文详细介绍了Excel-MCP工具如何实现大模型与Excel的无缝交互,无需编写代码即可完成数据读写、图表生成等复杂操作。通过实战案例展示了Excel-MCP在销售报表自动化、财务对账等企业级场景中的应用,大幅提升工作效率。文章还提供了安装指南、核心功能解析和常见问题解决方案。

weixin_29212429的博客 434

Palabos 并行计算与多物理场模拟实战指南

本文详细介绍了Palabos在并行计算与多物理场模拟中的实战应用。作为基于C++和LBM的开源CFD工具,Palabos通过MPI实现高效并行计算,特别适合处理复杂流体模拟问题。文章涵盖从基础安装、多物理场耦合技巧到性能优化策略,并分享工业级应用案例与调试经验,帮助开发者快速掌握这一强大工具。

4k5l6j7h8的博客 245

[图像形态学操作]——腐蚀和膨胀、开闭运算、黑帽礼帽

形态学转换是基于图像形状的一些简单操作,它通常在二进制图像上执行。腐蚀和膨胀是两个基本的形态学运算符。然后它的变体形式如:开运算、闭运算、礼帽黑帽等。 一、连通性 在图像学当中,图像的最小单位是像素,每个像素周围有8个邻接像素,常见的邻接关系有3种:4领接、D邻接和8邻接 连通性是描述区域和边界的重要概念,两个像素连通的两个必要条件是: 1、两个像素的位置是否相邻 2、两个像素的灰度值是否满足特定的相似性准则(或者是否相等) 根据连通性的定义,有4连通、8连通和m连通三种 1..

weixin_42067873的博客 2483

Python海康摄像头SDK二次开发

摘要:为解决海康威视摄像头RTSP拉流延迟严重的问题,本文提出改用海康私有SDK直接取流的方案。通过下载海康设备网络SDK并调用其Python接口,实现了低延迟的视频流获取。文中详细介绍了SDK配置流程,并提供了优化版的Python代码示例,重点解决回调函数处理、队列缓冲和CPU占用等问题。测试结果表明,该方案显著降低了延迟,同时保持了较高的帧率(30FPS以上)和较低的CPU占用率(约2%)。相较于传统OpenCV+FFmpeg的RTSP方案,海康SDK直接取流在实时性方面具有明显优势。

xiaohouzi112233的博客 2608

Python OpenCV 图像开闭操作,图像处理取经之旅第 39 篇

图像开闭操作,cv.morphologyEx 函数学习

梦想橡皮擦,专栏100例写作模式先行者,现象级专栏 《Python 爬虫 100 例》作者、《滚雪球学 Python 专栏》原创者 1万+

iPhone免越狱Git服务器搭建教程-iSH

iPhone免越狱Git服务器搭建教程

jts666的博客 4429

博途AI助手演示,完成简单且重复的梯形图代码,并导入到博途

自写个博途AI助手,下面演示AI帮我生成完善多个模拟量输入转换的代码,

gsjkwg的博客 1529

数字图像处理python实现-形态学处理

内容简介腐蚀膨胀开闭运算击中与击不中细化骨架提取裁剪距离变换 腐蚀 膨胀 开闭运算 击中与击不中 细化 骨架提取 裁剪 距离变换

图像弟弟的博客 4878

【unity实战】Unity游戏开发:如何用ScriptableObject与序列化多态实现可复用的模块化效果系统?

本文介绍了两种实现卡牌游戏效果系统的模块化设计方案。方案一使用ScriptableObject创建独立的效果资产,通过组合实现不同效果,优点是数据可复用、可视化编辑,缺点是同类不同参数效果需创建大量SO文件。方案二利用SerializeReference特性直接嵌套效果实例,避免SO文件过多,但需要插件支持编辑器多态显示。两种方案都将效果与卡牌解耦,提高了代码复用性和扩展性,解决了硬编码带来的重复、维护困难和扩展不便等问题。开发者可根据项目需求选择合适方案,或结合两者优势构建更灵活的系统。

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 437

opencv-python 详解基于形态学的图像腐蚀和膨胀、开闭运算操作

数字图像处理常用形态学操作:腐蚀膨胀,开运算和闭运算。 一、本文目标 了解形态学操作的概念 搞清楚膨胀、腐蚀、开运算和闭运算等形态学操作 OpenCV函数: cv2.erode() , cv2.dilate() , cv2.morphologyEx() 二、详解 形态学(morphology)一词通常表示生物学的一个分支,该分支主要研究动植物的形态和结构。而我们图像处理中指的形态学,往往表示的是数学形态学。下面一起来了解数学形态学的概念。 数学形态学...

RayChiu757374816的博客 1594

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

Python+OpenCV图像处理之开闭操作

开操作:图像形态学的重要操纵之一,基于膨胀与腐蚀操作组合形成的;主要是应用在二值图像分析中,灰度图像亦可 开操作 = 腐蚀+膨胀,输入图像 + 结构元素 作用:用来消除小物体、平滑较大物体的边界的同时并不明显改变其面积,提取水平或竖直的线 闭操作:图像形态学的重要操纵之一,基于膨胀与腐蚀操作组合形成的;主要是应用在二值图像分析中,灰度图像亦可 闭操作 = 膨胀+腐蚀,输入图像 +...

张伟的专栏 2992

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

形态学操作之开操作与闭操作的python实现——数字图像处理

先用B对A进行腐蚀,将A中的小细节,小连通区域消除(注意这里是彻底消除),然后用B将A中没有被消除的地方恢复成原来的样子,最终只有被B完全消除掉的小细节没有了,A中其余的部分并没有改变。开操作是先进行腐蚀后进行膨胀的操作。:先用B对A进行膨胀,将A的细节放大,将A中本不能够连接起来的地方连接起来,然后用B对结果进行腐蚀,将被放大的地方还原(注意,已经被连接起来的地方不会在被腐蚀抹掉)先用B对A进行腐蚀,再用B对其结果进行膨胀,并不会得到原来的A,即膨胀与腐蚀并不像+和-一样是一对完全互补的操作。

qq_49370210的博客 2548

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

opencv 形态学操作(python)

形态学操作形态学操作腐蚀膨胀通用形态学函数开运算闭运算形态学梯度运算礼帽运算黑帽运算核函数 形态学操作 形态学,即数学形态学(Mathematical Morphology),是图像处理过程中一个非常重要的研究方向。 形态学主要从图像内提取分量信息,该分量信息通常对于表达和描绘图像的形状具有重要意义,通常是图像理解时所使用的最本质的形状特征。 形态学操作主要包含:腐蚀、膨胀、开运算、闭运算、形态学梯度(Morphological Gradient)运算、顶帽运算(礼帽运算)、黑帽运算等操作。 腐蚀操作和膨胀

wkk的博客 4390

OpenCV for Python之图像的开闭操作、顶帽黑帽、形态学梯度

OpenCV for Python之图像的开闭操作1 开闭操作2 顶帽 黑帽3 形态学梯度 Opencv4官方文档:https://docs.opencv.org/2.4.4-beta/ Opencv4 for Python中文文档点击下载:OpenCV4 for Python 中文文档 1 开闭操作 开运算:先腐蚀再膨胀.就叫做开运算,它被用来去除噪声。 闭运算:先膨胀再腐蚀。它经常被用来填充前景物体中的小洞,或者前景物体上的小黑点。 api: cv.morphologyEx(src, op, ker

郑德帅 682

【OpenCV3.3+Python3.6】形态学操作之开闭操作

形态学操作之开闭操作 形态学开闭操作其实与之前的膨胀与腐蚀有一定的关系 1.开操作 图像形态学的重要操作之一,基于膨胀与腐蚀操作组合形成的,主要应用在二值图像分析中,灰度图像即可 开操作=腐蚀+膨胀,输入图像+结构元素 开操作可以消除图像中的干扰区域,不会破坏结构 2.闭操作 图像形态学的重要操作之一,基于膨胀与腐蚀操作组合形成的 主要应用在二值图像分析中,灰度图像即可 开操...

Demo.demo的博客 844

OpenCV学习——形态学操作与图像平滑

OpenCV学习,形态学操作与图像平滑基本内容

qq_50442534的博客 1413

五、opencv-python图像处理高级操作(2)——形态学操作

这一章节详细的讲解了图像处理的形态学操作。

weixin_44463519的博客 1138
上一篇: 【OpenCv 4 Python 3.7】图像形态学操作之膨胀腐蚀
下一篇: 【OpenCv 4 Python 3.7】图像形态学操作之顶帽、黑帽、形态学梯度
YL_python_C++_java
博客等级 码龄7年 1392粉丝 142原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值