VideoCapure里的read是grab和retrieve的结合,由下面的函数介绍可知grab是指向下一个帧,retrieve是解码并返回一个帧,而且retrieve比grab慢一些,所以当不需要当前的帧或画面时,可以使用grab跳过,与其使用read更省时间。因为有的时候缓冲区的画面是存在了延迟的。当不需要的时候可以多grab之后再read的话,就能比一直read更省时间,因为没有必要把不需要的帧解码,由介绍可知也可以使用grab实现硬件同步。
VideoCapture::grab
Grabs the next frame from video file or capturing device.
-
Python:
cv.
GrabFrame
(capture
) → int