初めに
Landsatよりも解像度の細かいSentinelデータはGoogle Earth Engine(以下、GEE)上でも自由に使うことができる。その際の注意点として、全く同じ時間に撮られた画像でもoverlapが発生していることがあげられる(後述)。Sentinelデータは一つの画像を複数のパーツに分けて格納しており(一つのデータあたりのサイズを減らしたいから?)、場合によっては面積的に無視できないレベルでのoverlapが生じているのでその辺をどう対処するかをまとめる。下記コードの順序に沿ってまとめる。
参照コード:https://code.earthengine.google.com/34c06b4d1816099384b4c0f06ddd6232
地域ごとのshapefile
特に必要のないステップだが、GEEのデータカタログに落ちているLarge-Scale International Boundary (LSIB)のデータを用い、プロパティを指定して日本の領域を取り出す練習。画像データだけでなくshapefileもいろいろ検索できるのはありがたい。
どんな感じでデータが入っているのか?
Sentinelの各画像はLandsatと同様passに沿って並んでおり、緯度経度に対して傾いている。プロダクト化のステップでこれらはMGRS(Military Grid Reference System)という緯度経度に直交する長方形(タイル)群に切り分けられる。参照コードではMGRSグリッドのshapefileを用いて検証を行っている(参照元:某GEEヘルプフォーラムの一話題)。各タイルは、{経度:1~60までの数字}+{緯度:C~Xまでの英字}+{さらに細部:英字2文字}のidで区分されており、SentinelデータのプロパティではMGRS_TILEからタイル情報を抽出することができる。関東近郊だとMGRS_TILE = 54SUE なので、今回はそれを用いる。
Sentinelデータを抽出する
領域指定では、MGRSシェープファイルから54SUEのタイルを選択し、その領域にかかる画像を抽出した。説明の都合上、画像データからそれが含まれるポリゴンデータを抽出した(ImageCollectionではなくFeatureCollectionを用いれば、図化したとき一つのレイヤーだけで重複を確認することができる)。同時に、各画像のMGRS_TILEからタイルのidも取得しておく。
overlapの確認
さて、タイル54SUEにかかる画像データを図示すると下記の通り。FeatureCollectionのはじめ9つのみ図化しているが、他のFeatureもこれらのいずれかに重なるはずである。9つのうちのどこに位置するかはMGRS_TILEのタイル情報と整合する。
真ん中の正方形が54SUE。全体として見える傾いた四角形がもともとのSentinel画像1枚分であり、それがタイル状に切り分けられているのが分かる。しかしながら、そもそもMGRSが重複を生じるように定義されているために、重複が生じている。これを透過度を上げた画像レイヤー2枚を重ねて見てみるとこんな感じ。
やはり上下の衛星画像に重複が生じ、その部分が濃くなっている。
overlapが嫌な時の対処法
先に示したヘルプフォーラムの中で、重複がちょうど9800mであることが説明されている。そのため、負の方向に4900mだけ画像の辺からbufferをかけてあげると、overlapが解消される。