MODIS L2 データから RGB 画像を作る
Aqua/MODIS の Ocean Color L2 データから、複数波長のリモートセンシング反射率
Rrs を読み込み、赤・緑・青に割り当てて RGB 画像を作成します。
この解析の目的は、きれいな衛星画像を作ることだけではなく、衛星画像が「写真」ではなく、
波長別観測値を組み合わせた可視化であることを理解することです。
この解析の中心的な問い
MODIS が観測した波長別の反射率を RGB に割り当てることで、雲、陸、海、沿岸水、 外洋水、水塊境界のような特徴をどこまで読み取れるかを考えます。
データと前提
| 項目 | 内容 | 注意点 |
|---|---|---|
| 使用データ | Aqua/MODIS Level-2 Ocean Color NRT NetCDF | L2 データは衛星軌道に沿った swath データであり、最初から緯度経度の等間隔格子ではない。 |
| 主な変数 | navigation_data/longitude, navigation_data/latitude, geophysical_data/Rrs_* | 各ピクセルに緯度・経度と複数波長の反射率が対応している。 |
| RGB バンド | 例:Red = Rrs_667, Green = Rrs_555, Blue = Rrs_443 | ファイルに存在する波長に応じて、近い波長を自動選択する。 |
| 対象例 | 2024年5月31日または2024年6月11日の日本周辺 | 雲や陸域は海面情報を隠すため、RGB 画像の判読ではまず欠測・雲域を確認する。 |
解析フロー
MODIS L2 Ocean Color ファイルを確認する
最初に NetCDF ファイルを指定し、ファイルに含まれる変数を確認します。MODIS L2 Ocean Color データには、
緯度・経度、品質情報、複数波長の Rrs などが含まれています。
添付図のように画像が斜めの帯状になるのは、MODIS が衛星軌道に沿って観測しているためです。 これは地図格子画像ではなく、衛星が通過した範囲だけを持つ観測データです。
各ピクセルの緯度・経度を読む
衛星画像の各ピクセルには、観測値だけでなく緯度・経度が対応しています。 この緯度・経度を用いることで、swath データを地図上に重ねることができます。
lat = ncread(ncfile,'navigation_data/latitude');
RGB に使う Rrs バンドを選ぶ
RGB 画像では、赤・緑・青に近い波長の Rrs をそれぞれ R, G, B チャンネルに割り当てます。
改良版スクリプトでは、ファイルに存在する波長を確認しながら、近い波長を自動で選択します。
| RGB チャンネル | 優先して使う波長 | 代替候補 |
|---|---|---|
| Red | Rrs_667 | Rrs_678, Rrs_645 |
| Green | Rrs_555 | Rrs_547, Rrs_531 |
| Blue | Rrs_443 | Rrs_469, Rrs_488 |
同じ MODIS データでも、どの波長を R, G, B に割り当てるか、どのように明るさを調整するかで、 画像の印象は変わります。そのため、RGB 画像は「表示用の合成画像」として扱います。
欠損値・異常値を処理し、見やすい明るさに調整する
Rrs をそのまま RGB に入れても、暗すぎたり、雲縁や異常値が目立ちすぎたりすることがあります。
そこで、負値や大きすぎる値を除き、0–1 の範囲に正規化し、必要に応じて明るさやガンマ補正を行います。
brightnessFactor = 1.35;
gammaValue = 0.85;
saturationFactor = 0.90;
地図上に RGB 画像を表示する
緯度・経度を用いて、RGB 画像を日本周辺の地図上に表示します。海岸線を重ねることで、 陸域、沿岸域、外洋域の位置関係を確認できます。

RGB 画像から海の特徴を読み取る
RGB 画像からは、雲、陸、沿岸水、外洋水、水塊境界、渦状構造などを直感的に読み取ることができます。 一方で、RGB だけではクロロフィル濃度や懸濁物濃度を定量的に決めることはできません。
この解析で特に強調すること
- RGB 画像は写真ではなく、波長別の観測値を R, G, B に割り当てた表示画像である。
- MODIS L2 データは swath データであり、衛星軌道に沿った観測範囲だけを持つ。
- 可視・近赤外の海色観測は雲に弱く、雲や陸域の下の海面は観測できない。
- RGB 画像で見える水色の違いは重要な手がかりだが、定量的な Chl-a 推定には Rrs を用いたアルゴリズムが必要である。
- 表示スケールやガンマ補正により見た目は変わるため、画像判読では処理条件を明示する。
課題
- 作成した RGB 画像において、雲または欠測と思われる領域はどこか。なぜそう判断したか説明せよ。
- 沿岸水と外洋水の色の違いが見える場所を一つ選び、その特徴を説明せよ。
- RGB 画像は「写真」と同じと言えるか。衛星が観測している量と RGB 表示の関係を説明せよ。
fixedscale とpercentilescale では、画像の見え方と比較可能性がどのように変わるか考察せよ。- RGB 画像だけでクロロフィル濃度が高いと断定できない理由を説明せよ。
- 次の解析で Chl-a 濃度を推定するとき、RGB 画像はどのような事前情報として役立つか述べよ。
次の解析へ
その後、赤外 SST とマイクロ波 SST の相補性を扱う MODIS + AMSR2 SST 合成 へ進みます。