Live video preview in app designer

11 次查看(过去 30 天)
I am trying to get a live video input to be shown in a place of an image I added to my application.
I followed some steps provided by our professor, however, I keep getting the error provided in the image!
Those are all of the objects I have
properties (Access = public)
UIFigure matlab.ui.Figure
AppsNameLabel matlab.ui.control.Label
InstructionsButton matlab.ui.control.Button
CameraSwitchLabel matlab.ui.control.Label
CameraSwitch matlab.ui.control.Switch
Lamp matlab.ui.control.Lamp
ExitButton matlab.ui.control.Button
Image matlab.ui.control.Image
end
This is the function that is supposed to view the live video in the place of the image.
function startupFcn(app)
vid = videoinput('winvideo');
hImage = image(app.Image,zeros(720 ,1280, 3));
pause(2)
app.Image.XLim = [0,1280];
app.Image.YLim = [0, 720];
app.Image.XTick = [];
app.Image.YTick = [];
pbaspect(app.Image,[1280,720,1])
preview(vid,hImage)
end
And lastly, this is the error I'm getting
Error using image
Image cannot be a child of Image.
Error in HandGApp (line 121)
runStartupFcn(app, @startupFcn)

回答(1 个)

Raunak Gupta
Raunak Gupta 2020-12-5
Hi,
I found a similar question which talks about plotting a Line on a live Image Preview. In your case you want to add image only, I suggest creating an axes first and then plot the image to that axes. This image can then be previewed on the video. Currently app.Image looks like an Image already on which another Image object cannot be plotted, thus you may need to create an axes first. Code in the similar question can help you to resolve the error.
  1 个评论
Ghaith Hatamleh
Ghaith Hatamleh 2020-12-10
Thank you for your relpy, Everything works fine now that I replaced the image with an axes

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Images 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by