CS131专题-2:高斯核、噪声、滤波

article/2025/10/3 2:28:32

目录

1 高斯核

1.1 一维定义

1.2 二维定义

1.2.1 应用高斯核的过程

1.2.2 不同σ值的高斯核情况

1.2.3 不同核宽度情况

1.2.4 高斯核(滤波)特性

1.2.5 使用高斯核做平滑滤波相对箱式滤波的优点

2 噪声 和 滤波

2.1 椒盐噪声、脉冲噪声

2.1.1 形成原因

2.1.2 滤波方法

2.1.3 效果

2.2 高斯噪声

2.2.1 形成原因

2.2.2 滤波方法

2.2.3 效果


1 高斯核

高斯核在图像处理中有广泛应用(后续很多其他大章节的算子中会用到高斯核),高斯核就是用一个正态分布去给核中元素赋值。

1.1 一维定义

68% 的数据在±1 个标准差(σ)内;

95% 的数据在±2 个标准差(σ)内;

99.7% 的数据在±3 个标准差(σ)内。

1.2 二维定义

1.2.1 应用高斯核的过程

  1. 指定σ值
  2. 在指定σ值后,还要对整个核进行归一化(核内所有元素值和为1,这是为了确保高斯核作用于图像上后,新图的能量(也就是亮度)大小不变)

1.2.2 不同σ值的高斯核情况

1.2.3 不同核宽度情况

指定σ,高斯核宽度基本也可以算出来:按照3σ原则(该区域内元素值累加超达到全体元素值累计的99.7%),当σ=1时,产生作用的核宽度基本是1+2*(3*1)=7像素;当σ=3时,产生作用的核宽度是1+2*(3*3)=19像素。

为什么?因为超过一定宽度后的元素值基本都接近0了,当你用高斯核对图像进行处理时,高斯核中心区之外的这些位置几乎就不产生什么作用了。下图是不同σ下,元素值和距中心点距离之间的关系。

1.2.4 高斯核(滤波)特性

  1. 去噪时,能把高频信号去掉(低通滤波器)(相当于图像平滑)。
  2. 确定了σ,高斯核宽度也就确定。
  3. 一个大高斯核,能够用两个小高斯核连续操作实现,从而减少计算量(证明见专题1)。(因为卷积有这种性质)
  4. 高斯核能分解

1.2.5 使用高斯核做平滑滤波相对箱式滤波的优点

在《专题1——卷积和互相关》中,提到普通的箱式平滑滤波如下:

滤波核是一个正方形,新图中每个像素点值用原图中一块矩形区域相似累加平均得到,这么做会引发一点点问题,导致新图上产生横竖一样的痕迹纹路。如果把滤波核换成各方向中心对称的高斯核,则没有这个问题。两者效果对比如下(右下角图采用的高斯核进行平滑滤波):

2 噪声 和 滤波

2.1 椒盐噪声、脉冲噪声

有孤立的纯黑、 纯白的像素点

2.1.1 形成原因

像素感应器失效、通讯受干扰等。

2.1.2 滤波方法

中值滤波——取临近像素的中值作为替换。

2.1.3 效果

2.2 高斯噪声

各种灰度值噪声都有,成正态分布。

2.2.1 形成原因

传感器亮度不均匀、各种其他噪声叠加等。

2.2.2 滤波方法

因为高斯噪声的范围遍布所有灰度级,所以,任何一种低通、高通、带通滤波器都无法完全将其滤除,我们只能尽可能的获得较好效果。滤除高斯噪声的主要方法有:平滑线性滤波、高斯滤波、维纳滤波还有小波去噪

2.2.3 效果


http://chatgpt.dhexx.cn/article/rhnSZimy.shtml

相关文章

python高斯核函数_机器学习:SVM(核函数、高斯核函数RBF)

一、核函数(Kernel Function) 1)格式 K(x, y):表示样本 x 和 y,添加多项式特征得到新的样本 x、y,K(x, y) 就是返回新的样本经过计算得到的值; 在 SVM 类型的算法 SVC() 中,K(x, y) 返回点乘:x . y 得到的值; 2)多项式核函数 业务问题:怎么分类非线性可分的样本…

高斯整数matlab,Matlab---自适应高斯核

MCNN提出了适用于高密度人群的自适应高斯核: 笔者所理解的自适应高斯核函数: %function:通过高斯核产生相应的密度矩阵 %parameter: im:输入图像,灰度图; points:标注的点[X Y],n*2的矩阵 function im_density = get_density_map_autogaussian(im,points) im_density =…

高斯核原理详解+生成高斯核的Python代码

要搞清楚高斯核的原理的话,把下面这篇博文认认真真看一遍就可以了,链接如下: https://blog.csdn.net/u013066730/article/details/123112159 下面是我认为值得注意和需要补充说明的几点: 1 为什么高斯滤波能够让图像实现模糊化&a…

C语言哈希表UT_hash的使用方法详解

由于C语言本身不存在哈希,因此&#xff0c;我们可以调用开源的第三方头文件&#xff0c;这只是一个头文件&#xff1a;uthash.h&#xff0c;使用时只需要在文件首部编写#include<uthash.h>即可。 uthash的使用 #include "uthash.h" struct my_struct {int id…

utxo 是什么

UTXO 代表 Unspent Transaction Output。 在比特币社区里&#xff0c;Transaction 被简称为 TX&#xff0c;所以上面这个短语缩写为 UTXO。一般会认为 UTXO 是比特币区块链设计当中的一部分&#xff0c;但事实上 UTXO 和区块链没有必然的联系&#xff0c;你可以完全照搬比特币区…

UT单元测试(一)——基础流程总结篇

参考书籍《单元测试的艺术》 一、单元测试的定义 一个单元测试是一段代码&#xff08;通常是一个方法&#xff09;&#xff0c;这段代码调用另一段代码&#xff08;一个单元可以是一个方法或函数&#xff09;&#xff0c;然后检验某些假设的正确性。如果这些假设是正确的&a…

UT标记详细说明

原来论坛用的是UT标记&#xff0c;UT是UltraThreads的简写。 微软word用的是Microsoft Word XML。 网页用的html ------------------------------------------------------------------ 什么是UT代码&#xff1f; UT标记对HTML的简化。一般情况下&#xff0c;即使指定讨论区禁…

UT-890J ( USB -2- RS422/485 Cable )

USB -2- RS422/485 Cable < 參考 網路文章 / 規格書 > DB9 公頭 (有 DB9轉 KF128螺絲端子轉接板 ) UT890_20190220152556_43695-2.pdf 驅動下載: UT890_Win XP Server2003 2008 Vista 7 8 32-64bit FT-232 USB-232 Chip USB -2- RS422/485 Cable < 參考文章 / 規格書…

RTU是什么及其用途

RTU是Remote Terminal Unit&#xff08;远程终端单元&#xff09;的缩写&#xff0c;是一种用于实现现动器等现场控制设备&#xff0c;实现对现场设备的实时监控&#xff0c;用途包括以下几个方面&#xff1a; 1.压力、流量等。 2.实时监测&#xff1a;RTU可以对现场设备进行…

RTU和DTU的区别是什么?

在物联网应用中&#xff0c;我们经常使用到两种数据传输设备——DTU和RTU。它们的功能大致相似&#xff0c;但又有些许不同。那在实际应用中&#xff0c;什么情况选择DTU&#xff0c;什么情况选择RTU呢&#xff1f;下面我们就一起来看看&#xff0c;它们之间到底有什么区别以及…

RTU和DTU分别是什么?

RTU和DTU是两种常见的远程数据采集和传输设备&#xff0c;虽然它们都是用于实现远程数据采集和传输&#xff0c;但在一些方面存在不同&#xff0c;下面是两者的区别。1、定义RTU是Remote Terminal Unit的缩写&#xff0c;翻译为“远程终端单元”&#xff0c;它是一种用于实现远…

硬刚Hive | 4万字基础调优面试小总结

本文基本涵盖以下内容&#xff1a; 一、基于Hadoop的数据仓库Hive基础知识二、HiveSQL语法三、Hive性能优化四、Hive性能优化之数据倾斜专题五、HiveSQL优化十二板斧六、Hive面试题(一)七、Hive/Hadoop高频面试点集合(二) 基于Hadoop的数据仓库Hive基础知识 Hive是基于Hadoop的…

数据结构知识点_重点期考总结复习

目录 前言数据数据的逻辑结构和物理结构逻辑结构物理结构&#xff08;存储结构&#xff09; 算法特性和时间复杂度算法的五大特性算法的时间复杂度 线性表线性表两种存储结构顺序表链型表线性表分析 栈和队列栈队列 串串的基本操作定长存储结构堆分配存储结构块链存储表示串的模…

前端JS/TS面试题

JS面试题总结 一、this指向问题&#xff08;1&#xff09;this的理解&#xff08;2&#xff09;怎样改变this的指向问题&#xff08;3&#xff09;Call,bind,apply三者的区别&#xff08;4&#xff09;容易判读错的几种this情况&#xff08;5&#xff09;this指向问题&#xff…

3.Hadoop Hive服务

接上文—————> 目录&#xff1a; 一.安装二.have基本命令操作三.hive数据仓库四.hive表的类型&#xff1a;五.hive中重要的元数据表六.hive的连接方式七.使用jdbc编写外部程序操作hive八.hive的基本数据类型九.hive的复杂的数据类型十.hive的建表语句十一.hive 删除表十…

深入理解计算机系统(CSAPP)含lab详解 完结

文章目录 深入理解计算机操作系统-第一章1.1 信息就是位 上下文1.2 程序被其他程序翻译成不同的格式1.3 了解编译系统如何工作是大有益处的1.4 处理器读并解释储存在内存中的指令1.4.1 系统的硬件组成I/O 设备1.4.2 运行 hello 程序 1.5 高速缓存至关重要1.6 存储设备形成层次…

面经-hangzhou

目录 上篇 一、基础篇 网络基础 TCP三次握手 HTTP协议 浏览器输入URL过程 操作系统基础 进程和线程的区别 操作系统内存管理 Java基础 面向对象三大特性 数据结构 设计模式与原则 面试题 构造方法 初始化块 This 重写和重载的区别 Object类方法 基本数据类…

Hive入门详解操作

Hive 第一章 Hive简介 1.1. Hive的简介 1.1.1 hive出现的原因 FaceBook网站每天产生海量的结构化日志数据&#xff0c;为了对这些数据进行管理&#xff0c;并且因为机器学习的需求&#xff0c;产生了hive这门技术&#xff0c;并继续发展成为一个成功的Apache项目。 1.1.2 …

计算机科学速成课 Crash Course Computer Science 笔记(摘要形式)

Crash Course Computer Science总共40节课&#xff0c;架构式地详细介绍了计算机从底层到顶层的构造和新的技术&#xff0c;一节课十分钟左右&#xff0c;可让小白在很短时间内产生对计算机的总体理解 本文是听课后做的笔记&#xff0c;便于复习回顾 点击观看计算机科学速成课 …

算法基础课【合集1】

文章目录 基础算法785. 快速排序786. 第k个数787. 归并排序788. 逆序对的数量789. 数的范围790. 数的三次方根791. 高精度加法792. 高精度减法793. 高精度乘法794. 高精度除法795. 前缀和796. 子矩阵的和797. 差分798. 差分矩阵799. 最长连续不重复子序列800. 数组元素的目标和…