安装cv2、keras、scipy、tensorflow-gpu、skbuild、PIL、sklearn 0.18、numpy.testing.nosetester、apschedu、skbuild

目录

一、安装cv2,ImportError: libGL.so.1: cannot open shared object file报错

问题解决方法:

cv2.findContours()相关参数:

二、安装keras

三、安装scipy

四、安装tensorflow-gpu

五、安装mxnet

六、安装skbuild

七、python中关于sklearn 0.18的错误—— cannot import name comb

八、【Bug】ModuleNotFoundError: No module named 'numpy.testing.nosetester'

九、python3 No module named 'PIL'

十、No module named 'apscheduler.scheduler'

十一、ModuleNotFoundError: No module named ‘skbuild‘解决办法


一、安装cv2,ImportError: libGL.so.1: cannot open shared object file报错

1.import cv2  导出失败,没有这个库,安装命令如下:

pip install opencv-python   (如果只用主模块,使用这个命令安装)
pip install opencv-contrib-python (如果需要用主模块和contrib模块,使用这个命令安装)

2.执行完1中的两条命令,之后import cv2 ,报错:ImportError: libGL.so.1: cannot open shared object file: No such file or directory——docker容器内问题报错,解决方法如下:

指令:
sudo apt update   #这句我安装时 没有用到
sudo apt install libgl1-mesa-glx
就ok了

我按照上面的步骤执行完,分别遇到以下问题:

pip install opencv-python 安装卡到一点,卡了很久才安装成

pip install opencv-contrib-python  执行过程中安装不了,后来指定opencv-contrib-python==3.2.0.7安装成功;

上面两部都装完了之后,运行我的程序img.ctypes.data_as这行代码,居然报出找不到ctypes,要知道这个python自带的 不需要特意装;

所以我又进行了以下操作:1) pip uninstall opencv-python  2) pip install --upgrade pip 

3) pip install opencv-python -i https://pypi.tuna.tsinghua.edu.cn/simple 

这次安装之后,运行自己的脚本没有报出任何错误了,并且安装的很顺利很快速;

版本差异引发的错误:OpenCV版本差异所引发的cv2.findContours()函数传参问题:ValueError: not enough values to unpack (expected 3, got 2)

cv2.findContours()这个方法是用来找出轮廓值的:

//cv2.findContours找出轮廓值,cv2.RETR_EXTERNAL表示图像的外轮廓
imagex, contours, hierarchy = cv2.findContours(binary_niblack.copy(),cv2.RETR_EXTERNAL,cv2.CHAIN_APPROX_SIMPLE)

但是在运行时,我所使用的opencv-python4.1.2.30则报错:

ValueError: not enough values to unpack (expected 3, got 2)
 值错误:没有足够的值解包(应为3,得到2)

问题解决方法:

1、降级(或升级)OpenCV:

我在python中安装的第三方库是OpenCV4.1.2.30,所以这里要降级处理:

pip install opencv-python==3.4.3.18  #我用pip安装的所以降级就用pip
conda install opencv-python==3.4.3.18 #若是用conda安装的,就执行这个降级

注意:若显示错误:
PackagesNotFoundError: The following packages are not available from current channels:

只好百度whl文件安装opencv-python 3.4.0.12

再在Anaconda上安装

出现问题:下载whl文件问题:解决python pip安装提示"not a supported wheel on this platform"

解析差异:

  • OpenCV2和OpenCV4中:
    findContours这个轮廓提取函数会返回两个值:
    ①轮廓的点集(contours)
    ②各层轮廓的索引(hierarchy)
  • OpenCV3中:
    则会返回三个值:
    ①处理的图像(image)     
    ②轮廓的点集(contours)
    ③各层轮廓的索引(hierarchy)
  • cv2.findContours()相关参数:

    安装cv2、keras、scipy、tensorflow-gpu、skbuild、PIL、sklearn 0.18、numpy.testing.nosetester、apschedu、skbuild_第1张图片

二、安装keras

pip install --upgrade keras==2.1.0 升级到指定版本
pip install  keras==2.0.9安装指定版本

三、安装scipy

pip install --upgrade scipy==2.1.0 升级到指定版本
pip install  scipy==2.0.9安装指定版本

四、安装tensorflow-gpu

ubuntu16.04系统下,利用anaconda安装tensorflow-gpu_森林盲点的博客-CSDN博客

相应的查询命令:查询版本、安装目录,类似的import scipy;import keras;import matplotlib;都可以这样查询;pip list;也可以实现类似的功能;

import numpy

print(numpy.__version__)
或者
print(numpy.version.version)
import numpy

print(numpy.__file__)

五、安装mxnet

pip3 install mxnet-cu101 -i https://pypi.tuna.tsinghua.edu.cn/simple

六、安装skbuild

pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple scikit-build

七、python中关于sklearn 0.18的错误—— cannot import name comb

解决方法

找到Anacanda或python下的下面两个文件(推荐安装Anaconda,库的安装导入错误会减少)
修改lib\site-packages\sklearn\model_selection\_split.py中from scipy.misc import comb为from scipy.special import comb
修改lib\site-packages\sklearn\metrics\cluster\supervised.py中from scipy.misc import comb为from scipy.special import comb


八、【Bug】ModuleNotFoundError: No module named 'numpy.testing.nosetester'

问题的原因是numpy版本>1.18,而scipy的版本<=0.19,所以只要把scipy的版本更新(比如1.1.0)就行了。

pip install scipy==1.1.0

九、python3 No module named 'PIL'

pip3 install Pillow 

十、No module named 'apscheduler.scheduler'

pip uninstall apscheduler
pip install apscheduler==2.1.2

十一、ModuleNotFoundError: No module named ‘skbuild‘解决办法

pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple scikit-build

你可能感兴趣的:(python库函数,深度学习)