当前位置: 首页 > news >正文

【python】均值、中值和高斯滤波详解和示例

本文对均值、中值和高斯滤波进行详解,以帮助大家理解和使用。

这里写目录标题

  • 均值滤波
  • 中值滤波
  • 高斯滤波
    • 核大小为(9,9)
    • 核大小为(51,51)
  • 小结

下面是示例中使用的原图。

在这里插入图片描述

均值滤波

均值滤波是一种简单的平滑滤波器,它通过将每个像素点的值设置为其邻域内像素点的平均值来消除噪声。均值滤波器通常用于去除高斯噪声和均匀噪声。

import cv2
import numpy as np# 读入图像
img = cv2.imread('Noisy.jpg')# 定义滤波器大小
kernel_size = (5, 5)# 进行均值滤波
blur = cv2.blur(img, kernel_size)# 显示原图和滤波后的图像
cv2.imshow('Original Image', img)
cv2.imshow('Blur Image', blur)
cv2.imwrite("meanImage.jpg",blur)
cv2.waitKey(0)
cv2.destroyAllWindows()

效果图:
在这里插入图片描述

可以通过改变kernel_size = (5, 5)大小,来改变滤波结果。

中值滤波

中值滤波是一种非线性平滑滤波器,它将每个像素点的值设置为其邻域内像素点中值来消除噪声。中值滤波器通常用于去除椒盐噪声和其他孤立的噪声点。

import cv2
import numpy as np# 读入图像
img = cv2.imread('Noisy.jpg')# 定义滤波器大小
#kernel_size = (5, 5)# 进行中值滤波
median = cv2.medianBlur(img, 5)# 显示原图和滤波后的图像
cv2.imshow('Original Image', img)
cv2.imshow('Median Image', median)
cv2.imwrite("zhongImage.jpg",median)
cv2.waitKey(0)
cv2.destroyAllWindows()

在这里插入图片描述

高斯滤波

高斯滤波是一种基于高斯函数的平滑滤波器,它通过将每个像素点的值设置为其邻域内像素点的高斯加权平均值来消除噪声。高斯滤波器通常用于去除高斯噪声和其他类型的噪声,同时保留图像的边缘信息。

import cv2
import numpy as np# 读入图像
img = cv2.imread('Noisy.jpg')# 定义滤波器大小和标准差
kernel_size = (9, 9)
sigmaX = 3  # X方向的标准差,可以根据需要调整
sigmaY = 3  # Y方向的标准差,可以根据需要调整# 进行高斯滤波
gsblur = cv2.GaussianBlur(img, kernel_size, sigmaX, sigmaY)
# 显示原图和滤波后的图像
cv2.imshow('Original Image', img)
cv2.imshow('gsblur Image', gsblur )
cv2.imwrite("gsblur9*9.jpg",gsblur )
cv2.waitKey(0)
cv2.destroyAllWindows()

运行结果:
在这里插入图片描述

核大小为(9,9)

改变核大小为9*9,效果为:
在这里插入图片描述

核大小为(51,51)

在这里插入图片描述

小结

本文使用的原图噪声级别较高,所以各滤波结果的差距较小,但可以看出,随着核大小的增大,图像变得更平滑,但也变得更模糊。
在应用时,可以调整核的大小,以满足自己的降噪场景和效果。

相关文章:

【python】均值、中值和高斯滤波详解和示例

本文对均值、中值和高斯滤波进行详解,以帮助大家理解和使用。 这里写目录标题 均值滤波中值滤波高斯滤波核大小为(9,9)核大小为(51,51) 小结 下面是示例中使用的原图。 均值滤波 均值滤波是一种简单的平滑滤波器&…...

基于STM32的循迹小车项目实战

循迹小车是一种能够沿着预定路线行驶的智能小车,通过巡线传感器检测路面的线路,并根据检测结果调整行驶方向。本项目将基于STM32微控制器实现一个简单的循迹小车,通过学习和实践,帮助初学者熟悉STM32的开发流程和掌握循迹小车的实…...

Element UI 偶发性图标乱码问题

1. 问题如图所示 2. 原因:sass版本低 sass: 1.26.8 sass-loader: 8.0.2 3. 解决方法 (1) 提高sass版本 (2) 在vue.config.js中添加配置 css: {loaderOptions: {sass: {sassOptions: {outputStyle: expanded}}}},4. 遇到的问题 升级后打包,报错 Syntax…...

UniApp中的数据存储与获取指南

目录 介绍 数据存储方案 1. 本地存储 2. 数据库存储 3. 网络存储 实战演练 1. 本地存储实例 2. 数据库存储实例 3. 网络存储实例 注意事项与最佳实践 结语 介绍 在移动应用开发中,数据的存储和获取是至关重要的一部分。UniApp作为一款跨平台应用开发框架…...

VUE基础的一些实战总结

目录 创建一个 Vue 应用 步骤 1:安装 Node.js 和 npm 步骤 2:安装 Vue CLI 步骤 3:创建 Vue 项目 步骤 4:启动开发服务器 步骤 5:访问应用程序 步骤 6:编辑 Vue 应用 步骤 7:构建和部署…...

【算法】算法题-20231117

这里写目录标题 一、搜索插入位置(35)二、字符串相乘(43)三、两个相同字符之间的最长子字符串(1624)四、给你一个 有效括号字符串 s,返回该字符串的 s 嵌套深度 一、搜索插入位置(35…...

轮播图(多个一起轮播)

效果图 class MainActivity : Activity(), Runnable {private lateinit var viewPager: ViewPagerprivate lateinit var bannerAdapter: BannerAdapterprivate val images ArrayList<Int>() // 存储图片资源的列表private val handler Handler() // 用于定时发送消息…...

OpenCV中的像素重映射原理及实战分析

引言 映射是个数学术语&#xff0c;指两个元素的集之间元素相互“对应”的关系&#xff0c;为名词。映射&#xff0c;或者射影&#xff0c;在数学及相关的领域经常等同于函数。 基于此&#xff0c;部分映射就相当于部分函数&#xff0c;而完全映射相当于完全函数。 说的简单点…...

如何快速搭建Spring Boot接口调试环境并实现公网访问

文章目录 前言1. 本地环境搭建1.1 环境参数1.2 搭建springboot服务项目 2. 内网穿透2.1 安装配置cpolar内网穿透2.1.1 windows系统2.1.2 linux系统 2.2 创建隧道映射本地端口2.3 测试公网地址 3. 固定公网地址3.1 保留一个二级子域名3.2 配置二级子域名3.2 测试使用固定公网地址…...

简单的用Python实现一下,采集某牙视频,多个视频翻页下载

前言 表弟自从学会了Python&#xff0c;每天一回家就搁那爬视频&#xff0c;不知道的以为是在学习&#xff0c;结果我昨天好奇看了一眼&#xff0c;好家伙&#xff0c;在那爬某牙舞蹈区&#xff0c;太过分了&#xff01; 为了防止表弟做坏事&#xff0c;我连忙找了个凳子坐下&…...

【手撕数据结构】二分查找(好多细节)

&#x1f308;键盘敲烂&#xff0c;年薪30万&#x1f308; 目录 普通版本的二分查找&#xff1a; right只负责控制边界(少了两次比较)&#xff1a; 时间复杂度更稳定的版本&#xff1a; BSLeftmost&#xff1a; BSRightmost&#xff1a; 普通版本的二分查找&#xff1a; …...

Python+Selenium WebUI自动化框架 -- 基础操作封装

前言&#xff1a; 封装Selenium基本操作&#xff0c;让所有页面操作一键调用&#xff0c;让UI自动化框架脱离高成本、低效率时代&#xff0c;将用例的重用性贯彻到极致&#xff0c;让烦人的PO模型变得无所谓&#xff0c;让一个测试小白都能编写并实现自动化。 知识储备前提&a…...

PyCharm 【unsupported Python 3.1】

PyCharm2020.1版本&#xff0c;当添加虚拟环境发生异常&#xff1a; 原因&#xff1a;Pycharm版本低了&#xff01;不支持配置的虚拟环境版本 解决&#xff1a;下载PyCharm2021.1版本&#xff0c;进行配置成功&#xff01;...

flutter TabBar指示器

第一层tabView import package:jade/configs/PathConfig.dart; import package:jade/customWidget/MyCustomIndicator.dart; importpackage:jade/homePage/promotion/promotionPost/MyPromotionListMainDesc.dart; import package:jade/homePage/promotion/promotionPost/MyPr…...

PDF/X、PDF/A、PDF/E:有什么区别,为什么有这么多格式?

PDF 是一种通用文件格式&#xff0c;允许用户演示和共享文档&#xff0c;无论软件、硬件或操作系统如何。多年来&#xff0c;已经创建了多种 PDF 子类型来满足各个行业的不同需求。让我们看看一些最流行的格式&#xff1a;PDF/X、PDF/A 和 PDF/E。 FastReport .net下载 PDF/X …...

Microsoft发布了一份关于其产品安全修复的 11 月报告。

&#x1f47e; 平均每天有 50 多个漏洞被发现&#xff0c;其中一些会立即被网络犯罪分子利用。我们把那些现在很受网络犯罪分子欢迎&#xff0c;或者根据我们的预测&#xff0c;在不久的将来可能会被大量利用的漏洞称为趋势漏洞。 在攻击者开始利用这些漏洞之前 12 小时&#…...

12v24v60v高校同步降压转换芯片推荐

12V/24V/60V 高校同步降压转换芯片推荐&#xff1a; 对于需要高效、稳定、低噪音的降压转换芯片&#xff0c;推荐使用WD5030E和WD5105。这两款芯片都是采用同步整流技术&#xff0c;具有高效率、低噪音、低功耗等优点&#xff0c;适用于各种电子设备。 WD5030E是一款高效率…...

pip 问题

升级pip命令&#xff1a; python -m pip install --upgrade pippip不能下载pytorch&#xff1a; 这个问题我一直没解决。不知道有哪位大佬可以留言给我。把whl文件下载到本地也没有&#xff0c;pip不会进行本地文件夹搜索。...

云计算(一):弹性计算概述

云计算&#xff08;一&#xff09;&#xff1a;弹性计算概述 背景含义原理应用 背景 在实际场景中&#xff0c;经常会出现短时间内资源需求爆发式增长或长时间内资源需求不断增长&#xff0c;这时需要资源供给时刻满足需求的变化&#xff0c;保障业务正常运行。传统的供给方式…...

Qt/C++ 获取QProcess启动的第三方软件的窗体标题

Qt/C 获取QProcess启动的第三方软件的窗体标题&#xff0c;在使用EnumWindows获取窗体句柄(HWND)时&#xff0c;如果返回提前FALSE&#xff0c;则获取到的HWND状态IsWindow正常&#xff0c;但就是获取不到窗体标题。必须正常返回TRUE才能使用HWND获取到窗体标题&#xff0c;要不…...

3分钟解锁网易云音乐加密文件:NCMDump黑科技全攻略

3分钟解锁网易云音乐加密文件&#xff1a;NCMDump黑科技全攻略 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 你是否曾经在网易云音乐下载了心爱的歌曲&#xff0c;却只能在官方App里听&#xff1f;那种感觉就像买了一本好书&#…...

英雄联盟智能助手Seraphine:从青铜到王者的游戏效率革命 [特殊字符]

英雄联盟智能助手Seraphine&#xff1a;从青铜到王者的游戏效率革命 &#x1f3ae; 【免费下载链接】Seraphine 英雄联盟战绩查询工具 项目地址: https://gitcode.com/gh_mirrors/se/Seraphine 还在为错过排位对局而懊恼吗&#xff1f;还在BP阶段手忙脚乱查询对手战绩吗…...

战略分类:当机器学习遭遇策略性操纵与未知图结构

1. 战略分类中的学习复杂性&#xff1a;从理论到实践在机器学习领域&#xff0c;我们常常谈论模型的泛化能力&#xff0c;也就是一个算法从有限样本中学到的规则&#xff0c;能否在面对新数据时依然有效。这背后有两个核心的理论工具&#xff1a;VC维&#xff08;Vapnik-Chervo…...

小样本下机器学习模型性能稳定性评估:分位数与置信区间实战

1. 项目概述与核心价值在机器学习项目的落地过程中&#xff0c;我们常常会面临一个灵魂拷问&#xff1a;这个模型到底有多“稳”&#xff1f;你辛辛苦苦调参、优化&#xff0c;在某个特定测试集上跑出了95%的准确率&#xff0c;但换个数据划分方式&#xff0c;或者重新初始化一…...

昇腾CANN opbase 算子注册与分发调度:从 API 到 AI Core 的路径追踪

所有 CANN 算子都依赖 opbase——它不是写具体算子的地方&#xff0c;而是算子的"注册中心 调度器"。用户调用 torch.nn.functional.softmax(x) → PyTorch 转发到 CANN → CANN 查 opbase 的算子注册表 → 找到对应的 Ascend C kernel → 加载到 AI Core → 执行。…...

# 软考软件设计师 · 考前2天轻松复习与终极必背手册

软考软件设计师 考前2天轻松复习与终极必背手册&#x1f4c5; 2026年5月21日 | 距考试仅剩2天 | D-2 轻松复习日 ⚠️ 今天的核心任务&#xff1a;翻看错题本 快速过一遍速记口诀 确认考场路线 心态放松 ❌ 不要学新内容&#xff01;不要做难题&#xff01;今天的任务只有一…...

Spark Transformer:稀疏化技术提升大模型计算效率

1. Spark Transformer架构解析在深度学习领域&#xff0c;Transformer模型已经成为自然语言处理和多模态任务的事实标准架构。然而&#xff0c;随着模型规模的不断扩大和序列长度的持续增长&#xff0c;计算效率问题日益突出。2025年提出的Spark Transformer通过创新性地重新激…...

Keil C51中RTX51 Tiny任务列表显示异常的解决方案

1. 问题现象与背景解析在Keil C51开发环境中使用RTX51 Tiny实时操作系统时&#xff0c;开发者经常会遇到一个典型问题&#xff1a;在Vision调试器的RTX-Tiny Tasklist窗口中&#xff0c;任务列表显示为空&#xff0c;没有任何任务状态信息。这种现象通常发生在项目已正确创建任…...

为什么顶尖团队禁用Claude自动生成微服务?(内部泄露的5条红线规则与替代性增强方案)

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;为什么顶尖团队禁用Claude自动生成微服务&#xff1f;&#xff08;内部泄露的5条红线规则与替代性增强方案&#xff09; 顶尖工程团队在微服务架构演进中&#xff0c;普遍将大语言模型&#xff08;LLM&…...

Lindy自动化不是IT部门的事!CIO亲述:如何用“业务-技术-合规”三权制衡模型锁定首期300万降本收益

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;Lindy自动化不是IT部门的事&#xff01;CIO亲述&#xff1a;如何用“业务-技术-合规”三权制衡模型锁定首期300万降本收益 Lindy自动化&#xff08;Lindy Effect-driven Automation&#xff09;的本质&…...