请教一下为什么我的cv2.VideoCapture死活没法读视频文件?
opencv吧
全部回复
仅看楼主
level 2
用摄像头读的话是正常的
安装环境是Ubuntu16.04 + anaconda3
建立了一个tensorflow_gpuenv的环境,然后用conda安装的opencv
代码如下
import numpy as np
import cv2
cap = cv2.VideoCapture('1.avi')#mp4也不行,只有0和1可以用
while(1):
# get a frame
ret, frame = cap.read()
# show a frame
cv2.imshow("capture", frame)
if cv2.waitKey(100) & 0xFF == ord('q'):
break
cap.release()
cv2.destroyAllWindows()
报错如下:
error Traceback (most recent call last)<ipython-input-2-dfbc9084b498> in <module> 4 ret, frame = cap.read() 5 # show a frame----> 6 cv2.imshow("capture", frame) 7 if cv2.waitKey(100) & 0xFF == ord('q'): 8 breakerror: /home/travis/miniconda/conda-bld/conda_1486587069159/work/opencv-3.1.0/modules/highgui/src/window.cpp:281: error: (-215) size.width>0 && size.height>0 in function imshow
然后如果我用cv.isOpened()来检查是不是打开了,如果是摄像头读取的视频都是true,读视频的时候都是false
关于视频路径,单引号双引号,相对路径绝对路经,正斜杠反斜杠,单斜杠双斜杠都试过了,还是不行。
2018年11月04日 07点11分 1
level 1
楼主,我也遇到同样的问题,请问你解决了吗?
2019年05月16日 08点05分 2
答案是用pip装,然后就没问题了
2019年05月16日 11点05分
level 1
楼主用pip装一下就好了吗? 我用pip重装了还是没有用 问题和楼主描述的一模一样
2020年04月09日 04点04分 3
在你用的conda环境下,再用pip装。 是Linux的话,就先激活你用的conda环境,然后pip install.
2020年04月09日 08点04分
@再生侠的碎肉 我是activate tensorflow之后再pip的 还是不行
2020年04月10日 00点04分
@再生侠的碎肉 在python.exe的解释器里可以用。但是在spyder的ide里不行 楼主知道这是为什么吗?
2020年04月10日 00点04分
@我是一个神00 不清楚,我没用过spider,如果是用pycharm的话,默认的环境是系统自带的那个,pycharm可以修改一个工程的环境和解释器,可能spider也有类似的功能。
2020年04月10日 10点04分
1