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

基于DCT-FFT的图像去噪滤波算法

1. 基于FFT(DFT)的滤波

· 原理:使用离散傅里叶变换(DFT) 将图像从空域变换到频域。FFT是计算DFT的一种高效算法。

· 频域表示:DFT变换后的结果是复数域的,包含了幅度谱(各频率成分的强度)和相位谱(各频率成分的位置信息)。图像的结构信息主要由相位谱决定。

· 常用滤波器:

  · 理想低通滤波器 (ILPF):粗暴地“切断”所有高于阈值D₀的高频成分。

    · 缺点:会产生严重的振铃效应(Ringing Artifact),因为它在频域的陡峭截止对应于空域的一个Sinc函数,会与图像卷积产生波纹。

  · 巴特沃斯低通滤波器 (BLPF):在截止频率处提供平滑的过渡。通过阶数n来控制衰减的陡度。阶数越高越接近理想滤波器,振铃效应越明显;阶数越低越平滑,振铃效应越弱,但可能会过度模糊。

  · 高斯低通滤波器 (GLPF):具有高斯函数形式的平滑过渡。它是不会产生振铃效应的最优选择,因为高斯函数的傅里叶变换仍是高斯函数。

步骤:
1. 对图像进行零填充(防止缠绕错误)。
2. 计算图像的DFT(使用FFT算法),得到频域表示 F(u, v)。
3. 将 F(u, v) 与一个滤波器函数 H(u, v)(如高斯低通)相乘:G(u, v) = F(u, v) * H(u, v)。
4. 对 G(u, v) 进行逆DFT(IDFT),回到空域。
5. 取结果的实部,并裁剪掉零填充的部分,得到去噪后的图像。

2. 基于DCT的滤波

· 原理:使用离散余弦变换(DCT) 将图像从空域变换到频域。DCT的本质是将图像表示为一系列不同频率的余弦波的叠加。
· 频域表示:DCT变换后的结果是实数域的,称为DCT系数。图像的左上角是低频系数(能量集中于此),右下角是高频系数。
· 核心优势 - 能量压缩:DCT具有卓越的能量压缩特性。对于自然图像,大部分能量都集中在少数几个低频DCT系数上,而高频系数(包含噪声和细节)的幅值很小。这使得它非常适合用于压缩和去噪。
· 常用方法 - 系数阈值化: 这是DCT去噪最常用且有效的方法,而非传统的滤波器函数。
· 硬阈值 (Hard Thresholding):设定一个阈值 T。将所有绝对值小于 T 的DCT系数置为0,保留大于 T 的系数。 Y(u, v) = X(u, v) if |X(u, v)| > T, else 0
· 软阈值 (Soft Thresholding):同样设定阈值 T。不仅将小于 T 的系数置0,还将大于 T 的系数向零收缩。 Y(u, v) = sign(X(u, v)) * (|X(u, v)| - T) if |X(u, v)| > T, else 0 软阈值处理通常能获得比硬阈值更平滑的结果。
· 步骤(以分块DCT为例,这是最常用的方式):
1. 将图像分割成小的块(例如 8x8 或 16x16)。
2. 对每一个图像块单独进行DCT变换。
3. 对每一块的DCT系数进行阈值处理(硬阈值或软阈值)。阈值的确定是关键,通常与噪声方差有关。
4. 对阈值化后的DCT系数进行逆DCT变换(IDCT),回到空域。
5. 将所有处理后的图像块拼接起来,形成最终的去噪图像。

http://www.xdnf.cn/news/19134.html

相关文章:

  • GD32入门到实战22--红外NEC通信协议
  • 超越传统SEO:用生成引擎优化(GEO)驱动下一轮增长
  • Tomcat 企业级运维实战系列(三):Tomcat 配置解析与集群化部署
  • UI前端大数据可视化实战策略:如何设计符合用户认知的数据可视化界面?
  • JUC并发编程10 - 内存(02) - volatile
  • vscode terminal远程连接linux服务器GUI图形界面
  • 鸿蒙NEXT布局全解析:从线性到瀑布流,构建自适应UI界面
  • 深入理解计算机端口:为什么通信需要端口?
  • 【读论文】质心重分配显微镜实现活样本超分辨成像
  • Qt中的QSS介绍
  • Time-MOE添加MLP分类头进行分类任务
  • 用户自定义字段(Custom Fields)设计方案,兼顾多语言、分组、校验、权限、查询性能、审计与多租户
  • 创维E910V10C_晶晨S905L2和S905L3芯片_线刷固件包
  • HDMI2.1 8K验证平台
  • 【拍摄学习记录】05-对焦、虚化、景深
  • 告别音色漂移!微软超长语音合成模型VibeVoice正式开源​
  • 数列寻方:等差数列和为完全平方数
  • MinIO社区版“背刺“之后:RustFS用Apache 2.0协议重构开源信任
  • Java接口和抽象类的区别,并举例说明
  • 【Spring Cloud Alibaba】前置知识(一)
  • LeetCode 01背包 494. 目标和
  • 2025_WSL2_Ubuntu20.04_C++20_concept 环境配置
  • AntSK知识库多格式导入技术深度解析:从文档到智能,一站式知识管理的技术奇迹
  • zyplayer-doc 开源知识库:部署与使用指南
  • 千年智造,一触即发 耐达讯自动化Profibus集线器如何让HMI触摸屏在工业4.0中“点石成金“?
  • 新人桌球笔记
  • Web前端入门:JavaScript 一个简单的 IndexedDB 数据库入门示例
  • 【开题答辩全过程】以 基于Vue Spring Boot的教师资格证考试助力系统设计与实现为例,包含答辩的问题和答案
  • QML Chart组件之坐标轴共有属性
  • AI人工智能系统搭建实战指南:常见陷阱与解决方案