非常感谢
#1 楼
DCT和PCA之间的主要区别(更确切地说,是在由其相关矩阵的特征向量形成的基础上表示一个数据集-也称为Karhunen Loeve变换)是,必须相对于给定的数据集定义PCA(从中估计相关矩阵),而DCT是“绝对”的,仅由输入大小定义。这使PCA成为一种“自适应”变换,而DCT却与数据无关。人们可能会奇怪,由于其适应性强,为什么PCA在图像或音频压缩中不经常使用。有两个原因:想象一个编码器计算数据集的PCA并对系数进行编码。为了重建数据集,解码器不仅需要系数本身,而且还需要变换矩阵(它取决于数据,而数据无法访问!)。 DCT或任何其他与数据无关的变换在删除输入数据中的统计依赖性方面可能效率较低,但是编码器和解码器都事先知道了变换矩阵,而无需传输它。只需很少的辅助信息的“足够好”的转换有时要比需要额外的辅助信息的最优转换要好...
以从照片中提取的$ N $ 8x8大图块为例。用这些图块的亮度形成一个$ N×64 $的矩阵。根据此数据计算PCA,并绘制将要估计的主要成分。这是一个很有启发性的实验!大多数较高阶特征向量实际上很有可能看起来像是DCT基础的调制正弦波模式。这意味着对于足够大且通用的图像图块集,DCT非常适合本征基数。音频也经过了同样的验证,根据大量音频记录估计,在梅尔空间频带中的对数信号能量的本征基接近于DCT(因此将DCT用作去相关变换)计算MFCC时)。
评论
$ \ begingroup $
有趣的是,但是不是可以基于图像的“常规”统计数据而不是基于DCT的统计数据来构建不同的基础集吗?我想这样的基础不如PCA,但比DCT好吗?
$ \ endgroup $
–太空
13年2月15日在14:41
$ \ begingroup $
@pichenettes-关于DCT,水平和垂直频率(即goo.gl/XLMt5)增加的常见图像是什么?它是DCT基本功能的图像表示吗?如果是这样的话,如果我从这些图像的协方差矩阵中计算出PCA /特征向量,那么从本质上来说,这会给我DCT系数矩阵吗?
$ \ endgroup $
– trican
2013年2月15日15:15
$ \ begingroup $
顺便说一句@pichenettes非常感谢您的深刻见解。我知道第1点,但并未真正考虑第2点。
$ \ endgroup $
– trican
13年2月15日在15:17
$ \ begingroup $
@Mohammad:这是一个很好的问题,我不知道答案。我看到使用DCT的优势:易于编写规范(打印“我们的变换是此封闭形式的函数”比“我们的变换是此附件中发布的此64x64矩阵”更容易),没有标准化委员会开会讨论要训练的数据集与残酷的64x64矩阵乘法相比,转换,更少的查找表可嵌入解码器的ROM中,并且可能在转换矩阵中具有“对称性”,从而使其硬件加速成为可能-这些优势可能超过边际压缩增益。
$ \ endgroup $
–小食
13年2月15日在15:57
$ \ begingroup $
@trican:链接到的图像代表8x8瓦片的2-D DCT基础。 64个小图块中的每一个都是基本功能。如果您从实际图像中收集大量的8x8拼贴,并对数据执行PCA,则您将获得的本征基础将非常相似。
$ \ endgroup $
–小食
13年2月15日在16:02