InSAR データ処理のために Windows 用の ubuntu LTS に EZ-InSAR をインストールして使用する

EZ-InSAR (旧名 MIESAR、使いやすい合成開口レーダー干渉計用の Matlab インターフェイス) は、使いやすいグラフィカル ユーザー インターフェイス (GUI) (InSAR) データを介して干渉合成開口レーダー用に MATLAB で作成されたツールボックスです。処理にはオープンソース ソフトウェア パッケージ (ISCE+StaMPS/MintPy) を使用します。このツールボックスでは、ISCE を使用して SAR インターフェログラムを生成し、StaMPS または MintPy を使用して永続散乱法 (PS) またはスモールベースライン (SBAS) 法を使用して変位時系列解析を実行できるようになりました。

1.ubuntu LTSをインストールする

ここに画像の説明を挿入します
2.ubuntuリモートデスクトップをインストールする

sudo apt-get install xserver-xorg-core
sudo apt-get -y install xserver-xorg-input-all

デスクトップを再起動する 初めて使用するときは毎回デスクトップを起動する必要があります。

sudo  /etc/init.d/xrdp  restart

正常に起動すると、表示されます。ここに画像の説明を挿入します
Windows リモート デスクトップを使用して接続します
ここに画像の説明を挿入します
。 Ubuntu アカウントとパスワードを入力します。
ここに画像の説明を挿入します
入力後、図 3 に示すように
ここに画像の説明を挿入します
、Python 環境をインストールします。 mamba をインストールすることをお勧めします。 ここでは違いを紹介しますそれと conda 環境の間。

conda と mamba の違い.
Mamba の最下層は conda に依存します. Conda はシングルスレッドです. Mamba はマルチスレッドのダウンロード用に最適化されています. Mamba は conda コマンドと互換性があります.
マルチスレッドを使用してリポジトリ データとパッケージをダウンロードします。Mamba は libsolv を使用して依存関係の解決を高速化します。Mamba のコア部分
はC++ で実装され、最大の実行効率が得られます。
最も重要なことは、Mamba が conda と完全に使用できることです。互換性があります ( conda 実行コマンドの conda を mamba に置き換えるだけです)。

インストールコード

curl -L -O https://github.com/conda-forge/miniforge/releases/latest/download/Mambaforge-Linux-x86_64.sh
bash Mambaforge-Linux-x86_64.sh 
sudo apt install gcc g++ gawk tcsh build-essential make git
pip install wget gitpython tree mamba

Python環境を作成する

sudo apt install python3.8-venv
python -m venv InSARenv
source InSARenv/bin/activate

4.
ubuntu に matlab をインストールするための参考リンク: https://zhuanlan.zhihu.com/p/572662952
インストール後、次のツールボックスを使用する必要があります。

Curve Fitting ツールボックス
Financial ツールボックス
Image Processing ツールボックス
Mapping ツールボックス
Optimization ツールボックス
Parallel Computing ツールボックス
Signal Processing ツールボックス
Statistics and Machine Learning ツールボックス

5. InSAR処理に必要な環境をインストールする

インストールパスを作成し、インストールパッケージをダウンロードする

# A. Define the path where you want the packages to be installed (Default:Your HOME path-"$HOME") 

EZINSAR_HOME="$HOME"           		  #Set the install path 

tools_insar=$EZINSAR_HOME/tools_insar
tool_DIR=$tools_insar/proc_insar
sudo mkdir -p $tool_DIR

# B. Download the source code (EZ-InSAR, ISCE, MintPy, StaMPS, TRAIN)
## Download EZ-InSAR source file, and put the unzipped EZ-InSAR into the "EZINSAR" directory in $tool_insar.

sudo git clone https://github.com/alexisInSAR/EZ-InSAR.git $tools_insar/EZ-InSAR
sudo mv $tools_insar/EZ-InSAR $tools_insar/EZINSAR

## Download the InSAR processor codes 
sudo git clone https://github.com/isce-framework/isce2.git $tool_DIR/isce2  
sudo git clone https://github.com/insarlab/MintPy.git      $tool_DIR/MintPy 
sudo git clone https://github.com/insarwxw/StaMPS.git      $tool_DIR/StaMPS
sudo git clone https://github.com/dbekaert/TRAIN.git       $tool_DIR/StaMPS/TRAIN

# C. Edit the configuration file
## 1) - Copy the configure template file "config_InSARenv.template" from the "EZINSAR/EZINSAR_BIN/docs/" directory into "$tools_insar";  
##    - Check and replace the PATH variable "$EZINSAR_HOME" in "config_InSARenv.rc" (Line #3). 
##    - Check and replace the Path varialbe $APS_toolbox in TRAIN 
##    - The other variables do not need to be modified if you strictly follow this install instruciton.

sudo cp $tools_insar/EZINSAR/EZINSAR_BIN/docs/config_InSARenv.template $tools_insar/config_InSARenv.rc

sudo sed -i "/EZINSAR_HOME=/c\EZINSAR_HOME=$EZINSAR_HOME"  $tools_insar/config_InSARenv.rc
sudo sed -i "/APS_toolbox=/c\APS_toolbox=$tool_DIR/StaMPS/TRAIN" $tool_DIR/StaMPS/TRAIN/APS_CONFIG.sh

## 2) Add the following lines in your "$HOME/.bashrc" file. 
##    Note you have to change the variable "$EZINSAR_HOME" if it is installed in a differnt PATH (e.g., /usr/local). 

# EZ-InSAR & InSARenv
EZINSAR_HOME="$HOME"           		 
export tools_insar="$EZINSAR_HOME/tools_insar"
alias load_insar='conda activate InSARenv; source $tools_insar/config_InSARenv.rc'

# **IMPORTANT**: Run `load_insar` in the terminal to load the "InSARenv" environmental and PATH variables before running EZ-InSAR each time.

5.ISCE2をインストールする

ISCE (InSAR Scientific Computing Environment) は、地表変形モニタリングと地震研究のためのオープンソース ソフトウェア ツールキットです。主に衛星や航空機から取得できる合成開口レーダー干渉法(InSAR)データの解析に使用され、地殻変動、火山活動、地震後の変形など、地表の小さな変形を監視するために使用されます。

ISCE は、InSAR データを処理するためのさまざまなツールとライブラリに加え、データ前処理、コア干渉計算、変形モデリングおよび視覚化のための機能を提供します。これにより、地球科学者や地球監視の研究者は、地球表面の変形プロセスをより深く理解し、地質学的および地球物理学的現象をより深く理解できるようになります。

ISCE は、NASA ジェット推進研究所 (JPL) によって開発および維持されているオープンソース プロジェクトであり、地球科学分野で広く使用されており、合成開口レーダー データを処理する際に高い柔軟性と拡張性を備えています。このツールキットは、地殻変動、氷河の変化、火山活動などの分野の研究によく使用されます。ここでのインストールはさらに時間がかかります。

mamba install -c conda-forge isce2

6. MintPy のインストール
MintPy (PYthon の Miami INsar 時系列ソフトウェア) は、合成開口レーダー干渉法 (InSAR) データの処理と分析のためのオープンソース ソフトウェア ツールキットです。これは、科学者や技術者が InSAR データを処理および分析して地球の表面がどのように変形しているかを理解できるようにするために、フロリダ大学の研究者によって開発されました。

MintPy は、データの前処理、干渉計算、タイミング解析、変形モデリング、視覚化ツールなどの一連の機能を提供します。ユーザーは、MintPy を使用して衛星や航空機によって取得されたレーダー干渉データを処理し、地殻変動、地震、火山活動、地下水の採取などによって引き起こされる地表の変形を監視できます。このツールキットはユーザーフレンドリーなインターフェイスを備えており、さまざまな InSAR データ形式をサポートしています。

MintPy は、地質学、地球物理学、環境科学など、さまざまな地球科学研究分野に適した強力で柔軟なツールです。これは、研究者が InSAR データから地表の変化に関する重要な情報を抽出し、地球上のさまざまな地域における地形の進化と変化の傾向を理解するために使用するのに役立ちます。さらに、MintPy はオープンソース プロジェクトであるため、ユーザーは自由にそのコードにアクセスし、特定のニーズに合わせてカスタマイズできます。

# Install the mintpy requirements first and then the source code.
# 
cd $tool_DIR
mamba install -c conda-forge --file ./MintPy/requirements.txt

#Close and restart the shell for changes to take effect
python -m pip install -e ./MintPy

7. StaMPS のインストール
StaMPS (Stanford Method for Persistent Scatterers) は、合成開口レーダー干渉法 (InSAR) データを分析するための計算方法およびツールキットです。これは、通常、建物、橋、送電塔などの表面特徴である表面スペックル (永続的散乱体) を高い干渉安定性で抽出および分析するために、スタンフォード大学の研究者によって開発されました。

StaMPS の主な目的は、これらの永続散乱体の変化を特定して監視し、地表の変形を理解することです。StaMPS は、表面の変形、沈下、隆起を正確に測定するために、衛星レーダー データを複数回収集して、さまざまな観察期間におけるスペックル位置の相対的な安定性を特定します。これは、地質調査、地震監視、都市計画、環境監視などのアプリケーションに役立ちます。

StaMPS ツールキットには、データ処理、干渉計算、変形モデリング、視覚化のためのさまざまなツールとアルゴリズムが含まれています。TerraSAR-X、COSMO-SkyMed、Sentinel-1 などの高解像度衛星レーダー データを処理するためによく使用されます。StaMPS は地球科学研究の分野、特に地殻変動、地震監視、都市沈下などの分野で広く使用されており、科学者に地表の変化に関する重要な情報を提供します。

StaMPS は比較的複雑なツールであり、結果を正しく使用して解釈するには特定の専門知識が必要であることに注意してください。したがって、地球科学分野の専門家や研究者によって一般的に使用されています。

### check which version of gcc
gcc -v  
#$ gcc version 9.3.0 (Ubuntu 9.3.0-17ubuntu1~20.04)

sudo apt install software-properties-common
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt install -y gcc-7 g++-7
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 7
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-7 7
sudo update-alternatives --config gcc
sudo update-alternatives --config g++ 
# A. Compile the files in the "src" directory in StaMPS

cd $tool_DIR/StaMPS/src
sudo make
sudo make install

# B. Install "snaphu" & "triangle"  
# After the installation, run `which snaphu` && `which triangle` in the terminal to check their paths. 
# If the echo paths are not "/usr/bin", then modify the varialbes "SNAPHU_BIN" and "TRIANGLE_BIN" in the "config_InSARenv.rc" to the correct values.

sudo apt install snaphu 
sudo apt install triangle-bin

8.EZ-InSARのインストール

EZ-InSAR は、SAR データのダウンロード、パラメータ化、処理にかかるユーザーの労力を最小限に抑えるため、InSAR に詳しくない人でも、自分で表面変位を生成して解析できる人でも簡単にアクセスできるようになります。EZ-InSAR は、大西洋地域における地質学的リスクの管理を支援することを目的とした、欧州地域開発基金を通じて資金提供される大西洋地質災害リスク管理プラットフォーム (AGEO) プロジェクトへの貢献でもあります。

このツールボックスの主な利点はその使いやすさであり、InSAR テクノロジーに詳しくないユーザーでも表面変形解析にオープンソース ツールを利用できるようになります。その目標は、InSAR 技術をより多くの人々が利用できるようにして、地表の変化や起こり得る地質学的リスクをより深く理解できるようにすることです。

mamba install fiona geopandas rasterio
cd $tool_DIR
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
sudo unzip awscliv2.zip
sudo ./aws/install

インストール フォルダーの EZINSAR_BIN にあるドキュメント pathinformation.txt の内容を変更し、アカウント名とパスワードを ASF Web サイトのアカウントとパスワードに変更し、それらを使用して Sentinel-1 データをダウンロードします。

ASFID 	account-name
ASFPWD  password 

9. インストールが成功したかどうかをテストし、
インストール環境を更新して環境をロードします。

source $HOME/.bashrc
load_insar  # warm up conda environment
echo $PATH
echo $TOOL_DIR $DATA_DIR $WEATHER_DIR

ISCE-2 をテストする

topsApp.py -h

以下のようにインストールが成功しました
ここに画像の説明を挿入します

MintPyのテスト

smallbaselineApp.py -h


ここに画像の説明を挿入します
のようにインストールは成功します。

Solid_earth_tides.py -h

以下のようにインストールが成功しました
ここに画像の説明を挿入します

PyAPS をテストする

tropo_pyaps3.py -h

以下のようにインストールが成功すると、
ここに画像の説明を挿入します
StaMPS をテストします。

mt_prep_isce

次のようにインストールは成功します。
ここに画像の説明を挿入します
10. EZ-InSAR を起動して
リモート デスクトップに入り、コマンド ウィンドウに次のように入力します。

ロードインサー

実行環境をロードして入力します

マットラボ

MATLAB 環境を開始する

次のように:
ここに画像の説明を挿入します

11. EZ-InSAR を使用して
matlab に EZ_InSAR を入力し、ソフトウェアを起動し、
ここに画像の説明を挿入します
2 で実行フォルダーを選択し、クリックして処理インターフェイスに入ります
ここに画像の説明を挿入します
具体的な使用方法のリファレンス マニュアル:
https://github.com/alexisInSAR/EZ-InSAR/ blob/Version_2_0_3_Beta/EZINSAR_BIN/docs/EZ_InSAR_manual_v2_0_3_beta.pdf

12. Ubuntu環境の移行.
UbuntuはデフォルトではCドライブにインストールされるため、Cドライブの容量不足が発生するため、移行することを推奨します。

  • 準備
    CMD を開き、wsl -l -v と入力して、wsl 仮想マシンの名前とステータスを表示します。
    このマシンの WSL の正式名称は Ubuntu-22.04 であることが分かり、以下の操作はこれに基づいて行うことになります。
    「wsl --shutdown」と入力して停止し、もう一度 wsl -l -v を使用して停止していることを確認します。
  • バックアップのエクスポート/復元
    新しい WSL を保存するディレクトリを D ドライブに作成します (例: D:\Ubuntu_WSL を作成しました)。
    バックアップをエクスポートします (例: Ubuntu.tar という名前を付けます)。

wsl --export Ubuntu-22.04 D:\Ubuntu_WSL\Ubuntu.tar

このディレクトリにバックアップの Ubuntu.tar ファイルが存在することを確認した後、元の wsl からログアウトします。

wsl --Ubuntu-22.04 の登録を解除する

バックアップ ファイルを D:\Ubuntu_WSL に復元します

wsl --import Ubuntu-22.04 D:\Ubuntu_WSL D:\Ubuntu_WSL\Ubuntu.tar

この時、WSLを起動してみると、正常に戻ったように見えましたが、ユーザーがrootになってしまい、以前使用していたファイルが見れなくなってしまいました。

  • デフォルトのユーザーを復元します
    。 CMD で、Linux ディストリビューション名を入力します。 config --default-user 元のユーザー名

Ubuntu2204 config --default-user Cham

ここでのディストリビューション名のバージョン番号は純粋な番号であることに注意してください。たとえば、Ubuntu-22.04 は Ubuntu2204 です。

おすすめ

転載: blog.csdn.net/weixin_42464154/article/details/133409602