out of Memory ,when reading a video of 22 seconds

2 visualizaciones (últimos 30 días)
Gova ReDDy
Gova ReDDy el 20 de Nov. de 2011
Hi..Im extracting frames from a video. Previously I extracted frames from a 5 seconds video clip and when Im trying to extract from a 22 seconds video clip using * aviread* it is showing error as *out of memory *.
How to solve this problem?
  2 comentarios
Jan
Jan el 20 de Nov. de 2011
Well, do the data of 22 sec match into the available RAM? Is it really necessary to keep all these frames at the same time in the memory?
Gova ReDDy
Gova ReDDy el 20 de Nov. de 2011
only one frame is saved at a time using a loop as shown below
folder = fullfile('D:\videofiles\framesNEW');
movieFullFileName = fullfile(folder, 'video.avi');
movieInfo = aviinfo(movieFullFileName);
mov = aviread(movieFullFileName);
numberOfFrames = size(mov, 2);
[folder, baseFileName, extentions] = fileparts(movieFullFileName);
folder = pwd;
outputFolder = sprintf('%s/Frames%s', folder, baseFileName);
mkdir(outputFolder);
for frame =1:numberOfFrames
here I'm extracting each frame and saving it
end;

Iniciar sesión para comentar.

Respuestas (1)

Image Analyst
Image Analyst el 20 de Nov. de 2011
Use the VideoReader class and the read() function to pull out just one frame at a time rather than a call to aviread() to suck up the whole thing at once, which you apparently cannot do due to memory limitations. I'm not sure what version VideoReader was introduced in but I have it in R2011a.
  1 comentario
Gova ReDDy
Gova ReDDy el 21 de Nov. de 2011
Same probelm is existing even Im using mmreader also.Im having R2008a.

Iniciar sesión para comentar.

Categorías

Más información sobre Convert Image Type en Help Center y File Exchange.

Productos

Community Treasure Hunt

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

Start Hunting!

Translated by