Search code examples
pythonopencvimage-processinghsv

Start video read from a particular frame


I have obtained the frame_count of a saved video.

self.frame_count = self.capture.get(cv.CV_CAP_PROP_FRAME_COUNT) - 1

Now, I want to start a frame read from a particular frame_count. How do I do this?

Reason: I need to track an object and I have found the location of the object I want to track using HSV image segmentation. Now to track it, I intend to start the video from that particular frame and set the track window to the objects' coordinates.

Want: It should not be redundant and computationally intensive.


Solution

  • Try the following:

    f = # put here the frame from which you want to start
    self.capture.set(CV_CAP_PROP_POS_FRAMES, f)
    while f < self.frame_count:
        retval, image = self.capture.read()
        f += 1