如何实现opencv中的图像腐蚀与膨胀操作?

2026-05-22 03:211阅读0评论SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计695个文字,预计阅读时间需要3分钟。

如何实现opencv中的图像腐蚀与膨胀操作?

在Python中使用OpenCV进行图像去噪和去模糊处理,主要利用了图像滤波和图像增强技术。以下是对原文的简化

使用Python和OpenCV进行图像去噪和去模糊,通过图像滤波和增强技术,如图像去噪和图像锐化,可以有效去除图像中的噪声,同时保持图像的原有形状和状态。

语言:python+opencv

为什么使用图像腐蚀和图像膨胀

如图,使用图像腐蚀进行去噪,但是为压缩噪声。
对腐蚀过的图像,进行膨胀处理,可以去除噪声,并保持原样形状。

图像腐蚀

腐蚀主要针对的是二值图像,如只有0和1两个值,
两个输入对象:1原始二值图像,2卷积核
使用卷积核遍历原始二值图像,如果卷积核对应的元素值均为1,其值才为1,否则为0。如图,红色为卷积核。


腐蚀后的结果示意图见下面,效果是将边缘抹掉一部分。


使用方法:erode 中文翻译:侵蚀

处理结果=cv2.erode(原始图像src,卷积核kernel,迭代次数iterations)

卷积核kernel:一般为正方形数组

如:k=np.ones((5,5),np.uint8)

迭代次数iterations:腐蚀次数,默认1

如何实现opencv中的图像腐蚀与膨胀操作?

import cv2 import numpy as np o=cv2.imread("erode.bmp",cv2.IMREAD_UNCHANGED) k=np.ones((5,5),np.uint8) r=cv2.erode(o,k,iterations=10) cv2.imshow("original",o) cv2.imshow("result",r) cv2.waitKey() cv2.destroyAllWindows()

图像膨胀

图像腐蚀的逆操作。
针对的是二值图像
输入两个参数:二值图像,卷积核。


使用卷积核对二值图像进行遍历,卷积核对应的图像像素点只要有一个为1,则值为1,否则为0.


使用方法:dilate
结果=cv2.dilate(二值图像src,卷积核k,迭代次数itreations)
卷积核 正方形数组:如np.ones((5,5),np.uint8)

import cv2 import numpy as np o=cv2.imread("dilation.bmp",cv2.IMREAD_UNCHANGED) k=np.ones((5,5),np.uint8) r=cv2.dilate(o,k,iterations=1) cv2.imshow("original",o) cv2.imshow("result",r) cv2.waitKey() cv2.destroyAllWindows()


到此这篇关于opencv 图像腐蚀和图像膨胀的实现的文章就介绍到这了,更多相关opencv 图像腐蚀和图像膨胀内容请搜索易盾网络以前的文章或继续浏览下面的相关文章希望大家以后多多支持易盾网络!

标签:实现语言

本文共计695个文字,预计阅读时间需要3分钟。

如何实现opencv中的图像腐蚀与膨胀操作?

在Python中使用OpenCV进行图像去噪和去模糊处理,主要利用了图像滤波和图像增强技术。以下是对原文的简化

使用Python和OpenCV进行图像去噪和去模糊,通过图像滤波和增强技术,如图像去噪和图像锐化,可以有效去除图像中的噪声,同时保持图像的原有形状和状态。

语言:python+opencv

为什么使用图像腐蚀和图像膨胀

如图,使用图像腐蚀进行去噪,但是为压缩噪声。
对腐蚀过的图像,进行膨胀处理,可以去除噪声,并保持原样形状。

图像腐蚀

腐蚀主要针对的是二值图像,如只有0和1两个值,
两个输入对象:1原始二值图像,2卷积核
使用卷积核遍历原始二值图像,如果卷积核对应的元素值均为1,其值才为1,否则为0。如图,红色为卷积核。


腐蚀后的结果示意图见下面,效果是将边缘抹掉一部分。


使用方法:erode 中文翻译:侵蚀

处理结果=cv2.erode(原始图像src,卷积核kernel,迭代次数iterations)

卷积核kernel:一般为正方形数组

如:k=np.ones((5,5),np.uint8)

迭代次数iterations:腐蚀次数,默认1

如何实现opencv中的图像腐蚀与膨胀操作?

import cv2 import numpy as np o=cv2.imread("erode.bmp",cv2.IMREAD_UNCHANGED) k=np.ones((5,5),np.uint8) r=cv2.erode(o,k,iterations=10) cv2.imshow("original",o) cv2.imshow("result",r) cv2.waitKey() cv2.destroyAllWindows()

图像膨胀

图像腐蚀的逆操作。
针对的是二值图像
输入两个参数:二值图像,卷积核。


使用卷积核对二值图像进行遍历,卷积核对应的图像像素点只要有一个为1,则值为1,否则为0.


使用方法:dilate
结果=cv2.dilate(二值图像src,卷积核k,迭代次数itreations)
卷积核 正方形数组:如np.ones((5,5),np.uint8)

import cv2 import numpy as np o=cv2.imread("dilation.bmp",cv2.IMREAD_UNCHANGED) k=np.ones((5,5),np.uint8) r=cv2.dilate(o,k,iterations=1) cv2.imshow("original",o) cv2.imshow("result",r) cv2.waitKey() cv2.destroyAllWindows()


到此这篇关于opencv 图像腐蚀和图像膨胀的实现的文章就介绍到这了,更多相关opencv 图像腐蚀和图像膨胀内容请搜索易盾网络以前的文章或继续浏览下面的相关文章希望大家以后多多支持易盾网络!

标签:实现语言