安装
因为项目需要,配置了一次python环境,问题百出。venv果然是python的利器之一。
回顾一下过程,发现python的依赖管理和java maven的依赖管理理念差很多,还是比较喜欢maven的方式。再加上spring boot解决了基础版本的冲突问题,更是优势凸显。
幸好有Anaconda这种东西,不然死在环境配置上了。
下载
https://www.anaconda.com/products/individual
选择对应的版本,linux选择:Anaconda3-2020.11-Linux-x86_64.sh
安装
bash Miniconda3-latest-Linux-x86_64.sh
profile配置环境变量
export PATH=/usr/anaconda3/bin:$PATH
添加源:
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 create -n xxxx python=3.8 //创建python3.6的xxxx虚拟环境
依赖包安装
opencv,numpy, seaborn,matplotlib,colormap
conda install -c conda-forge opencv
conda install numpy
conda install -c conda-forge seaborn # conda install seaborn
conda install matplotlib
conda install -c conda-forge colormap
pytorch:
conda install -c pytorch pytorch
conda install torchvision -c pytorch
可以通过官网根据实际环境选择具体的安装配置:
https://pytorch.org/
如果没有gpu(cuda),使用cpu版本pytorch
conda install pytorch torchvision torchaudio cpuonly -c pytorch
pytorch离线安装:
之前有个人说通过修改urls.txt的方法最好不要试,直接试嗝屁了。
tar.biz2在官网下载:
https://anaconda.org/pytorch/repo
也可以在清华的网站下载,同源地址。
下载tar.biz2包后,调用命令:
conda install --offline pytorch-1.1.0-py3.6_cuda90_cudnn7_1.tar.bz2
应用
conda 配置和调用
conda create -n my-env pyton=3.8 #创建
conda activate my-env # 激活,之后所有的操作都在此
直接定位到env环境
java 调用的时候,直接将python路径指定到env:
String[] command = new String[] { "/root/anaconda3/envs/my-env/bin/python", pythonScript.toString(),
"--restore-weight", pthPath.toString(), "--input", sourceImagePath.toString(), "--output",
outImagePath.toString() };
LOGGER.info("command : {}", Arrays.toString(command));
Process process = Runtime.getRuntime().exec(command);
命令行,直接cd到路径:
cd /root/anaconda3/envs/my-env/bin/
./python