• 热门搜索:
  • 装机系统
  • 雨林木风系统
  • 深度系统
  • 电脑公司系统
  • win7装机版
  • 教程分类
    当前位置:主页 > 教程咨询 > Linux教程

    Linux下安装Python3.5及其OpenCV3.2接口

    来源:装机员┆发布时间:2018-09-09 00:09┆点击:

    装机员为您提供Linux下安装Python3.5及其OpenCV3.2接口的文章咨询供您阅读,如何使用Linux下安装Python3.5及其OpenCV3.2接口的方法对您有帮助也请您举手之劳分享给您身边的人。

    电脑里有:python2.7.5、python3.5.0(后来下载安装的,当下载安装这个版本后,发现输出python -V命令出来的只会是3.5.0l了)、opencv3.2.0、numpy1.9.0(我自己手动下载安装的)。看了网上的很多文章,试了很多遍,弄完以后仍旧没有cv2.so!找了很久原因,看到别人说:

    Linux下安装Python3.5及其OpenCV3.2接口

    才恍然大悟,原来在cmake时,装机系统,不管是用python2还是python3,那下面的几栏都得有目录,不然无效!!!!!!!!!!当然中间有个含PYTHON_NUMPY字样的那栏也要填上numpy的目录!

    于是我再一次编译安装opencv3.2时候出现:

    Linux下安装Python3.5及其OpenCV3.2接口

    虽然是个报错,但这里出现了cv2字样以及opencv_python3字样!!!!!!!!!于是我想是不是我自己手动下载的这个numpy的版本不对?!于是我试着yum install numpy,但yum命令用不了会报错,因为yum不支持python3以上的版本!所以我只能将python命令默认到python2.7.5版本而不是python3.5:

    Linux下安装Python3.5及其OpenCV3.2接口

    然后我再yum install numpy。找到numpy安装在哪里(我的去了usr/lib64/python2.7/site-packages/下面)。然后再看这个numpy的core/include/numpy下有没有_numpyconfig.h(注意不是_numpyconfig.h.in)文件。我找了下,有。也就是说我之前手动下载的numpy里没有找到_numpyconfig.h文件而这里有。于是我把这个_numpyconfig.h复制到我的numpy1.9.0的/numpy/core/include/numpy/下面。(因为我之前cmake时PYTHON_NUMPY_INCLUDE的目录我写的就是numpy1.9.0/numpy/core/include)

    接着之前报错的地方继续安装,出现:

    Linux下安装Python3.5及其OpenCV3.2接口

    看之前的_numpyconfig.h的那个错不报了,解决了。往下编译安装时出现_multiarray_api.h这个错。于是我去我的numpy1.9下面找,果然没有这个文件而在/usr/lib64/python2.7/site-packages/numpy/core/include/numpy下又找到了这个文件。有两种办法:1、按照我之前的解决办法,复制过去,重新编译安装,出现什么错再解决。2、或者直接从cmake那里重新编译OpenCV,重新填写PYTHON_NUMPY的目录!改成什么文件都不缺的/usr/lib64/python2.7/site-packages/numpy/core/include/numpy。我选择了办法2:

    Linux下安装Python3.5及其OpenCV3.2接口

    PYTHON2_***和PYTHON3_***后的都都要填上目录,尽量补全!!!我除了PYTHON2_INCLUDE_DIR2 PYTHON_LIBRARY_DEBUG PYTHON3_INCLUDE_DIR2 PYTHON3_LIBRARY_DEBUG 这4项没有写目录其它都写了并核对了。仔细看我这里的PYTHON2_NUMPY_INCLUDE_DIRS与PYTHON3_NUMPY_INCLUDE_DIRS的目录,这不是我自己下载的numpy1.9文件夹目录,因为这里面缺少上次报错的一些文件!而现在填上的目录里是不缺这些文件的:

    Linux下安装Python3.5及其OpenCV3.2接口

    然后configure,接着configure,接着generate即可。

    然后去刚刚编译好的文件夹下面,make :

    Linux下安装Python3.5及其OpenCV3.2接口

    看终于出来cv2字样了,感觉离成功不远了。

    继续make install。然后我的即可在刚刚编译的文件夹下找到这个cv2的字样:

    Linux下安装Python3.5及其OpenCV3.2接口

    这时候通过在整个计算机中查找,我发现/usr/local/lib/python3.5/site-packages下也有这个cv2.cpython-35m-x86_64-linux-gnu.so文件。于是我进入这个路径后:ln -s cv2.cpython-35m-x86_64-linux-gnu.so cv2.so 将那个文件软链接到cv2.so!这样就可以了。(在make install之后我没找到cv2.so文件差点崩溃放弃,还好我没放弃,终于等到你哈哈哈)

    看可以了:

    Linux下安装Python3.5及其OpenCV3.2接口

    看我的这个opencv的python接口只能在python3.5下使用!不过还有个小小的问题就是numpy.core.multiarray failed to import!这个只要不用到就没事,总体import cv2成功!

    我查了下numpy.core.multiarray failed to import 这个错误是因为版本不对,我cmake里无论是python3.5还是python2.7用的都是/usr/lib64/python2.7/site-packages/numpy/core/include/numpy!这是不对的!版本不对问题。(你们看之前cmake时的PYTHON2_NUMPY和PYTHON3_NUMPY的目录都是2.7下的那个numpy,而那个numpy其实是1.7版本的,所以这个numpy文件夹只适合python2.7,所以安装完毕时它自动跑去了python2.7的site-packages下面,而python3.5下面就没有!!!!!所以这是不对的!!!!python2.7和python3.5用的都是python2.7的numpy,而我现在是搞Python3.5+OpenCV3.2)我看了网上说python3.5.0的需要numpy1.11.1!一个办法是下载安装numpy1.11.1后重新返回cmake那里写正确的PYTHON_NUMPY目录!或者另一个办法,下载安装新的合适的numpy1.11.1后移入python3.5下面(不知道行不,试试。即我想在不cmake的前提下搞正确就必须待会儿安装好numpy1.11.1后要将numpy1.11.1下的文件夹numpy复制进我之前cmake时指定的PYTHON3_NUMPY的目录中。。。。其实这里心里清楚python2.7和python3.5用的都是Python3.5的numpy,不过我想此时应该不会错。因为我现在弄的Python3.5+OpenCV3.2,只不过是去python2.7的文件夹下读取自己的python3.5的numpy。。。有点绕哦,其实就是爸爸B和妈妈A要找自己的儿子,之前AB将自己的儿子numpy寄养在家庭C中,邻居D也有一个儿子叫numpy。AB非常需要自己的儿子,结果却去D中将numpy接回家(也就是我开始错误的原因),后来知道自己搞错了,于是去C中将自己的儿子接回来(正确))。

    我暂时先用方法2,自己去官网下载了一个num1.11.1,然后python3 setup.py install ,结果:


    以上就是装机员给大家介绍的如何使用Linux下安装Python3.5及其OpenCV3.2接口的方法了,如何使用Linux下安装Python3.5及其OpenCV3.2接口的方法到这里也全部结束了相信大家对如何使用Linux下安装Python3.5及其OpenCV3.2接口的方法都有一定的了解了吧,好了,如果大家还想了解更多的资讯,那就赶紧点击装机员系统官网吧。

    本文来自装机员www.zhuangjiyuan.com如需转载请注明!

    Tag标签| RSS订阅 | 网站地图
    装机员系统之家提供win7装机版xp系统下载win7系统下载、最新Windows10系统下载,专为装机修机员奉上最好的软件、系统、U盘pe、程等平台
    请勿发布违反国家法律法规的内容,会员观点不代表本站立场.本站发布的系统与软件仅为个人学习测试使用,请在下载后24小时内删除,不得用于任何商业用途,
    否则后果自负,请支持购买微软正版软件! 如侵犯到您的权益,请及时通知我们,我们会及时处理。 粤ICP备15116662号