gpt4 book ai didi

python - 使用opencv和python从视频中提取帧

转载 作者:太空宇宙 更新时间:2023-11-03 23:17:37 24 4
gpt4 key购买 nike

我使用了这个代码。

import cv2

vc = cv2.VideoCapture('test2.mp4')
c=1

if vc.isOpened():
rval , frame = vc.read()

else:
rval=False
print("hello")

while rval:
rval, frame = vc.read()
cv2.imwrite(str(c) + '.jpg',frame)
c = c + 1
cv2.waitKey(1)

vc.release()

它在屏幕上打印出 hello,这意味着 vc.isOpened() 没有被调用。我不明白似乎是什么问题,没有错误。

最佳答案

代码没有问题。 vc 对象未正确分配。这就是 vc.isOpened() 得到 False 的原因。如果您使用 python 解释器尝试整个代码,您可以检查 vc 的值。你的 vc.isOpened() 它持有 False 值,这就是为什么它进入 else 条件并打印 hello .由于初始化失败,它无法读取并且 rval 也获得了 False 值。所以 while 循环没有执行。

在这里,我展示了网络摄像头阅读及其值(value)的小型演示。

In [1]: import cv2
In [2]: a = cv2.VideoCapture(0)
In [3]: a.isOpened()
Out[3]: True
In [6]: ret,frame = a.read()
In [7]: ret
Out[7]: True

因此您必须检查视频初始化的位置或您的视频捕获对象。 vc = cv2.VideoCapture('test2.mp4')

关于python - 使用opencv和python从视频中提取帧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36701608/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com