参考文献:

基于多带小波变换的彩色图像压缩编码_文东旭

小波变换在视频图像压缩编码中的应用研究_詹为

百度百科小波变换_百度百科

小波(Wavelet)这一术语,顾名思义,“小波”就是小的波形。所谓“小”是指它具有衰减性;而称之为“波”则是指它的波动性,其振幅正负相间的震荡形式。与Fourier变换相比,小波变换是时间(空间)频率的局部化分析,它通过伸缩平移运算对信号(函数)逐步进行多尺度细化,最终达到高频处时间细分,低频处频率细分,能自动适应时频信号分析的要求,从而可聚焦到信号的任意细节,解决了Fourier变换的困难问题,成为继Fourier变换以来在科学方法上的重大突破。

小波变换这一概念是在 Fourier 变换的基础上而产生的,由于小波变换在时域和频域具有良好的局部化性能,能够有效的克服傅里叶变换在处理非平稳图像信息时的局限性,因此被广泛地应用到图形图像处理领域中。

短时傅立叶变换和小波变换是典型的线性变换,它们本质上都是对信号进行加窗线性变换

国际上第一个静态图像压缩标准是JPEG压缩标准[1],用于连续色调的静
态图像压缩与编码。JPEG压缩标准采用的就是基于离散余弦变换的独立块变
换结构。由于JPEG 压缩标准有着较高的压缩性能,并且算法实现比较简单,
容易在软硬件中实现的特点,在短短的几年时间,JPEG压缩标准就被广泛采
用,目前仍有非常强的生命力。但是JPEG压缩标准在低码率压缩情况下,存
在着块效应(俗称马赛克,也叫块噪声)。因此在2001年,联合图像专家组又制
定了JPEG2000 压缩标准[2],目的是用来取代JPEG 压缩标准。然而,时隔多
年的今天,网上80%的图片仍是采用JPEG压缩标准,JPEG2000 压缩标准仍
然没有完全取代JPEG 压缩标准。

而JPEG2000 压缩标准是采用以2-带小波变换为核心的多解析编码方式替代了JPEG 压缩标准所采用的以离散余弦变换为主的区块编码方式,这是小波从理论到应用领域的里程碑式的标志。

JPEG2000压缩标准虽然是一项新的技术,但是算法复杂度非常高,基于
硬件实现的成本很高,并且还存在着许多专利的问题,因此没有被广泛的采用。
另外JPEG2000压缩标准与JPEG 压缩标准不兼容,这也是制约着JPEG2000
压缩标准向产业化发展的一个重要因素。在数学理论上,基于离散余弦变换
的块变换与基于2- 带小波的多解析多层级变换不能兼容,所以JPEG2000 压
缩标准不能兼容JPEG 压缩标准。

JPEG 压缩标准是国际上第一个静态图像压缩标准,用于连续色调的静
态图像压缩与编码。由于JPEG 压缩标准具有非常优良的特性,在短短几年就
被广泛采用,目前仍有很强的生命力,因此JPEG 压缩标准是非常值得学习和
研究的。以下的图例是JPEG 压缩标准编码流程图:

如图3-1所示,JPEG压缩标准主要的处理流程如下:
(1)先对输入的原始图像数据做预处理,即对输入的图像数据按从左到右,
从上到下的顺序按8 × 8 进行分块,如果图像数据的大小不满足8 的倍数,则
对原始图像数据进行扩充;
(2)然后再对输入的原始图像数据做颜色空间转换,将RGB颜色空间转换
成YUV 颜色空间,以降低各分量之间的相关性;
(3)再对UV频道的数据进行下采样,即将UV频道数据按2 × 2 进行分块,
计算每块样本数据的平均值;
(4)对采样后的数据按8 × 8 的块做离散余弦正变换,离散余弦变换有较好
的能量集中性特点,可以将8 × 8 块的数据的能量集中在左上角;
(5)根据系数量化表,将DCT正变换后的数据进行量化,过滤掉大量高频
信息,有利于下一步压缩;
(6)以Zigzag方式对量化后的二维数据进行扫描,转成一维数据,方便后续
的熵编码;
(7)对Zigzag扫描后转成的一维数据进行哈夫曼编码,最终输出为压缩数
据。
从上述流程可以知道,JPEG压缩标准是以离散余弦变换为核心的混合编
码压缩编码。JPEG 压缩标准有着良好的压缩性能,正是因为离散余弦变换
起到了非常重要的作用。不仅如此,其它部分如:颜色空间转换、采样、量
化、Zigzag 扫描和熵编码也都起着非常重要的作用,都是JPEG 压缩标准算法
理论中的重要组成部分。

S3.1.2 JPEG2000压缩标准流程
另一个静态图像压缩标准是JPEG2000,JPEG2000压缩标准被认为是未
来取代JPEG压缩标准的下一代静态图像压缩标准。JPEG2000 压缩标准中采
用了离散小波变换(DWT)取代了JPEG 压缩标准的离散余弦变换(DCT)。以
下的图例是JPEG2000 压缩标准中主要编码步骤的流程图:

如图3-2所示,JPEG2000标准主要的处理流程如下:
(1)先对输入的原始图像数据进行预处理,预处理包括瓦片分割,直流系数
电位平移,分量转换。其中瓦片分割要看输入图像的大小,如果图像太小也可
以不分割成瓦片;如果输入的是彩色图像也需要进颜色空间转换,JPEG2000
标准提供了两种颜色空间转换方法,分别是可逆的颜色空间转换(RCT) 和不
可逆颜色空间转换(ICT)
(2)然后再对每个瓦片分量做离散2-带小波变换,其目的在于去除每个瓦
片子图像内部像素之间的相关性,尽可能的将能量集中到少数变换系数上。
(3)再对小波变换后的子带数据做量化,JPEG2000压缩标准中采用的是均

匀量化,均匀量化的关键是选择合适的量化步长,即要保证解码后的重构图像
的质量,同时又能获得最大的压缩率;
(4)最后将量化后的数据分成大小相等的矩形码块,然后对这些矩形码块
做ECBOT编码。

小波变换比傅里叶变换好在哪里?

相信大家都看过油画。 对于特别巨幅的油画, 不知道有没有过体会, 油画是只可远观而不可亵玩? 当你在足够远的距离观察油画时, 油画所表达的内容是有层次且内容丰富的, 但是当你靠近油画甚至贴在油画上看时, 你只能看到一个个的小色块, 而此时这些小色块此时变成毫无意义的无规则排列。 我们假设油画中的每个小色块都对应某一信号中的某个瞬时时间,那么无数个小色块就拼凑成了整幅画, 相当于无数个瞬时时间片段组成了整个信号。那么,当我们想看看在这个信号的某个时间发生了什么的时候, 我们不得不试图靠近这幅画。

假设一个信号所包含的全部频率信息包含在一副无边无际的油画之中, 辣么, 当你和油画的距离为无穷远的时候你能够毫不费力的看清楚这幅画的全貌,(相当于傅立叶变换,可获得此信号的全部频率信息), 但是你却无法看清楚这幅画的细节(无法得知此信号在某个时刻的瞬时频率)。 当你慢慢走向这幅画的时候(给傅立叶变换加窗), 你走得越近(窗长越短), 细节越清楚(信号的时间分辨率越来越高), 也就是每个小色块都越来越清晰, 但每个色块所包含的信息量(频率信息)也越来越少,这就是著名的海森堡测不准原理(你永远无法得知一个信号之中任一时刻的准确频率信息, 即瞬时频率), 也就是说你永远不可能在距离油画0 cm的位置观测出油画所画的内容。

如果,以上我的假设你都认同的话,辣么加窗傅立叶变换相当于你选择了一个固定的距离观察这幅油画,当距离近时(窗长减少), 油画的细节更加清楚, 但是油画所表达的信息量随之减少。

这时候就有人提出来了,这个问题还不容易吗? 油画在有的地方细节多,我们就离近一点看嘛(增大变换尺度,增加时间分辨率);有的地方细节少,我们就离得稍微远一点看嘛(减小变化尺度,缩减时间分辨率),这样,在细节和内容的信息量上都能兼顾,能够更全面的欣赏这幅油画,这就是所谓的小波变换啦!其实这个原理非常简单, 题主可以想象我们看一副大型油画时,通常都是先离远点看看全貌, 然后对于一些细节丰富的地方,我们会走近观察。

最后总结: 傅立叶变换就相当于: 你只能在远距离观察油画; 加窗傅立叶变换相当于: 你只能在固定的距离观察油画; 而小波变换相当于,你可以在任意的距离观察油画。 这么看, 小波变换的优势是不是显而易见啊??

小波变换原理与JPEG2000相关推荐

  1. 基于DCT变换的JPEG图像压缩原理与JPEG2000编解码原理

    目录 参考文章 基于DCT变换的JPEG图像压缩原理 图像数据压缩 图像处理 为什么可以进行图像压缩? 颜色空间转换 RGB CMY HSV/HSI/HSB/HSL YUV/YCbCr YCbCr与R ...

  2. 写给小白的小波变换原理分析

    写给小白的小波变换原理分析 1.前言 2.傅里叶变换扫盲 3.一个傅里叶变换所不能解决的问题 3.1 问题介绍 3.2 短时傅里叶变换STFT 4.小波变换 4.1 小波变换的原理 4.2 小波变换工 ...

  3. 简谈基于fpga设计9/7小波变换原理

    简谈基于fpga设计9/7小波变换原理 9/7小波变换包括行变换,列变换. 其中行变换包括第一步行变换,第一步行更新,第二步行变换,第二步行更新. 列变换包括第一步列变换,第一步列更新,第二步列变换, ...

  4. 小波变换原理_小波变换的知识,转载的

    一.绘制原理: 需要用到的小波工具箱中的三个函数cwt(),centfrq(),scal2frq().具体参数及用途介绍如下: (1)COEFS = cwt(S,SCALES,'wname') 该函数 ...

  5. 小波变换原理_基于电压行波原理故障测距的相关问题

    本文首先对基于电流行波和电压行波原理的故障测距进行了比较,接下来着重论证了提取电容式电压互感器(CVT)二次电压行波进行故障测距的可行性,并对CVT的行波传变能力进行了仿真分析,提出了小波变换和高速数 ...

  6. 图像压缩小波变换原理

    图像编码算法尽可能节省图像的存储空间和减少传输带宽需求,图像编码的目的是在满足一定解码重构质量的条件下利用尽可能少的比特数对图像进行表示.数字图像中的像素都不是独立存在的,小到相邻像素之间,大到图像块 ...

  7. 小波变换原理_小波变换教程(一):为什么需要小波变换

    本文讲解ROBI POLIKAR编写的小波变换教程<THE WAVELET TUTORIAL>的第一部分:为什么需要小波变换. 链接:http://users.rowan.edu/~pol ...

  8. 一维离散小波变换原理和代码实现

    基本原理: 离散小波变换:对连续小波变换的尺度因子和时移动因子采用不同的离散条件进行离散,得到Discrete Wavelet Transform(DWT).降低计算量的同时,保持连续小波变换的光滑性 ...

  9. 个人理解小波变换及转载小波变换原理

    在学习傅里叶变换的时候我们接触过周期信号的傅里叶变换.傅里叶级数的直观感受就是任意一个周期信号可以用N个正余弦叠加来表示.这些正余弦的频率和幅度各异.每一个余弦信号都有着自己固定的频率和幅值.所以,在 ...

最新文章

  1. Boost 1.53.0 发布,可移植的C++标准库
  2. C# 里怎样得到当前执行的函数名,当前代码行,源代码文件名。
  3. 38.linux集合
  4. 海康 安全码 修改密码_手机为什么要设置PIN码 手机设置PIN码的原因【介绍】
  5. 第二阶段—个人工作总结03
  6. Redis中的可用性保证之Sentinel故障转移
  7. 理解有符号数和无符号数的区别
  8. oracle19c监听服务启动失败,Oracle19c安装(有失败成功记录)
  9. C++ 用遗传算法解决TSP问题,旅行商问题
  10. 2020-08-03 手动编译Qt库(msvc2019版本)
  11. 《影响力》顺从心理学6个使人顺从的策略
  12. 微信小程序之收藏的实现2020-05-16
  13. Java输入时间输出热量卡路里的小程序
  14. python菜鸟教程 | print功能
  15. echarts 实现图表缩放功能 dataZoom自带属性实现
  16. 求n的阶乘的算法框图_递归算法是一种直接或者间接调用自身函数或者方法的算法...
  17. 关于海关179公共的加签数据上报海关 的{code:20005,message:验签失败,total:0,serviceTime:} 解决办法
  18. CRUD的意思???
  19. iconfont阿里巴巴矢量图标库本地下载的使用
  20. 苹果手机图片黑白互换_苹果与3周显卡互换

热门文章

  1. Python爬取蚂蜂窝教程
  2. 外汇保证金交易的优势
  3. Wireshrk 3.0.0网络抓包工具安装及使用(图文教程)
  4. 无法定位程序输入点xxxxx于动态链接库xxxx.exe
  5. 快乐的学习,学习的快乐
  6. Windows 语言版本导致CMD %data%格式不同的解决方法
  7. 外贸-Whatsapp Super Fast Filter Pro
  8. Unity | Video Player的使用方法和原理
  9. OpenHarmony/HarmonyOS文本通用属性
  10. 他是第一个到达学校的人英语_新视野英语unit1-unit6翻译答案(中英对照)