画像にはRGBなどのバンド(レイヤー)が存在しています。
通常1つの画像ファイルに全てのバンドが含まれていますがRedだけの画像が欲しかったりRed,Green,Blueをファイルごとに分けたい場合などがあります。
そういったときに使用するGDALコマンドをご紹介します。
画像によってRed, Green, Blueの格納順序が異なる場合があるためバンド1、バンド2、バンド3・・・といった表現を使います。
バンド分割する場合は「gdal_translate」コマンドを使用します。
また -b オプションで欲しいバンドを指定します。
ハワイのサインプル画像を使ってバンド分割を行います。
このサンプル画像はRapidEyeで撮影された画像なので5バンドの衛星画像です。
またこの画像はバンド1:Blue、バンド2:Green、バンド3:Redとなっています。今回は衛星画像を使用しますが、衛星画像ではなくても扱うことができます。
バンド分割コマンド
各バンドを分割するコマンドは下記の通りです。
# バンド1:Blue gdal_translate -of GTiff -b 1 2010-12-05T221358_RE2_3A-NAC_6683383_113276.tif band1.tif # バンド2:Green gdal_translate -of GTiff -b 2 2010-12-05T221358_RE2_3A-NAC_6683383_113276.tif band2.tif # バンド3:Red gdal_translate -of GTiff -b 3 2010-12-05T221358_RE2_3A-NAC_6683383_113276.tif band3.tif
出力結果の確認
バンド1:Blue – band1.tif
色の範囲はMin/Max=2032.000,58926.000で出力されました。
バンド2:Green – band2.tif
色の範囲はMin/Max=0.000,60851.000で出力されました。
バンド3:Red – band3.tif
色の範囲はMin/Max=651.000,57198.000で出力されました。
ついでにバンド4とバンド5も出力してみました。
バンド4 – band4.tif
色の範囲はMin/Max=306.000,56185.000で出力されました。
バンド5 – band5.tif
色の範囲はMin/Max=226.000,39031.000で出力されました。