资源简介
交互式原理与应用的实际操作。本文件采用Matlab的代码进行操作。实现了DCT变换。
中间的Huffman编码略有精简
代码片段和文件信息
function varargout = DCT(varargin)
gui_Singleton = 1;
gui_State = struct(‘gui_Name‘ mfilename ...
‘gui_Singleton‘ gui_Singleton ...
‘gui_OpeningFcn‘ @DCT_OpeningFcn ...
‘gui_OutputFcn‘ @DCT_OutputFcn ...
‘gui_LayoutFcn‘ [] ...
‘gui_Callback‘ []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end
if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State varargin{:});
else
gui_mainfcn(gui_State varargin{:});
end
% End initialization code - DO NOT EDIT
% --- Executes just before DCT is made visible.
function DCT_OpeningFcn(hobject eventdata handles varargin)
handles.output = hobject;
% Update handles structure
guidata(hobject handles);
% --- Outputs from this function are returned to the command line.
function varargout = DCT_OutputFcn(hobject eventdata handles)
varargout{1} = handles.output;
% --- Executes on button press in Sure.
function Sure_Callback(hobject eventdata handles)
global image; %至关重要!!
%如果不再一次用global image,那么就调用不了sure里的变量
%同时还会报错说类型不对...struct...Image之类的
temp = get(handles.argument‘string‘);
argument = str2double(temp);
image_compress = dct_compress_function(imageargument);
axes(handles.axes2);
imshow(image_compress);
title(‘变换后图像‘);
%PSNR
psnr = PSNR_compute(imageimage_compress);
set(handles.PSNR‘string‘psnr);
%compression ratio
set(handles.compress_rate‘string‘rate);
function argument_Callback(hobject eventdata handles)
% --- Executes during object creation after setting all properties.
function argument_CreateFcn(hobject eventdata handles)
if ispc && isequal(get(hobject‘BackgroundColor‘) get(0‘defaultUicontrolBackgroundColor‘))
set(hobject‘BackgroundColor‘‘white‘);
end
function PSNR_Callback(hobject eventdata handles)
function PSNR_CreateFcn(hobject eventdata handles)
if ispc && isequal(get(hobject‘BackgroundColor‘) get(0‘defaultUicontrolBackgroundColor‘))
set(hobject‘BackgroundColor‘‘white‘);
end
% --------------------------------------------------------------------
function File_Callback(hobject eventdata handles)
% --------------------------------------------------------------------
function Open_File_Callback(hobject eventdata handles)
global image;
[filenamepathname]=uigetfile({‘*.bmp;*.jpg;*.png;*.jpeg;*.tif‘}‘选择图像‘);
if isequal(filename0)||isequal(pathname0)
warndlg(‘Please select a picture first!‘‘Warning‘);
return;
else
str=[pathname filename];
image= imread(str);
axes(handles.axes1);
imshow(image);
title(‘原始图像‘);
end
% --------------------------------------------------------------------
function Save_File_Callback(hobject eventdata handles)
[FileNamePathName] = uiputfile({‘*.jpg‘‘JPEG(*.jpg)‘;...
‘*.bmp‘‘Bitmap(*.bmp)‘;...
‘*.gif‘‘GIF(*.gif)‘;...
‘*.*‘
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 34641 2018-12-31 23:23 DCT.fig
文件 3584 2018-12-31 23:23 DCT.m
文件 4951 2019-01-03 21:47 dct_compress_function.m
文件 448 2018-12-31 17:41 Inverse_function.m
文件 19181 2018-12-31 16:53 lena.jpg
文件 322 2018-12-31 17:56 PSNR_compute.m
----------- --------- ---------- ----- ----
63127 6
- 上一篇:down_sample下采样
- 下一篇:MATLAB第四版课后部分程序
相关资源
- MATLAB第四版课后部分程序
- down_sample下采样
- matlab和HFSS联合仿真偶极子天线
- matlab和hfss联合仿真输出增益
- 西瓜数据集的C4.5算法的matlab实现
- 使用bp神经网络进行分布式光伏出力预
- 数字图像处理——图像的分割实验
- 自相关法基频计算matlab.rar
- 结构动力学使用中心差分法计算单自
- MATLAB实现利用形态学方法去噪腐蚀和
- MATLAB实现种子生长法进行图像分割
- PGSA主代码
- 小波变换可用例程
- 高斯-勒让德积分Gauss-legendre积分matl
- 一种基于MATLAB的机械臂工作空间简单
- Kalman滤波在船舶GPS导航定位系统中的
- rddata.m -- MIT-BIH ECG 信号的数据读取M
- 线性递减权重粒子群算法MATLAB代码
- matlab排序程序
- Lorenz系统和Chua系统MATLAB仿真
- 电力系统状态估计-最小二乘法-matla
- 雷达系统设计MATLAB仿真.zip
- matlab粒子群工具箱
- 太阳能电池板MATLAB模型
- 蝙蝠算法优化源代码
- 电力电子AC-DC整流MATLAB仿真.rar
- Matlab基本初等函数.doc
- 单个点经纬度转换坐标
- surf图像匹配
- 九轴传感器姿态解算方法互补滤波和
评论
共有 条评论