how to execute stop(vid) when i close the imshow figure while running a while loop?
Show older comments
i am capturing images from a camera in real time and displaying the processed image in a while loop. As soon as I close the figure window, an error pops up. I want to execute stop(vid) after i close the figure and don't want the error to exist.
the error is as given below
Error using matlab.ui.Figure/set Invalid or deleted object.
Error in imshow (line 343) set(fig_handle, 'NextPlot', 'replacechildren')
Error in LiveDetector (line 40) imshow(imgOut);toc;
5 Comments
Dilip Kunderu
on 17 Sep 2018
Looking at your post, the error is likely arising because the figure window is being closed before all the triggered instances of the callback function are processed, leading to the figure handle’s state becoming null for them. To avoid this, you can close the figure window after stopping the Image Acquisition and the associated cleanup.
If this is not the case, please post your code snippet here for further analysis.
arun joshi
on 20 Sep 2018
Mark Sherstan
on 11 Dec 2018
Did you try adding a GUI button instead? It would look something like this:
figureHandle = figure(1);
StopButton = uicontrol('Style','pushbutton','String','Stop & Close','pos',[0, 0, 200, 25],'Callback','delete(gcbo)');
while ishandle(StopButton)
% Do something
end
zhuang Xu
on 12 Jan 2019
So have you solved this problem,bro ? How did you achieve that ?
Walter Roberson
on 12 Jan 2019
use the close request callback that I linked to . That is exactly the kind of purpose the callback was designed for.
Answers (1)
Walter Roberson
on 11 Dec 2018
0 votes
https://www.mathworks.com/help/matlab/ref/matlab.ui.figure-properties.html#buiwuyk-1-CloseRequestFcn
use a callback to detect the close attempt .use it to stop the video before deleting the figure.
Categories
Find more on Image Acquisition Support Packages for Hardware Adaptors (Generic Video Interface) 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!