《数据压缩与信源编码》实验指导书
mask=[1 1 1 1 0 0 0 0 1 1 1 0 0 0 0 0 1 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 ]
%二值掩模,用来压缩DCT系数,只留下DCT系数中左上角的10个
B2=blkproc(B,[8 8],'P1.*x',mask) %只保留DCT变换的10个系数 I2=blkproc(B2,[8 8],'P1*x*P2',T',T) %重构图像 figure imshow(I) title('原始图像'); figure imshow(I2); title('压缩图像'); figure imshow(J); figure
mesh(J) %画出J的立体网状图
colorbar('horiz') %在水平条方向用不同的颜色表示曲面的高度
六、实验注意事项
认真听指导教师的讲解,按照要求一步一步做实验。实验完成后,写出规范的实验报告。
七、思考题
1. 利用DCT变换对图像编码有哪些优点? 2. DCT系数的多少对图像的压缩比有什么影响?
- 15 -
《数据压缩与信源编码》实验指导书
实验四 基于小波变换的图像压缩技术
一、实验目的
利用小波变换进行图像压缩。
二、实验内容
对一幅照片利用小波变换进行多次压缩处理,并观察压缩效果。 三、实验原理
正交基在传统的信号表示中被广泛地采用, 如傅氏变换。 基函数的正交性使相应的表示系数能容 易地用内积计算, 然而, 这些变换一般揭示的是信号的整体性质, 难以表示其局部特性, 小波变换发展了局部化思想, 是一种信号的时间- 尺度 ( 时间 - 频率) 分析方法, 它具有多分辨率分析的特点, 而且在时频两域都具有表征信号局部特征的能力, 是一种窗口大小固定不变但其形状可改变, 时间窗和频率窗都可以改变的时频局部化分析方法。 即在低频部分具有较高的频率分辨力和较低的时间分辨力, 在高频部分具有较高的时间分辨力和较低的频率分辨力, 很适合于探测正常信号中夹带的瞬态反常现象 并展示其成分, 所以被誉为分析信号的显微镜, 利用连续小波变换进行动态系统故障检测与诊断具有良
好的效果。
若记母小波为 Ψ( t) , 伸缩和频移因子分别为 a和 b, 则由母小波Ψ( t) 生成的小波为:
其中, 母小波 Ψ( t) 必须满足下列条件:
对应于傅氏分析中的傅氏级数、傅氏变换、快速傅氏变换, 在小波分析中也有相应的小波级数、小波变换和 Mallat 算法。
小波分析广泛应用于信号处理、图像处理、量子场论、地震勘探、语音识别与合成、音乐、雷达、CT 成像、彩色复印、流体湍流、天体识别、机器视觉、机械故障诊断与监控、分形以及数字电视等科技领域, 原则上讲, 传统上使用傅里叶分析的地方, 都可以用小波分析取代。 小波分析优于傅里叶变换的地方是,它在时域和频域同时具有良好的局部化性质。
- 16 -
《数据压缩与信源编码》实验指导书
小波分析应用于图像压缩具有压缩比高、压缩速度快、压缩后能保证图像的特征基本不变的特点, 且在传递过程中可以抗干扰。 小波分析进行图像压缩的基本原理是: 根据二维小波分解算法, 一幅图像
作小波分解后, 可得到一系列不同分辨率的图像, 而表现一幅图像最主要的部分是低频部分, 如果去掉
图像的高频部分只保留低频部分, 则可以达到图像压缩的目的。 基于小波分析的图像压缩方法有很 多, 较成功的有小波包最优基、小波域纹理模型方法、小波变换零树压缩、小波变换向量量化压缩等。 利用小波分解去掉图像的高频部分而仅保留图像的低频部分是一种最简单的图像压缩处理方法。
三、实验仪器、设备及材料
操作系统:Windowsxp; 软件:MATLAB
四、实验步骤
% 装载原始图像并将其转化为索引图像 load wbarb;
subplot(221);image(X);colormap(map) title('原始图像'); axis square
disp('压缩前图像X的大小:'); whos('X')
%对图像用bior3.7小波进行2层小波分解 [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(222);image(c1); axis square
title('分解后低频和高频信息'); %下面进行图像压缩处理
%保留小波分解第一层低频信息,进行图像的压缩 %第一层的低频信息即为ca1,显示第一层的低频信息
- 17 -
《数据压缩与信源编码》实验指导书
%首先对第一层信息进行量化编码 ca1=appcoef2(c,s,'bior3.7',1); ca1=wcodemat(ca1,440,'mat',0); %改变图像的高度 ca1=0.5*ca1;
subplot(223);image(ca1);colormap(map); axis square
title('第一次压缩');
disp('第一次压缩图像的大小为:'); whos('ca1')
%保留小波分解第二层低频信息,进行图像的压缩,此时压缩比更大 %第二层的低频信息即为ca2,显示第二层的低频信息 ca2=appcoef2(c,s,'bior3.7',2);
%首先对第二层信息进行量化编码 ca2=wcodemat(ca2,440,'mat',0); %改变图像的高度 ca2=0.25*ca2;
subplot(224);image(ca2);colormap(map); axis square
title('第二次压缩');
disp('第二次压缩图像的大小为:'); whos('ca2')
输出结果如下所示: 压缩前图像X的大小:
Name Size Bytes Class
X 256x256 524288 double array Grand total is 65536 elements using 524288 bytes 第一次压缩图像的大小为:
Name Size Bytes Class
ca1 135x135 145800 double array Grand total is 18225 elements using 145800 bytes 第二次压缩图像的大小为:
Name Size Bytes Class
ca2 75x75 45000 double array Grand total is 5625 elements using 45000 bytes
六、实验注意事项
认真听指导教师的讲解,按照要求一步一步做实验。实验完成后,写出规范的实验报告。
- 18 -
《数据压缩与信源编码》实验指导书
七、思考题
1. 比较第一次压缩的压缩比和第二次压缩的压缩比? 2. 观察两次压缩的图像效果?
- 19 -
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库《数据压缩与信源编码》实验指导书(4)在线全文阅读。
相关推荐: