如何解决寻找视频的开头以提取帧 - opencv
我刚刚遇到了这个问题。
import cv2
video = cv2.VideoCapture('video1.avi')
我想提取视频的帧,所以我这样做:
video.set(cv2.CAP_PROP_POS_FRAMES,0)
error1,frame1 = video.read()
error2,frame2 = video.read()
error3,frame3 = video.read()
...
我的问题是我不知道如何回到开始以再次获取帧。我希望可能有一个类似于 video.seek(0)
之类的函数......
video.read()
将始终获得下一帧。所以我先读了第 1 帧,然后是第 2 帧,但我想回到开头,这样当我执行 video.read()
时,它会再次提取第一帧。那我该怎么做呢?
with open('my_file.txt','r') as f:
line1 = f.readline()
line2 = f.readline()
然后在获得一些行后,您可以使用以下命令重置回开头:
...
...
f.seek(0)
然后你可以重新开始阅读这些行。
解决方法
哦,我刚刚发现了一个方法!
所以在得到一些帧之后:
video.set(cv2.CAP_PROP_POS_FRAMES,0)
error1,frame1 = video.read()
error2,frame2 = video.read()
error3,frame3 = video.read()
...
我可以再添加一个:
video.set(cv2.CAP_PROP_POS_FRAMES,0)
在它之后寻找回到起点!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。