3. 图像小波变换的 Matlab 实现

3.1 一维小波变换的 Matlab 实现
(1) dwt 函数
功能:一维离散小波变换
格式:[cA,cD]=dwt(X,'wname')
         [cA,cD]=dwt(X,Lo_D,Hi_D)
说明:[cA,cD]=dwt(X,'wname') 使用指定的小波基函数 'wname' 对信号 X 进行分解,cA、cD 分别为近似分量和细节分量;[cA,cD]=dwt(X,Lo_D,Hi_D) 使用指定的滤波器组 Lo_D、Hi_D 对信号进行分解。
(2) idwt 函数
功能:一维离散小波反变换
格式:X=idwt(cA,cD,'wname')
         X=idwt(cA,cD,Lo_R,Hi_R)
         X=idwt(cA,cD,'wname',L)
         X=idwt(cA,cD,Lo_R,Hi_R,L)
说明:X=idwt(cA,cD,'wname') 由近似分量 cA 和细节分量 cD 经小波反变换重构原始信号 X 。
         'wname' 为所选的小波函数
         X=idwt(cA,cD,Lo_R,Hi_R) 用指定的重构滤波器 Lo_R 和 Hi_R 经小波反变换重构原始信号 X 。
         X=idwt(cA,cD,'wname',L) 和 X=idwt(cA,cD,Lo_R,Hi_R,L) 指定返回信号 X 中心附近的 L 个点。

3.2 二维小波变换的 Matlab 实现

二维小波变换的函数
-------------------------------------------------
     函数名                 函数功能
---------------------------------------------------
     dwt2             二维离散小波变换
   wavedec2       二维信号的多层小波分解
     idwt2           二维离散小波反变换
   waverec2         二维信号的多层小波重构
   wrcoef2           由多层小波分解重构某一层的分解信号
   upcoef2           由多层小波分解重构近似分量或细节分量
   detcoef2         提取二维信号小波分解的细节分量
   appcoef2         提取二维信号小波分解的近似分量
   upwlev2         二维小波分解的单层重构
   dwtpet2         二维周期小波变换
   idwtper2         二维周期小波反变换
-------------------------------------------------------------

(1) wcodemat 函数
功能:对数据矩阵进行伪彩色编码
格式:Y=wcodemat(X,NB,OPT,ABSOL)
         Y=wcodemat(X,NB,OPT)
         Y=wcodemat(X,NB)
         Y=wcodemat(X)
说明:Y=wcodemat(X,NB,OPT,ABSOL) 返回数据矩阵 X 的编码矩阵 Y ;NB 伪编码的最大值,即编码范围为 0~NB,缺省值 NB=16;
       OPT 指定了编码的方式(缺省值为 'mat'),即:
                 OPT='row' ,按行编码
                 OPT='col' ,按列编码
                 OPT='mat' ,按整个矩阵编码
       ABSOL 是函数的控制参数(缺省值为 '1'),即:
                 ABSOL=0 时,返回编码矩阵
                 ABSOL=1 时,返回数据矩阵的绝对值 ABS(X)

(2) dwt2 函数
功能:二维离散小波变换
格式:[cA,cH,cV,cD]=dwt2(X,'wname')
         [cA,cH,cV,cD]=dwt2(X,Lo_D,Hi_D)
说明:[cA,cH,cV,cD]=dwt2(X,'wname')使用指定的小波基函数 'wname' 对二维信号 X 进行二维离散小波变幻;cA,cH,cV,cD 分别为近似分量、水平细节分量、垂直细节分量和对角细节分量;[cA,cH,cV,cD]=dwt2(X,Lo_D,Hi_D) 使用指定的分解低通和高通滤波器 Lo_D 和 Hi_D 分解信号 X 。

(3) wavedec2 函数
功能:二维信号的多层小波分解
格式:[C,S]=wavedec2(X,N,'wname')
         [C,S]=wavedec2(X,N,Lo_D,Hi_D)
说明:[C,S]=wavedec2(X,N,'wname') 使用小波基函数 'wname' 对二维信号 X 进行 N 层分解;[C,S]=wavedec2(X,N,Lo_D,Hi_D) 使用指定的分解低通和高通滤波器 Lo_D 和 Hi_D 分解信号 X 。

(4) idwt2 函数
功能:二维离散小波反变换
格式:X=idwt2(cA,cH,cV,cD,'wname')
         X=idwt2(cA,cH,cV,cD,Lo_R,Hi_R)
         X=idwt2(cA,cH,cV,cD,'wname',S)
         X=idwt2(cA,cH,cV,cD,Lo_R,Hi_R,S)
说明:X=idwt2(cA,cH,cV,cD,'wname') 由信号小波分解的近似信号 cA 和细节信号 cH、cH、cV、cD 经小波反变换重构原信号 X ;X=idwt2(cA,cH,cV,cD,Lo_R,Hi_R) 使用指定的重构低通和高通滤波器 Lo_R 和 Hi_R 重构原信号 X ;X=idwt2(cA,cH,cV,cD,'wname',S) 和 X=idwt2(cA,cH,cV,cD,Lo_R,Hi_R,S) 返回中心附近的 S 个数据点。

(5) waverec2 函数
说明:二维信号的多层小波重构
格式:X=waverec2(C,S,'wname')
         X=waverec2(C,S,Lo_R,Hi_R)
说明:X=waverec2(C,S,'wname') 由多层二维小波分解的结果 C、S 重构原始信号 X ,'wname' 为使用的小波基函数;X=waverec2(C,S,Lo_R,Hi_R) 使用重构低通和高通滤波器 Lo_R 和 Hi_R 重构原信号。
图像处理工具箱1. 图像和图像数据
   缺省情况下,MATLAB将图像中的数据存储为双精度类型(double),64位浮点
数,所需存储量很大;MATLAB还支持另一种类型无符号整型(uint8),即图像矩
阵中每个数据占用1个字节。
   在使用MATLAB工具箱时,一定要注意函数所要求的参数类型。另外,uint8
与double两种类型数据的值域不同,编程需注意值域转换。
           从uint8到double的转换
   ---------------------------------------------
       图像类型         MATLAB语句
   ---------------------------------------------
     索引色             B=double(A)+1
     索引色或真彩色 B=double(A)/255
     二值图像           B=double(A)
   ---------------------------------------------

从double到uint8的转换
   ---------------------------------------------
       图像类型         MATLAB语句
   ---------------------------------------------
     索引色               B=uint8(round(A-1))
     索引色或真彩色     B=uint8(round(A*255))
     二值图像             B=logical(uint8(round(A)))
   ---------------------------------------------

2. 图像处理工具箱所支持的图像类型

2.1 真彩色图像
     R、G、B三个分量表示一个像素的颜色。如果要读取图像中(100,50)处的像素值,
可查看三元数据(100,50,1:3)。
     真彩色图像可用双精度存储,亮度值范围是[0,1];比较符合习惯的存储方法是用无
符号整型存储,亮度值范围[0,255]
  
2.2 索引色图像
   包含两个结构,一个是调色板,另一个是图像数据矩阵。调色板是一个有3列和若干行
的色彩映象矩阵,矩阵每行代表一种颜色,3列分别代表红、绿、蓝色强度的双精度数。
  
   注意:MATLAB中调色板色彩强度[0,1],0代表最暗,1代表最亮。
           常用颜色的RGB值
   --------------------------------------------
     颜色     R   G   B       颜色     R   G   B
   --------------------------------------------
     黑     0   0   1       洋红     1   0   1
     白     1   1   1       青蓝     0   1   1
     红     1   0   0       天蓝 0.67 0   1
     绿     0   1   0       橘黄     1 0.5 0
     蓝     0   0   1       深红   0.5 0   0
     黄     1   1   0       灰     0.5 0.5 0.5      
   --------------------------------------------
         产生标准调色板的函数
   -------------------------------------------------
     函数名       调色板
   -------------------------------------------------
     Hsv       色彩饱和度,以红色开始,并以红色结束
     Hot       黑色-红色-黄色-白色
     Cool

MATLAB小波变换相关推荐

  1. 【图像去噪】基于matlab小波变换(硬阙值+软阙值)图像去噪【含Matlab源码 391期】

    一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[图像去噪]基于matlab小波变换(硬阙值+软阙值)图像去噪[含Matlab源码 391期] 点击上面蓝色字体,直接付费下载,即可. 获取 ...

  2. MATLAB小波变换的图像融合系统[完美运行,GUI界面,详细教程,万字文稿]

    课题题目 基于MATLAB小波变换的图像融合系统 GUI框架链接:戳这里 课题背景介绍 数字图像融合是一项最新发展起来的应用,对于数字图像处理和数字图像分析起着非常重要的重要.虽然现阶段,对于图像处理 ...

  3. Matlab小波变换双端行波测距凯伦布尔变换放射状配电网单相故障测距Simulink模型及对应程序

    Matlab小波变换双端行波测距凯伦布尔变换放射状配电网单相故障测距Simulink模型及对应程序. 配有对应说明及原理参考文献,适合初学者学习. YID:9219641290933817

  4. matlab小波变换图像融合,MATLAB小波变换的图像融合算法的研究与实现+代码

    摘  要:随着科技的不断进步,图像融合由于其能够去除环境中的部分干扰以及加强原图像的有效信息等优点逐渐成为人们的研究热点之一.本文详细分析了小波变换和图像融合的相关理论,将小波变换的多分辨率分析的特点 ...

  5. matlab 小波变换_matlab小波工具箱实例(二):时频分析和连续小波变换

    本文讲解matlab小波工具箱实例(二):时频分析和连续小波变换.目录如下: 链接:https://www.mathworks.com/help/wavelet/ug/time-frequency-a ...

  6. matlab 小波变换_连续小波变换实现方法的总结及其程序详解

    在帖子"给大家分享我自己编的程序-连续小波变换" 中,pengzk版友给出了morlet小波变换的源代码,但其中的许多参数和语句意义不够明确,这就给一些希望了解连续小波变换实现方法 ...

  7. MATLAB小波变换图像处理简单示例

    前言   从傅里叶变换到短时傅里叶变换再到小波变换,这些分析问题的方法是一代一代人的探索和积累得来的宝贵知识财富.比较常见的还有脊波变换,曲波变换,轮廓波变换.感觉一种方法弄懂了,在以后很有可能会再次 ...

  8. 【语音隐藏】基于matlab小波变换DWT结合离散余弦变换DCT音频数字水印嵌入提取【含Matlab源码 2131期】

    ⛄一.离散小波变换的音频信号数字水印技术简介 0 引言 近年来, 数字水印技术的作用越来越重要.数字水印技术是将一些标识信息直接嵌入数字载体当中, 或间接表示在信号载体中, 且不影响原载体的使用价值. ...

  9. 谐波小波matlab,基于MATLAB小波变换在电网谐波检测的仿真与研究

    <工业控制计算机>2012 年第 25 卷第 10 期 谐波分析是当前国内外电能质量检测研究的一个热点,其研究的难点是对突变的. 暂态的. 非平稳扰动信号的检测与分析,只利用传统的傅立叶变 ...

最新文章

  1. event.keyCode用法及列表
  2. 架构师写的BUG,非比寻常
  3. 每秒1w+分布式事务--dtm的Redis存储性能测试分析
  4. POJ 1002题 解题报告
  5. [Oracle PL/SQL]当数据表设计成具有父ID的时候,当需要选择所有与父ID同根生的所有节点的时候,使用的SQL语句...
  6. Spring Boot 中使用 RabbitMQ
  7. 早期计算机音乐创作的歌曲,14.计算机音乐创作(专业组)
  8. 访问 Neutron 外部网络 - 每天5分钟玩转 OpenStack(143)
  9. soureTree中如何设置git 用户名与密码 SourceTree提交修改用户详细图文方法
  10. Makefile中=、:=、+=、?=的区别
  11. exc_bad_access(code=1, address=0x789870)野指针错误
  12. Netty工作笔记0062---WebSocket长连接开发
  13. 元素周期表排列的规律_元素周期表的秘密【机密文件】
  14. C++基础:第七章 函数
  15. 数据库大作业——基于C#和SQL Server的简单日常记账系统
  16. Linux系统字符终端自动登录问题
  17. C++开源库列表总结记录
  18. 随心所欲b超工作站图像处理_第七讲随心所欲版医学影像工作站软件每周一题...
  19. SPA项目开发之登录
  20. 蝉知门户系统迁移到SAE平台-对蝉知2.5版本部分功能的限制

热门文章

  1. 【Bug_驱动】ThinkPad鼠标和触摸板无法同时使用的解决方案
  2. 网络安全的第二道防线:区块链
  3. 易基因|精准医学: TERT启动子DNA甲基化在癌症中的双重作用
  4. sqlmap之sql注入原理利用
  5. Cmake时遇见:No package ‘epoxy‘ found的解决方法
  6. Windows关闭ms-gamingoverlay弹窗
  7. 2022年施工员-装饰方向-通用基础(施工员)考试题库及施工员-装饰方向-通用基础(施工员)证考试
  8. java serlet清空cookie_Java如何在Servlet中删除Cookie?
  9. verilog报错汇总(1)
  10. 敏捷开发 如何设计好看板?:敏捷看板成功实施的关键?如何通过看板实现项目可视化?