首页 > 其他分享 >图像处理-图像滤波

图像处理-图像滤波

时间:2023-01-04 18:32:27浏览次数:43  
标签:高斯 image 均值 滤波 像素 图像处理 图像 cv


文章目录

  • ​​1、图像滤波​​
  • ​​2、各滤波特点​​
  • ​​2.1 均值滤波​​
  • ​​2.2 高斯滤波​​
  • ​​2.3中值滤波​​
  • ​​3、案例分析​​
  • ​​3.1 均值滤波​​
  • ​​3.1.1 代码​​
  • ​​3.1.2 blur​​
  • ​​3.2 高斯滤波​​
  • ​​3.2.1 代码​​
  • ​​3.2.2 GaussianBlur​​
  • ​​3.3 中值滤波​​
  • ​​3.3.1 代码​​
  • ​​3.3.2 medianBlur​​
  • ​​3.4 完整代码​​
  • ​​4、效果展示​​
  • ​​4.1 均值滤波​​
  • ​​4.2 高斯滤波​​
  • ​​4.3 中值滤波​​

1、图像滤波

所谓滤波,顾名思义,能够起到图像过滤的作用,本文简单简单介绍,均值滤波,高斯滤波,中值滤波。当然,还有方框滤波,双边滤波器,可分离滤波等,后期遇到了就再补上。本文实现方法均为opencv提供接口。

2、各滤波特点

2.1 均值滤波

原理:均值滤波采用多次测量取平均值的思想,用每一个像素周围的像素的平均值代替自身,具体大小可以指定。
优点:能够将受到噪声影响的像素,使用该噪声周围的像素值进行修复。
缺点:使得像素之间的差距变小,图像变得模糊。

2.2 高斯滤波

原理:高斯滤波主要用来去除高斯噪声,具体原理比较复杂,这里就不介绍了。

2.3中值滤波

原理:中值滤波将待处理来的像素周围像素从小到大排序,取中值代替该像素。
优点:可以有效去除椒盐噪声
缺点:当卷积核较大时,仍然使得图像变得模糊,而且计算量很大。

3、案例分析

3.1 均值滤波

3.1.1 代码

#均值滤波
MeanBlur3 = cv.blur(image,(3,3))
MeanBlur7 = cv.blur(image,(7,7))
Result1 = cv.hconcat((image,MeanBlur3,MeanBlur7))
cv.imshow("MeanBlurResult",Result1)
cv.waitKey()

3.1.2 blur

​blur(src, Size)​​​ **src:**输入图像
**Size:**卷积核尺寸

3.2 高斯滤波

3.2.1 代码

#高斯滤波
GaussBlur3 = cv.GaussianBlur(image,(3,3),sigmaX=10,sigmaY=20)
GaussBlur7 = cv.GaussianBlur(image,(3,3),sigmaX=10,sigmaY=20)
Result3 = cv.hconcat((image,GaussBlur3,GaussBlur7))
cv.imshow("GaussBlurResult",Result3)
cv.waitKey()

3.2.2 GaussianBlur

​GaussianBlur(src, Size, sigmaX,sigmaY)​src:输入图像
Size:卷积核大小
sigmaX:X轴方向标准差大小
sigmaY:Y轴方向标准差大小

3.3 中值滤波

3.3.1 代码

#中值滤波
MedianBlur3 = cv.medianBlur(image,3)
MedianBlur7 = cv.medianBlur(image,3)
Result2 = cv. hconcat((image,MedianBlur3,MedianBlur7))
cv.imshow("MedianBlurResult",Result2)
cv.waitKey()

3.3.2 medianBlur

​medianBlur(src,size)​src:输入图像
size:卷积核大小

3.4 完整代码

def MyBlur(image):
#均值滤波
MeanBlur3 = cv.blur(image,(3,3))
MeanBlur7 = cv.blur(image,(7,7))
Result1 = cv.hconcat((image,MeanBlur3,MeanBlur7))
cv.imshow("MeanBlurResult",Result1)
cv.waitKey()

#高斯滤波
GaussBlur3 = cv.GaussianBlur(image,(3,3),sigmaX=10,sigmaY=20)
GaussBlur7 = cv.GaussianBlur(image,(3,3),sigmaX=10,sigmaY=20)
Result3 = cv.hconcat((image,GaussBlur3,GaussBlur7))
cv.imshow("GaussBlurResult",Result3)
cv.waitKey()

#中值滤波
MedianBlur3 = cv.medianBlur(image,3)
MedianBlur7 = cv.medianBlur(image,3)
Result2 = cv. hconcat((image,MedianBlur3,MedianBlur7))
cv.imshow("MedianBlurResult",Result2)
cv.waitKey()



return;

4、效果展示

4.1 均值滤波

图像处理-图像滤波_图像处理

4.2 高斯滤波

图像处理-图像滤波_高斯滤波_02

4.3 中值滤波

图像处理-图像滤波_图像处理_03


标签:高斯,image,均值,滤波,像素,图像处理,图像,cv
From: https://blog.51cto.com/u_14597003/5989187

相关文章

  • 图像处理-直方图均衡化
    文章目录​​1、直方图均衡化​​​​1.1什么是直方图均衡化​​​​1.2为什么要进行直方图均衡化​​​​1.3怎样进行直方图均衡化​​​​2、案例分析​​​​2.1代码......
  • 利用javaswing+百度云图像识别接口做一个简单的动植物图像识别
    importcom.baidu.aip.imageclassify.AipImageClassify;importcom.sun.prism.PresentableState;importorg.json.JSONObject;importjava.awt.*;importjava.awt.ev......
  • Python从0到1丨细说图像增强及运算
    摘要:本文主要讲解常见的图像锐化和边缘检测方法,即Roberts算子和Prewitt算子。本文分享自华为云社区《​​[Python从零到壹]五十七.图像增强及运算篇之图像锐化Roberts、Pre......
  • Python从0到1丨细说图像增强及运算
    摘要:本文主要讲解常见的图像锐化和边缘检测方法,即Roberts算子和Prewitt算子。本文分享自华为云社区《[Python从零到壹]五十七.图像增强及运算篇之图像锐化Roberts、Prewi......
  • python图像与办公文档处理
    1.颜色。如果你有使用颜料画画的经历,那么一定知道混合红、黄、蓝三种颜料可以得到其他的颜色,事实上这三种颜色就是被我们称为美术三原色的东西,它们是不能再分解的基本颜......
  • 限幅平均滤波法
    #限幅平均滤波法importscipy.signalassignalimportnumpyasnpimportpylabasplimportmatplotlib.pyplotaspltimportmatplotlib'''限幅平均滤波法先......
  • 一阶滞后滤波法
    代码如下importscipy.signalassignalimportnumpyasnpimportpylabasplimportmatplotlib.pyplotaspltimportmatplotlib'''一阶滞后滤波法a:......
  • 奇数窗口的递归平均滤波法
    网上的很多都看不懂,而且好像还有错,所以只好自己写了#递归平均滤波法,N=3importscipy.signalassignalimportnumpyasnpimportpylabasplimportmatplotlib.pyp......
  • 通过二维FFT变换对比加入窗函数之后的图像频谱和相位
    目录一、理论基础1.1二维FFT变换1.2窗函数二、核心程序三、测试结果一、理论基础1.1二维FFT变换以下公式定义m×n矩阵X的离散傅里叶变换 Y:    i......
  • transforms模块—PyTorch图像处理与数据增强方法
      计算机视觉任务中,对图像的变换(ImageTransform)往往是必不可少的操作,例如在迁移学习中,需要对图像尺寸进行变换以使用预训练网络的输入层,又如对数据进行增......