基于 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.

相关推荐
Wang's Blog3 分钟前
Java 项目实战: 外卖平台优化-YApi接口管理平台与文档导入导出
java·开发语言·yapi
jimy110 分钟前
基类没有虚析构函数,基类指针删除派生类对象,行为是未定义的
开发语言·c++
迅猛龙办公室19 分钟前
python获取星期字符串
开发语言·python
泡海椒1 小时前
JQuick-Excel dateFormat 转换实战:日期值与 FORMAT 显示格式的边界
开发语言·python·excel
白杨尚青1 小时前
C++入门篇(十三):vector(上)——动态数组:构造、空间增长与迭代器失效
开发语言·c++·笔记·算法·stl
江江爱编程2 小时前
java零基础保姆级教学01
java·开发语言
沐晓时光2 小时前
C语言入门,深入理解指针(2)
c语言·开发语言
2601_962885722 小时前
如何用 Python 做均线粘合选股?(多头发散前的变盘候选)
开发语言·python
2601_962071572 小时前
类变量和全局变量的隔离性有什么区别?
java·开发语言·jvm
海绵宝宝转agent2 小时前
LeetCode100 LRU缓存思路讲解
java·开发语言·缓存