更新时间:2023-01-01 20:14
余弦变换(cosine transform)正交变换的一种。
在工程实际中遇见的信号般在一个有限区间或一个周期内(t0,t0+T)都具有有限能量。理论证明,这些信号(或函数)通常可以用相互正交的函数来表示(也就是可以用正交函数集取得最佳的近似)。所谓函数x1(t)和x2(t)正交,则表示信号x1(t)不包含信号x2(t)的分量,满足图1公式的条件。若函数cosnωot和sinmωot在同一区间内相互正交,则x(t)可以由正弦函数和余弦函数作三角型的傅里叶级数展开。如果信号是一个连续的实数,且对称于纵轴的偶函数,则该级数只有余弦分量。同理,把一个离散序列x(n)延拓成偶对称序列,则其离散傅里叶变换(DFT)也只包含余弦项。余弦变换就是1974年由N.阿罕麦德(N.Ahmed)等根据这一基本关系提出的一种正交变换。一个长度为N的实序列x(n),其离散余弦变换(DCT)定义为
正变换如图2:
DCT与DFT同属正弦型的正交变换,它含有DFT的全部信息,从而可以通过DCT对信号进行分析和综合。按正交变换,在变换域中信号能量不仅等于原时间域(或空间域)的信号能量,而且能量往往比较集中于变换式少数几项系数之中。所以若丢弃包含能量小的系数,则所造成的失真较小,这就为数据压缩提供有利条件。理论推导表明,DCT很接近具有最佳能量集中特性的卡洛变换(K-L变换),但与K-L变换相比,由于它存在快速算法,所以正弦型变换中特性最好的变换。在工程实际中应用广泛,特别在图像通信对图像传输中的数据压缩、编码和图像增强等的效果,均较DFT方法为好。在自适应信号处理中,提高自适应滤波收敛速度以及语音压缩编码等方面有着广阔应用前景。此外,DCT还具有较弱的边界效应特性,使信号处理的结果在边界处引入的误差比DFT小,可以降低对窗函数的要求,简化运算。
离散余弦变换(DCT for Discrete Cosine Transform)是与傅里叶变换相关的一种变换,它类似于离散傅里叶变换(DFT for Discrete Fourier Transform),但是只使用实数。离散余弦变换相当于一个长度大概是它两倍的离散傅里叶变换,这个离散傅里叶变换是对一个实偶函数进行的(因为一个实偶函数的傅里叶变换仍然是一个实偶函数),在有些变形里面需要将输入或者输出的位置移动半个单位(DCT有8种标准类型,其中4种是常见的)。
有两个相关的变换,一个是离散正弦变换(DST for Discrete Sine Transform),它相当于一个长度大概是它两倍的实奇函数的离散傅里叶变换;另一个是改进的离散余弦变换(MDCT for Modified Discrete Cosine Transform),它相当于对交叠的数据进行离散余弦变换。
例如,在静止图像编码标准JPEG中,在运动图像编码标准MJPEG和MPEG的各个标准中都使用了离散余弦变换。在这些标准制中都使用了二维的第二种类型离散余弦变换,并将结果进行量化之后进行熵编码。这时对应第二种类型离散余弦变换中的n通常是8,并用该公式对每个8x8块的每行进行变换,然后每列进行变换。得到的是一个8x8的变换系数矩阵。其中(0,0)位置的元素就是直流分量,矩阵中的其他元素根据其位置表示不同频率的交流分量。
一个类似的变换, 改进的离散余弦变换被用在高级音频编码(AAC for Advanced Audio Coding),Vorbis 和 MP3 音频压缩当中。
离散余弦变换也经常被用来使用谱方法来解偏微分方程,这时候离散余弦变换的不同的变量对应着数组两端不同的奇/偶边界条件。