Sentinel-2の衛星画像を利用する
Sentinel-2の画像について
- Landsatより解像度が高い
- Landsatより撮影頻度が高い
- ほぼ全球の陸地を撮影している
- 無料
ダウンロード
webブラウザで落とす
Sentinel-2のデータは以下のサイトからダウンロードできる。簡単な事前登録が必要。
https://scihub.copernicus.eu/dhus/#/home
対象地域がどのタイルに含まれるかは、上記の検索画面の他、以下のサイトからリンクのあるkmlファイルからも確認できる。
https://sentinel.esa.int/web/sentinel/missions/sentinel-2/data-products
KLMファイルはgoogle earth proでは読めるが、QGISで読み込みがうまく行かなかったため、下記でshapefileに変換する。
ogr2ogr -nlt POLYGON -explodecollections -skipfailures shapefile.shp mykmlfile.kml
参考:https://gis.stackexchange.com/a/265862
大気補正
Landsatの場合、大気補正済みのlevel2プロダクト(Level 2A)が配布されているが、Sentilel-2の場合、ヨーロッパ地域を除きユーザーがlevel-1プロダクトを用いて各自生成することになっている。 Level-2プロダクト生成のためのソフトウェアは以下から入手できる。
http://step.esa.int/main/third-party-plugins-2/sen2cor/
Sen2Corのインストール
インストーラをダウンロードして、必要な実行権限を与えて実行すると、Sen2Corが展開される。
補正に必要なデータ
level 1Cは大気上層の反射率が格納されている。これを地表面での反射率に変換するには、標高データと土地被覆データを用いる。
標高データ
Sen2Corは、SRTMの90m DEM(無料)とPlanetDEM(有料)が利用できる。SRTMデータは緯度が60°以上の地域はカバーされていないので、それらの地域を解析する場合、DEM無しかPlantDEMを利用する必要がある。 SRTMを利用する場合は、Sen2Corが自動で必要なDEMをhttp://data.cgiar-csi.org/srtm/tiles/GeoTIFF/からダウンロードしてくる。
土地被覆データ
以下からClimate Research Data Package (CRDP)が提供しているESACCI-LC-L4-ALL-FOR-SEN2COR.zipをダウンロードする。 http://maps.elie.ucl.ac.be/CCI/viewer/download.php ZIPファイルを$SEN2COR_BIN/aux_data/に展開する。
L2A_GIPP.xmlファイルの修正
補正のパラメータを修正する。
<DEM_Directory>NONE</DEM_Directory>
を<DEM_Directory>dem/srtm</DEM_Directory>
に<DEM_Reference>NONE</DEM_Reference>
を<DEM_Reference>http://data_public:GDdci@data.cgiar-csi.org/srtm/tiles/GeoTIFF/</DEM_Reference>
に
Sen2Corでの大気補正
L2A_Process --help
を実行し、以下の結果が得られることを確認する。
L2A_Process --help usage: L2A_Process.py [-h] [--mode MODE] [--resolution {10,20,60}] [--datastrip DATASTRIP] [--tile TILE] [--output_dir OUTPUT_DIR] [--work_dir WORK_DIR] [--img_database_dir IMG_DATABASE_DIR] [--res_database_dir RES_DATABASE_DIR] [--processing_centre PROCESSING_CENTRE] [--archiving_centre ARCHIVING_CENTRE] [--processing_baseline PROCESSING_BASELINE] [--raw] [--tif] [--sc_only] [--cr_only] [--debug] [--GIP_L2A GIP_L2A] [--GIP_L2A_SC GIP_L2A_SC] [--GIP_L2A_AC GIP_L2A_AC] [--GIP_L2A_PB GIP_L2A_PB] input_dir Sentinel-2 Level 2A Processor (Sen2Cor). Version: 2.8.0, created: 2019.02.20, supporting Level-1C product version 14.2 - 14.5. positional arguments: input_dir Directory of Level-1C input optional arguments: -h, --help show this help message and exit --mode MODE Mode: generate_datastrip, process_tile --resolution {10,20,60} Target resolution, can be 10, 20 or 60m. If omitted, only 20 and 10m resolutions will be processed --datastrip DATASTRIP Datastrip folder --tile TILE Tile folder --output_dir OUTPUT_DIR Output directory --work_dir WORK_DIR Work directory --img_database_dir IMG_DATABASE_DIR Database directory for L1C input images --res_database_dir RES_DATABASE_DIR Database directory for results and temporary products --processing_centre PROCESSING_CENTRE Processing centre as regex: ^[A-Z_]{4}$, e.g "SGS_" --archiving_centre ARCHIVING_CENTRE Archiving centre as regex: ^[A-Z_]{4}$, e.g. "SGS_" --processing_baseline PROCESSING_BASELINE Processing baseline in the format: "dd.dd", where d=[0:9] --raw Export raw images in rawl format with ENVI hdr --tif Export raw images in TIFF format instead of JPEG-2000 --sc_only Performs only the scene classification at 60 or 20m resolution --cr_only Performs only the creation of the L2A product tree, no processing --debug Performs in debug mode --GIP_L2A GIP_L2A Select the user GIPP --GIP_L2A_SC GIP_L2A_SC Select the scene classification GIPP --GIP_L2A_AC GIP_L2A_AC Select the atmospheric correction GIPP --GIP_L2A_PB GIP_L2A_PB Select the processing baseline GIPP
L2A_Process
が動作することが確認できたら、以下を実行する。
L2A_Process /path/to/safe/S2B_MSIL1C_XXXXXXXXX.SAFE/
結果
DEMによる補正により、山の影の影響が減少していることがわかる。
衛星画像からLand Coverの作成
衛星画像からland cover mapを作成する際、それぞれのピクセルが持つバンド情報からピクセルごとに分類するピクセルベースの手法と、空間的に近いピクセルをまとめてから分類するオブジェクトベースの分類がある。 ピクセルベースの分類は比較的簡単で、一度値をデータフレーム等に読み込めば、通常の統計処理と同様に各種分類手法が適用できる。 オブジェクトベースの場合、隣接するピクセルをある基準に沿って順にマージしていくプロセスが入るため煩雑だが、マージしてできた各セグメントのサイズ、形、テクスチャ等、ピクセルベースでは利用できない新たなデータを分類基準に追加することができる。
ピクセルベースの分類
Randam Forestによる分類
オブジェクトベースの分類
Mean Shiftによるセグメンテーション
分類の評価
Independent validationやRFのクロス検定など。
Sen2Cor
Sentinel2のレベル1C画像(ToA)からBoAを作成するために、Sen2Corを利用する。