使用python opencv播放视频文件

使用python opencv播放视频文件,python,opencv,Python,Opencv,我尝试使用python opencv播放视频文件这是我的代码,但在运行代码时它没有显示vidfeo文件 import numpy as np import cv2 cap = capture =cv2.VideoCapture('C2.mp4') while(cap.isOpened()): ret, frame = cap.read() gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) cv2.imshow('frame

我尝试使用python opencv播放视频文件这是我的代码,但在运行代码时它没有显示vidfeo文件

import numpy as np
import cv2

cap = capture =cv2.VideoCapture('C2.mp4')
while(cap.isOpened()):
    ret, frame = cap.read()

    gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)

    cv2.imshow('frame',gray)
    cv2.waitKey(1)

cap.release()
cv2.destroyAllWindows()
我在中尝试了答案:但不再工作

尝试使用此选项

cv.CaptureFromFile()

还可以查看此链接,我认为您只需将cv2.waitKey()函数中的数字增加到25或30即可。你应该会得到想要的结果

此外,不需要写入cap=capture=cv2

简单地说,写作

cap=cv2.videoCapture(‘视频的路径’)


也应该有效。希望它能起作用。

这段代码对我有用。它显示原始和灰度视频输出。按“q”退出。我也不认为有必要使用cap=capture。。。在你的代码中

import cv2
import numpy as np

cap = cv2.VideoCapture(0)
while True:
ret, frame = cap.read()
    gray = cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY)
    cv2.imshow('frame',frame)
    cv2.imshow('grayF',gray)
    if cv2.waitKey(1) & 0xFF == ord('q'):
         break

cap.release()
cv2.destroyAllWindows()

如果
opencv-2.4.13.exe
首先,不需要捕获,因为代码中没有使用捕获。视频文件未显示的原因是您没有将其保存在保存代码的同一目录中

您可以给出保存文件的路径,如下所示

cap = cv2.VideoCapture('(path to the video file)/cv2.mp4')
同样,您需要更改waitKey中的参数,否则程序将无法关闭正确显示视频的窗口

试试下面的方法,它肯定会奏效。使用waitKey()函数放置if语句,并将指示等待key函数的毫秒数的参数增加到25或任何您喜欢的数字,以便在按ESC键时,窗口将被破坏:

if cv2.waitKey(25) & 0xFF == 27:
  break

我代码中的问题出现在部件(While)中。它应该是while(True),而不是代码中的那一个

为什么
cap=capture=你在while循环中输入了吗?是的,但它有详细信息这回答了问题!将问题代码与OpenCV教程进行比较:欢迎使用SO!你能解释一下这是如何解决OP的问题的吗?
if cv2.waitKey(25) & 0xFF == 27:
  break