Das Extrahieren Von Frames Aus Einem Video In Matlab

War ich versucht, zu extrahieren frames aus einem kleinen video mit der folgende code-Zeilen :

clc;
close all;

% Open an sample avi file

[FileName,PathName] = uigetfile('*.AVI','Select the Video');
file = fullfile(PathName,FileName);

%filename = '.\003.AVI';
mov = MMREADER(file);

% Output folder

outputFolder = fullfile(cd, 'frames');
if ~exist(outputFolder, 'dir')
    mkdir(outputFolder);
end

%getting no of frames

numberOfFrames = mov.NumberOfFrames;
numberOfFramesWritten = 0;
for frame = 1 : numberOfFrames

    thisFrame = read(mov, frame);
    outputBaseFileName = sprintf('%3.3d.png', frame);
    outputFullFileName = fullfile(outputFolder, outputBaseFileName);
    imwrite(thisFrame, outputFullFileName, 'png');
    progressIndication = sprintf('Wrote frame %4d of %d.', frame,numberOfFrames);
    disp(progressIndication);
    numberOfFramesWritten = numberOfFramesWritten + 1;
end
progressIndication = sprintf('Wrote %d frames to folder "%s"',numberOfFramesWritten,outputFolder);
disp(progressIndication);

Aber, ich erhalte die folgende Fehlermeldung auf der dieser code ausgeführt :

??? Error using ==> extract at 10
The file requires the following codec(s) to be installed on your system:
    Unknown Codec

Kann mir jemand helfen heraus zu Sortieren Sie diese Fehler ? Danke.

  • mmreader veraltet ist, haben Sie versucht, mit VideoReader statt?
InformationsquelleAutor competesingh | 2014-07-17
Schreibe einen Kommentar