Display Video Stream in App Designer

31 views (last 30 days)
Enrico Anderlini
Enrico Anderlini on 31 Aug 2018
Commented: Cris LaPierre on 22 Dec 2018
I am developing a simple app in App Designer and I have been struggling with including a video stream from a webcam.
I have come across the following post, but so far I have been unsuccessful in getting my app to work: https://uk.mathworks.com/matlabcentral/answers/357814-how-to-create-a-custom-preview-window-for-matlab-webcam
So far, what I am doing is including the following commands in my start-up function:
app.Camera = webcam; %('USB2.0 PC CAMERA')
image(app.UIAxes2,zeros(size(snapshot(app.Camera)),'uint8'));
And the following lines relate to the activation of the video stream when a switch button is slid to Start:
% Value changed function: CameraStreamSwitch
function CameraStreamSwitchValueChanged(app, event)
while strcmp(app.CameraStreamSwitch.Value,'Start')
im = image(app.UIAxes_2,zeros(size(snapshot(app.Camera)),'uint8'));
preview(app.Camera,im);
end
end
Many thanks in advance for the help!

Answers (1)

Cris LaPierre
Cris LaPierre on 22 Dec 2018
You are close. Here's some sample code that works for.
Add properties for the variables you create that you want to share
properties (Access = private)
Camera % webcam stream object
himg % image object handle
end
My startupFcn looks like this
value = app.CameraStreamSwitch.Value;
if strcmpi(value,'on')
preview(app.Camera,app.himg)
end
I would also suggest adding a closing function so the webcam doesn't remain open once the app closes.
% Close request function: UIFigure
function UIFigureCloseRequest(app, event)
delete(app)
delete(app.Camera)
end
  1 Comment
Cris LaPierre
Cris LaPierre on 22 Dec 2018
The downside, I will admit, is that I can't find a way to close the preview with closing the app window. The function for this is closePreview.

Sign in to comment.

Categories

Find more on Image Preview and Device Configuration 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!