OpenCV腐蚀操作讲解及抹除仙人球上的刺实战(附Python源码)

简介: OpenCV腐蚀操作讲解及抹除仙人球上的刺实战(附Python源码)

需要源码和图片请点赞关注收藏后评论区留言私信~~~

腐蚀和膨胀是图像形态学中的两种核心操作,通过这两种操作可以清除或强化图像中的细节。合理使用腐蚀和膨胀,还可以实现图像开运算、闭运算、梯度运算、顶帽运算和黑帽运算等极具特点的操作

腐蚀

腐蚀操作可以让图像沿着自己的边界向内收缩,OpenCV通过核来实现收缩计算,核的英文名为kernel,在形态学中可以理解为由N个像素组成的像素块,像素块包含一个核心。像素块在图像的边缘移动,在移动过程中,核会将图像边缘那些与核重合但又没有越过核心的像素点都抹除

核腐蚀图像中的像素

OpenCV将腐蚀操作封装成erode方法 语法如下

dst=cv2.erode(src,kernel,anchor,iterations,borderType,borderValue)

参数说明

src 原始图像

kernel 腐蚀使用的核

anchor 可选参数 核的锚点位置

iterations 可选参数 腐蚀操作的迭代次数 默认值为1

后面两个参数建议采用默认

图像经过腐蚀操作之后,可以抹除一些外部的细节 如下图所示

原图

腐蚀之后的图像

小蜘蛛的腿被当作外部细节给抹除了 同时小蜘蛛的眼睛变大了

通常使用numpy模块来创建核数组,数组的行列数越大,计算出的效果就越粗糙,行列数越小,计算出的效果就越精细

下面实战将仙人球图像中的刺抹除

可见经过腐蚀操作之后,仙人球上的词明显少了许多 变得光滑平整

部分代码如下

import cv2
import numpy as np
img = cv2.imread("cactus.jpg")  # 读取原图
k = np.on((3, 3), np.uint8)  # 创建3*3的数组作为核
cv2.imshow(g", img)  # 显示原图
dst = cv2.ere(img, k)  # 腐蚀操作
cv2.imshow(t", dst)  # 显示腐蚀效果
cv2.waitKey()  # 按下任何键盘按键后
cv2.destroyAllWindows()  # 释放所有窗体

创作不易 觉得有帮助请点赞关注收藏~~~

相关文章
|
7天前
|
机器学习/深度学习 IDE 开发工具
基于OpenCV的车牌识别系统源码分享
基于OpenCV的车牌识别系统主要利用图像边缘和车牌颜色定位车牌,再利用OpenCV的SVM识别具体字符,从而达到车牌识别的效果。
37 4
基于OpenCV的车牌识别系统源码分享
|
28天前
|
XML 机器学习/深度学习 人工智能
使用 OpenCV 和 Python 轻松实现人脸检测
本文介绍如何使用OpenCV和Python实现人脸检测。首先,确保安装了OpenCV库并加载预训练的Haar特征模型。接着,通过读取图像或视频帧,将其转换为灰度图并使用`detectMultiScale`方法进行人脸检测。检测到的人脸用矩形框标出并显示。优化方法包括调整参数、多尺度检测及使用更先进模型。人脸检测是计算机视觉的基础技术,具有广泛应用前景。
61 10
|
1月前
|
Ubuntu 计算机视觉 C++
Ubuntu系统下编译OpenCV4.8源码
通过上述步骤,你可以在Ubuntu系统上成功编译并安装OpenCV 4.8。这种方法不仅使你能够定制OpenCV的功能,还可以优化性能以满足特定需求。确保按照每一步进行操作,以避免常见的编译问题。
71 30
|
1月前
|
Ubuntu 计算机视觉 C++
Ubuntu系统下编译OpenCV4.8源码
通过上述步骤,你可以在Ubuntu系统上成功编译并安装OpenCV 4.8。这种方法不仅使你能够定制OpenCV的功能,还可以优化性能以满足特定需求。确保按照每一步进行操作,以避免常见的编译问题。
80 43
|
1月前
|
Ubuntu 计算机视觉 C++
Ubuntu系统下编译OpenCV4.8源码
通过上述步骤,你可以在Ubuntu系统上成功编译并安装OpenCV 4.8。这种方法不仅使你能够定制OpenCV的功能,还可以优化性能以满足特定需求。确保按照每一步进行操作,以避免常见的编译问题。
37 12
|
3月前
|
JSON 开发工具 git
基于Python和pygame的植物大战僵尸游戏设计源码
本项目是基于Python和pygame开发的植物大战僵尸游戏,包含125个文件,如PNG图像、Python源码等,提供丰富的游戏开发学习素材。游戏设计源码可从提供的链接下载。关键词:Python游戏开发、pygame、植物大战僵尸、源码分享。
|
4月前
|
Ubuntu 编译器 计算机视觉
Ubuntu系统编译OpenCV4.8源码
【10月更文挑战第17天】只要三步即可搞定,第一步是下载指定版本的源码包;第二步是安装OpenCV4.8编译需要的编译器与第三方库支持;第三步就是编译OpenCV源码包生成安装文件并安装。
|
4月前
|
机器学习/深度学习 监控 算法
基于计算机视觉(opencv)的运动计数(运动辅助)系统-源码+注释+报告
基于计算机视觉(opencv)的运动计数(运动辅助)系统-源码+注释+报告
113 3
|
4月前
|
计算机视觉 Python
python利用pyqt5和opencv打开电脑摄像头并进行拍照
本项目使用Python的PyQt5和OpenCV库实现了一个简单的摄像头应用。用户可以通过界面按钮打开或关闭摄像头,并实时预览视频流。点击“拍照”按钮可以捕捉当前画面并保存为图片文件。该应用适用于简单的图像采集和处理任务。
285 0
python利用pyqt5和opencv打开电脑摄像头并进行拍照
|
4月前
|
计算机视觉
Opencv学习笔记(十二):图片腐蚀和膨胀操作
这篇文章介绍了图像腐蚀和膨胀的原理、作用以及使用OpenCV实现这些操作的代码示例,并深入解析了开运算和闭运算的概念及其在图像形态学处理中的应用。
246 1
Opencv学习笔记(十二):图片腐蚀和膨胀操作

热门文章

最新文章

推荐镜像

更多