Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/352.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python OpenCV视频捕获(文件)don';t工作窗口_Python_Opencv_Video Capture - Fatal编程技术网

Python OpenCV视频捕获(文件)don';t工作窗口

Python OpenCV视频捕获(文件)don';t工作窗口,python,opencv,video-capture,Python,Opencv,Video Capture,我正在使用此script.py: import cv2,numpy as np face_cascade = cv2.CascadeClassifier('haarcascade_frontalface_default1.xml') cap = cv2.VideoCapture('video.flv') ret,frame = cap.read() print ret while (cap.isOpened()): ret,frame = cap.read() img

我正在使用此script.py:

import cv2,numpy as np

face_cascade = cv2.CascadeClassifier('haarcascade_frontalface_default1.xml')

cap = cv2.VideoCapture('video.flv')
ret,frame = cap.read()
print ret

while (cap.isOpened()):

    ret,frame = cap.read()

    img = frame

    gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
    faces = face_cascade.detectMultiScale(gray, 1.5, 5)
    for (x,y,w,h) in faces:
    cv2.rectangle(img,(x,y),(x+w,y+h),(255,0,0),2)

    cv2.imshow('video',img)
    if cv2.waitKey(1) & 0xFF == ord('q'):
        break

cv2.destroyAllWindows()
我已使用bat脚本将ffmpeg添加到路径:

set PATH=%PATH%;C:\opencv\sources\3rdparty\ffmpeg
我曾尝试将文件格式更改为.avi、.flv、.mp4,但仍然不起作用


我没有任何错误,但每次都是'ret=False'。

如果没有关于错误的更多信息,很难判断到底是什么错误,但您可以尝试以下解决方案:

  • 使用ffmpeg重建OpenCV。如果您使用的是Mac OSX,您只需要使用
    brew安装opencv--with ffpmeg
    (或类似命令)-我现在无法检查,但
    brew选项opencv
    将给出答案。在Windows上可能不需要,但您可以尝试
  • 如果您使用预构建的二进制文件,请下载源代码(最新的稳定版本-现在是2.4.10,我不建议您使用3.0.0测试版)并构建它(使用ffpmeg)。使用构建的二进制文件(您可能需要使用
    cv2.pyd
    (最有可能是python_version/Lib/或python_version/Lib/site软件包)将所有dll文件复制到目录中)。说明是“通过从源文件创建自己的库进行安装”的一部分。请确保选中以下选项:
    WITH\u FFMPEG
    WITH\u DSHOW
    在windows上也可能有用)以及“BUILD\u opencv\u python”和配置python(这在教程中有所描述-您可能更喜欢使用
    pip
    而不是
    setuptools
    )。构建解决方案后,在
    opencv\u build/lib/[Release/Debug]
    中,您应该找到
    cv2.lib
    cv2.pyd
    cv2.ilk
    文件以及
    opencv\u build/bin/[Release/bin]
    应该是opencv_…version.dll文件(…-模块名称,版本-版本号)。将所有这些文件(从
    lib/[Debug/Release]'和
    bin/[Debug/Release]`)复制到您当前拥有cv2.pyd的文件夹中

我没有错误,我只有ret=falseIm使用Windows,如何使用ffpmeg构建OpenCV?