繁体   English   中英

matlab UpdatePreviewWindowFcn

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM