klencode.m

来自「是一本教科书的各个章节的源程序代码,适合初学数字图像的人」· M 代码 · 共 39 行

M
39
字号
%function DCTencoding(InitialImage,Snum)
%  InitialImage------
%  Snum--------------
%
%  
InitialImage=imread('lena.bmp');
%
InitialImage=double(InitialImage)/255;
%  
figure(1);
imshow(InitialImage);
title('原始图像');
%
T=hadamard(8);
DCTCoe=blkproc(InitialImage,[8 8],'P1*x*P2',T,T);
%
CoeVar=im2col(DCTCoe,[8 8],'distinct');
Coe=CoeVar;
%
[Y,Ind]=sort(CoeVar);  
%
[m,n]=size(CoeVar);
Snum=64-16;
for i=1:n
   Coe(Ind(1:Snum),i)=0;
end
%
B2=col2im(Coe,[8 8],[256 256],'distinct');
%
I2=blkproc(B2,[8 8],'P1*x*P2',T, T);
%
figure(4);
imagesc(I2);
% 计算归一化图像的均方误差
error=InitialImage.^2-I2.^2;
MSE=sum(error(:))/prod(size(I2))


⌨️ 快捷键说明

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