好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

(完整word版)图像压缩编码实验报告.doc

8页
  • 卖家[上传人]:s9****2
  • 文档编号:551199806
  • 上传时间:2023-06-10
  • 文档格式:DOC
  • 文档大小:180.42KB
  • / 8 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 图像压缩编码实验报告一、 实验目的1. 了解有关数字图像压缩的基本概念,了解几种常用的图像压缩编码方式; 2. 进一步熟悉JPEG编码与离散余弦变换(DCT)变换的原理及含义;3. 掌握编程实现离散余弦变换(DCT)变换及JPEG编码的方法;4. 对重建图像的质量进行评价二、 实验原理1、图像压缩基本概念及原理图像压缩主要目的是为了节省存储空间,增加传输速度图像压缩的理想标准是信息丢失最少,压缩比例最大不损失图像质量的压缩称为无损压缩,无损压缩不可能达到很高的压缩比;损失图像质量的压缩称为有损压缩,高的压缩比是以牺牲图像质量为代价的压缩的实现方法是对图像重新进行编码,希望用更少的数据表示图像应用在多媒体中的图像压缩编码方法,从压缩编码算法原理上可以分为以下3类:(1)无损压缩编码种类哈夫曼(Huffman)编码,算术编码,行程(RLE)编码,Lempel zev编码2)有损压缩编码种类预测编码,DPCM,运动补偿;频率域方法:正交变换编码(如DCT),子带编码;空间域方法:统计分块编码;模型方法:分形编码,模型基编码;基于重要性:滤波,子采样,比特分配,向量量化;(3)混合编码JBIG,H.261,JPEG,MPEG等技术标准。

      2、JPEG 压缩编码原理JPEG是一个应用广泛的静态图像数据压缩标准,其中包含两种压缩算法(DCT和DPCM),并考虑了人眼的视觉特性,在量化和无损压缩编码方面综合权衡,达到较大的压缩比(25:1以上)JPEG既适用于灰度图像也适用于彩色图像其中最常用的是基于DCT变换的顺序式模式,又称为基本系统JPEG 的压缩编码大致分成三个步骤:(1) 使用正向离散余弦变换(forward discrete cosine transform,FDCT)把空间域表示的图变换成频率域表示的图 (2) 使用加权函数对DCT系数进行量化,该加权函数使得压缩效果对于人的视觉系统最佳 (3) 使用霍夫曼可变字长编码器对量化系数进行编码3、离散余弦变换(DCT)变换原理离散余弦变换(DCT)是一种实数域变换,其变换核为实数余弦函数,图像处理运用的是二维离散余弦变换,对图像进行DCT,可以使得图像的重要可视信息都集中在DCT的一小部分系数中 二维DCT变换是在一维的基础上再进行一次DCT变换,公式如下: (1)为原图像,经DCT 变换之后,为变换矩阵是直流分量,其他为交流分量上述公式可表示为矩阵形式: (2)其中是变换系数矩阵,为正交阵。

      逆DCT 变换: (3)这里我们只讨论两个N相等的情况,即图像为方形(行列数相等),在实际应用中对不是方阵的数据都应先补齐再进行变换的4、图象质量评价保真则是压缩后图象质量评价的标准客观保真度准则:原图象和压缩图象之间的均方根误差或压缩后图象的均方根信噪比主观保真度准则:极好、良好、通过、勉强、低劣、不能用客观保真度准则新旧图像的均方误差 (4)均方根误差 (5)把压缩后图像表示成原图像和噪声的叠加 (6)均方信噪比 (7)三、 实验步骤1. 实验一代码 %%图像压缩编码IM = imread('C:\Users\lmeng\Desktop\dongman.jpg')I = rgb2gray(IM); % 将彩色图灰度化I1 = im2double(I); % 图像存储类型转换T = myDCT(8); % 使用由函数dctmtx返回的DCT变换矩阵,dctmtx的调用格式为 % 产生二维DCT变换矩阵L = blkproc(I1,[8 8],'P1*x*P2',T,T'); % 继而利用blkproc函数完成分块操作 % 计算二维DCT,矩阵T及其转置T’是DCT函数P1*x*P2的参数 % 完成对每个子块的DCT变换Mask=[ 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]; %二值掩膜,用来压缩DCT系数,只留下DCT系数中左上角的10个L2=blkproc(L,[8 8],'P1.*x',Mask); % 去除每个字块中的多余交流分量系数I2=blkproc(L2,[8 8],'P1*x*P2',T',T);imwrite(I2,'after.jpg')figure;subplot(121),imshow(I1),title('原图');subplot(122),imshow(I2),title('压缩后的图像1');ee=myee(I1,I2); %新旧图像的均方误差 结果如下 分析评价:新旧图像均方误差为0.0035均方根误差为 0.05916压缩成度为勉强2、 实验二代码 %%图像压缩编码IM = imread('C:\Users\lmeng\Desktop\dongman.jpg')I = rgb2gray(IM); % 将彩色图灰度化I1 = im2double(I); % 图像存储类型转换N = 512; %划分后子块的大小T = myDCT(N); % 使用由函数dctmtx返回的DCT变换矩阵,dctmtx的调用格式为 % 产生二维DCT变换矩阵L = blkproc(I1,[N N],'P1*x*P2',T,T'); % 继而利用blkproc函数完成分块操作 % 计算二维DCT,矩阵T及其转置T’是DCT函数P1*x*P2的参数 % 完成对每个子块的DCT变换Mask=zeros(N,N);n = 1; %第一行保存分量的个数,呈下三角形,且有n<=Nfor i=1:nMask(i,1:n-i+1)=1;end %二值掩膜,用来压缩DCT系数,只留下DCT系数中左上角的1个L2=blkproc(L,[N N],'P1.*x',Mask); % 去除每个字块中的多余交流分量系数I2=blkproc(L2,[N N],'P1*x*P2',T',T);imwrite(I2,'after.jpg')figure;subplot(121),imshow(I1),title('原图');subplot(122),imshow(I2),title('压缩后的图像2');ee=myee(I1,I2); %新旧图像的均方误差结果:分析:新旧图像均方误差为0.0352均方根误差为0.18762结果不可用3、 实验三代码%%图像压缩编码IM = imread('C:\Users\lmeng\Desktop\dongman.jpg')I = rgb2gray(IM); % 将彩色图灰度化I1 = im2double(I); % 图像存储类型转换N = 512; %划分后子块的大小T = myDCT(N); % 使用由函数dctmtx返回的DCT变换矩阵,dctmtx的调用格式为 % 产生二维DCT变换矩阵L = blkproc(I1,[N N],'P1*x*P2',T,T'); % 继而利用blkproc函数完成分块操作 % 计算二维DCT,矩阵T及其转置T’是DCT函数P1*x*P2的参数 % 完成对每个子块的DCT变换Mask=zeros(N,N);n = 62; %第一行保存分量的个数,呈下三角形,且有n<=Nfor i=1:nMask(i,1:n-i+1)=1;end %二值掩膜,用来压缩DCT系数,只留下DCT系数中左上角的1个L2=blkproc(L,[N N],'P1.*x',Mask); % 去除每个字块中的多余交流分量系数I2=blkproc(L2,[N N],'P1*x*P2',T',T);imwrite(I2,'after.jpg')figure;subplot(121),imshow(I1),title('原图');subplot(122),imshow(I2),title('压缩后的图像3');ee=myee(I1,I2); %新旧图像的均方误差结果:分析:新旧图像均方误差为0.0032均方根误差:0.05656结果为勉强。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.