How do I read each frame of a video?

6 visualizzazioni (ultimi 30 giorni)
L'O.G.
L'O.G. il 3 Mag 2023
Risposto: Image Analyst il 4 Mag 2023
For an .avi file, I can read in the file using video = VideoReader(filename) and then read the first frame using readFrame(video) which gives me an array of type uint8. How do I read aeach frame?

Risposta accettata

Kevin Holly
Kevin Holly il 3 Mag 2023
You can use a while loop as shown in the documentation here.
Note, you can save a 3D/4D matrix of the video if memory permits by defining a variable as such:
ii = 1;
while hasFrame(vidObj)
vidFrame(:,:,:,ii) = readFrame(vidObj); %vidFrame(:,:,:,ii) for color image and vidFrame(:,:,ii) for gray image
ii = ii+1;
end

Più risposte (1)

Image Analyst
Image Analyst il 4 Mag 2023

Prodotti


Release

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by