capture a snapshot and saving it to a matrix variable

2 views (last 30 days)
I am trying to use my webcam to record and take snapshots and be able to save it as a matrix variable. This is the best code I found online so far but I keep getting an error. Could someone help me iether with a better code that will work on app designer or how to fix this error?
% Button pushed function: OnButton
function OnButtonPushed(app, event)
clear all; clc; close all
cam = webcam('FaceTime HD Camera');
frame = snapshot(cam);
im = image(app.UIAxes, zeros(size(frame), 'uint8'));
axis(app.UIAxes,'image');
preview(cam,im);
pause;
Reference to a cleared variable app.
Error in Final/OnButtonPushed (line 19)
im = image(app.UIAxes, zeros(size(frame), 'uint8'));
Error using matlab.ui.control.internal.controller.ComponentController/executeUserCallback (line 309) Error while evaluating Button PrivateButtonPushedFcn.,

Answers (1)

Ameer Hamza
Ameer Hamza on 6 Dec 2020
Are you using it inside App designer? Remove the line
clear all; clc; close all
  7 Comments
Ameer Hamza
Ameer Hamza on 6 Dec 2020
You can use the "Enable" property of the lamp to turn it on and off. You can also use the "Color" property to change its color.
Ana Guerrero Rosario
Ana Guerrero Rosario on 6 Dec 2020
Hey, I keep tyring to put a rectangle on the camera plot I have. I added a callback on the plot and put rectangle(app.UIAxes, 'Position', [25,25,50,50])
but nothing shows up when I run the code. Do you know how to fix this?

Sign in to comment.

Categories

Find more on Interactive Control and Callbacks in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!