基于 MATLAB 实现的图像信号处理

♻️ 资源

大小: 7.64MB

➡️ 资源下载: https://download.csdn.net/download/s1t16/87425293

一、 常用图像处理算法简介

  1. 二维离散傅立叶变换
  1. 二维离散小波变换

  2. 二维离散余弦变换

二、 峰值信噪比简介

PSNR (Peak Signal to Noise Ratio) 峰值信噪比PSNR衡量图像失真或是噪声水平的客观标准。2个图像之间PSNR值越大,则越相似。普遍基准为30dB,30dB以下的图像劣化较为明显。定义为,

这里MAX表示图像颜色的最大数值,8bit图像取值为255。我们还要介绍MSE(均方差),即m×n单色图像 I 和 K(原图像与处理图像)之间均方误差,定义为:

三、 代码实现与解释

三种变换及峰值信噪比均使用MATLAB实现。

  1. 傅立叶变换

利用fft2()函数进行傅里叶变换,利用fftshift()函数调整fft2()函数的输出顺序,将零频位置移到频谱的中心。

  1. 一级小波分解

利用dwt2()函数进行一级小波分解。

  1. 二级小波分解

利用dwt2()函数进行一级小波分解后,

对ca1再次分解,得到二级小波分解。

  1. 离散余弦变换

利用dct2()函数进行离散余弦变换。

  1. 峰值信噪比

先自定义一个psnr()函数。

然后调用测试两幅图像的相似程度。

四、 实验结果

  1. 傅里叶变换

图(a)为lena的二值图像,对其做傅里叶变换得到图(b)幅度谱,以及图(c)立体分布。

  1. 一级小波分解

对lena的灰度图像进行小波分解,再伪彩色处理,共四部分:近似部分、水平方向细节部分,垂直方向细节部分和对角线方向细节部分。

  1. 二级小波分解

对一级小波分解的近似部分再进行小波分解,可得到二级小波分解。

  1. 离散余弦变换

图(a)为lena的二值图像,对其做离散余弦变换得到图(b)幅度谱,以及图(c)立体分布。

  1. 峰值信噪比

左图为原图,右图为改变图像,中间为计算的峰值信噪比,其中,上面的是彩色的,下面的是灰度的。

五、 参考文献

1\] PentatonicScale,图像处理PSNR及其计算(OpenCV和matlab实现),[http://blog.csdn.net/laoxuan2011/article/details/51519062](http://blog.csdn.net/laoxuan2011/article/details/51519062 "http://blog.csdn.net/laoxuan2011/article/details/51519062").

相关推荐
2501_932750261 小时前
Java IO流基础全面详解:字节流、字符流
java·开发语言
冰暮流星1 小时前
javascript之默认事件
开发语言·javascript·ecmascript
fengci.1 小时前
CTF+随机困难题目
android·开发语言·前端·学习·php
l1t1 小时前
DeepSeek总结的Python 3.14.5 发布候选版本
开发语言·python
雪度娃娃1 小时前
设计模式——单例模式
开发语言·c++·设计模式
Cyber4K1 小时前
【Python专项】进阶语法-日志分类与分析(2)
开发语言·前端·python
lbb 小魔仙1 小时前
Python + LangChain 环境搭建完全指南:从零构建本地 RAG 知识库(附 Ollama 本地模型集成)
开发语言·python·langchain
风落无尘1 小时前
Python 包发布全流程:从项目结构到 PyPI 上线,以及我踩过的那些坑
开发语言·python·pip
xxjj998a1 小时前
PHP vs C#:两大编程语言终极对比
开发语言·c#·php
敲代码的瓦龙1 小时前
Android?基础UI控件!!!
java·开发语言