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

📄 exe080903_lot_2d.m

📁 Matlab程序为清华大学胡广书版信号处理的上机习题答案
💻 M
字号:
%------------------------------------------------------------------------------------
% exe080903_LOT_2d.m
%   N ------ 信号的长度, N只能取2的整次幂,且 N=8,16,...,512;
%   k ------ 压缩时的参数,舍掉k个点用以重建, 0<p<=8
%------------------------------------------------------------------------------------
clear
N=128;
k=6;

% 调出图像数据 girl.bmp;
X=imread('girl.bmp','bmp');

A=double(X);

% 对信号作 LOT;
M=8;  L=2*M;
a=[0.13*pi 0.16*pi 0.13*pi];
P=fast_LOT(a);

B=zeros(size(A)+L);
A2=zeros(size(B));
A2(1:M,1:M)=A(M:-1:1,M:-1:1);
A2((M+1):(N+M),(M+1):(N+M))=A';
A2((N+M+1):N+L,(N+M+1):N+L)=A(N:-1:N-M+1,N:-1:N-M+1);
C=zeros(size(A2));

%
s=size(A2);
for m=1:s(1)-1
   if rem(m,8)==0
       for n=1:s(2)-1
           if rem(n,8)==0
               B((m-8+1):m,(n-8+1):n)=P'*A2((m-8+1):m+8,(n-8+1):n+8)*P;
               B((m-k+1):m,(n-8+1):n)=0;
               B((m-8+1):m,(n-k+1):n)=0;
           end
       end
   end
end
%逆 LOT,重建信号;
for m=1:s(1)-1
    if rem(m,8)==0
        for n=1:s(2)-1
            if rem(n,8)==0
                
                C((m-8+1):m+8,(n-8+1):n+8)=C((m-8+1):m+8,(n-8+1):n+8)+P*B((m-8+1):m,(n-8+1):n)*P';
            end
        end
    end
end

s=size(A);
D=wkeep(C,s);

D=uint8(D');
subplot(2,2,1);
subimage(X);
axis square;xlabel('original image')
subplot(2,2,2);
subimage(D);
axis square;xlabel('reconstructed image K=2');

⌨️ 快捷键说明

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