I have written an app for acquiring images from a allied vision camera (gige cam interface) and then to plot histogram of an user defined region of interest. The app works fine for 10 mins and then it failed because memory usage increases steadily.
Camera parameters
app.cam = videoinput('gige', 1, 'Mono8');
app.src = getselectedsource(app.cam);
% Setting initial parameters
app.cam.TriggerRepeat = inf;
app.cam.FramesPerTrigger = 1;
app.cam.Timeout = 30;
Main loop
trigger(app.cam);
frame = getdata(app.cam);
image(app.livecam, 'Cdata', frame);
if ~isempty(app.roi)
app.roi = round(app.roi);
rectangle(app.livecam,'Position',app.roi,'EdgeColor','g')
img = frame(app.roi(2): app.roi(2) + app.roi(4), app.roi(1):app.roi(1)+app.roi(3));
updateHistogram(app, img)
end
Each frame is ca. 800 x 400 pixels.
Could anyone help me solve my app's memory issue ?
Thank you.