python3.6的安装和opencv3.4.1安装,参看我以前写的ubuntu16.04源码安装opencv3.4.1和caffe
本想着python2.7调用opencv2.xxx版本的,但是由于我的电脑安装cuda是9.0, 而9.0不支持opencv2.xxx,所以只好用python2.7调用opencv3.4.0, 安装opencv3.4.0的过程和前面的安装基本一致,但是我不想opencv3.4.0安装到/usr/local目录下[python3.4.1在这个目录下],所以自己指定安装目录,例如我将opencv3.4.0安装在/home/xiongdeng/application/opencv340forpython2.7,记录命令如下:
下载解压后,进入解压目录:
mkdir bulid
cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/home/xiongdeng/application/opencv340forpython2.7 ..
[这一步可能会出错,百度一下即可,直接设置为OFF,具体忘了]
make -j8
sudo make install
到此为止opencv3.4.0安装完毕,但是python2.7还不能使用,opencv340forpython2.7的目录结构如下:
进入lib,发现有python2.7目录,里面有dist-packages/cv2.so
将cv2.so文件cp到/usr/local/lib/python2.7/dist-packages即可.
这里补充说明
查看一下python2.7的import路径可以使用命令
为什么cv2.so文件cp到/usr/local/lib/python2.7/dist-packages即可,我的理解是,cv2.so这个模块里面应该有指明了我们自定义安装opencv3.4.0的安装路径,这样就可以找到libopencv等其他文件.
当然也可以不用cp cv2.so文件,添加python2.7默认import路径即可,可参考这篇文章Python添加默认模块搜索路径
最后可以用这个代码测试
如果不放心,不知道能不能使用opencv,可以写一个py文件,代码如下,分别用python3.6和2.7可以运行,则说明成功了.