地球観測衛星データ提供システムに携わって3ヶ月経った

  • Essay

10月1日から「地球観測衛星データ提供システム」の開発・運用に携わっている。 それまで「地球観測衛星データ提供システム」についてなにも知らなかったが、3ヶ月経ってどういうものか少しずつわかるようになってきた。 この領域について日本語の情報がインターネットにあまりないので、簡単に紹介してみようと思う。 これをきっかけに地球観測衛星データやそのエコシステムに興味をもってもらえるとうれしい。

地球観測衛星データとは

人工衛星にも、測位衛星や通信衛星、科学衛星などいろいろな種類がある。 なかでも地球観測衛星は、さまざまなセンサをつかって地球を観測する衛星である。 地球観測衛星のセンサで取得したデータが地球観測衛星データであり、わかりやすいものとして光学センサで撮影した衛星写真がある。 ほかにも、温室効果ガスや海面水温、植生分布などなど、さまざまなものが地球観測衛星により観測されている。 また、人工衛星による地球観測は「リモートセンシング」という技術の一種であり、地球観測衛星をあつかう学術分野としてはこちらが一般的らしい。

地球観測衛星データは大雑把にいえば画像のようなものだが、RGB値に限らずさまざまな物理量をもつ。 さらに、衛星やセンサの種類、いつどこで撮影したものかを表す位置情報や時間、どのような前処理が施されたかなど、さまざまなメタデータが紐づけられる。

これら地球観測衛星データの解析には、一般に GIS(Geographic Information System・地理情報システム)が用いられる。 有名なものに ArcGIS やオープンソースの QGIS がある。また、Web アプリケーションとして実装されたものは Web GIS と呼ばれる。 もちろん Python のようなプログラミング言語をつかって解析することもできる。

地球観測衛星データやリモートセンシングについてより詳しくは以下のページを参照してほしい。

地球観測衛星データ提供システムとは

地球観測衛星のセンサで取得した値が地上で解析につかえるデータになるまで、さまざまな経路を通りさまざまな処理が行われる。 しかし、ここでいう「地球観測衛星データ提供システム」は、そうした処理を行うシステムではなく、処理後の解析可能なデータ(プロダクトと呼ばれる)をオンラインで提供する出口にあたるシステムである。

システムへの書き込み

地球観測衛星データ提供システムへのデータの書き込みは、基本的に前処理システムからしか行われない。 前処理システムによって処理され解析可能になったプロダクトが、データ提供システムに追加される。

衛星やセンサの種類にもよるが、衛星が稼働している限りそのデータは増え続け、ペタバイト級のデータになる。 はじめて聞いたとき規模感がわからなかったが、地球を回りながら超高解像度の写真をずっと撮り続けていると考えると、たしかにあっという間に相当なデータ量になりそうだと納得できた。

検索 UI とファイル提供

トラディショナルな地球観測衛星データ提供システムでは、ユーザは Web UI(や FTP)でプロダクトを検索したりダウンロードしたりできる。

先ほどにも書いたように地球観測衛星データは地理空間データであり時系列データでもある。 その検索クエリは複雑なものになりがちで、それに合わせて検索 UI も難しいものになる。

地理空間データ API

Web UI から検索してダウンロードできるファイルもまだまだ手軽に扱えるものではない。 いうなれば写真の RAW ファイルのようなものであり、解析用途にはこれでもよいが、Web で可視化するような場合には目的の領域をトリミングしたり、広域を表示できるようリサイズしたり、扱いやすいファイルフォーマットに変換したり、その他データ特有のスタイリングをしたりする必要がある。 こうした処理を済ませたうえでアプリケーションから直接扱えるように提供するのが地理空間データ API である。

地理空間データ API(に限らず地理空間データ全般)の標準仕様は OGC (Open Geospatial Consortium) が策定している。 もともと SOAP 的な XML ベースのインタフェースが採用されていたが、近年は OGC API として REST 風に策定し直されているらしい。 また、こうした API 等での提供に最適化された COG (Cloud Optimized GeoTIFF) というファイルフォーマットも一般的になってきているようだ。

オープンソースの API 実装として、たとえば NASA の COVID-19 Dashboard のサーバサイド実装 NASA-IMPACT/covid-api がある。 ざっくり見たところ、AWS のサーバレスアーキテクチャを採用していて、COG の特徴を活かしたいまどきな構成になっている。

カタログ連携

地球観測衛星データ提供システムは、おそらく地球観測衛星のデータ提供を行う組織の数だけあるだろう。 こうしたシステムを横断的に検索できるよう、メタデータのカタログ連携が行われる。

地球観測衛星に関する国際的な調整を行う組織として、CEOS (Committee on Earth Observation Satellites) がある。 CEOS IDN (International Directory Network) にはさまざまな組織の地球観測衛星データのメタデータが登録されていて、横断的な検索ができる。

また、比較的新しいカタログの標準仕様としては STAC (SpatioTemporal Asset Catalogs) がある。

プラットフォーム

従来は地球観測衛星データをダウンロードしてローカルなど別の環境で解析するというのが一般的なフローだった。 しかし、データをダウンロードすることなくクラウド上でそのまま解析まで行えるプラットフォームも増えてきている。

代表的なプラットフォームとして Google Earth Engine がある。 また、日本発の Tellus は経産省主導でさくらインターネットが開発している。 オープンソースの取り組みとしては Open Data Cube というものもある。

おわりに

地球観測衛星データは現状まだ身近なデータとはいえないが、これまでに挙げたように技術の発展とともに手軽に扱えるようになってきている。 もし少しでも興味をもってもらえたらなら、ぜひ一度触れてみてほしい(地球観測衛星データの利活用に関してはぼく自身もまだまだわかっていないことが多いのだけれど)。