资源简介
课程实验程序,仅供大家参考。程序中有注释,简单易懂。
代码片段和文件信息
% 设置压缩比,cr=0.5为2:1压缩;cr=0.1250为8:1压缩
cr = 0.125;
initialimage = imread(‘lena.bmp‘);
initialimage = double(initialimage)/255;
figure();
%subplot(121);
%imshow(initialimage);
%对图像进行DCT变换
t = dctmtx(8);
dctcoe = blkproc(initialimage [8 8] ‘P1*x*P2‘ t t‘);
%将DCT变换后的矩阵转换成列,并按升序排列
coevar = im2col(dctcoe [8 8] ‘distinct‘);
coe = coevar;
[y ind] = sort(coevar);
[m n] = size(coevar);
%舍去不重要的系数
snum = 64-64 * cr;
for i = 1:n
coe(ind(1:snum) i) = 0;
end
%把列变换为二维矩阵
b2 = col2im(coe [8 8] [512 512] ‘distinct‘);
%逆DCT变换
i2 = blkproc(b2 [8 8] ‘P1*x*P2‘ t‘ t);
%subplot(122);
imshow(i2);
e = double(initialimage)-double(i2);
[m n] = size(e);
erms = sqrt(sum(e(:).^2)/(m*n))
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 830464 2011-12-30 11:11 DCT图像压缩\DCT.doc
文件 785 2011-12-13 15:45 DCT图像压缩\DCT.m
文件 263222 2005-06-16 23:18 DCT图像压缩\lena.bmp
目录 0 2011-12-30 11:11 DCT图像压缩
----------- --------- ---------- ----- ----
1094471 4
- 上一篇:人工免疫matlab工具箱
- 下一篇:倒立摆的滑模变结构控制本科论文
相关资源
- 分形压缩编码和解码程序
- matlab实现JPEG
- DCT系数直方图
- 基于DCT变换的图像压缩算法
- 图像压缩试验matlab
- DCT、DWT数字水印技术-matlab代码183640
- 图像压缩编码算法EZW算法的MATLAB代码
- matlab实现基于DCT数字水印添加以及提
- DCT基函数图像_MATLAB版本
- 基于DCT变换的数字水印算法matlab代码
- 基于matlab的数字水印系统
- DCT水印算法实现MATLAB
- jpeg图像压缩matlab程序
- DCT变换和DFT变换 数字图像压缩 Mat
- 基于PCA的图像压缩Matlab代码
- 基于二维DCT的自适应水印算法matlab实
- DCT变换交互式原理与应用 matlab
- MATLAB JPEG图像压缩
- DCT域数字图像加去水印的MATLAB代码
- 利用MATLAB对图像进行DCT变换的代码
- 基于MATLAB的离散余弦变换
- 基于dct的数字音频水印
- JPEG图像压缩和解压MATLAB程序
- fft对图像进行压缩.txt
- matlab各种图像压缩源代码
- 基于DCT的JPEG图像压缩编码算法的MAT
- 自己用matlab写的jpeg压缩,解压程序
- JPEG图像压缩编码
- MATLAB编写的基于DCT变换的图像编码
- 基于DCT数字水印算法的Matlab实现源代
评论
共有 条评论