Error in extract foreground program,please help

1 回表示 (過去 30 日間)
pratibha rane
pratibha rane 2013 年 2 月 25 日
Code:
video='ATMvid.avi'
if ischar(video)
% Load the video from an avi file.
avi = aviread(video);
pixels = double(cat(4,avi(1:frameSkip:end).cdata))/255;
clear avi
else
% Compile the pixel data into a single array
pixels = double(cat(4,video{1:frameSkip:end}))/255;
clear video
end;
Error-??? Error using ==> double
Maximum variable size allowed by the program is exceeded.
Error in ==> extractForeground at 80
pixels = double(cat(4,avi(1:frameSkip:end).cdata))/25;
  1 件のコメント
Walter Roberson
Walter Roberson 2013 年 2 月 25 日
What is size(avi) and size(avi(1).cdata) and class(avi(1).cdata) ?

サインインしてコメントする。

採用された回答

Image Analyst
Image Analyst 2013 年 2 月 25 日
Read it a frame at a time using VideoReader() and read(). Don't try to suck up the whole movie at once into the program. Some videos can be huge - like gigabytes and won't fit into memory. Most likely you can get by with having just a few frames in memory at one time.

その他の回答 (1 件)

pratibha rane
pratibha rane 2013 年 2 月 28 日
I am using mixture of Gaussians algorithm for background subtraction,showing me output also, but not clearly distinguishing foreground and background, showing blurred video wherein sometime foreground and background video looks similar , what could be done to show it clearly.
  1 件のコメント
Image Analyst
Image Analyst 2013 年 2 月 28 日
Use better algorithms, I guess.

サインインしてコメントする。

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by