资源简介
可以运行,有说明
有对图像DFT与DCT变换的对比与说明
代码片段和文件信息
clear all;
I1 = imread(‘try1.jpg‘);
S = size(I1);
M = S(1);
N = S(2);
%考虑M和N不能被8整除,需要先做判断用0补足
complementM = M+mod(8-mod(M8)8);
complementN = N+mod(8-mod(N8)8);
I = zeros(complementMcomplementN);
I(1:M1:N)=I1;
%分8*8小块完成DCT变换
%直接截取前20(实际上是21)个数据(对角线扫描),其余变0
compressI = zeros(complementMcomplementN);
tmp = zeros(88);
for i = 1 : (complementM/8)
for j = 1 : (complementN/8)
tmp = imDCT( I(8*i-7:8*i 8*j-7:8*j) );
for m = 1:8
for n = 1:8
if (m+n)>7
tmp(mn)=0;
end
end
end
compressI(8*i-7:8*i 8*j-7:8*j) = iimDCT(tmp);
end
end
%计算PSNR
tmp2 = (double(I1)-compressI(1:M1:N)).^2;
PSNR = 255^2/mean(tmp2(:));
PSNRdB = 10*log10(PSNR);
subplot(211);imshow(I1);title(‘原图‘);
subplot(212);imshow(uint8(compressI));title(‘压缩图‘);
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2015-04-23 15:08 实验1(张鑫)\
文件 946 2015-04-01 13:04 实验1(张鑫)\Homework1_DCT.m
文件 410 2015-03-30 00:01 实验1(张鑫)\Homework1_DFT.m
文件 489 2015-04-15 18:09 实验1(张鑫)\iimDCT.m
文件 555 2015-03-30 00:02 实验1(张鑫)\iimFFT.m
文件 510 2015-04-15 18:08 实验1(张鑫)\imDCT.m
文件 531 2015-03-29 23:27 实验1(张鑫)\imFFT.m
文件 8632 2015-03-29 08:32 实验1(张鑫)\try1.jpg
文件 7983 2015-03-29 08:32 实验1(张鑫)\try2.jpg
文件 202 2015-04-22 19:07 实验1(张鑫)\说明.txt
- 上一篇:基于密度的聚类
- 下一篇:机器学习好瓜坏瓜分类
相关资源
- 基于密度的聚类
- 水下初至波程序
- 基于matlab的免疫遗传算法
- LCMV算法下的波束形成实现
- 最优潮流计算MATLAB仿真模型
-
发动机simuli
nk仿真 - 卡尔曼滤波matlab
-
Simuli
nk二自由度整车模型 - [精品]matlab仿真A*路径规划算法,100
- 人工神经网络实验 用CHNN算法求解T
- AGC的MATLAB仿真代码
- matlab绘制三维立方体
- matlab灰色预测程序代码
- matlab 欧式距离
- 机器人手眼标定Matlab程序高精度
- MATLAB求解图像信息熵可用于图像融合
-
SPWM_simuli
nk.zip - S变换-matlab程序
- HFSS-MATLAB-API接口
-
单相接地故障的matlab仿真 simuli
nk - FWM 耦合方程 matlab代码
- MATLAB实现K-means聚类
- matlab制作哈哈镜
- 极化雷达图像Lee滤波源代码MATLAB版
- OFDMA的matlab仿真
- 径向基神经网络MATLAB仿真
- 单脉冲相位和差测角MATLAB程序
- 星座图-MATLAB
- 一个带通滤波的matlab小程序
- 维纳滤波器在matlab中实现的源程序
评论
共有 条评论