Trying to get snapshots of webcam to show up within GUI using App Designer
2 次查看(过去 30 天)
显示 更早的评论
Says it all on the tin. I have my code running on a timer that reiterates every half a second or so, and in the function that gets reiterated, I want to have a webcam snapshot be visible within the app I'm making. I don't want the image to appear in a separate window. How would I do this?
0 个评论
回答(1 个)
Rishabh Singh
2022-1-9
Hey,
You can refer to "timer" for executing a scheduled command and to this documentation to refer to how to create a callback function.
Below is the callback function to load image from your webcam whenever it is called,
properties (Access = private)
Property % Description
cam = webcam("USB Video Device");
end
methods (Access = private)
function loadImage(app, obj, event, string_arg)
img = app.cam.snapshot();
app.Image.ImageSource = img;
disp('run');
end
end
% Callbacks that handle component events
methods (Access = private)
% Image clicked function: Image
function ImageClicked(app, event)
t = timer('StartDelay' , 1, 'Period', 0.5, 'ExecutionMode', 'fixedRate');
t.TimerFcn = @(obj, event)loadImage(app);
start(t);
end
end
You can call the above function using any of the callback function suitable to your specific need, here I have used "ImageClicked" callback to activate the timer function.
Hope this helps.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Image Acquisition Support Packages for Hardware Adaptors (Generic Video Interface) 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!