声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1311|回复: 4

[GUI界面] [新手求助]一个GUI编程问题

[复制链接]
发表于 2006-9-1 19:57 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
1.想做一个界面,能够读取并显示图片,并设计一个按钮,点击时能把当前显示的彩色图像转化为灰度图像.
  前面显示图片那一步我会了,转为灰度图像时能使用图像处理工具箱中的rgb2gray函数吗?如果可以的话函数的变量应该填什么呢?我把各种句柄往里面塞都报错.郁闷死了

2.如果想要在如上界面中实现对图像感兴趣部分的手动选取,可以直接使用工具箱中的roipoly函数吗?还是要重新编程,查询每次鼠标点击的坐标位置...


跪求达人指教
回复
分享到:

使用道具 举报

发表于 2006-9-1 20:32 | 显示全部楼层
原帖由 royal_rain 于 2006-9-1 19:57 发表
1.想做一个界面,能够读取并显示图片,并设计一个按钮,点击时能把当前显示的彩色图像转化为灰度图像.
  前面显示图片那一步我会了,转为灰度图像时能使用图像处理工具箱中的rgb2gray函数吗?如果可以的话函数的变量应 ...



第一个问题你看帮助就有例子了。第二个问题,用ginput函数吧,查查帮助就ok了
 楼主| 发表于 2006-9-1 21:39 | 显示全部楼层
rgb2gray这个函数怎么用我知道呀
可是GUI编程的时候好像不能直接用变量传递数值的吧
在读取并显示图像的时候
function open_Callback(hObject, eventdata, handles)
file = uigetfile('*.*');
if ~isequal(file, 0)
    image_0=imread(file);     %读取图像
    imshow(image_0);            %显示图像
end
其中image_0就是图像的数据矩阵了,也就是rgb2gray要用到的变量
但是到设计按钮的那段,image_0这个变量程序就不认了,是不是还要重新从坐标轴上把图像读出来啊?到底怎么表示那幅图像啊?
发表于 2006-9-1 21:56 | 显示全部楼层
原帖由 royal_rain 于 2006-9-1 21:39 发表
rgb2gray这个函数怎么用我知道呀
可是GUI编程的时候好像不能直接用变量传递数值的吧
在读取并显示图像的时候
function open_Callback(hObject, eventdata, handles)
file = uigetfile('*.*');
if ~isequal(f ...



我想有如下两个办法:
1.这是我常用的办法--把读出来的变量作为全局变量,也就是在两个函数体中加入global A,其中A就是你读取图像的矩阵数据;
2.利用handles存储,这样可以在文件中任意地方调用,如果你所用的matlab是2006a版本,看看帮助中的“Creating a GUI with GUIDE ”那一节

[ 本帖最后由 eight 于 2006-9-1 22:09 编辑 ]

评分

1

查看全部评分

 楼主| 发表于 2006-9-1 22:29 | 显示全部楼层
终于弄懂一些了,非常感激!
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-9-21 18:39 , Processed in 0.064895 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表