python3.5在pip库没有匹配的OpenCV版本,因此直接使用pip install opencv 会报错,报错如下:
因此,这里提供一个非官方包的下载地址:OpenCV下载地址
按照电脑位数和自己的python版本进行选择,此处选择:opencv_python-4.0.1-cp35-cp35m-win_amd64.whl
下载后将其拷贝到python安装目录下的Lib\site-packages
此处是:C:\Users\******\AppData\Local\Programs\Python\Python35\Lib\site-packages
打开cmd cd到目录C:\Users\******\AppData\Local\Programs\Python\Python35\Lib\site-packages
然后使用python3.5 -m pip install opencv_python-4.0.1-cp35-cp35m-win_amd64.whl
在命令行下运行python3.5 import cv2 如果不报错则证明安装成功。
注:若出现ImportError: DLL load failed: 找不到指定的模块。
是因为opencv需要依赖MSVCP140.dll 这个C++类库,而python 3.5 以上的版本不包括这个类库,你的系统正好是windows 家庭版,也没有这个类库,因此去下载C++的编译环境,地址为:C++环境地址
此处并没有这个问题,是之前已经安装过这个C++ 的编译环境。
另外一个比较棘手的问题cmd 下import cv2 没有问题,但是在使用pycharm 中导入则一直提示找不到该模块。
解决方案如下:
1、在python的安装路径C:\Users\******\AppData\Local\Programs\Python\Python35\Lib\site-packages下新建一个cv2的文件件,将opencv 的相关文件拷贝进去,并加入一个__init__.py 文件,可为一个以此命名的空文件,只是为了让cv2成为python的一个包
2、配置pycharm 编辑器的路径
File=>Settings=>Project Interpreter =>more 将cv2 加入到编译器的路径内
经过这两步骤,pycharm 将不再报错。
验证一下安装是否成功:opencv_python版调用摄像头、显示内容
#-*-encoding=utf-8-*-
import cv2
import numpy as np
#导入cv、numpy包
#打开摄像头,因为只有一个摄像头,所以选择摄像头0
cap = cv2.VideoCapture(0)
#读取摄像头内容,并显示
while True:
ret,frame = cap.read()
#一个窗口用以显示原视频
cv2.imshow('frame',frame)
#加上键盘控制(按q退出)
if cv2.waitKey(1) &0xFF == ord('q'):
break
#释放窗口
cap.release()
cv2.destroyAllWindows()