JAXA衛星横断型データ前処理ツール(ASIST)を使ってみた

前から少し気になっていたこちらのツールを使ってみました。

ASISTはこんなソフト
  • WindowsとUbuntuで動作するJAXAの無料ソフト
  • 複数のプロバイダからの衛星データのダウンロードを一括で行える
  • ダウンロードしたデータは、指定範囲のPNG形式での可視化等の定型処理を一括で行える

JAXAでは、多種多様な衛星データ配信サイトを運営しています。代表的な配信サイトとしては、G-portal (GCOM-C(しきさい)、GCOM-W(しずく)データ等)、AW3D(標高データ)、GSMaP(降水データ)等があります。しかしながら、それらの衛星データは配信サイトやセンサ種別によってデータフォーマットや仕様が異なり、複数のデータを組み合わせて利用する場合には手間がかかります。

そこで、それらの手間を低減し、JAXA衛星データ利用を推進するため、JAXA/EORCでは衛星横断型のデータ前処理ツール(Automated Satellite Image Stacking Tool:ASIST(アシスト))を開発してきました。図1に示すように、ASISTを使用することで、配信サイトや衛星データの仕様の差異を意識することなく、一括してデータを取得・前処理・出力することが可能になります。

出所:https://www.eorc.jaxa.jp/news/2021/nw210721.html
ASIST利用による効果(出所:https://www.eorc.jaxa.jp/news/2021/nw210721.html)

目次

ASISTのダウンロード

本家サイトからダウンロードします。

私はWindowsユーザーなのでWindows版をクリックして、Zipをダウンロードしました。

ダウンロードしたのは以下の2ファイルです。

  • ASIST_windows.zip
  • ASIST_settingfiles.zip

環境構築

Zipを解凍すると READMEがついていましたので、まずはそれを確認しました。

MATLAB Runtimeのインストール

MATLAB Runtimeが必要だそうですが、私の環境には入っていなかったのでいれます。

こちらのサイトからダウンロードします。

R2021a (9.10)を入れます。3.6GBくらいでした。

READMEにはR2019a(9.6)と書いてありますが、間違いみたいです。

ダウンロードしたzipを解凍するとsetup.exeがあるので、それを実行します。

7zipのインストール

ユーザーマニュアルによると、解凍ソフトを入れておくと高速化できるそうです。

私は7zipが所定の位置に格納されていましたが、この場所に実行ファイルがある必要があります。

C:\Program Files\7-Zip\7z.exe

各種設定

アクセス設定

アクセスの設定をします。登録がまだの場合は例えば以下から登録できます。

今回私は上の2つを入力することにしました。

入力はG-Portalアカウントの設定を解凍したzip内にあるSetAccount.txtにアカウントを入力(XXXXとなっている部分)します。

%%% Data provider Account information (Service(Don't change),ID,Pass,Key(if any))
Account, G-portal, XXXX, XXXX, XXXX
Account, MODIS   , XXXX, XXXX, XXXX
Account, GSMaP   , XXXX, XXXX, XXXX
Account, JASMES  , XXXX, XXXX, XXXX

パラメータの修正

SetParameter.txtの中身を確認しておきます。

%%% Range Setting %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
DateRange, 2021/08/20, 2021/08/20, % Date Range (YYYY/MM/DD) Start, End
LatRange ,       34.8,       35.8, % Latitude   Min, Max (- 90 ~ + 90 deg)
LonRange ,      139.25,      140.25, % Longtitude Min, Max (-180 ~ +180 deg)

私は日付と場所を東京湾のあたりに変更しました。

ちなみにデフォルトだと以下がオンになっていて、GeotiffとPNGが出力されるようになっています。

%%% Output Setting %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
…
Output, GTIF,   ON ,% ON,OFF : Geotiff output (deflate compressed)
…
Output, PNG1,   ON ,% ON,OFF : PNG(+KML) output (individual values)
Output, PNG3,   ON ,% ON,OFF : PNG(+KML) output (upper 3 values comp RGB) 
…

他も細々設定があるのですが、とりあえず自分の環境次第のようなのでそのままでいきます。

衛星データ保存フォルダ設定の修正

SetParameter.txtの下の方に以下がありますので、自分が保存したいディレクトリを指定しておきます。

%%% Downloaded & Input Datasets Archive Folder Setting %%%%%%%%%%%%%%%%%%%%
DataFolder, C:\ASIST\input\

解析実行プロダクトの指定

解凍したzipにSetProduct.csvがあるのでその中身を確認して、処理を実行したいプロダクトを選択します。

私はSSTをよく見ているのでSSTをとりあえず選択しました。選択する際には一番左を1に変更して保存すればOKです。

Execute,Resolution,Sensor,ID,Version,Area,Resolution_deg,Resolution_m,Duration,Category1,Category2,Unit,Description
…
1,Middle,GCOM-C.SGLI,SSTD_01D,2,Global,1/480 deg,250 m,Daily,Ocean,Surface Temperature,degC,SST Daytime
…

そのほか色々設定がありますが、詳しくは ユーザーマニュアルを参照してください。

ディレクトリ配置

ディレクトリの配置はCドライブ直下で以下にしました。

C:.
├─input  #ダウンロードされたデータ本体が保存される
├─param  #設定ファイル格納先かつ処理結果の保存先
│       Batch.bat
│       SetAccount.txt
│       SetParameter.txt
│       SetProduct.csv
│       SetType.csv
└─tools #プログラミング本体の格納先
        default_icon.ico
        IMG_Stack.exe
        readme.txt
        splash.png

実行

IMG_Stack.exeが配置されているフォルダに移動して以下を実行します。

C:\ASIST\tools>IMG_Stack.exe C:\ASIST\param

すると処理が始まります。こんな感じ。

%% ASIST (Automated Satellite Image Stacking Tool)
 - Version   : 2021-07-13_12:51:20_JST
 - Until     ; 2022-03-31_12:00:00_JST
 - Developer : Earth Observation Research Center, JAXA
 - Contact   : Z-ASIST@ml.jaxa.jp

%% Tools Available Period check by Time
 - Validated!

%% Set Files reading
 - SetParameter.txt loaded correctly
 - SetProduct.csv loaded correctly
   Middle , GCOM-C.SGLI , SSTD_01D , 2
 - SetType.csv loaded correctly
 - SetAccount.txt loaded correctly
   G-portal ... ID : Inputed  , PASS : Inputed  , KEY : No Input
   MODIS    ... ID : Inputed  , PASS : Inputed  , KEY : Inputed
   GSMaP    ... ID : No Input , PASS : No Input , KEY : No Input
   JASMES   ... ID : No Input , PASS : No Input , KEY : No Input
 - No Vector (kml for Statistics) File detected
 - No Raster (tif for Mask) File detected

%% KML files will not be used to detect ROI

%% Computer Memory Status
 - Maximum Memory : 015.89 [GB]
 - Using   Memory : 001.08 [GB]

%% Date and Location is set
 - Date : 2021/08/20 - 2021/08/20
 - Lat  : +034.80 to +035.80
 - Lon  : +139.25 to +140.25

%% GCOM-C.SGLI Middle resolution stacking started

%% GCOM-C.SGLI SSTD product downloading/detecting started

%% FTP Connection Processing
 - Success!

%% Product Name Detection from FTP server
 - Date : 001/001 : 0700 Files : 0001 Product found!

%% Downloading GCOM C product...
 - Day:001/001, Product:001/001 - Downloaded !

%% Processing Product type, QA flag list
 - SST
   Size    : 7820 , 5000

%% GCOM-C.SGLI SSTD processing started

%% Parallel Computing started
'local' プロファイルを使用して並列プール (parpool) を起動中...
並列プールに接続済み (ワーカー数: 2)。

%% Lat/Lon Grid detection
 - Size : 001/001 ... done

%% Mask Image generation
 - Skipped!

%% Data Loading ( Date : 001/001, A/D : 001/001 )
   ------10------20------30------40------50------60------70------80------90-----100
   ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||

%% Image Projection ( Date : 001/001, A/D : 001/001 )
 - Type : 001/001
 - Div  : 001/001 ... done
 - Etim : 000.025 sec
 - Memr : 009/100 ... OK
 - Proj : 001/001 ... done
 - Etim : 001.204 sec

%% Showing Processed Images by Type
 - Type : 001/001

%% Image data saving
 - Geotiff saving ... done
 - EQR  PNG1  (Type:SST) saving     ... done

%% Meta data saving ... done

%% Parallel Computing Ended

%% Time : 20210824 20:53:07

%% Duration : 00:01:09

%% All process was finished !

結果の確認

C:\ASIST\param\GCOM-C.SGLI\L2.OCEAN.SSTD.01D.v2 に実行結果が出力されます。

せっかくなので、私が作った仕組みで生成した同じデータと比較してみます。

左が今回自動処理されたデータ、右が私のシステムで自動生成した結果です。

色味が若干違いますが、一致しています。(よかった!)

感想

今回は比較をしたいのもあってGCOM-Cでやってみましたが、かなり多くのプロダクトに対応しているみたいなので、とても便利そうです。

あとダウンロードが高速な感じがします。もしかしたらMATLABの方がアクセス速度出るとか、そういうのがあるのかもしれません。