opencv(0)安装与配置
1、windows下
1.1 exe安装
windows下可以安装opencv的exe版本,已经编译好了,很省事。
到https://opencv.org/releases.html下载需要的opencv版本,比如我下载的是opencv-2.4.13.5-vc14.exe和opencv-3.3.1-vc14.exe(注意,带vc14的为vs2015编译的版本)。
如果嫌下载速度太慢,可以在百度网盘下载:https://pan.baidu.com/s/1hs1sFjQ,密码:cvu0
这里以opencv-2.4.13.5.exe为例:
(1)点击下载的opencv-2.4.13.5.exe,解压到自己想安装的目录下(解压出来的就是opencv文件夹,没必要自己新建名为opencv的文件夹),本文解压路径为D:\install_work\opencv,不过为了安装多个版本的opencv,将其改名为D:\install_work\opencv2。
(2)将opencv根目录\build\python\2.7\x64下的cv2.pyd拷贝到python根目录\Lib\site-packages下面。(若系统为32位则选择opencv根目录\build\python\2.7\x86)
(3)在自己的python环境中安装opencv-python:pip install opencv-python。最好安装至最新版(向下兼容),否则可能出现问题,比如使用的是opencv-3.3.1-vc14.exe的cv2.pyd,但opencv-python的版本是opencv-python 2.4.13.5,就肯定会出问题。旧版本可用pip install --upgrade opencv-python升级。
(4)在cmd下面输入python进入python命令行,然后输入import cv2,如没有错误信息证明安装成功。
题外话:vs版本及python版本的选择
(1)查看opencv根目录\build\x64内的内容可以知道能直接使用的vs版本:
vc11→vs2012
vc12→vs2013
vc13→vs2014
vc14→vs2015
如果opencv能直接使用的vs版本与自己已安装的vs版本不符,则需要重新编译,坑比较多,可以参考相关博客,我觉得最好还是根据自己安装的vs版本来挑选opencv版本,或者电脑存储空间够大性能够强也可以多个版本vs都安装。
(2)查看opencv根目录\build\python内的内容可以知道能直接使用的python版本:
2.7→python2.7.xx
以上路径中:x64代表64位操作系统,x86代表32位操作系统。
多版本切换
python中想使用不同版本的opencv时,替换需要版本的cv2.pyd就行
c++中想使用不同版本的opencv时,在系统环境变量中构建OPENCV_HOME等根路径,在系统环境变量的path变量中添加相对路径:%OPENCV_HOME%\build\x64\vc14\bin,使用时,更改OPENCV_HOME即可完美切换不同版本的opencv。
1.2 源码安装
2、linux下
本文环境:
可能出现的问题
ImportError: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /usr/local/lib/libopencv_contrib.so.2.4)(使用pycharm远程调试,import cv2时报错,服务器下import不报错)
原因:
解决方案:
(1)检查动态库:strings /usr/lib64/libstdc++.so.6 | grep GLIBC,发现没有GLIBCXX_3.4.20
(2)顺着gcc安装路径,找到了新的libstdc++:strings /usr/local/lib64/libstdc++.so.6.0.20|grep GLIBC
(3)删除旧的软链接,新建软链接:
cp /usr/local/lib64/libstdc++.so.6.0.20 /usr/lib64/ cd /usr/lib64/ rm -f libstdc++.so.6 ln -s libstdc++.so.6.0.20 libstdc++.so.6 ll libstdc* # 查看是否正确链接