Python图像处理(四)——图像平滑操作之均值滤波、方框滤波、高斯滤波、中值滤波

本文介绍了Python图像处理中的四种平滑滤波方法:均值滤波、方框滤波、高斯滤波和中值滤波。通过实例展示了每种滤波器的原理、代码实现及其对图像去噪的效果,重点解释了滤波器在处理噪声和平滑图像方面的作用。
摘要由CSDN通过智能技术生成

一、图像平滑

图像平滑是一种区域增强的算法,平滑算法有邻域平均法、中指滤波、边界保持类滤波等。在图像产生、传输和复制过程中,常常会因为多方面原因而被噪声干扰或出现数据丢失,降低了图像的质量(某一像素,如果它与周围像素点相比有明显的不同,则该点被噪声所感染)。这就需要对图像进行一定的增强处理以减小这些缺陷带来的影响。

为了方便做出比较,先给一幅图片中加入噪声,代码如下:

import  cv2
import numpy as np

# 读取图片
image = cv2.imread('E:/pythonProject/mei.jpeg',cv2.IMREAD_UNCHANGED)
rows,cols,chn = image.shape

#添加噪声
for i in range (5000):
    x = np.random.randint(0,rows)
    y = np.random.randint(0,cols)
    image[x,y,:] = 255

#显示图片
cv2.imshow("noise",image)

#窗口等待
cv2.waitKey(0)
cv2.destroyAllWindows()

#图片写入
cv2.imwrite("E:/pythonProject/meii.jpeg",image)

加入噪声后的图片显示如下:

 

二、均值滤波

1.原理

在进行均值滤波的时候要考虑需要对周围多少个像素去平均值,即确定核的大小,通常情况下都是以当前像素点为中心,读行数和列数相等的一块区域内的所有像素点求平均。将计算得到的结果作为该点的像素。

例如下图中,红色点的像素值为蓝色背景区域像素值之和除25。

 

其中红色区域的像素值均值滤波处理过程为: ((197+25+106+156+159)+ (149+40+107+5+71)+ (163+198+**226**+223+156)+ (222+37+68+193+157)+ (42+72+250+41+75)) / 25
其中5*5的矩阵称为核,针对原始图像内的像素点&#x

  • 6
    点赞
  • 57
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值