tropicbirdのブログ

備忘録です。

Sen2Corを使って衛星画像Sentinel-2のL1CをL2Aに変換する方法

はじめに

フリーで使える中解像度の衛星画像データとして、Sentinel-2(分解能10m~)があります。人工衛星Sentinel-2は2015年6月に打ち上げられ、打ち上げ当初からL1Cというタイプの衛星画像が公開されています。L1Cタイプの衛星画像とは、簡単に言うと生データのようなものです。


一方で、2017年3月頃から大気の影響を補正したL2Aタイプの衛星画像の提供も順次開始されています。ヨーロッパ地域から始まり、日本の範囲については2018年12月頃以降のL2Aタイプの衛星画像が提供されています。逆に言うと、例えば日本の2017年分のL2Aタイプの衛星画像は提供されていません。


しかし、自力でL1CをL2Aに変換することは可能です。


L2AはSen2Corというプログラムを使ってL1Cから変換されており、Sen2Corプログラム自体は公式(欧州宇宙機関)が公開しているからです。


この投稿では、Sen2Corを使ってL1Cタイプの衛星画像をL2Aタイプに変換する方法を説明します。ちなみに、PC環境はWindowsです。

1. Sen2Corのインストール

欧州宇宙機関が提供するSen2Corのダウンロードサイトに進み、Sen2Cor_v2.8を選択します。
f:id:tropicbird:20210307153249j:plain


ページの下の方に進むと、インストーラーの説明があるので、PCのOSに合ったインストーラーを任意の場所にダウンロードします。zipファイルを解凍しておきます。
f:id:tropicbird:20210307152732j:plain


zipファイルを解凍しておきます。
f:id:tropicbird:20210307155545p:plain


↓公式サイトのSen2Corインストーラーです。ここからもダウンロードできます。
Windows用:http://step.esa.int/thirdparties/sen2cor/2.8.0/Sen2Cor-02.08.00-win64.zip
Linux用:http://step.esa.int/thirdparties/sen2cor/2.8.0/Sen2Cor-02.08.00-Linux64.run
Mac用:http://step.esa.int/thirdparties/sen2cor/2.8.0/Sen2Cor-02.08.00-Darwin64.run

2. Sentinel-2 L1Cの衛星画像を取得する(※画像を取得済みの場合➝3.へ)

Sentinel-2の衛星画像を提供しているサイトは色々ありますが、今回はCopernicus Open Access Hubから取得します。まずサイトにアクセスし、Open Hubを選択します。
f:id:tropicbird:20210307153848j:plain


Open Hubに進んだら、右上からアカウントを作成します。
f:id:tropicbird:20210307154158j:plain


アカウントを作成できたら、衛星画像がほしい範囲を選択します。
f:id:tropicbird:20210307154430j:plain


左上の三本線を選択します。
f:id:tropicbird:20210307154608j:plain


Sensing period(画像の撮影時期)かIngestion period(画像がサイトで公開された時期)の項目に画像の期間を選択します。Mission: Sentinel-2にチェックを入れます。Product TypeはS2MSI1Cを選択します。雲量(Cloud Cover %)を任意の値(例えば10%以下は、[0 TO 10])で入力します。


最後に虫眼鏡マークを選択すると、設定した条件に合うSentinel-2のL1Cの衛星画像の一覧が表示されます。この中から必要なデータを選択し、任意の場所にzipファイルをダウンロードし、zipファイルを解凍し、「~.SAFE」というフォルダが生成されるのを確認します。
f:id:tropicbird:20210307163946p:plain

3. L1CデータをL2Aデータに変換

コマンドプロンプトを開き、Sen2Corのzipファイルを解凍したディレクトリに移動し、ディレクトリ内にL2A_Process.batファイルがあることを確認します。
f:id:tropicbird:20210307160411j:plain


L2A_Process.batが確認できたら、コマンドライン

L2A_Process.bat ダウンロードしたL1C画像の.SAFEフォルダのパス

を入力します。


あとは変換作業を待つのみです。パソコンのスペック次第ですが、ノートPC用の第10世代Core-i7だと10分くらいで完了します。以下の画像のような感じで進捗が表示されます。
f:id:tropicbird:20210307160819p:plain


最後にApplication terminated successfullyの文字が出れば成功です。
f:id:tropicbird:20210307162137p:plain


L1Cタイプの画像を保存していたフォルダを確認すると、L2Aタイプの画像が生成されていることが確認できます。
f:id:tropicbird:20210307164212p:plain