MATLAB GUI界面实现图像二值化处理的实时显示

GUI界面是采用一个滑块来调整彩色变黑白的程度。

MATLAB GUI界面实现图像二值化处理的实时显示的图1



界面主要包含两个函数,一个主函数untitled,另外一个通过滑块即时控制二值化的函数im2bw_args,在主函数中主要需要设置当点击“打开”时的反应

MATLAB GUI界面实现图像二值化处理的实时显示的图2

MATLAB GUI界面实现图像二值化处理的实时显示的图3



读取路径下的图片,这里面使用uigetfile函数获得读取图片的名称和路径,同时需要把图片的路径和名称合并为字符串fpath,然后使用imread函数读取路径,再使用imshow函数显示图片。

MATLAB GUI界面实现图像二值化处理的实时显示的图4



而当点击“保存”时,需要设置图片的保存路径,使用getappdata取得打开图片的数据,再使用imwrite保存图片。

MATLAB GUI界面实现图像二值化处理的实时显示的图5

MATLAB GUI界面实现图像二值化处理的实时显示的图6



此时点击“图像二值化”按钮,即会调用im2bw_args函数,其内部中关于滑块的函数为

val = get(hObject,'Value');

set(handles.txt_display,'String',num2str(val));

以上两句就是将滑块中的值传递给静态文本Static text。



而在打开二值化滑块控件时,我们需要通过findobj函数将该控件的figure句柄传递给h_untitled,,再使用guihandles函数转化句柄,之后就可以用这个转化后的句柄来引用untitled.fig中的任何一个控件了,这样通过实时更新结构体,才能将静态文本的变化同步显示出来。

MATLAB GUI界面实现图像二值化处理的实时显示的图7

h_untitled = getappdata(handles.figure_im2bw,'h_untitled');

axes(h_untitled.axes_dst);

img_src = getappdata(0,'img_src');

bw = im2bw(img_src,val);

imshow(bw);

以上语句通过从滑块中提取的值确定二值化的阈值,最后使用imshow函数生成二值化处理后的图像,并实时显示在图像框中。

MATLAB GUI界面实现图像二值化处理的实时显示的图8

MATLAB GUI界面实现图像二值化处理的实时显示的图9

免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空