📄 yasuo.m
字号:
clear all
clc
%装载、显示原始图像及其大小
% [X,map]=imread('d:\lena.bmp');
[X,map]=imread('d:\2.bmp');
X=double(X);
subplot(2,2,1);
image(X);
colormap(map);
title('原始图像');
axis square;
disp('原始图像的大小:');
whos('X')
%---------------------------------------
%分解图像,提取分解结构中的第一层系数
[c,s]=wavedec2(X,2,'bior3.7');
ca1=appcoef2(c,s,'bior3.7',1);
ch1=detcoef2('h',c,s,1);
cv1=detcoef2('v',c,s,1);
cd1=detcoef2('d',c,s,1);
%---------------------------------------
%重构的第一层系数
a1=wrcoef2('a',c,s,'bior3.7',1);
h1=wrcoef2('h',c,s,'bior3.7',1);
v1=wrcoef2('v',c,s,'bior3.7',1);
d1=wrcoef2('d',c,s,'bior3.7',1);
c1=[a1,h1;v1,d1];
%图示第一层各频率信息
subplot(2,2,2);
image(c1);
axis square;
title('分解后低频和高频信息');
%-----------------------------------------
%对图像进行压缩:保留第一层低频信息并对其进行量化编码
ca1=wcodemat(ca1,440,'mat',0);
ca1=0.5*ca1;
subplot(2,2,3);
image(ca1);
colormap(map);
title('第一次压缩图像');
axis square;
disp('第一次压缩图像的大小:');
whos('ca1')
%----------------------------------------
%压缩图像:保留第二层低频信息并对其进行量化编码
% [c,s]=wavedec2(ca1,2,'bior3.7');
ca2=appcoef2(c,s,'bior3.7',2);
ca2=wcodemat(ca2,440,'mat',0);
ca2=0.5*ca2;
subplot(2,2,4);
image(ca2);
colormap(map);
title('第二次压缩图像');
axis square;
disp('第二次压缩图像的大小:');
whos('ca2')
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -