从0开始的概念理解和环境配置(Windows 10 Anaconda+Pytorh+OpenCV & C++)

蓝色
紫色

理解Python虚拟环境

Anaconda中的虚拟环境

虚拟环境用来隔离式安装不同项目所需要的不同版本的各种库,相当于是一种容器,各种容器间互相隔离、互不影响。

Conda

Conda是一个辅助进行包管理和环境管理的工具,是Ananconda默认的Python包和环境管理工具。

Conda可以快速安装、运行和更新软件包及其依赖项。

Conda既具有pip的包管理能力,同时也具有vitualenv的环境管理功能 ,因此在功能上Conda可以看作是pip 和 vitualenv 的组合。

conda和pip

pip是一个软件包管理器,可简化python软件包的安装,升级和卸载,它适用于虚拟python环境,允许在多个python环境之间切换和管理。

conda是任何软件(安装,升级和卸载)的软件包管理器,它适用于虚拟系统环境,允许在多个通用环境之间进行切换和管理。

关于如何保存虚拟环境

pip方式

pip install -r 可以指定批量安装所有依赖的 requirements 文件,requirements 文件可以精确指定安装包版本,有效避免不兼容问题。

执行 pip freeze 可以把当前环境的包以 requirements 的格式输出。

conda方式

  1. 进入虚拟环境后,使用 conda env export > environment.yaml 进行备份
  2. 使用 conda env create -f environment.yaml 重建该环境。

conda 导出环境/导入环境/导出base环境

重建

备份环境信息的时候,可以是 .yml 或者 .yaml

.yml 文件放在工作目录下,通过 conda env create -f environment.yml 即可以快速从文件中创建相关环境。

关于虚拟环境的基本操作

创建

conda create -n env_name python=x.x

env_name 文件可以在anaconda安装目录 envs 文件下找到,注意,不指定python版本的时候自动安装最新版本。

需要同时安装必要包:

conda create -n env_name numpy matplotlib python=2.7

激活

windows:
activate env_name
linux:
source activate env_name

激活后,可以使用 python --version 检查当前python版本信息。

退出

deactivate env_name
# 或者
activate root # 切回root环境

删除

conda remove -n env_name --all

参考链接: conda常用命令

其他常用命令

# 查看当前环境下安装的包
conda list
# 下载安装包
conda install package_name
# 安装opencv
conda install --channel https://conda.anaconda.org/menpo opencv3 
# 安装GPU版本的tensorflow
conda install tensorflow-gpu
# 查看当前存在哪些虚拟环境
conda env list 
conda info -e
# 检查更新当前conda
conda update conda

关于一些配置和换源

conda install pytorch torchvision cpuonly -c pytorch

-c pytorch 指定pytorch源作为channel来下载,比 ~/.condarc 设置的镜像源 优先级高 。通过以下方式可以添加清华源:

  1. 直接找到 .condarc 文件进行修改,该文件存储在 C:\Users\xxxx\.conda\ 路径下。
  2. 使用命令 conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/

可以使用 conda config --show-sources 查看所有源。

奇奇怪怪的知识   – 关于cuda

Compute Unified Device Architecture:一种并行计算架构,能够使 GPU 进行数据并行处理,解决复杂的计算问题,能够用来完成计算加速。CUDA中包含很多库,例如cublas,cufft 等计算库。

CUDA简介

Unofficial Windows Binaries for Python Extension Packages

这里可以寻找OpenCV和Python的版本对应

安装记录

1. 从官网下载对应版本的Anaconda和VScode

VSCode C++终端和CMD控制台的输出转换

关于VScode插件的推荐 -掘金

插件推荐 -知乎
在这里插入图片描述

2. 配置VScode中的C++环境

1. 安装编译器 MinGW
在这里插入图片描述
这里我安装的版本是 x86_64-posix-seh ,把它解压缩放到 C:\Program Files\ 中。
复制路径 C:\Program Files\mingw64\bin,把它配置到系统环境变量中。
在这里插入图片描述
然后通过命令 cd C:\Program Files\mingw64\bin\gcc -v 查看是否安装成功。
在这里插入图片描述
参考链接:VsCode安装和配置c/c++环境

2. VScode中安装 C/C++ 插件
3. 配置 ·vscode·文件
参考链接:VSCode配置C/C++环境 -知乎
有报错:在这里插入图片描述
是因为在加入系统path的时候, bin 后少了一个\,更改完重启一下VScode就可以了。

3. 安装 Python3.6 + PyTorch-GPU

# 创建workspace环境
conda create --name workspace python=3.6
# 进入workspace 环境
conda activate workspace
# 退出虚拟环境
conda deactivate

在这里插入图片描述
在这里插入图片描述

关于是否安装CUDA ?

CUDA负责GPU的加速处理,但是Tensorflow-GPU和Pytorch-GPU版本都自带了简化的 CUDA toolkit ,所以只需要根据自己电脑的显卡驱动版本,确定相应版本的包进行安装即可。

关于CUDA的安装:2021.04|pytorch+cuda11.1+anaconda3+vscode安装

安装GPU版本的Pytorch

首先在 cmd 使用

nvidia-smi

查看支持的cuda版本,结果显示,支持 11.2及以下版本
在这里插入图片描述
在这里插入图片描述

也可以通过NVIDIA contrl panel 查看显卡信息:
在这里插入图片描述
使用 nvcc -v 查看是否安装cuda,如果已经安装成功,会显示相应版本信息。


或许 你可以使用清华源,安装速度会更快:

敲黑板!!

国内连Pytorch的服务器速度很慢,安装失败率很高,所以切换到清华镜像源几乎是必须的。

感谢这个hxd的提醒:Win10 + Anaconda3 + Pytorch1.8 ( CUDA11.1 ) +Jupyt

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/win-64/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/peterjc123/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
# conda install pytorch torchvision cudatoolkit=10.2
conda install pytorch torchvision torchaudio cudatoolkit=11.1

注意:这里要把官网上默认的 -c pytorch -c conda-forge 去掉,不然还是会 默认从主服务器上 下载,速度很慢!!
在这里插入图片描述
在这里插入图片描述

参考链接:WIN10+RTX3070+anaconda+cudatoolkit=11.1+pytorch 1.8 环境配置时,下载中断和失


离谱哇 不用清华源很容易下失败哇 真的要好久好久…等了4h没下下来1.6G的pytorch包…就一直卡在那儿我人傻了…

进入PyTorch官网,查看相应版本下载命令:

在这里插入图片描述
conda-forge 应该也是一个库,里面有很多包。

conda-forge,conda,-c的理解

conda install pytorch torchvision torchaudio cudatoolkit=11.1 -c pytorch -c conda-forge

在这里插入图片描述
在这里插入图片描述


查看是否安装成功:进入该虚拟环境下

python # 进入python环境
import torch
print(torch.cuda.is_available()) # True意味着你可以使用GPU

在这里插入图片描述

如果安装失败,要重新来过:

conda activate workspace
conda remove -n workspace --all # 这是清除虚拟环境的命令啦

4. 安装py3.6对应版本的OpenCV

首先使用 pip list 查看当前虚拟环境中安装的包
在这里插入图片描述
OpenCV版本对应下载地址
在这里插入图片描述
将下载好的 .whl 文件放到 C:\Users\007\anaconda3\envs\workspace\Lib\site-packages\ 下:

pip install C:\Users\007\anaconda3\envs\workspace\Lib\site-packages\opencv_python-4.4.0-cp36-cp36m-win_amd64.whl

在这里插入图片描述
在这里插入图片描述
再次使用 pip list 查看安装的包,就可以看到有 opencv-python 4.4.0 了:
在这里插入图片描述
参考链接:win10+anaconda+python虚拟环境安装opencv

5. 给vscode工作文件夹设定 默认的anaconda虚拟环境

首先设置当前工作文件夹的python编译器路径,可以有两种方式:
在这里插入图片描述

在这里插入图片描述
一开始只是切换编译器路径并不能让代码的运行环境切换到anaconda的虚拟环境中

以为是code runner的设置不对,一直没有切进workspace,于是尝试了:
vscode code-runner配置python虚拟环境解释器
并没有解决,学到了一点点东西…

再后来…

在这里插入图片描述
这里看到终端采用PowerShell的时候,一直切换不进workspace,从Command Prompt中可以看到当前环境情况,所以应该将终端设置为cmd模式。
在这里插入图片描述
更改方法:
在这里插入图片描述
在这里插入图片描述
参考链接:vscode如何将默认终端powershell改为cmd?


后来 当我第二次打开VScode时,它又回到了PowerShell终端emmm,并且提示:

This is deprecated, the new recommended way to configure your default shell is by creating a terminal profile in #terminal.integrated.profiles.windows# and setting its profile name as the default in #terminal.integrated.defaultProfile.windows#. This will currently take priority over the new profiles settings but that will change in the future.

它说 你需要采用新的方式来设定默认为Command Prompt:

将之前的 加入的最后的那句改成:

"terminal.integrated.profiles.windows": {
    
    
        "PowerShell": {
    
    
            "source": "PowerShell",
            "icon": "terminal-powershell"
        },
        "Command Prompt": {
    
    
            "path": [
                "${env:windir}\\Sysnative\\cmd.exe",
                "${env:windir}\\System32\\cmd.exe"
            ],
            "args": [],
            "icon": "terminal-cmd"
        },
        "Git Bash": {
    
    
            "source": "Git Bash"
        }
    },
    "terminal.integrated.defaultProfile.windows": "Command Prompt",

在这里插入图片描述
就可以看到终端处变成这个:(此时也可以通过shift+crl+p调出setting搜索terminal来找到这个选项了)
在这里插入图片描述
在这里插入图片描述

参考链接:The new way to configure default shell and argument commands in VSCode?

测试:

import cv2
img=cv2.imread("C:\\Users\\007\\Desktop\\PyTorch\\nice.jpg")
print(img) # 如果输出tensor说明读到了图像,如果是None,则没有
cv2.imshow("q1",img)
cv2.waitKey(0)
'''
# 测试当前环境的python版本
import sys
print(sys.version)
'''

看过的一些资料:

vscode切换python解释器失败

全局和虚拟环境

vscode python切换虚拟环境 解释器没变

在VSCode中配置Python环境以及可能出现的问题和解决办法(code runner的配置及内附Pycharm配置教程)

关于vscode终端问题

VSCode终端设置

vscode和anaconda结合的环境配置

猜你喜欢

转载自blog.csdn.net/Nismilesucc/article/details/120405131