当前位置:   article > 正文

转载-DCT_dct基函数

dct基函数

首先对于DCT公式里,它有一组基函数,并且这组基函数是正交的,也就是两两互相垂直,就像是三维空间中的x,y,z.比如一维里的cos(2i+1)uπ/16,这就是基函数,并且,随着u取不同的值,我们会得到不同的基函数,例如当u=0时,基函数是cos0=1,这也就说明,这个基函数没有波形变化,他对应的值都是1.但是当我们对u取1时,基函数就是cos(2i+1)π/16,此时,基函数的周期T=2π/(2π/16),周期为16,频率f=1/16.相同的,当u=2,3,4,5,6,7时,频率分别为2/16,3/16,4/16,5/16,6/16,7/16.这说明,这些基函数对应不同的频域,并且从u=0,到u=7,频率是在变大的。而一个源信号f(i),经过DCT变换,就是将这个源信号包含的这些不同频域的分量给求出来。并且前面说到,一个信号通常由一个DC和多个AC组成,到这里,我们可以看出,在u=0时,求出来的F(0)就是DC分量,其余的u=1,2,3,4,5,6,7时,求出的F(u)是AC分量。
而为什么DCT能把一个信号分解出来不同频域的分量值呢?这就相当于在三维向量中,基向量x(1,0,0); y(0,1,0) ; z(0,0,1)一样,在三维空间中,任意一个向量A都可以分解为A=ax+by+cz.这里面的x,y,z就是上面的基向量。而我们的DCT中的基向量组跟x,y,z一样,也是正交的,并且可以看出,由于每个基函数的频率不同,所以他们代表着的是不同的频域。通过变换,它也同样可以求出任意一个信号在各个频域上(类似三维空间,也可以说各个基向量方向上)对应的a,b,c......的值,而这些值,就是我们得到的DCT系数了,其中包括一个DC分量和多个AC分量,并且DC分量是代表频率最小的信号,AC1,AC2....AC7对应的是不断增大的频域上的信号。
而如果我们有个图像,我们知道,对于图像来说,其中的边缘,细节上的信号往往是变化比较快,比较剧烈的,所以,图像中的高频信号代表的是图像中的细节和边缘信息。而图像中的大部分内容信息,往往是变换缓慢,频率低的信号,所以,信号中的低频信号代表更多的图像信息。这样,我们就可以通过DCT,求出对应的不同频域分量,最后只保留低频低频,去掉高频数据对应的细节信息,就可以达到压缩的目的了。
例如一个8*8的图像块,其DCT变换后的数据,左上角为低频数据,右下角为高频数据,并且数据能量主要集中在低频区域,即低频区域的值比较大,高频区域的值较小。也就是因为高频区域值小,能量低,所以我们可以在接下来的压缩中,将他们置0,在图片质量看起来影响不大的情况下完成压缩。在这里,我们需要理解一下,为什么低频数据的值就比较大,而高频数据的值比较小呢?首先,对于获得的基函数,低频数值高于高频数值。在设定u=0时,其此时的基函数的取值都等于1,都为正数,如果源信号与此基函数频率相同或相近,那么他们相乘得到的系数将都是相对较大的值,在设定u=1时,其此时的基函数的取值大概为09,0.8,0.5,0.2,-0.2,-0.5,-0.8,-0.9有正数有负数,且绝对值都小于1,那么,对于一个与此信号频率相同的源信号,相乘后的结果较u=0时要小。所以在低频域内得到较大的数值。并且对于一个8*8的图像块非负数据,其最左上角的那个DC值,等于8乘上源信号的平均值;再者,在一般的图像中,低频数据量高于高频数据量,一幅图片中大多数数据,不论是亮度或者是色度,变化都不会很剧烈,所以,低频区域值较大,所占能量更高。

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号