jiku log

データサイエンスの核心を掴む : 学びと発見の記録

「Pythonで学ぶ衛星データ解析基礎」を読む ~第3章 衛星データ解析準備 ③GDAL~

はじめに

宮﨑浩之 監修「Pythonで学ぶ衛星データ解析基礎―環境変化を定量的に把握しよう」は,Pythonを用いた衛星データ解析の基礎から実践までを網羅的に解説しており,製造業の競争力強化と持続可能な社会の実現にとって重要な,環境モニタリングやインフラ管理への応用に資する知識を提供すると考えている。本書を読むことを通じて,衛星データ解析を基礎を学ぶ。

本記事は,「第3章 衛星データ解析準備」における,GDALに関する読書メモである。

3-3 GDALを使った衛星データ処理

GDAL(Geospatial Data Abstraction Library)は,地理空間情報を持つ画像解析の専用ライブラリである。
GDAL — GDAL documentation

本節では,Landsat 8の観測データを対象に,GDALを用いた衛星データの処理方法について説明している。
サンプルコードを動作させながら,処理方法を学んだ。

使用するデータ

使用するデータは,Landsat 8を用いる。ダウンロードサイトから入手することができる。

データの読み込みと可視化

GDALのバージョンを確認したところ,バージョンは3.8.4であった。

分析対象データ(LC08_L1TP_107035_20200429_20200820_02_T1_B5.TIF,近赤外線画像)をArrayとして読込み,可視化すると以下のようになった。

近赤外線画像の取得

なおグレースケールで表示すると以下のようになる。

グレースケール表示

ヒストグラム表示

次に,

  • LC08_L1TP_107035_20200429_20200820_02_T1_B2.TIF : 青色
  • LC08_L1TP_107035_20200429_20200820_02_T1_B3.TIF : 緑色
  • LC08_L1TP_107035_20200429_20200820_02_T1_B4.TIF : 赤色

のデータのそれぞれについて,ヒストグラムを作成すると,以下のようになる。

青色(上)・緑色(中)・赤色(下)のヒストグラム

横軸は周波数[Hz]であると考えられる。

画像の切り出し

分析対象の領域を切り出す方法は,

  1. 開始位置と幅をしている
  2. 4隅の緯度・経度を指定した切り出し

の2パターンがある。

画像を切り出した結果は以下の通りである。

画像の合成

複数のバンドを組合わせて,カラー合成画像を作成する。画像の種類には,以下のようなものがある。

画像の名称 特徴
トゥルーカラー画像 人間の目で見える色と同じ配合の画像。
赤波長 : 赤バンド,緑波長 : 緑バンド,青波長 : 青バンド
フォルスカラー画像 植生部分を赤く表示させた画像。
近赤外 : 赤バンド,赤波長 : 緑バンド,緑波長 : 青バンド
ナチュラルカラー画像 植生を自然な色合いで強調した画像。
赤波長 : 赤バンド,近赤外 : 緑バンド,緑波長 : 青バンド

トゥルーカラーで合成した画像は以下の通りである。

パンシャープン画像

Landsat 8は,

  • パンクロマティック : 解像度15mのモノクロ画像
  • マルチスペクトル : 解像度30m

という異なる解像度の画像を持つ。

これらを組合わせて,解像度15mのカラー画像を作成することができる。このようにして作成された画像をパンシャープン画像という。

まとめと感想

今回は,「第3章 衛星データ解析準備」における,GDALについてまとめた。

GDALは,画像の読み込みや可視化だけでなく,周波数ごとのヒストグラムを作成したり,バンドごとの画像を組合わせてカラー画像を作成したりするなど,さまざまな分析機能を持っていることが理解できた。

本記事を最後まで読んでくださり,どうもありがとうございました。