这里以安装napari为例,介绍使用conda创建和管理虚拟环境以满足不同的软件环境依赖要求。
python有着非常丰富的软件生态,但不同的软件工具要求有不同的环境依赖。如果都进行默认安装到 Anaconda的 base 环境,很容易造成原有的环境的破坏,造成原有软件的无法使用。因此比较好的做法是:将新的工具安装到虚拟环境中。
新建虚拟环境
首先打开命令行工具,检查 conda 是否能够正常使用:
conda activate base
这个时候命令行前面就会加一个 (base)
标识。这就说明 conda 是正常配置好了。注意,linux 或者 macOS 中好像是安装配置好,打开 terminal 就会带上这个标识,即默认激活base环境。
然后输入以下命令,创建 napari 虚拟环境:
conda create -y -n napari -c conda-forge python=3.10
这里带了几个参数:
-y
: 相当于--yes
,Sets any confirmation values to 'yes' automatically. Users will not be asked to confirm any adding, deleting, backups, etc.-n
:相当于--name
,就是新建虚拟环境的名字,后面跟上命名即可,我这里是napari
-c
:相当于--channel
,就是从哪个地方下载所需的资料包python=3.10
:指定这个虚拟环境的 python 版本为 3.10
conda create
命令还有更多参数。而对于命令行工具,一个约定成俗的小技巧就是通过 -h
来查询这个工具的使用方法。这里就可以使用 conda create -h
来查询。
如果下载速度比较慢,可以考虑设置为清华的镜像源。
虚拟环境创建完毕后,可以使用如下命令激活新的环境:
conda activate napari
这个时候命令行提示符前缀就从 (base)
变成 (napari)
了。然后再在这个虚拟环境中进一步进行安装 napari。
安装napari
napari 是一款比较新的类似 ImageJ 的图像分析工具平台,支持非常多的插件,开发者相当活跃。而且因为是基于 python 编程语言,所以相当一部分插件能够很好地利用人工智能的一些模型。
安装 napari 可以使用如下命令:
python -m pip install "napari[all]"
安装完了可以直接在命令行中输入 napari
打开 napari软件用户界面。
对于 windows 系统用户,可以新建一个 bat 脚本作为打开 napari 的快捷方式。bat 脚本中的内容如下:
conda activate napari && napari
安装 napari-SAM4IS 插件
这个插件的功能是:Create annotations for instance segmentation using Segment Anything models。
其中 Segment Anything Model (SAM) 是 Meta(前身 Facebook)公司2023年推出的一个什么基于语义的通用图像分割模型,这是一个非常好的辅助工具,只要点一下,或者画个框框作为提示,就能够进行图像分割。2024年Meta又推出一个更强SAM2,还能支持视频分割,但目前 napari 上还没有 SAM2的插件。
通过以下命令先安装 SAM:
conda activate napari
python –m pip install git+https://github.com/facebookresearch/segment-anything.git
如果没有 git 需要先安装 git 工具。国内下载速度比较慢,安装包见附录百度网盘资源。
然后再安装 napari-SAM4IS 插件(最新版):
python –m pip install git+https://github.com/hiroalchem/napari-SAM4IS.git
或者从 pypi 中安装(稳定发布版本):
python –m pip install napari-SAMIS
注意由于网络原因,国内无法在 napari 内置的插件市场直接安装插件,只能是在命令行中 pip install
安装好后,打开 napari 并从菜单栏打开这个插件(Plugins>SAM Widgets),效果如下:
备份与恢复虚拟环境
napari先进强大,但仍然存在一些缺点。比如napari的插件机制还不成熟,安装部分新插件可能导致底层模块兼容性破坏,造成napari软件或者其它插件无法使用。所以当我们要使用 napari 进行一些正式的重要的分析工作,搭建测试完成之后,务必做好环境备份。
备份conda创建的虚拟环境有两种方式,一种是浅备份,只是将构建当前虚拟环境的所有包及其版本以及其它一些配置记录到 env_napari.yaml
文件中。这种方式可以输入命令如下:
conda activate napari
conda env export > env_napari.yaml
如果在别的任意电脑任意系统上想重新安装这个环境,可以使用以下命令从备份文件进行安装:
conda env create -f env_napari.yaml
但需要注意,虚拟环境中部分额外的内容可能无法通过这种方式复原,比如上面我们从 git 安装的 SAM,我估计是不大行的。所以另一种备份方式就是「完整备份」。完整备份需要使用 conda-pack
这个额外的包,它能够打包conda环境(包括环境中安装的软件包的所有二进制文件),非常适用于整体的环境复制迁移。安装这个包的命令如下:
conda activate napari
conda install -c conda-forge conda-pack
实际打包备份的命令如下:
conda pack -n napari -o env_napari.tar.gz
但需要注意的是,打包后的内容,只能是在相同电脑配置下复制,当电脑的硬件,系统和驱动不同的时候,可能使用时会存在一些不兼容的问题。而要恢复这个环境,只需要将压缩包里边的内容解压到指定目录即可。举例如下:
tar -xzvf env_napari.tar.gz -C D:\anaconda3\envs\napari
也可以通过其它工具手动解压。解压完成后,命令行中运行 conda info -e
可以查看恢复的环境。
此处评论已关闭