📄 dct.cpp
字号:
# include "math.h"
# include "stdio.h"
#include<stdlib.h>
#define pi 3.14
main()
{static float block[8][8]=
{ 14,16,23,28,28,29,28,28,
12,15,20,22,26,27,28,27,
20,22,28,32,30,30,28,30,
31,32,34,33,32,31,30,32,
30,34,33,36,34,32,32,34,
32,36,15,34,32,30,29,31,
34,33,20,32,30,28,26,28,
35,32,22,26,26,26,25,27};
static float dct[8][8];
float c1=1,c2=1;
int n1,n2,i,j;
for (n1=0;n1<=7;n1++)
{
for (n2=0;n2<=7;n2++)
{
c1=1;c2=1;
if (n1==0) c1=0.7071;
if (n2==0) c2=0.7071;
for (i=0;i<=7;i++)
for(j=0;j<=7;j++)
{
dct[n1][n2]=dct[n1][n2]+0.25*c1*c2*(block[n1][n2])*cos(pi*(2*i+1)*n1/16)*cos(pi*(2*j+1)*n2/16);
}
}
}
printf("\n this is the dct:\n");
for(i=0;i<=7;i++)
{ for (j=0;j<=7;j++)
printf("%10f",dct[i][j]);
printf("\n");
}
system("pause");
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -