有了基函数的概念,就容易找到离散图像的线性变换(离散傅里叶变换、离散余弦变换、离散沃尔什变换、离散哈达玛变换)之间的联系,各种变换的不同之处,也仅是基函数不同而已了。就是说不同的基函数对应不同的变换,记住一个离散傅里叶变换,根据他们的基函数就可以推导出其他变换的公式,也就不用记那么多变换的公式了。

 

 

 

离散图像的变换可以用两种表达式来描述,一种是代数表达式,另一种是矩阵表达式,他们的优点不同。通过代数表达式,我们可以求出基函数,从而得出基图像。而通过矩阵表达式,可以简化图像变换的计算。

 

代数表达式变换对:

 

                          

    g(x,y,u,v)为正变换核。反变换核h(x,y,u,v)即是基函数,对于不同u,v下的MxN幅图像即是所谓基图像。

 

 

矩阵表达式变化对:

 

                                      

 

对于DFT,下面举例说明基函数、基图像、矩阵表达式的用法

        

 

而不同的图像f,它的P、Q都是相同的。只要利用F=PfQ,即可求出傅里叶变换。

 

%fourier matrixp = zeros(4,4);q = zeros(4,4);for x=1:4 for u=1:4 p(x,u)=0.25*exp(-i*2*pi*(x-1)*(u-1)/4); endendfor y=1:4 for v=1:4 q(y,v)=0.25*exp(-i*2*pi*(v-1)*(y-1)/4); endendf = [2,1,1,1;0,2,1,1;0,0,2,1;0,0,0,2];p*f*q;

 

 

 

利用h(u,v),即可计算出基图像

             

N=4;h=zeros(N,N);figure(1);for u=1:N for v=1:N for x=1:N for y=1:N h(x,y)=exp(j*2*pi*((u-1)*(x-1)+(v-1)*(y-1))/N); end end I = mat2gray(h); subplot(N, N,v+N*(u-1));imshow(I);title([‘u=’,num2str(u-1),’ v=’,num2str(v-1)]); endend

参考:

[1] 含蓄的飞鸟,灵巧的小甜瓜.数字图像处理[M].东南大学出版社