[英]matlab UpdatePreviewWindowFcn
我使用GUIDE制作一个matlab GUI,进行一些视频计算。 使用预览功能,我可以从我的网络摄像头预览实时视频并进行一些计算。
在MainGUI中我使用:setappdata(hImage,'UpdatePreviewWindowFcn',mypreview_fcn); 获得自定义预览功能:
function mypreview_fcn(obj,event,himage)
originalframe=peekdata(vidobj,1);
while isempty(originalframe)
originalframe=peekdata(vidobj,1);
end
if kk>=1
[LogResult,y,dist]=QueryArduino;
if LogResult==1
kk=kk+1;
results{kk,1}=originalframe;
results{kk,2}=measure1;
results{kk,3}=measure2;
results{kk,4}=measure3;
results{kk,5}=measure4;
results{kk,6}=measure5;
results{kk,7}=measure7;
offset=median([results{:,7}]);
offset=measure2-measure3;
end
end
set(himage,'CData',originalframe);
end
我想将结果矩阵传递给MainGUI中的表如何访问GUI表;
你可以通过做getappdata通过所有你想里面的数据MainGUI
和填充表。 其实我不明白你为什么要使用setappdata
来调用一个函数。
例如,在函数mypreview_fcn
你可以在函数mypreview_fcn
之前写下这样的东西:
setappdata(0,'MyData',results);
然后在MainGUI
使用getappdata
:
TableData = getappdata(0,'MyData');
set(HandletoTable,'Data',TableData);
另一种(和更好的方法,我认为),以getappdata
将是一个输出参数分配给功能mypreview_fcn
这样,当你从调用它mainGUI
变量results
被里面公认mainGUI
,你可以简单地使用填充表
set(HandletoTable,'Data',results);
这是你的意思吗?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.