问题简述:使用 pip install opencv-python==3.4.2.16 安装 SIFT等算法可免费使用的版本的opencv时遇到 ‘ Could not find a version that satisfies the requirement opencv-python==3.4.2.16’的报错
环境:Anaconda & python 3.8,已换源到 清华源,win10
原因:报错中讲述找不到3.4.2.16的opencv-python版本,去 清华源的 opencv-python的列表 ,找到opencv-python-3.4.2.16部分,cp代表python版本,可以看到,opencv-python-3.4.2.16最高只支持python3.7,因此3.8及以后版本的python的使用者,使用pip安装这个版本的opencv可能都会遇到这样的报错,只要回退到3.7版本或者新建虚拟环境即可。
网上主流的几种方法中,比较方便的是 直接用conda安装覆盖 和 使用anaconda navigator更改已有环境的python版本
方法一:conda install python=3.7
方法二:Anaconda Navigator 客户端 (打开后不要乱点,很容易卡住) --> Enviroments --> 搜索python --> 左键单击前面的 红色对勾 --> 在菜单选择最后一个 --> 选择想安装的版本 --> 点击客户端下端的Apply
我原本想这样安装的,但是不知是网太慢还是环境还是不稳定的问题,都没有装好。且直接更改base环境的python版本很可能导致我环境内的其他包(比如pytorch)的版本匹配出现问题,所以还是最好新建一个虚拟环境
有关虚拟环境我比较推荐这篇文章
https://www.cnblogs.com/yuehouse/p/10239195.html
第一步:建立虚拟环境
conda create -n py37 python=3.7
或者使用 anaconda navigator 客户端,点击上面界面的 Create 创建新环境,如果不想重新安装包,也可以尝试 克隆
我命名成 py37,读者也可以自己命名
第二步:激活虚拟环境
activate py37
第三步:安装所需包
conda install opencv-python==3.4.2.16
conda install opencv-contrib-python==3.4.2.16
第四步:修改自己编译环境中的解释器路径
以 PyCharm为例,在 文件 -> 设置 -> 项目XXXX -> Python解释器 -->点击 齿轮 按钮 --> 现有环境 --> …按钮 --> 打开显示隐藏目录(上面的小眼睛按钮) --> 选择路径 一路确认
路径一般是Anaconda安装根目录的envi文件夹的py37下的 Python.exe
如果没有自定义路径,多数默认路径为 C:\ProgramData\Anaconda3\envs\py37\python.exe
再说一个常用的 Jupyter Notebook (很多教学都在notebook中进行)
需要先安装 nb_conda (base环境中安装即可)
conda install nb_conda
然后打开Notebook后每次新建文件就可以选择环境,已有文件也可以在Cell菜单更改运行环境
CSDN第一篇文章,如有勘误请指出