在阿里云centos7上安装opencv

搜寻了很多教程,都是一大堆步骤,按照他们的步骤,还是没能装好,最后经过同学提醒,他说之前直接用pip install opencv-python这一条命令就直接装好了,,,,,,结果一试,虽然中间出了些差错,但是最终还是安装成功了

这里记录一下遇到的问题和解决方案

第一步:

输入命令 :pip install opencv-python

发现安装在了linux默认的python2.7文件夹下了,,

进入python环境,默认进入了python2.7 的环境下了

接着,import cv2

没问题

现在要进入python3环境,因为自己的django算法部分代码使用python3写的

果然就出现问题了

经过细细观察,发现用pip install 和pip3 install 安装包的时候,居然安装在了不同的路径下面

(安装Python之后pip 和pip3的区别 - ydw_ydw的博客 - CSDN博客 https://blog.csdn.net/ydw_ydw/article/details/82049772)

pip是安装在了系统默认python环境下,也就是

故,接着pip3 install opencv-python

将opencv包安装到python3环境

没问题

好了,继续进入python3环境,import  cv2

果然出错

大概是说发现了多个地方或多个版本的opencv,numpy(安装opencv自带安装numpy)具体就不截图了

猜想,应该是python2环境里安装的那个numpy、opencv和现在这个python3环境里安装的重了

然后我就把py2里面的删了:pip uninstall opencv、numpy

现在就没有刚刚那个错误了,而是出现了另一个错(import numpy没问题)

这个错误找了我一个小时,,,,

然后找啊找,有人说是因为少了cv.py这个文件,https://stackoverflow.com/questions/39112321/python-3-5-importerror-dynamic-module-does-not-define-module-export-function-p

然后我就把python2环境里面的这个cv.py文件拷贝到python3里面,

发现还是不行

最终,这位老哥的方法解决了我的问题,真的是太感谢了

https://stackoverflow.com/questions/39112321/python-3-5-importerror-dynamic-module-does-not-define-module-export-function-p

让我把python2环境下的cv2.so文件删掉,然后再sudo pip3 install opencv-python

果然运行成功

自己的项目也成功运行

撒花!!

 

pip3没用是因为没有设置环境变量

可以参考这个博客

https://www.cnblogs.com/whoamme/p/4039998.html

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐