JPEG2000 小波变换
1. 小波发展
自从近两百年前Joseph Fourier在研究热力学问题提出Fourier分析以后,长期以来许多数学家一直在寻找更广泛函数空间的性能更好的基底函数族,工程技术领域也一直在寻找更好的时频分析方法,但收获甚微。
1984年法国的年轻的地球物理学家Jean Morlet在进行石油勘探的地震数据处理分析时与法国理论物理学家A.Grossman一起提出了小波变换(wavelet transform, WT)的概念并定义了小波函数的伸缩平移系:
1987年正在读硕士的Stephane Mallat将自己熟悉的图像处理的塔式算法引入小波分析,提出多分辨分析的概念和构造正交小波的快速算法——Mallat算法。
1988年法国女科学家Inrid Daubechies构造出具有紧支集的正交小波基——Daubechies小波。
1990年美籍华裔数学家崔锦泰和武汉大学的数学教授王建忠又构造出基于样条函数的单正交小波函数——样条小波。1992年Daubechies在美国费城举行的CBMS-NFN应用数学大会上作了著名的《小波十讲Ten Lectures on Wavelets》报告,掀起了学习与应用小波的高潮。
1994年Wim Swelden提出了一种不依赖于Fourier变换的新的小波构造方法——提升模式(lifting scheme),也叫第二代小波或整数小波变换。
连续小波变换
连续小波变换(CWT = Continuous wavelet transform)的定义为:
离散小波变换
将连续小波变换的缩放因子a离散化,得到二进小波变换;再将其平移因子b也离散化,就得到离散小波变换。
2. 小波变换
在JPEG 2000的核心编码系统中,对有损压缩采用的是基于Daubechies 9/7 滤波器之提升实现的不可逆DWT,对无损压缩采用的则是基于Le Gall 5/3滤波器之提升实现的可逆DWT。
滤波器通过提升实现。提升的方法:
3 第二代小波变换(整数小波变换)
由于一般的小波滤波器的输出结果是浮点数,因而在对变换后的数据进行压缩时,要先进行量化,以得到相应的整数,这必然会引入误差,不适合于图像的无损压缩。
1994年Wim Swelden提出了一种新的小波构造方法——提升方案(lifting scheme),也叫第二代小波变换(second generation wavelet transform, SGWT)或[整数到]整数小波变换([integer-to-]integer wavelet transform, [IT]IWT)。
第二代小波变换构造方法的特点是:
- 继承了第一代小波的多分辨率的特性;
- 不依赖傅立叶变换, 直接在时域完成小波变换;
- 小波变换后的系数可以是整数;
- 图象的恢复质量与变换时边界采用何种延拓方式无关。
第二代小波变换是由第一代小波变换的提升实现的。与第一代小波相比,第二代小波还具有以下优点:
- 算法简单、速度快、适合并行处理;
- 对内存的需求量小,便于DSP芯片实现;
- 可用本位操作进行运算,能实现任意图像尺寸的小波变换。
由于第二代小波能实现图象的整数到整数的变换,因此给图象的无损压缩提供了理论基础,是JPEG2000标准的一个组成部分。
提升原理
1) 步骤
提升方案把第一代小波变换过程分为以下三个阶段:分解(split),预测(predict)和更新(update)。
第二代小波变换实现方式相对于第一代小波变换具有如下优势:在进行提升计算时,可以采用替代的方法,因此能节省大量空间;通过子表达式的重复使用,需要计算轮廓和细节部分的浮点操作数目大大减少,因此能提高效率。
可以用提升方法来构造具紧支集的双正交小波,那么就可以通过对每一次滤波后的数据进行取整(用[·]表示)来实现整数小波变换,而且这种变换是完全可逆的,也就是完全重构数据。
Sweldens已经证明在提升的基础上可以进行整数集到整数集的小波变换,也就是说,一个整数集合通过小波变换得到的仍然是整数集合。这就给数字图象的压缩编码带来了好处,由于不需要对变换后的系数进行量化,因此提供了实现无损压缩的可能。
4 二维小波变换
5 图像小波系数特点
图像小波变换系数具有下面几个统计特性:空频局部化,能量压缩特性,子带内小波系数的聚类特性,子带间小波系数的相似性,小波系数幅度从低频子带到高频子带的衰减特性。
1. 能量集中在低频子带,高频子带部分会出现大量的0或者接近0的系数。
下图所示为3级小波变换系数的分布结构,可以看出,经过小波变换后,大部分图像能量集中在少数变换系数中,大多数变换系数存在于最低频率子带LL3中,而最高频率子带HH1的小波系数绝大多数都接近于零。
2. 同方向多级子带具有相似性。
即如果小波树的父节点系数值小于某个阈值,则在更高频率子带的相同空间位置和相同方向的子节点系数往往也小于该阈值。
6 二维哈尔小波变换举例
一个图像块是一个二维的数据阵列,可以先对阵列的每一行进行一维小波变换,然后对再行变换之后的阵列的每一列进行一维小波变换,最后对经过变换之后的图像数据阵列进行编码。
经过哈尔小波变换后的矩阵如下:
左上角的元素表示整个图像块的像素值的平均值,其余是该图像块的细节系数。
如果从矩阵中去掉表示图像的某些细节系数,事实证明重构的图像质量仍然可以接受。具体做法是设置一个阈值,例如的细节系数δ≤5就把它当作“0”看待,这样经过变换之后的上面的矩阵就变成
JPEG2000 小波变换相关推荐
- 小波变换原理与JPEG2000
参考文献: 基于多带小波变换的彩色图像压缩编码_文东旭 小波变换在视频图像压缩编码中的应用研究_詹为 百度百科小波变换_百度百科 小波(Wavelet)这一术语,顾名思义,"小波" ...
- 形象易懂讲解算法I——小波变换
https://zhuanlan.zhihu.com/p/22450818?refer=dong5 最早发于回答:能不能通俗的讲解下傅立叶分析和小波分析之间的关系? - 咚懂咚懂咚的回答 现收入专栏. ...
- JPEG2000图像压缩算法学习
压缩算法--JPEG2000 编解码原理 JPEG2000-Matlab源码实现 JPEG和JPEG2000 JPEG2000和JEPG都是静止图像压缩标准,最大区别是在空间域至频域转换.JPEG是基 ...
- 关于JPEG2000软件
现在网上JPEG2000的Kakadu 2.23源代码似乎找不到了.这个不奇怪,因为Kakadu本身早已商业化.其他的JPEG2000的源码也不少,例如OpenJPEG和Jasper,都是开源的.比较 ...
- JPEG2000图象压缩标准及其关键算法(转)
JPEG2000图象压缩标准及其关键算法(转) 摘 要:JPEG2000是为适应不断发展的图像压缩应用而出现的新的静止图像压缩标准.阐述了JPEG2000图像编码系统的实现过程, 对其中采用的基本算 ...
- 傅里叶变换短时傅里叶变换小波变换
一.傅里叶变换 关于傅里叶变换的基本概念在此我就不再赘述了,默认大家现在正处在理解了傅里叶但还没理解小波的道路上.(在第三节小波变换的地方我会再形象地讲一下傅里叶变换) 下面我们主要将傅里叶变换的不足 ...
- 图像压缩算法 JPEG2000
JPEG2000和JEPG都是静止图像压缩标准,最大区别是在空间域至频域转换. JPEG是基于离散余弦变换(DCT), 而JEPG2000是基于离散小波变换(DWT) (补充说明:流媒体一般都采用视频 ...
- jpeg2000算法详解(1)
JPEG2000标准主要由12部分组成,PART 1为其核心部分,其它每部分在该核心部分的基础上增加一些额外的特性和功能.每部分的内容和特征如下所示: PART 1:JPEG2000核心编码系统,标准 ...
- 基于DCT变换的JPEG图像压缩原理与JPEG2000编解码原理
目录 参考文章 基于DCT变换的JPEG图像压缩原理 图像数据压缩 图像处理 为什么可以进行图像压缩? 颜色空间转换 RGB CMY HSV/HSI/HSB/HSL YUV/YCbCr YCbCr与R ...
最新文章
- 如何在“首选项”摘要中显示Android首选项的当前值?
- JAVA入门级教学之(对象的创建和使用)
- 排序算法 --- 希尔排序
- python 代码段的标志_Python代码类型标志
- 知乎高赞:为什么许多原本的 Java 项目都试图用 go 进行重写开源?
- 2021-11-17
- python2线程池_python 线程池调用类方法不执行?
- Python教学视频(三)数据类型及类型间的转换
- 超全汇总,常见的芯片封装大全-道合顺大数据infinigo
- 2021年安全员-A证最新解析及安全员-A证考试总结
- 考勤机信息同步不到服务器,如何同步考勤机数据?
- QT汽车客运公司售票系统
- 网易云音乐前端性能监控实践
- [Matlab]中solve函数与subs函数的使用方法
- 2020智能营销领域最具商业合作价值企业盘点
- 电脑打字技巧:微软输入法的U模式和V模式,快速打日期和时间。
- 【Face Recognition人脸识别】3. 单张图片人脸识别
- 非极大值抑制(non-maximum suppression)的理解
- 随机生成6位数字(包括字母和数字)
- windows10U盘启动
热门文章
- 退出价格战,Q2净利同比下滑13%的中通快递还能拼什么?
- 应届毕业生的第一份程序员工作
- 【Java语言基础】面向对象之封装、继承、抽象类、接口、多态综合知识习题及总结day11
- Mac office word等办公软件如何关闭endntoe grammarly Acrobat等插件 以及解决word卡顿问题
- 蒲丰投针问题和蒙特·卡罗方法
- Android 键盘监听 键盘展开/收起监听
- 数据库课设项目(上) 医院
- python连接pc端蓝牙适配器_PC蓝牙通信C#代码实现
- IDEA中pom.xml配置文件依赖文件版本号报红的最有效解决办法
- 如何结束Explorer.exe进程