资源描述
单击此处编辑母版标题样式,2002年10月9日,*,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,2002,秋季学期网上课程多媒体技术基础与应用,(Multimedia Fundamentals and Applications)(Face to Face 2 of 4),林 福 宗,清华大学 计算机科学与技术系,智能技术与系统国家重点实验室,2002年10月9日,2002年10月9日,小波变换与应用,一、小波变换,1.小波,2.小波变换,3. 离散小波变换,二、Haar小波变换,1.哈尔函数,2.求均值和差值,3. 哈尔变换的特性,4.一维哈尔小波变换,5. 二维哈尔小波变换,三、阅读和练习作业,2002年10月9日,一、Wavelet Transform,小波分析是近十几年才发展起来并迅速应用到图像处理和语音分析等众多领域的一种数学工具。它是继110多年前的傅立叶(Joseph Fourier)分析之后的一个重大突破,无论是对古老的自然学科还是对新兴的高新技术应用学科都产生了强烈冲击。 小波理论是应用数学的一个新领域。要深入理解小波理论需要用到比较多的数学知识。本教学提纲企图从工程应用角度出发,用比较直观的方法来介绍小波变换和它的应用,为读者深入研究小波理论和应用提供一些背景材料,2002年10月9日,1. What is wavelet,一种函数,具有有限的持续时间、突变的频率和振幅,波形可以是不规则的,也可以是不对称的,在整个时间范围里的幅度平均值为零,比较正弦波,2002年10月9日,部分小波波形,2002年10月9日,小波的定义,Wavelets are a class of a functions used to localize a given function in both space and scaling. A family of wavelets can be constructed from a function , sometimes known as a mother wavelet, which is confined in a finite interval. Daughter wavelets are then formed by translation (,b,) and contraction (,a,). Wavelets are especially useful for compressing image data, since a,wavelet transform,has properties which are in some ways superior to a conventional,Fourier transform,.,2002年10月9日,An individual wavelet can be defined by,and Calderns formula gives,Then,A common type of wavelet is defined using Haar functions.,2002年10月9日,2. Wavelet Transform,老课题函数的表示方法,新方法Fourier,Haar,wavelet transform,2002年10月9日,(1) 1807: Joseph Fourier,傅立叶理论指出,一个信号可表示成一系列正弦和余弦函数之和,叫做傅立叶展开式。,用傅立叶表示一个信号时,只有频率分辨率而没有时间分辨率,这就意味我们可以确定信号中包含的所有频率,但不能确定具有这些频率的信号出现在什么时候。,为了继承傅立叶分析的优点,同时又克服它的缺点,人们一直在寻找新的方法。,2002年10月9日,傅立叶变换的定义:A mathematical description of the relationship between functions of time and corresponding functions of frequency; a map for converting from one domain to the other. For example, if we have a signal that is a function of time-an impulse response- then the Fourier Transform will convert that time domain data into frequency data, for example, a frequency response. (),2002年10月9日,(2) 1910: Alfred Haar发现Haar小波,哈尔(Alfred Haar)对在函数空间中寻找一个与傅立叶类似的基非常感兴趣。,1909年他发现了小波,1910年被命名为Haar wavelets,他最早发现和使用了小波。,2002年10月9日,(3) 1945: Gabor提出STFT,20世纪40年代Gabor开发了STFT (short time Fourier transform),STFT的时间-频率关系图,2002年10月9日,(4) 1980: Morlet提出了CWT,CWT (continuous wavelet transform),20世纪70年代,当时在法国石油公司工作的年轻的地球物理学家Jean Morlet提出了小波变换WT(wavelet transform)的概念。,20世纪80年代,从STFT开发了CWT:,2002年10月9日,Definition - Basis Functions: a set of linearly independent functions that can be used (e.g., as a weighted sum) to construct any given signal.,where:,a,= scale variable 缩放因子,k,= time shift 时间平移,h,* = wavelet function 小波函数,用y = scaled (dilated) and shifted (translated) Mother wavelet function,在CWT中,scale和position是连续变化的,2002年10月9日,缩放(scaled)的概念,例1:正弦波的算法,2002年10月9日,缩放(scaled)的概念(续),例2:小波的缩放,2002年10月9日,平移(translation)的概念,2002年10月9日,(5) CWT的变换过程,可分成如下5个步骤,步骤1: 把小波 和原始信号 的开始部分进行比较,步骤2: 计算系数c 。该系数表示该部分信号与小波的近似程度。系数 c 的值越高表示信号与小波越相似,因此系数c 可以反映这种波形的相关程度,步骤3: 把小波向右移,距离为 ,得到的小波函数为 ,然后重复步骤1和2。再把小波向右移,得到小波 ,重复步骤1和2。按上述步骤一直进行下去,直到信号 结束,步骤4: 扩展小波 ,例如扩展一倍,得到的小波函数为,步骤5: 重复步骤14,2002年10月9日,(a) 二维图,2002年10月9日,(b) 三维图,连续小波变换分析图,2002年10月9日,(6) 三种变换的比较,2002年10月9日,(7) 1984: subband coding (Burt and Adelson),SBC (subband coding)的基本概念:把信号的频率分成几个子带,然后对每个子带分别进行编码,并根据每个子带的重要性分配不同的位数来表示数据,20世纪70年代,子带编码开始用在语音编码上,20世纪80年代中期开始在图像编码中使用,1986年Woods, J. W.等人曾经使用一维正交镜像滤波器组(quadrature mirror filterbanks,QMF)把信号的频带分解成4个相等的子带,2002年10月9日,图(a),正交镜像滤波器(QMF),2002年10月9日,图中的符号 表示频带降低1/2,HH表示频率最高的子带,LL表示频率最低的子带。这个过程可以重复,直到符合应用要求为止。这样的滤波器组称为分解滤波器树(decomposition filter trees),图(b) 表示其相应的频谱,2002年10月9日,(8) 20世纪80年代,Mallat, Meyer等人提出multiresolution theory,法国科学家Y.Meyer创造性地构造出具有一定衰减性的光滑函数,他用缩放(dilations)与平移(translations)均为 2的j次幂的倍数构造了平方可积的实空间L,2,(R)的规范正交基,使小波得到真正的发展,小波变换的主要算法由法国的科学家Stephane Mallat提出,S.Mallat于1988年在构造正交小波基时提出了多分辨率分析(multiresolution analysis)的概念, 从空间上形象地说明了小波的多分辨率的特性,提出了正交小波的构造方法和快速算法,叫做Mallat算法。该算法统一了在此之前构造正交小波基的所有方法,它的地位相当于快速傅立叶变换在经典傅立叶分析中的地位。,2002年10月9日,小波分解得到的图像,2002年10月9日,(9)著名科学家,Inrid Daubechies,Ronald Coifman和 Victor Wickerhauser等著名科学家,把这个小波理论引入到工程应用方面做出了极其重要的贡献,Inrid Daubechies于1988年最先揭示了小波变换和滤波器组(filter banks)之间的内在关系,使离散小波分析变成为现实,在信号处理中,自从S.Mallat和Inrid Daubechies发现滤波器组与小波基函数有密切关系之后,小波在信号(如声音信号,图像信号等)处理中得到极其广泛的应用。,2002年10月9日,经过十几年的努力,这门学科的理论基础已经基本建立,并成为应用数学的一个新领域。这门新兴学科的出现引起了许多数学家和工程技术人员的极大关注,是国际科技界和众多学术团体高度关注的前沿领域。,小波变换,2002年10月9日,3. 离散小波变换,在计算连续小波变换时,实际上也是用离散的数据进行计算的,只是所用的缩放因子和平移参数比较小而已。不难想象,连续小波变换的计算量是惊人的。,为了解决计算量的问题,缩放因子和平移参数都选择 ( j.0的整数)的倍数。使用这样的缩放因子和平移参数的小波变换叫做双尺度小波变换(dyadic wavelet transform),它是离散小波变换(discrete wavelet transform,DWT)的一种形式。,2002年10月9日,使用离散小波分析得到的小波系数、缩放因子和时间关系如图所示。,图(a)是20世纪40年代使用Gabor开发的短时傅立叶变换(short time Fourier transform,STFT)得到的时间-频率关系图,图(b)是20世纪80年代使用Morlet开发的小波变换得到的时间-缩放因子(反映频率)关系图。,3. 离散小波变换(续),2002年10月9日,离散小波变换分析图,2002年10月9日,DWT变换方法,执行离散小波变换的有效方法是使用滤波器,该方法是Mallat在1988年开发的,叫做Mallat算法,这种方法实际上是一种信号的分解方法,在数字信号处理中称为双通道子带编码,用滤波器执行离散小波变换的概念如图所示,S表示原始的输入信号,通过两个互补的滤波器产生A和D两个信号,A表示信号的近似值(approximations),D表示信号的细节值(detail),2002年10月9日,在许多应用中,信号的低频部分是最重要的,而高频部分起一个“添加剂”的作用。犹如声音那样,把高频分量去掉之后,听起来声音确实是变了,但还能够听清楚说的是什么内容。相反,如果把低频部分去掉,听起来就莫名其妙。在小波分析中,近似值是大的缩放因子产生的系数,表示信号的低频分量。而细节值是小的缩放因子产生的系数,表示信号的高频分量。,双通道滤波过程,2002年10月9日,离散小波变换可以被表示成由低通滤波器和高通滤波器组成的一棵树,原始信号通过这样的一对滤波器进行的分解叫做一级分解,信号的分解过程可以叠代,也就是说可进行多级分解。,如果对信号的高频分量不再分解,而对低频分量连续进行分解,就得到许多分辨率较低的低频分量,形成如图所示的一棵比较大的树。这种树叫做小波分解树(wavelet decomposition tree),分解级数的多少取决于要被分析的数据和用户的需要,小波分解树,2002年10月9日,(a)信号分解 (b)系数结构 (c)小波分解树,小波分解树,2002年10月9日,小波包分解树,小波分解树表示只对信号的低频分量进行连续分解。如果不仅对信号的低频分量连续进行分解,而且对高频分量也进行连续分解,这样不仅可得到许多分辨率较低的低频分量,而且也可得到许多分辨率较低的高频分量。这样分解得到的树叫做小波包分解树(wavelet packet decomposition tree),这种树是一个完整的二进制树。,2002年10月9日,三级小波包分解树,图表示的是一棵三级小波包分解树。小波包分解方法是小波分解的一般化,可为信号分析提供更丰富和更详细的信息。例如,小波包分解树允许信号S表示为,2002年10月9日,降采样过程,在使用滤波器对真实的数字信号进行变换时,得到的数据将是原始数据的两倍。例如,如果原始信号的数据样本为1000个,通过滤波之后每一个通道的数据均为1000个,总共为2000个。,根据尼奎斯特(Nyquist)采样定理就提出了降采样(downsampling)的方法,即在每个通道中每两个样本数据取一个,得到的离散小波变换的系数(coefficient)分别用cD和cA表示,2002年10月9日,降采样过程,如图所示。图中的符号 表示降采样。,2002年10月9日,小波变换的定义,A transform which localizes a function both in space and scaling and has some desirable properties compared to the Fourier transform. The transform is based on a wavelet matrix, which can be computed more quickly than the analogous Fourier matrix.,An alternative to the discrete cosine transform (DCT), the wavelet transform changes data, such as video data, into the sum of varying frequency wavelets. Wavelets are sometimes used instead of the DCT because they are more versatile and dont slow down as much with larger images as the DCT does. Intels Indeo technology makes use of wavelets.,2002年10月9日,Haar Transform A one-dimensional transform which makes use of the Haar functions. H- Transform, Haar Function References Haar, A. 1999-2003 Wolfram Research, Inc. header.,H-Transform A two-dimensional generalization of the Haar transform which is used for the compression of astronomical images. The algorithm consists of dividing the image into blocks of pixels, calling the pixels in the block , , , and . For each block, compute the four coefficients Construct.,二、Haar小波变换,2002年10月9日,1.哈尔函数,哈尔基函数基函数是生成矢量空间,V,j,而定义的一组线性无关的函数,可以用来构造任意给定的信号。也称尺度函数(scaling function),用符号,V,j,表示。,哈尔小波函数哈尔小波函数是生成矢量 的一组线性无关的函数 ,用符号,W,j,表示。矢量空间,W,j,中的小波可用来表示一个函数在矢量空间 中不能表示的部分。,见多媒体技术基础第2版,8.2,2002年10月9日,2. 哈尔变换原理,假设两个信号的数值分别为a和b,计算它们的和与差,,从,s,和,d,重新获得,a,和,b,,,2002年10月9日,哈尔变换举例,【例】假设有一幅分辨率只有4个像素 的一维图像,对应的像素值或者叫做图像位置的系数分别为: 9 7 3 5计算它的哈尔小波变换系数,步骤1:求均值(averaging)。计算相邻像素对的平均值,得到一幅分辨率比较低的新图像,它的像素数目变成了2个,即新的图像的分辨率是原来的1/2,相应的像素值为:8 4,2002年10月9日,哈尔变换举例(续),步骤2:求差值(differencing)用2个像素表示这幅图像时,图像的信息已经部分丢失。为了能够从由2个像素组成的图像重构出由4个像素组成的原始图像,就需要存储一些图像的细节系数(detail coefficient),以便在重构时找回丢失的信息。原始图像可用下面的两个平均值和两个细节系数表示,8 4 1 -1,步骤3:重复步骤1和2把由第一步分解得到的图像进一步分解成分辨率更低的图像和细节系数。在这个例子中,分解到最后,就用一个像素的平均值6和三个细节系数2,1和1表示整幅图像:6 2 1 -1,2002年10月9日,哈尔变换过程,分辨率,平均值,细节系数,4,9 7 3 5,2,8 4,1 -1,1,6,2,把由4像素组成的一幅图像用一个平均像素值和三个细节系数表示,这个过程就叫做哈尔小波变换(Haar wavelet transform),也称哈尔小波分解(Haar wavelet decomposition),这个概念可以推广到使用其他小波基的变换,2002年10月9日,3. 哈尔变换的特性,从这个例子中我们可以看到:,变换过程中没有丢失信息,因为能够从所记录的数据中重构出原始图像。,对这个给定的变换,我们可以从所记录的数据中重构出各种分辨率的图像。例如,在分辨率为1的图像基础上重构出分辨率为2的图像,在分辨率为2的图像基础上重构出分辨率为4的图像,通过变换之后产生的细节系数的幅度值比较小,这就为图像压缩提供了一种途径。例如,去掉一些微不足道的细节系数并不影响对重构图像的理解,2002年10月9日,4. 一维哈尔小波变换,求均值和差值的过程实际上就是一维小波变换的过程,现在用数学方法重新描述小波变换的过程,2002年10月9日,(1) 哈尔基函数,基函数是一组线性无关的函数,可以用来构造任意给定的信号, 如用基函数的加权和表示。定义了基和矢量空间,就可以把由2,j,个像素组成的一维图像看成为矢量空间 中的一个矢量。,最简单的基函数是哈尔基函数(Haar basis function)。哈尔基函数在1909年提出,它是由一组分段常值函数(piecewise-constant function)组成的函数集。这个函数集定义在半开区间 上,每一个分段常值函数的数值在一个小范围里是“1”,其他地方为“0”,以图像为例并使用线性代数中的矢量空间来说明哈尔基函数。,2002年10月9日,这4个常值函数就是构成矢量空间,V,2,的基,哈尔基函数(续1),2002年10月9日,哈尔基函数(续2),为了表示矢量空间中的矢量,每一个矢量空间,V,j,都需要定义一个基(basis),为生成矢量空间 而定义的基函数也叫做尺度函数(scaling function),这种函数通常用符号 表示。,哈尔基函数定义为,2002年10月9日,哈尔基函数(续3),哈尔基尺度函数 定义为,其中,,j,为尺度因子,改变,j,使函数图形缩小或者放大;,i,为平移参数,改变,i,使函数沿轴方向平移。,空间矢量,V,j,定义为,其中,表示线性生成,(linear span),2002年10月9日,(2) 哈尔小波函数,小波函数通常用 表示。与框函数相对应的小波称为基本哈尔小波函数(Haar wavelet functions),并由下式定义,,哈尔小波尺度函数 定义为,,2002年10月9日,哈尔小波函数(续1),用小波函数构成的矢量空间用,W,j,表示为,,根据哈尔小波函数的定义,可以写出生成,,W,0,W,1,和,W,2,等矢量空间的小波函数,其中,,SP,表示线性生成;,j,为尺度因子,改变,j,使函数图形缩小或者放大;,i,为平移参数,改变,i,使函数沿轴方向平移,2002年10月9日,哈尔小波函数(续2),生成矢量空间,W,2,的哈尔小波:,2002年10月9日,哈尔小波函数(续3),生成矢量空间,W,2,的哈尔小波,2002年10月9日,(3) 哈尔小波变换过程,(1) 用,V,2,中的哈尔基表示,图像,9 7 3 5,有,2,j,=2,2,=4,个像素,因此可以用生成矢量空间中的框基函数的线性组合表示,,其中的系数 是4个正交的像素值,9 7 3 5,,因此,,2002年10月9日,哈尔小波变换过程(续1),图,I,(,x,),用,V,2,中的哈尔基表示,2002年10月9日,用,V,0,W,0,和,W,1,中的函数表示图像,生成矢量空间,V,0,的基函数为 ,生成矢量空间,W,0,的小波函数为 ,生成矢量空间,W,1,的小波函数为 和 ,根据,哈尔小波变换过程(续2),I,(,x,),可表示成,2002年10月9日,其中,4个系数 , , 和 就是原始图像通过哈尔小波变换所得到的系数,用来表示整幅图像的平均值和不同分辨率下的细节系数。4个函数 , , 和 就是构成空间,V,2,的基。,哈尔小波变换过程(续3),用图表示为,2002年10月9日,一幅图像是一个二维的数据阵列,进行小波变换时可以对阵列的每一行进行变换,然后对行变换之后的阵列的每一列进行变换,最后对经过变换之后的图像数据阵列进行编码,1. 求均值与求差值使用求均值和求差值的方法,对矩阵的每一行进行计算,3. 使用线性代数由于图像可用矩阵表示,使用,N,个矩阵,M,1,M,2,,和,M,N,同样可以对图像矩阵进行求平均值和求差值。这,N,个矩阵分别是第一、第二和第,N,次分解图像时所构成的矩阵,5. 二维哈尔小波变换,2002年10月9日,二维哈尔小波变换(续1),用小波对图像进行变换有两种方法,一种叫做标准分解,(standard decomposition),,另一种叫做非标准分解,(nonstandard decomposition),。标准分解方法是指首先使用一维小波对图像每一行的像素值进行变换,产生每一行像素的平均值和细节系数,然后使用一维小波对这个经过行变换的图像的列进行变换,产生这个图像的平均值和细节系数。标准分解的过程如下,,2002年10月9日,procedure,StandardDecomposition,(,C,:,array,1. . .,h, 1. . .,w, of,reals,),for,row,1,to,h,do,Decomposition,(C ,row, 1 . . .,w,),end for,for,col,1,to,w,do,Decomposition,(C 1 . . .,h,col,),end for,End procedure,二维哈尔小波变换(续2),2002年10月9日,标准分解方法,使用,MATLAB,编写的程序分解得到,二维哈尔小波变换(续3),2002年10月9日,二维哈尔小波变换(续4),非标准分解是指使用一维小波交替地对每一行和每一列像素值进行变换。首先对图像的每一行计算像素对的均值和差值,然后对每一列计算像素对的均值和差值。这样得到的变换结果只有1/4的像素包含均值,再对这1/4的均值重复计算行和列的均值和差值,依此类推。非标准分解的过程如下:,2002年10月9日,二维哈尔小波变换(续5),procedure,NonstandardDecomposition,(,C,:,array,of,reals,),(,normalize input coefficients,),while,h,1,do,for,row,1,to,h,do,DecompositionStep,(,C,row, 1 . . .,h,),end for,for,col,1,to,h,do,DecompositionStep,(C 1 . . .,h,col,),end for,end while,end procedure,2002年10月9日,二维哈尔小波变换(续6),非标准分解方法,使用,MATLAB,编写的程序分解得到,2002年10月9日,三、阅读和练习作业,Robi Polikar, The Engineers Ultimate Guide to Wavelet Analysis: The Wavelet Tutorial:,Scientific Computer Consulting, Information and Technology Services, University of Colorado at Boulder, Matlab tutorial, ,,2002年10月9日,End of Lecture,多媒体技术基础与应用,小波变换与应用,2002年10月9日,
展开阅读全文