Display Video Stream in App Designer

21 ビュー (過去 30 日間)
Enrico Anderlini
Enrico Anderlini 2018 年 8 月 31 日
編集済み: Cris LaPierre 2023 年 7 月 10 日
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!

回答 (1 件)

Cris LaPierre
Cris LaPierre 2018 年 12 月 22 日
編集済み: Cris LaPierre 2023 年 7 月 10 日
You are close. Here's some sample code that works for me.
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
  3 件のコメント
Pien Vinke
Pien Vinke 2023 年 7 月 3 日
Did you maybe find a solution for closing the preview of the camera?
Cris LaPierre
Cris LaPierre 2023 年 7 月 10 日
編集済み: Cris LaPierre 2023 年 7 月 10 日
In the most recent version of MATLAB, closePreview no longer closes the app. Looking back, this seems to be the case since R2019b. What version of MATLAB are you using?

サインインしてコメントする。

Community Treasure Hunt

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

Start Hunting!

Translated by