基于Matlab的数字图像gui界面设计


基于Matlab的数字图像gui界面设计

利用Matlab设计了一个图像处理的GUI界面,包括了各种图像处理功能。

一、使用步骤

1.界面设计

在界面设计方面,设有引导界面、教学界面和实验界面。教学界面在上下方设置Text控件,提供文字讲解。实验界面分为7个子系统,每个系统共同设有两个坐标轴、退出系统、返回系统组件外,二值化、图像变换界面采用Pushbutton选择功能,边缘检测、灰度化设有Radiobutton对算法进行选择,图像增强采用Radiobutton、Checkbox、Edit、Uibuttongroup控件,分别实现滤波器选择、添加噪声、滤波器参数设定、功能分类功能。基于Matlab的数字图像gui界面设计_第1张图片

2.功能设计

在功能设计方面,二值化采用graythresh函数设置Otsu法,并获取人工阈值进行二值化分割;灰度化编写具体函数进行平均值法、最大值法、加权平均值法操作;边缘检测采用edge函数设有Roberts、Sobel、Prewitt、Canny、Log算子进行边缘检测;图像变换设有旋转、平移、缩放、镜像操作;图像增强采用imnoise函数自设添加乘性、椒盐、高斯、随机噪声,并设置中值、均值、高斯、同态、高低通滤波处理;形态学处理利用工具箱设置了膨胀、腐蚀、开运算、闭运算;采用imhist和histeq实现显示直方图和直方图均衡功能。

基于Matlab的数字图像gui界面设计_第2张图片

3.界面详设

3.1实验界面设计为7个子系统,7个子系统都可以与实验界面主系统联通,每个子系统的布局又各具特点。实验界面被分为7个子系统,是为了更好地演示每种图像处理方式对于图像的处理效果,同时分为多个子系统能够让功能更加丰富化,处理参数更加细致。下面将详细介绍每个子系统的页面布局。

3.2图像二值化处理界面采用简单的按钮操作,中央为两个坐标轴,分别展示处理前后的图像,框头是系统名称。分为otsu法和人工阈值法对图像进行二值化处理,人工阈值法另设提示窗口,编写回调函数对阈值进行控制,输入阈值进行二值化。除了主要功能按钮,另外的读取图片,返回系统,保存图片,退出系统为所有子界面所共用功能,所有子界面均设有。
3.3图像灰度化界面和边缘检测界面设计如图所示,由于灰度化处理和边缘检测有多种处理方式,并且每种方式之间各具特点,同时处理的效果并不好,故该两个界面设计为多个单选按钮(radiobutton),对处理的方案进行单项选择,并且使用按钮组(uibuttongroup)将单选按钮框在一起,附上按钮组名称,更加便于操作与理解使用,同时也使整个界面更加整体、美观。
基于Matlab的数字图像gui界面设计_第3张图片

基于Matlab的数字图像gui界面设计_第4张图片
3.4形态学处理界面和图像变换处理界面都采用8个按钮对系统进行操作,中央为两个坐标轴,分别展示处理前后的图像,框头是系统名称。除了主要功能,形态学界面另设膨胀、腐蚀、开运算、闭运算按钮;图像变换界面另设旋转、缩放、平移、镜像按钮。
基于Matlab的数字图像gui界面设计_第5张图片
基于Matlab的数字图像gui界面设计_第6张图片
3.5为了满足图像增强处理的多样化功能,并且考虑到一般的图片处理效果不明显,故在左侧按钮组设有多选按钮,分别为高斯噪声、椒盐噪声、乘性噪声、随机噪声,右侧按钮组设6个单选按钮,分别为中值滤波器、均值滤波器、高斯滤波器、同态滤波器、低通滤波器、高斯滤波器,并且设置了两个可编辑文本,编写回调函数,对滤波器的模板大小进行选择,下边的可编辑文件对sigma的值进行选择,最后通过按钮组上方的按键进行添加噪声和滤波操作。
基于Matlab的数字图像gui界面设计_第7张图片

基于Matlab的数字图像gui界面设计_第8张图片

总结

以上就是我设计的基于Matlab的数字图像gui界面设计的内容,多界面系统联合使用使得该GUI界面具有功能性强、界面简洁美观、用户体验性好等特点。
有需要的小伙伴百度网盘自取,如过期私信我,也希望大家能够多多指正批评。
链接:https://pan.baidu.com/s/1GrQ30BKh-lmL6xBiHaEncA
提取码:

你可能感兴趣的:(matlab,图像处理)