Large memory usage for image acquisition app
古いコメントを表示
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.
3 件のコメント
Ramu Pradip
2021 年 10 月 5 日
Ramu Pradip
2021 年 10 月 5 日
DGM
2021 年 10 月 5 日
I'm not sure of the behavior given what you've shown, but you might want to double-check to make sure that you're not stacking things in that particular axes. That's kind of a classic way to unintentionally eat memory. Just check the 'children' property of the axes to make sure that there aren't a bunch of images stacked up.
回答 (0 件)
カテゴリ
ヘルプ センター および File Exchange で GigE Vision Hardware についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!