How can I continually update the UI Axes in App Designer to display images from a CMOS camera?

2 views (last 30 days)
I would like to create a video feed in the UI Axes in App Designer. At the moment, I am updating the CData of the figure, though I am having large lag times. The code that I am using runs quickly--in about 100ms--but the image on the UI Axes updates approximately every two seconds. Preferably, the video feed would run parallel so that I can also interact with my GUI simultaneously. Is there a way to use the UI Axes to run this type of figure?
  3 Comments
Cody LaBelle
Cody LaBelle on 15 Sep 2017
Edited: Cody LaBelle on 15 Sep 2017
I have used the drawnow function to update the axes, though it did not reduce the updating time. Also, I updated MATLAB to 2017b (pre-release) due to the fact that the drawnow functionality was added to the UI axes in 2017a. Unfortunately this did not help.
As a temporary work around, I am using an external figure to display my video feed, which runs very quickly.

Sign in to comment.

Answers (1)

karim botros
karim botros on 7 Mar 2018
Edited: karim botros on 24 Jan 2022
it works in app designer
you can use global var if you want to use the object camera in another function
global cam
im=image(zeros(340,340,3),'Parent',app.UIAxes);
preview(cam,im);
setappdata(app.UIAxes, 'cam', cam);

Community Treasure Hunt

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

Start Hunting!