0
点赞
收藏
分享

微信扫一扫

DCT变换公式说明

云岭逸人 2022-03-20 阅读 85

DCT变化用于JPEG的压缩部分:

  1. 离散余弦变换DCT定义:
    1. 一维公式:

u = 0, 1, ……, N - 1是水平方向的频率。m=0, 1, ……, N-1是像素点的位置。

    1. 二维公式:

    1. JPEG中是对8*8的矩阵做DCT,因此公式中的M、N均为8;

  1. ANN快速离散余弦变换DCT的实现
    1. 将2D-DCT分解为1次行向量的1D-DCT和1次列向量的1D-DCT。
    2. 用矩阵乘法Y=CX的方式模拟一维矩阵的相乘累加的过程。矩阵乘法计算方式为(以下表中Y1行元素举例) Y1=C1*X0+C3*X1+C5*X2+…+(-C1)*X7;
    3. X0~X7为计算一次D1-DCT的像素值,对应公式3.1中的X(m)。
    4. C(n)为公式3.1中cos()函数部分: Cn=12cos⁡(nπ16),n=(2*m+1)*u;
      1. 以Y1对应的一行为例:u=1, m=0~7; 计算出n=1、3、5、7、9、11、13、15。8个像素点求DCT,因此N=8;将N、n代入C(n)公式可以发现,C(9)~C(15)是C(1)~C(7)的负数,因此使用-C(7)表示C(9),使用-C(5)表示C(11),…
      2. 另外Y0行比较特殊,u=0,导致cos(0)=1;同时u=0时正交化因子为12,由于cos4π16=cosπ4=12=0.707,因此将Y1行的C(4)作为正交化因子使用。

    1. 根据矩阵对称性对矩阵进行简化(经过逆向计算是正确的,可以推导出原有的矩阵)

举报

相关推荐

0 条评论