小波变换的基本思想是用一组小波函数或者基函数表示一个函数或者信号,例如图像信号。为了理解什么是小波变换,下面用一个具体的例子来说明小波变换的过程。
1. 求有限信号的均值和差值
[例8. 1] 假设有一幅分辨率只有4个像素 的一维图像,对应的像素值或者叫做图像位置的系数分别为:
[9 7 3 5]
计算它的哈尔小波变换系数。
计算步骤如下:
步骤1:求均值(averaging)。计算相邻像素对的平均值,得到一幅分辨率比较低的新图像,它的像素数目变成了2个,即新的图像的分辨率是原来的1/2,相应的像素值为:
[8 4]
步 骤2:求差值(differencing)。很明显,用2个像素表示这幅图像时,图像的信息已经部分丢失。为了能够从由2个像素组成的图像重构出由4个像 素组成的原始图像,就需要存储一些图像的细节系数(detail coefficient),以便在重构时找回丢失的信息。方法是把像素对的第一个像素值减去这个像素对的平均值,或者使用这个像素对的差值除以2。在这个 例子中,第一个细节系数是(9-8)=1,因为计算得到的平均值是8,它比9小1而比7大1,存储这个细节系数就可以恢复原始图像的前两个像素值。使用同
样的方法,第二个细节系数是(3-4)=-1,存储这个细节系数就可以恢复后2个像素值。因此,原始图像就可以用下面的两个平均值和两个细节系数表示,
[8 4 1 -1]
步骤3:重复第1,2步,把由第一步分解得到的图像进一步分解成分辨率更低的图像和细节系数。在这个例子中,分解到最后,就用一个像素的平均值6和三个细节系数2,1和-1表示整幅图像。
[6 2 1 -1]
这个分解过程如表8-1所示。
表8-1 哈尔变换过程
分辨率
|
平均值
|
细节系数
|
4
|
[9 7 3 5]
|
|
2
|
[8 4]
|
[1 -1]
|
1
|
[6]
|
[2]
|
由此可见,通过上述分解就把由4像素组成的一幅图像用一个平均像素值和三个细节系数表示,这个过程就叫做哈尔小波变换(Haar wavelet transform),也称哈尔小波分解(Haar wavelet decomposition)。这个概念可以推广到使用其他小波基的变换。
从这个例子中我们可以看到:
① 变换过程中没有丢失信息,因为能够从所记录的数据中重构出原始图像。
② 对这个给定的变换,我们可以从所记录的数据中重构出各种分辨率的图像。例如,在分辨率为1的图像基础上重构出分辨率为2的图像,在分辨率为2的图像基础上重构出分辨率为4的图像。
③ 通过变换之后产生的细节系数的幅度值比较小,这就为图像压缩提供了一种途径,例如去掉一些微不足道的细节系数并不影响对重构图像的理解。
分享到:
相关推荐
matlab实现Haar小波变换,优秀大作业,小白必看! matlab实现Haar小波变换,优秀大作业,小白必看! matlab实现Haar小波变换,优秀大作业,小白必看! matlab实现Haar小波变换,优秀大作业,小白必看! matlab实现...
二代提升法实现的haar小波变换程序 及整数小波变换。haar小波实现
matlab开发-Haar小波变换矩阵化。创建Haar小波变换矩阵
基于Matlab二代小波harr变换整数小波变换
这是简单Haar小波变换的程序,是将图像分解为四个分量。
二维小波变换,不断分层,依次类推,形成卷积数组
二维小波变换源代码(C++实现),对学习图像处理非常有用
2、小波变换,利用matlab函数,生成不同类型的小波 (1) mexihat (2) meyer (3) Haar (4) db (5) sym (6) morlet 3、一维连续小波变换 利用连续小波变换函数cwt对带白噪声的正弦信号及正弦加三角波进行变换。在对这...
二维灰度图像的小波变换和逆变换的C++实现,包括源码和编译后程序,可直接运行
为矩阵向量创建 Haar 小波变换矩阵 H Haar小波变换的乘法实现。 此函数使用以下漂亮的公式来创建 Haar 变换矩阵: H_n=1/sqrt(2)[H_(n/2) 克朗 (1 1) I_(n/2) 克朗 (1 -1)], 其中“kron”表示克罗内克积。 迭代从 H_...
使用haar小波变换对图像进行处理,变换源代码,不是函数。对图像进行小波行变换
基于小波变换的图像去噪的matlab程序的源代码,包含GUI界面和测试数据,可显示原始数据和加噪声干扰后的数据,处理后显示效果。
2.内容:基于haar和小波变换的一维ECG信号压缩以及二维图像压缩matlab仿真,对比不同压缩率下的数据图像质量+代码仿真操作视频 3.用处:用于基于haar和小波变换的一维ECG信号压缩以及二维图像压缩算法编程学习 4....
小波变换方面的,haar小波变换在图像压缩上面的应用的matlab编程.
Haar小波变换的基本思想:找到另一个基函数,通过压缩平移也生成差空间,这个基函数和原来的尺度函数能够建立直接的联系。优点是时域紧支撑的,正交对称的,而且计算简单。但是在时域上是不连续的,所以作为基本小波...
小波变换C++源代码 小波变换C++源代码 小波变换C++源代码
这是一维和二维 Haar 小波变换的简单实现。 对于每个转换,输入是一维或二维双精度数组,输出是一维或二维双精度数组。 用法 一维Haar小波变换 让我们以下面的例子为例。 我们有一个一维数组。 double [] data = ...
C#实现一维离散小波变换,选用mallet小波,变换后得到cA(低频 和cD(高频)部分
用LABVIEW自己编的一个HAAR小波变换程序
本章先介绍小波变换的来龙去脉,然后分别介绍连续小波变换、离散小波变换、Haar小波变换和整数小波变换,最后介绍JPEG 2000的编码算法和标准。