当前位置 : 主页 > 编程语言 > python >

数字图像处理大作业GUI设计

来源:互联网 收集:自由互联 发布时间:2022-06-18
1 简介 《数字图像处理》是一门多学科交叉的前沿课程,Matlab是教学中的常用软件,传统的基于命令行或者脚本文件的编程方法教学直观性较差.为此,以Matlab提供的图形用户编程界面(GUI)对

1 简介

《数字图像处理》是一门多学科交叉的前沿课程,Matlab是教学中的常用软件,传统的基于命令行或者脚本文件的编程方法教学直观性较差.为此,以Matlab提供的图形用户编程界面(GUI)对图像处理教学演示系统进行设计.首先给出系统框架,并介绍了数字图像处理中的常用方法,其次应用GUI建立算法测试平台,给出具体实例.结果表明,利用GUI平台进行数字图像处理教学,界面友好,直观性强,具有较强的开放性,能够激发学生的兴趣,提高学习效率,效果良好.

2 部分代码

function varargout = GUI(varargin)
gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @GUI_OpeningFcn, ...
'gui_OutputFcn', @GUI_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
function GUI_OpeningFcn(hObject, eventdata, handles, varargin)
handles.output = hObject;
guidata(hObject, handles);
function varargout = GUI_OutputFcn(hObject, eventdata, handles)
varargout{1} = handles.output;
% 载入图像
function pushbutton1_Callback(hObject, eventdata, handles)
[fname,pname,index]=uigetfile({'*.jpg';'*.bmp'},'选择图片');
global c;
if index
str=[pname fname];
c=imread(str);
axes(handles.axes1);
imshow(c);
axis off
end
% 亮度变换
function pushbutton2_Callback(hObject, eventdata, handles)
global c;
prompt={'输入参数1[low_in high_in] ','输入参数2 [low_out high_out]','输入gamma'};
defans={'[0 0.7]','[0 1]','1'};
p=inputdlg(prompt,'输入参数',1,defans);
p1=str2num(p{1});
p2=str2num(p{2});
p3=str2num(p{3});
gamma=p3;
x=(c);
y=imadjust(x,p1,p2,gamma);
axes(handles.axes1);
imshow(y);
% 保存变换结果
function pushbutton11_Callback(hObject, eventdata, handles)
[filename,pathname] = uiputfile('*.jpg','图片保存为');
if isequal([filename,pathname],[0,0])
errordlg('没有保存','出错');
return;
else
file=strcat(pathname,filename);
(handles.axes1);
i=getimage(gca);
imwrite(i,file);
end
% 恢复原始图像
function pushbutton12_Callback(hObject, eventdata, handles)
global c;
imshow(c);

3 仿真结果

数字图像处理大作业GUI设计_图像处理

4 参考文献

[1]林森, 陶志勇, 张沛泓,等. 数字图像处理GUI设计及在教学中的应用[J]. 科技与创新, 2018(3):3.

博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。

部分理论引用网络文献,若有侵权联系博主删除。


数字图像处理大作业GUI设计_matlab代码_02



网友评论