⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dct_2d.m

📁 altera公司提供的适用于包涵DSP内核的FPGA的二维DCT变换源码
💻 M
字号:
function y = dct_2d(N,X)

%dct2d Two-dimensional Discrete Cosine Transform 
%
%Y=dct2d(N,X) returns the 2-d discrete cosine transform of X
%The input vector X has to be two-dimensional (N by N).  
%The output vector Y will have the same dimensions as X.
%The input scalar N specify the dimension of the input vector X.
%
%Note: This yields a prescaled version of the DCT transform.
%      In most cases, the scaling can be combined with the quantization stage.



for ym = 1:N
    for yn = 1:N
        y(ym,yn)=0;
    end
end

for ym = 1:N
     for yn = 1:N
         for xi = 1:N
             for xj = 1:N
                cosA = cos((2*(xi-1)+1)*(ym-1)*pi/(2*N));
                cosB = cos((2*(xj-1)+1)*(yn-1)*pi/(2*N));
                y(ym,yn) = y(ym,yn) + ( X(xi,xj)*cosA*cosB); 
             end
         end
         if ym==1
            em=1/sqrt(2);
         else
            em=1;
         end
         if yn==1
            en=1/sqrt(2);
         else
            en=1;
         end
         scaling=(2/N)*em*en;
         %y(ym,yn) = scaling*y(ym,yn);
     end
end 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -