チュートリアル: NASA 提供のツールを使用して Aqua 衛星データを処理する

Note

NASA は、Aqua 衛星画像の処理に使用される DRL ソフトウェアのサポートを非推奨としました。 「DRL の現在の状態」を参照してください。 このチュートリアルの手順 2、3、4 は関連性がなくなりましたが、情報提供のみを目的として提示されています。

このアーティクルでは、Azure Orbital Ground Station (AOGS) を使用して衛星画像をキャプチャし処理する方法を示す包括的なチュートリアルです。 AOGS とそのコア概念を紹介し、コンタクトをスケジュールする方法を示します。 このアーティクルでは、NASA が提供するツールを使用して、Azure 仮想マシン (VM) で NASA Aqua 衛星データを収集して処理する例についても説明します。

Aqua は、NASA が 2002 年に打ち上げた極軌道探査機です。 Aqua に乗ったすべての科学機器のデータは、ほぼリアルタイムな X バンド経由の直接放送を使用して地球にダウンリンクされます。 Aqua の詳細については、Aqua プロジェクト サイエンスのウェブサイトをご覧ください。

AOGS を使って、"コンタクト" をスケジュールすることにより、衛星が地上局の至近距離にあるときに Aqua ブロードキャストをキャプチャします。 "コンタクト" とは、衛星と通信するために地上局で予約された時刻です。 コンタクト中、地上局はアンテナを Aqua に向け、ダイレクト ブロードキャスト データをキャプチャします。 キャプチャされたデータは、データ ストリームとして Azure VM に送信され、レベル 0 製品を生成する Direct Readout Laboratory (DRL) によって提供される Real-Time Software Telemetry Processing System (RT-STPS) ツールを使用して処理されます。 このレベル 0 製品は、より高いレベルの製品を生産するために、DRL の International Planetary Observation Processing Package (IPOPP) ツールを使用してさらに処理されます。

このチュートリアルでは、次の手順に従って Aqua データを収集して処理します。

地上局のテレメトリをキャプチャするためのオプションのセットアップ手順には、地上局からリアルタイム テレメトリを受信する方法に関するガイドが含まれています。

ステップ 1: AOGS を使用して、連絡のスケジュールと、Aqua データの収集を行う

チュートリアル: NASA の Aqua パブリック サテライトからのダウンリンク データ」に記載されている手順を実行します。

上記のチュートリアルでは、Aqua との連絡をスケジュールし、Azure VM 上で直接ブロードキャスト データを収集するための手順を紹介します。

注意

下りリンクされた AQUA データを受け取る仮想マシン (VM)を準備する」セクションで、次の値を使用します。

  • 名前: receiver-vm
  • オペレーティング システム: 希望の動作保証済み Linux ディストリビューションの名前を入力する
  • サイズ: Standard_D8s_v5 以上
  • IP アドレス: 1 つの標準パブリック IP アドレスを使用して、VM にツールをダウンロードするためのインターネット アクセスがあることを確認します

ヒント

このパブリック IP アドレスは、インターネット接続のためのもので、連絡先データではありません。 詳細については、「Azure での既定の送信アクセス」を参照してください。

このステップの最後には、生のダイレクト ブロードキャストが receiver-vm 上の ~/aquadata フォルダーに .bin ファイルとして保存されているはずです。

ステップ 2: NASA DRL ツールをインストールする

注意

リソースの競合の可能性があるため、DRL は、RT-STPS と IPOPP を異なるマシンにインストールすることをお勧めします。 ただし、このチュートリアルでは、それらを同時に実行しないため、両方を receiver-vm にインストールします。 運用ワークロードの場合は、DRL の Web サイトで入手できるユーザー ガイドで推奨されているサイズ設定と分離に従ってください。

receiver-vm の OS ディスク サイズを増やす

Azure VM の OS ディスクに割り当てられた既定のディスク領域は、NASA DRL ツールをインストールするのに十分ではありません。 次の手順に従って、receiver-vm 上の OS ディスクのサイズを 1 TB に増やします。

  1. ポータルを開きます。
  2. 仮想マシンに移動します。
  3. [概要] ページで、[停止] を選択します。
  4. [ディスク] ページで、OS ディスクを選択します。
  5. [ディスク] ウィンドウで、[Size + Performance](サイズおよびパフォーマンス) ページに移動します。
  6. [ディスク SKU] ドロップダウンから [Premium SSD (ローカル冗長ストレージ)] を選択します。
  7. P30 ディスク層 (1024 GB) を選択します。
  8. [保存] を選択します。
  9. [仮想マシン] ウィンドウに戻ります。
  10. [概要] ページで [開始] を選択します。

receiver-vm で、ルート パーティションで 1 TB が使用可能になったことを確認します

lsblk -o NAME,HCTL,SIZE,MOUNTPOINT

これにより、ルート / マウントポイントに最大 1 TB が割り当てられたことが表示されます。

NAME    HCTL        SIZE MOUNTPOINT
sda     0:0:0:0       1T 
├─sda1              500M /boot
├─sda2             1023G /
├─sda14               4M 
└─sda15             495M /boot/efi

デスクトップと VNC サーバーをインストールする

NASA DRL ツールを使用するには、GUI アプリケーションを実行するためのサポートが必要です。 これを有効にするには、receiver-vm にデスクトップ ツールと vncserver をインストールします。

sudo yum install tigervnc-server
sudo yum groups install "GNOME Desktop"

VNC サーバーを起動します。

vncserver

パスワードの入力を求められたら、入力します。

VM デスクトップにリモートでアクセスする

SSH 経由で vncserver ポート (5901) をローカル コンピューターに転送します。

ssh -L 5901:localhost:5901 azureuser@receiver-vm

Note

このコマンドで receiver-Vm を置き換えるには、VM DNS 名のいずれかのパブリック IP アドレスを使用します。

  1. ローカル コンピューターで、TightVNC Viewer をダウンロードしてインストールします。
  2. TightVNC ビューアーを起動し、localhost:5901 に接続します。
  3. 前の手順で入力した vncserver パスワードを入力します。
  4. VM で実行されている GNOME デスクトップが VNC ビューアー ウィンドウに表示されます。

RT-STPS と IPOPP のインストール ファイルをダウンロードする

GNOME デスクトップから、[アプリケーション]>[インターネット]>[Firefox] に移動してブラウザーを起動します。

NASA DRL Web サイトにログオンし、ソフトウェアのダウンロードで、RT-STPS インストール ファイルと IPOPP ダウンローダー スクリプトをダウンロードします。 ダウンロードしたファイルは ~/Downloads の下に移動します。

Note

同じコンピューターを使用して downloader_DRL-IPOPP_4.1.sh. をダウンロードして実行する

RT-STPS をインストールする

tar -xvzf ~/Downloads/RT-STPS_7.0.tar.gz --directory ~/
tar -xvzf ~/Downloads/RT-STPS_7.0_testdata.tar.gz --directory ~/
cd ~/rt-stps
./install.sh

インストールに付属のテスト データを処理して、RT-STPS のインストールを検証します。

cd ~/rt-stps
./bin/batch.sh config/jpss1.xml ./testdata/input/rt-stps_jpss1_testdata.dat

出力ファイルがデータ フォルダーに存在することを確認します。

ls -la ~/data/

これで RT-STPS のインストールが完了します。

IPOPP をインストールする

IPOPP ダウンローダー スクリプトを実行して、IPOPP インストール ファイルをダウンロードします。

cd ~/Downloads
./downloader_DRL-IPOPP_4.1.sh
tar -xvzf ~/Downloads/DRL-IPOPP_4.1.tar.gz --directory ~/
cd ~/IPOPP
./install_ipopp.sh

IPOPP サービスを構成して開始する

IPOPP サービスは、ダッシュボード GUI を使用して構成されます。

VM デスクトップに移動し[アプリケーション]>[ユーティリティ]>[ターミナル] の下で新しいターミナルを起動します

ターミナルから IPOPP ダッシュボードを起動します。

~/drl/tools/dashboard.sh

IPOPP は、プロセス監視モードで開始されます。 メニュー オプションを使用して構成モードに切り替えます。

[EOS] タブで次を有効にします。

  • gbad
  • MODISL1DB l0l1aqua
  • MODISL1DB l1atob
  • IMAPP

メニュー オプションを使用して、プロセス監視モードに戻ります。

IPOPP サービスを開始します。

~/drl/tools/services.sh start
~/drl/tools/services.sh status

これで、IPOPP のインストールと構成が完了します。

ステップ 3: RT-STPS を使用してレベル 0 製品を作成する

バッチ モードで rt-stps を実行して、ステップ 1 で収集した .bin ファイルを処理します

cd ~/rt-stps
./bin/batch.sh ./config/aqua.xml ~/aquadata/raw-2022-05-29T0957-0700.bin

このコマンドにより、~/rt-stps/data ディレクトリの下に Level-0 Production Data Set (.pds) ファイルが生成されます。

手順 4: IPOPP を使用して、より高いレベルの製品を作成する

処理のためにデータを取り込む

前のステップで RT-STPS によって生成された PDS ファイルを、さらに処理するために IPOPP の ingest ディレクトリにコピーします。

cp ~/rt-stps/data/* ~/drl/data/dsm/ingest/.

IPOPP の取り込みを実行して、ダッシュボードで構成された製品を作成します。 

~/drl/tools/ingest_ipopp.sh

進行状況は、ダッシュボードで確認できます。

~/drl/tools/dashboard.sh

IPOPP は、次のディレクトリに出力製品を生成します。

cd ~/drl/data/pub/gsfcdata/aqua/modis/

次の手順

Azure Orbital Ground Station を使用して、宇宙船の地球観測データを受信して処理するために必要なダウンストリーム コンポーネントを簡単にデプロイするには、次を参照してください。

Azure Synapse Analytics による地理空間ライブラリと AI モデルを用いて、宇宙空間データの抽出、読み込み、変換、分析を行うエンドツーエンドの実装については、こちらをご覧ください。