MATLAB绘制矩形ROI自定义等待功能困难

19次观看(过去30天)
Darren Miller.
Darren Miller. 2020年5月14日
评论道: 俄梅珥Akatekin2021年3月22日
你好,
在我创建的应用中,图像中的用户加载然后必须使用drawRectangle选择一个方形部分。我想允许用户围绕鼠标释放的那一刻而不是鼠标释放的那一刻移动roi,所以我尝试了使用这个自定义等待函数:
我在代码的进展中遇到了麻烦。以下是我在我的GUI中工作的内容:
图(1)%创建弹出窗口
imshow (app.I)%显示图像
sqSect = drawrectangle;创建矩形section
[ar,app.pos] = customwait(app,sqsect);我想要返回长宽比和位置。
%宽高比只需要在函数中,因此我不将其包含在App对象中
关闭(h)%获得区段后,我想要弹出窗口关闭
%%*******更多的东西在这里使用app.pos数据,与这个问题*******无关
功能[AR, pos] = customWait (hROI ~)
%监听鼠标在ROI上的点击
l = addlistener (hROI,'roiclicked',@ clickCallback);
块程序执行
uiwait;
%删除侦听器
删除(左);
%返回当前位置
pos = hROI.Position;
基于“增大化现实”技术= hROI.AspectRatio;
结束
功能ClickCallback(〜,EVT)
如果比较字符串(evt)。选择ionType,“双”
uiresume;
结束
结束
当我在GUI中运行时,我可以创建矩形区域,但是当我双击它时,弹出窗口并没有关闭…当我双击ROI(表示我已经选择了正确的部分,并准备好进入下一个内容)时,我如何调整这个以使弹出窗口关闭?
编辑:
下面的内容可以在脚本中使用,但由于某些原因不能在应用程序中使用…?
imshow (“DSC_4111.png”
h = drawrectangle
pos = customWait (h)
功能pos = customWait (hROI)
%监听鼠标在ROI上的点击
l = addlistener (hROI,'roiclicked',@ clickCallback);
块程序执行
uiwait;
%删除侦听器
删除(左);
%返回当前位置
pos = hROI.Position;
结束
功能ClickCallback(〜,EVT)
如果比较字符串(evt)。选择ionType,“双”
uiresume;
结束
结束
当我把它放到app表单时,出现了一些错误,它给了我这个错误:
未定义的功能“ClickCallback”,用于“Images.roi.rectangalle”类型的输入参数。
警告:错误发生同时执行为类定义的事件roiclick的监听器回调
images.roi.rectangle:
不知何故,即使它以App表单中的完全相同的格式工作,我也会收到关于ClickCallback函数的输入的错误..可能与应用程序面向对象的环境有关吗?
3评论
俄梅珥Akatekin
俄梅珥Akatekin 2021年3月22日
你能算出来吗?我也有同样的问题:/

登录评论。

接受的答案

汤米
汤米 2020年5月15日
储存 h 这样你以后再打电话的时候 关闭(h) ,Matlab知道什么 h 是:
H =图(1);
4评论

登录评论。

更多的答案(0)

s manbetx 845

社区寻宝

在MATLAB中心找到宝藏,并发现社区如何可以帮助你!

开始狩猎!