下载此文档

实验三基于DCT的数字图像压缩与Matlab实现.doc


文档分类:IT计算机 | 页数:约9页 举报非法文档有奖
1/9
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/9 下载此文档
文档列表 文档介绍
.
1 / 9
实验五 基于DCT的数字图像压缩及Matlab实现
实验报告
实验目的
了解DCT以及基于DCT的图片压缩的方法和步骤;
学会图片压缩的方法
实验仪器
PC机〔安装Windows98、Windows2000或T系数的值非常接近于0。如果舍弃这些接近于0的值,在重构图像时并不会带来图像画面质量的显著下降。所以,利用DCT进行图像压缩可以节约大量的存储空间。压缩应该在最合理的近似原图像的情况下使用最少的系数,使用系数的多少也决定了压缩比的大小。
.
3 / 9
按照以上的方法,使用MATLAB,将一幅图像分成8×8的块使用二维离散余弦变换进行压缩<压缩比为16:1,8:1>,给出实验仿真结果,要求显示压缩前后的图像,并且计算压缩前后图像的均方误差MSE。改变压缩比为8:1,再如前所做,比较不同之处。
实验代码
〔1压缩比为8:1
clear;
I=imread<''>;
Igray=rgb2gray<I>;
Idouble=im2double<Igray>%将图像转换为双精度格式
T=dctmtx<8>;%返回一个8×8的DCT变换矩阵
Id=blkproc<Idouble,[8,8],'P1*x*P2',T,T'>;%进行DCT变换
M=[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
0 0 0 0 0 0 0 0];
% 保留6个DCT系数重构图像
.
4 / 9
Icpress=blkproc<Id,[8,8],'P1.*x',M>;
%压缩数据,只保留左上角低频数据
Iodct=blkproc<Icpress,[8,8],'P1*x*P2',T',T>;
%DCT反变换,得到压缩后的图像
cha=abs<Idouble-Iodct>;
junfang=mse<cha>;
figure<1>;
subplot<211>
imshow<I>
title<'原始图像','Fontsize',26>;
subplot<212>
imshow<Iodct>
title<'压缩图像〔保留6个DCT系数','Fontsize',26>;
xlabel<{'均方误差:';junfang},'Fontsize',20>
whos;%显示所有图像的属性
压缩比为16:1
clear;
I2=imread<''>;
Igray2=rgb2gray<I2>;
Idouble2=im2double<Igray2>%将图像转换为双精度格式
T2=dctmtx<16>;%返回一个16×16的DCT变换矩阵
Id2=blkproc<Idouble2,[16,16],'P1*x*P2',T2,T2'>;%进行DCT变换
.
5 / 9
M2=[1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0
1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0

实验三基于DCT的数字图像压缩与Matlab实现 来自淘豆网m.daumloan.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数9
  • 收藏数0 收藏
  • 顶次数0
  • 上传人799474576
  • 文件大小22 KB
  • 时间2022-02-18
最近更新