I want to read every second frame from video

3 views (last 30 days)
Hello, I have video which has 15 GB, so it takes to long to read it, I also need to add the segmentation to frames. So I decided to apply it only for every second or third frame. How I can do it?
Thank you for your answer.

Accepted Answer

Image Analyst
Image Analyst on 22 Oct 2022
Edited: Image Analyst on 22 Oct 2022
Yes, in the read() function just pass in the frame number you want to read.
numberOfFrames = videoReaderObject.NumFrames;
framesToRead = 1: 2 : numberOfFrames;
for k = 1 : length(framesToRead)
% Extract the frame from the movie structure.
thisFrame = read(videoReaderObject, framesToRead(k));
end
See attached demos.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!