前言
基于Ubuntu 22.04.3 LTS 在miniconda环境下的开源时序InSAR环境(isce2+mintpy)配置。
目前isce2官网给出的安装方法较为复杂,isce2目前已支持直接从conda-forge安装,较为快速便捷。
创建conda环境
在Ubuntu命令行中输入conda 命令创建名为demo的环境,python版本为3.10
conda create -n demo python=3.10
安装完成后激活环境
conda activate demo
使用conda直接安装isce2
conda install -c conda-forge isce2
安装完成后需要添加环境变量以便后边使用
首先需要找到isce2安装的位置,如果你使用的也是wsl+miniconda环境,它大概率在
/home/your_usr_name/miniconda3/envs/demo/lib/python3.10/site-packages/isce
地址下
你也可以通过运行下方命令来寻找isce的位置,首先运行python命令进入python命令行界面:
依次运行
import isce
isce.__file__
输出的地址,__init__.py
前的即为isce安装的位置
输入exit()
并运行,退出python命令窗口
回到ubuntu界面,将获得的这个地址添加到环境变量:
export ISCE_HOME='/home/your_usrname/miniconda3/envs/demo/lib/python3.10/site-packages/isce'
export PYTHONPATH=$ISCE_HOME/components
export PYTHONPATH=$ISCE_HOME/applications:$ISCE_HOME/components
export PATH=${PATH}:${ISCE_HOME}/applications
这里直接把${ISCE_HOME}/applications
添加到环境变量中,所以可以直接运行isce对应的app文件,尝试运行:
stripmapApp.py -h
若有结果输出,说明初步安装成功。
下面是对于时序InSAR处理所用到的stack操作,需要添加额外的环境变量
使用conda安装的isce2似乎直接将stackSentinel.py
添加到了环境变量中,首先尝试能否使用stackSentinel.py
stackSentinel.py -h
如果输出有如下结果,则证明安装成功;如果报错说找不到,则说明需要添加环境变量。
export ISCE_STACK='/home/your_usrname/miniconda3/envs/demo/share/isce2'
export PYTHONPATH=${PYTHONPATH}:${ISCE_STACK}
export PATH=${PATH}:${ISCE_STACK}/topsStack
注意我这里加入的是TOPS成像模式的topsStack,如果你要使用其他成像模式雷达卫星数据,比如stripmapStack或者alosStack,替换即可。
之后再次运行
stackSentinel.py -h
即可获得正确的输出。到这里,isce2已经安装完成。
请注意,以上所有步骤的export
操作在每次启动时均需要添加,如果不想这么麻烦,请在Ubuntu中找到.bashrc文件,将所有的export命令添加到末尾并重启环境
安装mintpy
conda install -c conda-forge mintpy
安装完成后运行smallbaselineApp.py -h
检查安装是否成功
smallbaselineApp.py -h
输出正常,可以进行下一步工作了!
备注
使用conda-forge安装的isce2并不包括isce2/contrib文件夹下的额外附加功能,但是不影响其基本两景DInSAR、时序干涉以及mdx.py可视化功能的使用。