Importing large .avi files into MATLAB

6 次查看(过去 30 天)
Jason
Jason 2011-12-2
I am struggling to get a video imported into MATLAB with the error that "ran out of memory"
The video is just over 2000 frames and just over 1GB in size.
I have tried avireader and mmreader at no avail.
Can I import a large video into MATLAB frame-by-frame
  2 个评论
Doug Hull
Doug Hull 2011-12-2
Edited to simplify question. Each question should be a single question. Ask another question for the other aspects.
Jason Ross
Jason Ross 2011-12-2
Also, details of the hardware (specifically the amount of RAM) and OS bit-ness (32 or 64 bit) would be helpful.

请先登录,再进行评论。

回答(1 个)

Image Analyst
Image Analyst 2011-12-2
You should be able to using the VideoReader class. Here's the example from the help:
Examples
Construct a VideoReader object for the demo movie file xylophone.mpg and view its properties:
xyloObj = VideoReader('xylophone.mpg', 'Tag', 'My reader object');
get(xyloObj)
Read and play back the movie file xylophone.mpg:
xyloObj = VideoReader('xylophone.mpg');
nFrames = xyloObj.NumberOfFrames;
vidHeight = xyloObj.Height;
vidWidth = xyloObj.Width;
% Preallocate movie structure.
mov(1:nFrames) = ...
struct('cdata', zeros(vidHeight, vidWidth, 3, 'uint8'),...
'colormap', []);
% Read one frame at a time.
for k = 1 : nFrames
mov(k).cdata = read(xyloObj, k);
end
% Size a figure based on the video's width and height.
hf = figure;
set(hf, 'position', [150 150 vidWidth vidHeight])
% Play back the movie once at the video's frame rate.
movie(hf, mov, 1, xyloObj.FrameRate);
  2 个评论
Jason
Jason 2011-12-7
Thank you for your response.
VideoReader does not work for my version of MATLAB but mmreader will.
The problem I am still getting is that eventually I run out of memory.
Is there a way where you can read in one frame at a time, show that frame, then ask MATLAB to read in the next frame and replace the previous frame, thus making a movie this way?
Thank you
Jason
Andreas Goser
Andreas Goser 2011-12-7
We're talking about a 64 Bit system, right?

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Large Files and Big Data 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by