【发布时间】:2012-07-26 19:27:08
【问题描述】:
我正在使用 Python 绑定到安装了以下 instructions 的 OpenCV 2.4。
我的问题类似于this one,但是我需要Windows机器解决方案。
问题:当我尝试使用时
cap = cv2.VideoCapture(0)
print cap.grab()
它工作正常,但是下面的代码
cap = cv2.VideoCapture(filename)
print cap.grab()
总是返回 False。
文件路径正确、绝对且没有空格。
我在两台装有 Windows XP 和 Windows 7 的机器上进行了尝试,结果相似。在 Linux (Ubuntu) 上它对我来说很好。
【问题讨论】:
-
你能发布文件名的值吗?尝试使用
filename = os.path.join( filename )。更多信息在这里:stackoverflow.com/questions/1633643/… -
它是
"C:\\m.avi",但我刚刚尝试了"C:\m.avi"和"C:/m.avi"。它仍然无法正常工作(有和没有os.path.join)。 -
检查 opencv_ffmpeg.dll 是否与 python 使用的其他 OpenCV dll 位于同一目录中。另外,尝试另一个 avi 文件。有时 OpenCV 无法解码其他程序(例如 Windows Media Player)正确播放的文件
-
我没有在我的计算机上找到任何名称中带有“opencv”的文件(opencv 文件夹及其内容除外)。所以我只是尝试将
opencv_ffmpeg.dll复制到C:\Python27\Lib\site-packages` (likecv2.pyd`)但它不起作用。 -
这个问题的答案:stackoverflow.com/questions/12279833/… 似乎也很相关并且很有帮助。