OpenCV平滑处理的实现示例

 更新时间:2024年02月02日 10:55:55   作者:KAIs32  
本文主要介绍了OpenCV平滑处理的实现示例,Opencv中滤波方式可分为均值滤波、高斯滤波和中值滤波,具有一定的参考价值,感兴趣的可以了解一下

Python客栈送红包、纸质书

前言

当我们用树莓派进行opencv图像处理时,摄像头所获取的图像质量通常会有所下降,此时,需要多种手段来优化图像的质量,提高图像识别的准度。今天所记录的是当图片经过传输等过程后出现的图像噪声现象及对应解决方法——平滑

一、图像噪声

在数字图像的采集、处理和传输过程中,可能会受到各种噪声干扰,这会导致图像质量下降、图像变得模糊,甚至使图像的特征难以辨认。为了增强图像的质量,我们需要对图像进行平滑处理,以去除这些噪声的影响。常见的图像噪声包括椒盐噪声高斯噪声等。

(1)椒盐噪声

椒盐噪声也称为脉冲噪声,是一种随机出现的白点或黑点,具体表现为亮的区域有黑色像素,或是暗的区域有白色像素,又或是两者皆有

下图中,左图为原图像右图为添加椒盐噪声的图像

(2)高斯噪声

高斯噪声是指概率密度函数服从高斯分布(正态分布)的一类噪声

下图中,左图为原图像右图为添加高斯噪声的图像

二、图像平滑处理

从信号处理的角度分析,图像平滑就是去除其中的高频信息保留低频信息,即可以通过低通滤波来去除图像中的噪声,实现对图像的平滑处理。 根据滤波器的不同,滤波方式可分为均值滤波、高斯滤波和中值滤波

(一)均值滤波

均值滤波就是对图像的所有像素点进行取均值,即以一个方形区域为单位,将该区域的中心像素点赋值为区域内所有像素点的平均值。如图所示3*3矩形,中心值为235,这个值由于过大,会形成黑点,即噪声图像,为了消除噪声,将这个点重新设置为以它为中心的九个点的平均值,即:

(23+98+168+46+235+2+67+55+211)\div 9 = 100.5

均值滤波是一种简单的滤波方法,尤其对高斯噪声的消除有较好的作用,但通常会使图像的细节变的稍微模糊,在需要观察图像细节时不建议使用均值滤波

均值滤波处理函数如下:

1
cv2.blur(scr, ksize)

其中的两个参数分别为:

(1)“scr”, 要处理的图像

(2) “ksize”, 滤波核的大小,它是一个表示宽度和高度的元组。例如,(3, 3)表示一个3*3的滤波核

(二)高斯滤波

高斯滤波就是对图像的所有像素点进行加权平均,即以一个方形区域为单位,将其中心像素点赋值为该区域的加权平均值:

23*0.05+98*0.1+168*0.05+46*0.1+235*0.4+2*0.1+67*0.5+55*0.1+211*0.05 = 137

高斯滤波考虑了像素周围邻域的距离,使得离中心像素更近的像素具有更高的权重,可以有效地去除噪声,同时保留图像的边缘和细节

高斯滤波处理函数如下:

1
cv2.GaussianBlur(src, ksize, sigmaX, sigmaY, borderType)

其中的五个参数分别为:

(1)“src”, 要处理的图像

(2)“ksize”, 高斯滤波核的大小,它是一个表示宽度和高度的元组。例如,(3, 3)表示一个3*3的滤波核

(3)“sigmaX”, X方向的高斯核标准差,通常可以写为0或者不写

(4)“sigmaY”, Y方向的高斯核标准差,如果sigmaY为0,则默认与sigmaX相同

(5)“borderType”, 边界处理类型,用于处理滤波核超出图像边界的情况

(三)中值滤波

中值滤波就是对图像的所有像素点进行取中值,即以一个方形区域为单位,将其中心像素点赋值为该区域的中值。例如下图所示3*3矩形中:2、23、46、55、67、98、168、211、235,其中67为中值,所以将中心设置为67

中值滤波是一种非线性滤波方法,对于去除椒盐噪声等椒盐噪声非常有效,但可能会导致图像细节模糊

中值滤波处理函数如下:

1
cv2.medianBlur(src, ksize)

(1)“scr”, 要处理的图像

(2) “ksize”, 滤波核的大小,它是一个表示宽度和高度的元组。例如,(3, 3)表示一个3*3的滤波核

三、完整应用代码

三种滤波方法的具体应用代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import cv2
 
# 图像读取
img = cv2.imread('noise.jpg')
 
# 图像平滑
blur1 = cv2.blur(img, (5, 5))               # 均值滤波
blur2 = cv2.GaussianBlur(img, (5, 5), 1)    # 高斯滤波
blur3 = cv2.medianBlur(img, 5)              # 中值滤波
 
# 图像显示
cv2.imshow('image1', img)
cv2.imshow('image2', blur1)
cv2.imshow('image3', blur2)
cv2.imshow('image4', blur3)
cv2.waitKey(0)
cv2.destroyAllWindows()

到此这篇关于OpenCV平滑处理的实现示例的文章就介绍到这了,更多相关OpenCV平滑处理内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

蓄力AI

微信公众号搜索 “ 脚本之家 ” ,选择关注

程序猿的那些事、送书等活动等着你

原文链接:https://blog.csdn.net/m0_73629902/article/details/135976874

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权/违法违规/事实不符,请将相关资料发送至 reterry123@163.com 进行投诉反馈,一经查实,立即处理!

相关文章

  • Python语言描述连续子数组的最大和

    Python语言描述连续子数组的最大和

    这篇文章主要介绍了Python语言描述连续子数组的最大和,具有一定借鉴价值,需要的朋友可以参考下
    2018-01-01
  • 深入理解Python中__init__.py文件

    深入理解Python中__init__.py文件

    本文主要介绍了深入理解Python中__init__.py文件,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-02-02
  • 使用pandas两列转换成字典的健和值

    使用pandas两列转换成字典的健和值

    这篇文章主要介绍了使用pandas两列转换成字典的健和值方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-05-05
  • Python视频爬虫实现下载头条视频功能示例

    Python视频爬虫实现下载头条视频功能示例

    这篇文章主要介绍了Python视频爬虫实现下载头条视频功能,涉及Python正则匹配、网络传输及文件读写等相关操作技巧,需要的朋友可以参考下
    2018-05-05
  • python判断所输入的任意一个正整数是否为素数的两种方法

    python判断所输入的任意一个正整数是否为素数的两种方法

    今天小编就为大家分享一篇python判断所输入的任意一个正整数是否为素数的两种方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-06-06
  • scrapy头部修改的方法详解

    scrapy头部修改的方法详解

    这篇文章主要给大家介绍了关于scrapy头部修改的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • pip安装时ReadTimeoutError的解决方法

    pip安装时ReadTimeoutError的解决方法

    今天小编就为大家分享一篇pip安装时ReadTimeoutError的解决方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-06-06
  • Python 将字符串转换为列表的7种方法汇总

    Python 将字符串转换为列表的7种方法汇总

    这篇文章主要介绍了Python 将字符串转换为列表的7种方法汇总,在本文中,我们将尝试将给定的字符串转换为列表,其中根据用户的选择,遇到空格或任何其他特殊字符,为此,我们在string中使用split()方法,需要的朋友可以参考下
    2023-11-11
  • Python图片处理之图片裁剪教程

    Python图片处理之图片裁剪教程

    这篇博文的目的是从图片中提取一定的矩形区域作为新的图片 简单来说:我的全家福丢了,所以我想从以前的房间照片里,提取出其中的全家福并重新打印一张(忽视画质问题)现在我就是这么个目的,需要的朋友可以参考下
    2021-05-05
  • Python利用蒙特卡罗模拟期权定价

    Python利用蒙特卡罗模拟期权定价

    期权是一种合约,它赋予买方在未来某个时间点以特定价格买卖资产的权利。本文将利用蒙特卡罗模拟期权定价,感兴趣的小伙伴可以了解一下
    2022-04-04

最新评论