在这里插入图片描述

在Ubuntu20.04下安装GAMMA(v2020/2022)

saVic @Shiyan, 2022/7/19
2023.4.26更新:最新的v2022版GAMMA也适用

1 前言

GAMMA 合成孔径雷达干涉测量软件是由瑞士GAMMA公司开发的用于干涉雷达数据处理的全功能软件平台,运行在Linux系统下。
本文将介绍本人在武大雷达遥感项目组的电脑上(Ubuntu20.04)安装GAMMA(v20200728)的方法。
主要参考为:

2 准备软件包

GAMMA软件是商业软件。首先准备GAMMA(v20200728)的安装包,需要注意获取到的安装包属于哪种情况:

  • 压缩包/解压文件:若拿到的GAMMA软件是压缩包,则需要将其解压到待安装的路径。若拿到的直接是解压后的文件,则直接将整个文件夹复制到待安装的路径。如/usr/local/GAMMA_SOFTWARE-20200728
  • 源代码/已编译:若拿到的GAMMA软件只有源代码和makefile文件,则需要在配置好环境后使用make命令编译makefile文件。若拿到的GAMMA软件已经经过编译,则只需要配置好环境即可。

本人拿到的软件为已解压、已编译的一个“GAMMA_SOFTWARE-20200728”文件夹。因此将其直接拷贝到待安装的路径下(这里为/home/savic/saVic/Software/Gamma/GAMMA_SOFTWARE-20200728)即可。
在这里插入图片描述

3 添加环境变量

需要将GAMMA软件的目录添加到环境变量下,才可以在任意目录下执行其中的代码。
环境变量可以在bashrc中进行设置,首先打开bashrc文件:

 sudo gedit ~/.bashrc

在文件的最后添加如下内容。其中,GAMMA软件路径“GAMMA_HOME”和默认文件格式“GAMMA_RASTER”根据实际情况修改:

########## saVic #########

# GAMMA
export GAMMA_HOME=/home/savic/saVic/Software/Gamma/GAMMA_SOFTWARE-20200728 ### TODO:请根据实际情况修改路径
export MSP_HOME=$GAMMA_HOME/MSP
export ISP_HOME=$GAMMA_HOME/ISP
export DIFF_HOME=$GAMMA_HOME/DIFF
export DISP_HOME=$GAMMA_HOME/DISP
export LAT_HOME=$GAMMA_HOME/LAT
export IPTA_HOME=$GAMMA_HOME/IPTA
export GEO_HOME=$GAMMA_HOME/GEO

# PATH
export PATH=$PATH:.:$MSP_HOME/bin:$ISP_HOME/bin:$DIFF_HOME/bin:$LAT_HOME/bin:$DISP_HOME/bin:$IPTA_HOME/bin:\
$MSP_HOME/scripts:$ISP_HOME/scripts:$DIFF_HOME/scripts:$LAT_HOME/scripts:$IPTA_HOME/scripts:$DISP_HOME/scripts:\

export OS=linux64
#This adds the Gamma Software main directory to the Python path
export PYTHONPATH=.:$GAMMA_HOME:$PYTHONPATH
#This command disables version checking for HDF5
export HDF5_DISABLE_VERSION_CHECK=1
#This sets the Gnuplot default terminal type to be QT
export GNUTERM=qt
#Alternately, this sets the default terminal type to be WXT
#export GNUTERM=wxt
#set default raster format to BMP
export GAMMA_RASTER="BMP" ### TODO:请修改默认文件格式为SUN_RASTER、BMP或TIFF

添加完成后保存文件,并通过以下命令将环境变量刷新:

 source ~/.bashrc

4 安装依赖库

GAMMA软件需要安装一系列依赖库才能运行。
Linux系统中可以通过sudo apt(-get) install [软件名]安装软件。

4.1 安装FFTW3

Ubuntu系统下的安装方式为:

 sudo apt install libfftw3-dev libfftw3-single3

结果:成功安装无报错

4.2 安装Gnuplot与GIMP

Ubuntu系统下的安装方式为:

 sudo apt install gnuplot gnuplot-data gimp

结果:成功安装无报错

4.3 安装GTK 2+

Ubuntu系统下的安装方式为:

 sudo apt install libgtk2.0-dev

结果:成功安装无报错

4.4 安装GDAL

首先添加Debian软件包(网址:https://packages.debian.org/)源,以便apt可以搜索到各个版本的GDAL。

  1. 打开软件源列表文件:sudo gedit /etc/apt/sources.list
  2. 在文件最后添加一行:deb http://ftp.de.debian.org/debian buster main
  3. 添加秘钥:sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 648ACFD622F3D138 0E98404D386FA1D9 DCC9EFBF77E11517
  4. 更新软件源:sudo apt-get update

Ubuntu系统下安装GDAL:

 sudo apt install gdal-bin libgdal-dev libgdal20 

结果:依赖问题,无法安装
解决:可以先安装gdal-bin、libgdal-dev,但libgdal20仍有依赖问题。此时暂不需解决依赖问题,发现在安装gdal-bin、libgdal-dev的过程中安装了libgdal26。事实上,后续发现GAMMA(v20200728)需要的正是libgdal26而不是libgdal20。为了确保,可以在成功安装gdal-bin、libgdal-dev后前往/lib目录查看有无GAMMA需要的文件“libgdal.so.26”。
2023.4.26更新:最新的v2022版GAMMA安装文档里发现了这一问题,现在官方指出的安装方式就是:

 sudo apt install gdal-bin libgdal-dev 

4.5 安装HDF5

Ubuntu系统下的安装方式为:

  sudo apt install libhdf5-dev libhdf5-100

结果:libhdf5-dev成功安装,libhdf5-100无此包,已被libhdf5-103代替
解决:安装libhdf5-103:

  sudo apt install libhdf5-103

2023.4.26更新:最新的v2022版GAMMA安装文档里发现了这一问题,现在官方指出的安装方式就是:

 sudo apt install libhdf5-dev libhdf5-103

4.6 安装LAPACK和BLAS

Ubuntu系统下的安装方式为:

 sudo apt install libblas-dev libblas3 liblapack-dev liblapack3

结果:成功安装无报错
注:官方推荐安装liblapack-doc,但未找到此包,不过没有什么影响

5 编译代码(跳过)

注:若拿到的GAMMA软件只有源代码和makefile文件,则需要在配置好环境后使用make命令编译makefile文件。(本人没见过,一般都是编译好的)
首先安装GCC编译器:

sudo apt install build-essential

依次编译DISP/src, ISP/src, MSP/src, DIFF/src, IPTA/src, LAT/src目录下的makefile_static文件。既可以手动前往每个目录运行命令,也可以在任意目录通过刚刚配置的环境变量cd进入。

cd $DISP_HOME/src
make -f makefile_static
### TODO:需进入DISP/src, ISP/src, MSP/src, DIFF/src, IPTA/src, LAT/src每个目录运行

6 完成并测试效果

安装过程到此完成。
GAMMA官方安装文档提供了如下两种测试方法,在任意位置打开终端输入命令:

  • disras
  • gamma_doc data2geotiff

事实上,在任意位置输入任意GAMMA命令,只要成果返回该函数输入输出参数的介绍并没有报错,即可基本认为配置没问题。以输入disras为例:
在这里插入图片描述

后续会介绍在Ubuntu20.04下安装StaMPS(v4.1)。

注意,上述安装方式都是在官方文档推荐的系统下(Ubuntu20.04)进行的,如果系统版本不一样,可能会造成部分依赖包的版本与GAMMA需要的不一致,导致出现问题。

7 2023.4.26补充内容

虽然文档中到前面这一步已经安装好了,但GAMMA数据处理过程中还要用到一些别的,这里一并补充出来:

7.1 安装tcsh

Ubuntu系统下的安装方式为:

 sudo apt install tcsh

7.2 python环境

GAMMA部分功能(例如哨兵1号影像配准S1_Coreg.py是用python写的)需要用到python环境。
官方指出:推荐使用python3,但他们已经测试了在2上也能用。
Ubuntu系统自带python3,可以通过以下命令确认:

 python --version

如果确实没有,通过以下命令安装:

 sudo apt install python3

如果装了多个版本的python,可以通过下面的方式指定使用python3:

 sudo apt install python-is-python3

最后,安装GAMMA需要的python包:

 sudo pip install numpy matplotlib scipy shapely packaging
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐