版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、基于DCT的图像压缩MATLAB实验版本6.0物理与电子工程系电子科学与技术1203班李渊压缩数据输出熵编码量化图像输入DCT变换图像输入基于DCT图像压缩编码过程的流程图。码表量化表在编码过程中,首先利用二维DCT把每个子块转变成64个变换系数。利用二维DCT把每个子块转变成64个DCT变换系数,其中8×8图像变换矩阵左上角的第一个数值直流分量,我们通常称之为DC系数,它表达的是8×8空域图像子块像素值的平均值,其余63个系数则是交流分量,称作AC系数。DCT系数的量化量化是图像有损压缩中造成复原图像质量下降的重要原因之一,其目的是为了减小非“0”系数的幅度、增加“0”值
2、系数,对系数值的量化间距进行划分规整,从而达到进一步压缩数据的目的。量化系数的编码01561415272824713162629423812172530414391118243140445310192332394552542022333846515560213437475056596135364849575862638×8经过DCT变换后,直流系数的值比较大,并且相邻块的DC系数数值上变化幅度较小。因此,对于直流分量,采用差分脉冲调制编码(DPCM),即对对本块和前一块的直流分量之差Diff=DCiDCil(i为块号)编码。其它63交流(AC)系数,采用了“之”字型(Z追一Zag)的
3、排列方法,实验程序:I=imread('C:Users李渊Desktop1.jpg');%读取图像I=rgb2gray(I);%转化为灰度图像I=double(I);%同态滤波处理f=fft2(I);%采用傅里叶变换g=fftshift(f);%数据矩阵平衡M,N=size(f);d0=10;r1=0.5;rh=2;c=4;n1=floor(M/2);n2=floor(N/2);for i=1:M %主循环 for j=1:N d=sqrt(i-n1)2+(j-n2)2); h=(rh-r1)*(1-exp(-c*(d.2/d0.2)+r1; g(i,j)=h*g(i,j);
4、endend %循环结束g=ifftshift(g);g=uint8(real(ifft2(g);%DCT变换J=im2double(g);%存储类型转化为双精度浮点类型T=dctmtx(8);%离散余弦变换矩阵,得到8DCT矩阵,然后量化B=blkproc(J,8 8,'P1*x*P2',T,T');%对源图像进行DCT变换mask1=1 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0
5、 0;%量化系数为1mask2=1 1 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 0;%量化系数为2mask3=1 1 1 1 0 0 0 01 1 0 0 0 0 0 01 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 0;%量化系数为3mask6=1 1 1 1 0 0 0 01
6、 1 0 0 0 0 0 01 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 0;%量化系数为6mask10=1 1 1 1 0 0 0 01 1 1 0 0 0 0 01 1 0 0 0 0 0 01 0 0 0 0 0 0 01 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 0;%量化系数为10mask16=1 1 1 1 1 1 0 01 1 1 1 1 0 0 01 1 1 0 0 0 0 0
7、1 1 0 0 0 0 0 01 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 0;%量化系数为16mask21=1 1 1 1 1 1 0 01 1 1 1 1 0 0 01 1 1 1 0 0 0 01 1 1 0 0 0 0 01 1 0 0 0 0 0 01 0 0 0 0 0 0 01 0 0 0 0 0 0 00 0 0 0 0 0 0 0;%量化系数为21mask28=1 1 1 1 1 1 1 11 1 1 1 1 1 0 01 1 1 1 1 0 0 01 1 1 1 0 0 0 01 1 1 0 0 0 0
8、 01 1 0 0 0 0 0 01 0 0 0 0 0 0 00 0 0 0 0 0 0 0;%量化系数为28B1=blkproc(B,8 8,'P1.*x',mask1);%数据压缩,丢下右下角高频数据J1=blkproc(B1,8 8,'P1*x*P2',T',T);%进行DCT反变换B2=blkproc(B,8 8,'P1.*x',mask2);%数据压缩,丢下右下角高频数据J2=blkproc(B2,8 8,'P1*x*P2',T',T);%进行DCT反变换B3=blkproc(B,8 8,'P1
9、.*x',mask3);%数据压缩,丢下右下角高频数据J3=blkproc(B3,8 8,'P1*x*P2',T',T);%进行DCT反变换B6=blkproc(B,8 8,'P1.*x',mask6);%数据压缩,丢下右下角高频数据J6=blkproc(B6,8 8,'P1*x*P2',T',T);%进行DCT反变换B10=blkproc(B,8 8,'P1.*x',mask10);%数据压缩,丢下右下角高频数据J10=blkproc(B10,8 8,'P1*x*P2',T',T)
10、;%进行DCT反变换B16=blkproc(B,8 8,'P1.*x',mask16);%数据压缩,丢下右下角高频数据J16=blkproc(B16,8 8,'P1*x*P2',T',T);%进行DCT反变换B21=blkproc(B,8 8,'P1.*x',mask21);%数据压缩,丢下右下角高频数据J21=blkproc(B21,8 8,'P1*x*P2',T',T);%进行DCT反变换B28=blkproc(B,8 8,'P1.*x',mask28);%数据压缩,丢下右下角高频数据J28=b
11、lkproc(B28,8 8,'P1*x*P2',T',T);%进行DCT反变换figure;subplot(331);imshow(I,);title('原始图像');subplot(332);imshow(J1,);title('量化系数为1');subplot(333);imshow(J2,);title('量化系数为2');subplot(334);imshow(J3,);title('量化系数为3');subplot(335);imshow(J6,);title('量化系数为6')
12、;subplot(336);imshow(J10,);title('量化系数为10');subplot(337);imshow(J16,);title('量化系数为16');subplot(338);imshow(J21,);title('量化系数为21');subplot(338);imshow(J28,);title('量化系数为28');imwrite(I,'C:Users李渊Desktopc1.jpg'); imwrite(J1,'C:Users李渊Desktopc2.jpg'); f1=i
13、mfinfo('C:Users李渊Desktopc1.jpg'); f2=imfinfo('C:Users李渊Desktopc2.jpg'); r=f1.FileSize/f2.FileSize; disp(r);%压缩比方法 0.1228 I=double(I); I1=double(J1); Row,Col=size(I); Row,Col=size(I1); MSE=sum(sum(I-I1).2)/(Row*Col);%均方误差计算公式 PSNR=10*log10(2552/MSE);%峰值信噪比计算公式%记录量化系数为1的压缩比、均方误差、峰值信噪比i
14、mwrite(I,'C:Users李渊Desktopc1.jpg'); imwrite(J2,'C:Users李渊Desktopc2.jpg'); f1=imfinfo('C:Users李渊Desktopc1.jpg'); f2=imfinfo('C:Users李渊Desktopc2.jpg'); r=f1.FileSize/f2.FileSize; disp(r);%压缩比方法 0.4410 I=double(I); I2=double(J2); Row,Col=size(I); Row,Col=size(I2); MSE=su
15、m(sum(I-I2).2)/(Row*Col);%均方误差计算公式 PSNR=10*log10(2552/MSE);%峰值信噪比计算公式%记录量化系数为2的压缩比、均方误差、峰值信噪比imwrite(I,'C:Users李渊Desktopc1.jpg'); imwrite(J3,'C:Users李渊Desktopc2.jpg'); f1=imfinfo('C:Users李渊Desktopc1.jpg'); f2=imfinfo('C:Users李渊Desktopc2.jpg'); r=f1.FileSize/f2.FileSiz
16、e; disp(r);%压缩比方法 0.3074 I=double(I); I3=double(J3); Row,Col=size(I); Row,Col=size(I3); MSE=sum(sum(I-I3).2)/(Row*Col);%均方误差计算公式 PSNR=10*log10(2552/MSE);%峰值信噪比计算公式%记录量化系数为3的压缩比、均方误差、峰值信噪比imwrite(I,'C:Users李渊Desktopc1.jpg'); imwrite(J6,'C:Users李渊Desktopc2.jpg'); f1=imfinfo('C:User
17、s李渊Desktopc1.jpg'); f2=imfinfo('C:Users李渊Desktopc2.jpg'); r=f1.FileSize/f2.FileSize; disp(r);%压缩比方法 0.1902 I=double(I); I6=double(J6); Row,Col=size(I); Row,Col=size(I6); MSE=sum(sum(I-I6).2)/(Row*Col);%均方误差计算公式 PSNR=10*log10(2552/MSE);%峰值信噪比计算公式%记录量化系数为6的压缩比、均方误差、峰值信噪比imwrite(I,'C:Us
18、ers李渊Desktopc1.jpg'); imwrite(J10,'C:Users李渊Desktopc2.jpg'); f1=imfinfo('C:Users李渊Desktopc1.jpg'); f2=imfinfo('C:Users李渊Desktopc2.jpg'); r=f1.FileSize/f2.FileSize; disp(r);%压缩比方法 0.1492 I=double(I); I10=double(J10); Row,Col=size(I); Row,Col=size(I10); MSE=sum(sum(I-I10).2
19、)/(Row*Col);%均方误差计算公式 PSNR=10*log10(2552/MSE);%峰值信噪比计算公式%记录量化系数为10的压缩比、均方误差、峰值信噪比imwrite(I,'C:Users李渊Desktopc1.jpg'); imwrite(J16,'C:Users李渊Desktopc2.jpg'); f1=imfinfo('C:Users李渊Desktopc1.jpg'); f2=imfinfo('C:Users李渊Desktopc2.jpg'); r=f1.FileSize/f2.FileSize; disp(r);
20、%压缩比方法 0.1228 I=double(I); I16=double(J16); Row,Col=size(I); Row,Col=size(I16); MSE=sum(sum(I-I16).2)/(Row*Col);%均方误差计算公式 PSNR=10*log10(2552/MSE);%峰值信噪比计算公式%记录量化系数为16的压缩比、均方误差、峰值信噪比imwrite(I,'C:Users李渊Desktopc1.jpg'); imwrite(J21,'C:Users李渊Desktopc2.jpg'); f1=imfinfo('C:Users李渊De
21、sktopc1.jpg'); f2=imfinfo('C:Users李渊Desktopc2.jpg'); r=f1.FileSize/f2.FileSize; disp(r);%压缩比方法 0.1087 I=double(I); I21=double(J21); Row,Col=size(I); Row,Col=size(I21); MSE=sum(sum(I-I21).2)/(Row*Col);%均方误差计算公式 PSNR=10*log10(2552/MSE);%峰值信噪比计算公式%记录量化系数为21的压缩比、均方误差、峰值信噪比imwrite(I,'C:Users李渊Desktopc1.jpg'); imwrite(J28,'C:Users李渊Desktopc2.jpg'); f1=imfinfo('C:Users李渊Desktopc1.jpg'); f2=imfinfo
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【历史】人教版八年级上册第8单元第25课经济和社会生活的变化(课件1)(共33张)
- 银川一中2025届高三年级八月开学复习巩固测试卷数学试题
- 《机械设计基础 第4版》 课件 朱龙英 第14、15章 其他常用零部件、机械传动系统的设计
- 北京市东城区东直门中学2021-2022学年物理高一下期末达标检测试题含解析
- 安徽省东至三中2021-2022学年物理高一下期末教学质量检测试题含解析
- 2022年浙江省温州市新力量联盟物理高一下期末学业质量监测试题含解析
- 2022年云南省普洱市景东彝族自治县一中高一物理第二学期期末复习检测试题含解析
- 2022年物理高一下期末综合测试模拟试题含解析
- 机械设计基础 第4版 g专业词汇
- 国庆节素材课件
- 《哦香雪》课件++2023-2024学年统编版高中语文必修上册
- 医疗机构麻精药品处方登记表
- 2024年洛阳国昊投资控股集团有限公司招聘笔试冲刺题(带答案解析)
- 2024脑机接口研究进展和临床应用研究分析报告
- SY-T 6966-2023 输油气管道工程安全仪表系统设计规范
- 论成果导向的教育理念
- 2024年航天知识竞赛考试题库120题(含答案)
- GB/T 43780-2024制造装备智能化通用技术要求
- (高清版)DZT 0203-2020 矿产地质勘查规范 稀有金属类
- 百善孝为先传统的孝道文化
- T-PTSHOES GS001-2017 运动鞋标准规范
评论
0/150
提交评论