MODIS Lebel1Bデータの処理の実際

このページは完成しているわけではありませんが、持てる情報をなるべく早く出すため、リンク開始します。頻繁に更新する(かもしれない)ので時々覗いてみてください。

CEReSでアーカイブしているMODISデータは共同利用研究として様々な研究に利用できます。ここでは、画像処理ソフトウエアER Mapperと、MODISのHDF形式の様々な処理を行うHDF-EOSソフトウエアを使った処理の実際について紹介します。

ここでは、Windowsの使用を前提としていますが、Linuxによる処理は、ここを参照してください。

[使用するソフトウエアについて]

HDF-EOSはフィンランドのVTT社の製品で、MODISはじめいくつかの衛星データの画像抽出、放射量補正、幾何補正、等が可能です。詳細はここのマニュアルを参照してください。日本では潟rジョンテックが扱っています。
ER Mapperは汎用リモートセンシング画像解析ソフトウエアです。日本では潟rジョンテック海RCソリューションズで扱っています。

目次


1.ディレクトリ(フォルダ)の中身

アーカイブされているディスクのディレクトリから20050401を選択して中身を見てみましょう。

中には、こんなにたくさんのファイルが入っています。サンプルデータはここにあります。

これらのファイルの中で、MODおよびMYDで始まるファイルがMODISデータです。

2.画像の選択

一つのファイルを選んで画像を表示してみましょう。

MOD021KM.J20050401014538.20050401015726.hdf.gz

このファイルは名前から、以下のことがわかります。

MOD02画像データである。データプロダクトについては、ここを見てください。
1KM1kmの分解能のデータが入っている
JJAXA受信の意味だと思います
20050401014538受信開始が、2005年4月1日の1時45分38秒という意味です。時間はGMTですのでJST(日本標準時)に直すには9時間を足してください。
20050401015726受信終了時刻を表します。
hdfこのデータの形式がHDFであることを表します。
gzファイルはgzipで圧縮されているということです。

3.ファイルの解凍

gz形式の圧縮ファイルを解凍するには、プログラムgzipが必要です。http://www.gzip.org/からダウンロードできます。

あるいは、窓の杜等のサイトからgzipに対応する解凍ソフトをダウンロードして使うことができます。

gzipを使うとバッチ処理が可能になりますので、大量のデータを処理することができます。

ここでは、

gzip -d MOD021KM.J20050401014538.20050401015726.hdf.gz

としましょう。すると、

MOD021KM.J20050401014538.20050401015726.hdf

ができあがります。これがHDF形式の画像データです。

4.ER Mapperによる画像の表示

HDF形式をサポートする画像処理ソフトウエアとして、ER Mapperを使用して画像を表示してみましょう。ここでは、ただ表示させるだけです。

もちろん、ほかのアプリケーションも使用可能ですが、近藤研では最初にER Mapperを導入したので、ずっと使い続けています。

まず、HDFファイルを開いてみましょう。この中にはなんと92チャンネルのデータが含まれています。
(画像をクリックすると拡大します)

MODISセンサーのチャンネルは36ありますが、様々な情報が付加されています。ここにスペックに関するページがありますので参照してください。ER Mapperファイルのバンドと、MODISのバンドの関係はここを見てください。

5.HDFEOSソフトウエアによる処理

1)プログラムスタート

HDF-EOSを起動したら最初に作業ディレクトリ(working directory)を設定します。



2)データのアンパックと ER Mapper による表示

次に、Unpack HDF-EOSを選択しましょう。画面が現れたら、出力フォーマットを選択します。ER MapperとEardas形式がありますが、ここではER Mapper形式を選択しておきます。
注)ER Mapper形式は、単なるBILファイルです。画像に関する情報は*.ersファイルに記述があります。

GOボタンを押すとファイルの展開が始まります。なお、ここで時刻が読み取れないとの警告が出ますが、JAXAのフォーマットが本家と若干異なるためです。ここでは、OKを押してそのまま処理を進めましょう。

できあがったファイルを下の表に示します。ここで、拡張子がないファイルがイメージファイルで、同名で拡張子がersのファイルがファイルディスクリプタです。これはER Mapperの形式で、そのまま画像を取り込むことが出来ます。



hdfeos.log
mod021km_attr.txt
mod021km_Change in relative responses of thermal detectors
mod021km_Change in relative responses of thermal detectors.ers
mod021km_DC Restore Change for Reflective 1km Bands
mod021km_DC Restore Change for Reflective 1km Bands.ers
mod021km_DC Restore Change for Thermal Bands
mod021km_DC Restore Change for Thermal Bands.ers
mod021km_EV_1KM_Emissive
mod021km_EV_1KM_Emissive.ers
mod021km_EV_1KM_RefSB
mod021km_EV_1KM_RefSB.ers
mod021km_EV_250_Aggr1km_RefSB
mod021km_EV_250_Aggr1km_RefSB.ers
mod021km_EV_500_Aggr1km_RefSB
mod021km_EV_500_Aggr1km_RefSB.ers
mod021km_EV_Band26
mod021km_EV_Band26.ers
mod021km_gflags
mod021km_gflags.ers
mod021km_Height
mod021km_Height.ers
mod021km_Latitude
mod021km_Latitude.ers
mod021km_Longitude
mod021km_Longitude.ers
mod021km_Noise in Thermal Detectors
mod021km_Noise in Thermal Detectors.ers
mod021km_Range
mod021km_Range.ers
mod021km_SensorAzimuth
mod021km_SensorAzimuth.ers
mod021km_SensorZenith
mod021km_SensorZenith.ers
mod021km_SolarAzimuth
mod021km_SolarAzimuth.ers
mod021km_SolarZenith
mod021km_SolarZenith.ers

ER Mapperでmod021km_EV_1KM_RefSBを表示してみましょう。このファイルは15バンドを含みますが、、その情報は*.ers(テキストファイル)に書き込まれています。その観測波長域は本家のホームページを参照すると下記の様になります。ここで、Band 8〜16がOcean Color/Phytoplankton/Biogeochemistry、Band 17,18,19がAtmospheric Water Vaporで、Band 26がCirrus Clouds Water Vaporの最初のバンドになります。バンド26が入っていることに注意。なお、hi、loはハイゲイン、ローゲインの意味だと思います。MODISのスペックはこちら

No.BandBandwidthSpectral
Radiance
Required
SNR
1band 8405-42044.9880
2band 9438-44841.9838
3band 10483-49332.1802
4band 11526-53627.9754
5band 12546-55621.0750
6band 13lo662-6729.5910
7band 13hi662-6729.5910
8band 14lo673-6838.71087
9band 14hi673-6838.71087
10band 15743-75310.2586
11band 16862-8776.2516
12band 17890-92010.0167
13band 18931-9413.657
14band 19915-96515.0250
15band 261.360-1.3906.00150(SNR)

その他のファイルについても、同様の操作で画像化は簡単にできます。対応表はこちら

画像を表示してみました。さて、これでとにかく画像化はできたわけです。

250m BGR=1,2,1 500m BGR=3,5,3 1km BGR=8,12,16

3)放射量補正

 MODISの短波のバンドに対しては、"MODIS Reflective band calibration"のメニューが用意されています。入力データとしては、

が必要です。ここで、Image Fileはファイル名にRefSBが含まれているファイルを指定します。次に、1km分解能のセンサーと太陽の角度に関するファイルが必要ですが、そのファイルはMOD3に含まれています。MOD2に含まれているファイルは分解能が粗い(〜10km)ので使えません。

そこで、ここから現在解析しているファイルに対応するMOD3ファイルをダウンロードし、3.ファイルの解凍と同じ手順でファイルを取り出しましょう。

MOD021KM.J20050401014538.20050401015726.hdf
これが解析中のファイルですので、対応するMOD3ファイルは
MOD03.J20050401014538.20050401015726.hdf
これになります。

解凍が終わると、こんなにファイルが生成されます。これらのファイルを使って放射量補正を行うと...

どうもうまくいきません。もうちょっと勉強してみますので、暫しお待ちください。



4)輝度温度補正

MODISの熱赤外バンド(バンド20〜36)を輝度温度(ケルビン)に変換することができます。その計算方法は、ここのマニュアルを参照してください。

使い方は簡単で、ファイル名を入力するだけです。ファイルは名称にEmissiveが含まれているものになります。チャンネルを指定(すべても可能)して、GOボタンを押すと処理が開始されます。出力ファイルはもとの名前に_kelvinが吹かされたものになります。



5)幾何補正

HDF-EOSではGeodetic(Plate Carre)すなわち、等緯度経度グリッドとメルカトル図法を選択することができます。データムはWGS84です。

Image Fileと緯度経度ファイルを入力します。緯度経度情報はMOD3で作成されたファイルを使用してください。
ここでは、画像出力範囲として緯度が北緯24度〜46度、経度が東経122度〜149度を指定しました。分解能は東西0.01度、南北0.015度を指定してあります(もちろん、可変です)。GOボタンを押すと処理が開始されます。



画像はすぐに出来上がります。元のファイル名に_rectが付加された名前でセーブされ、この例では画像サイズは2201ピクセル×1801ラインになります。ということは、メッシュではなく、グリッドにおける値として出力されていることがわかります。

HDF-EOSではMODISセンサーで見られるBOWTIEを補正できます。ここのマニュアルの表紙にその効果が示されています。



さて、ここまでできたらMODISを使っていろいろ遊ぶことができますね。

6)バッチ処理

以上の処理はHDF-EOSを使って対話的に行うことができました。しかし、これでは大量のデータを扱うには少々不便です。そこで、HDF-EOSにはコマンドライン版(HDFEOS_COM.EXE)も準備されています。バッチファイルを作成することにより、大量のデータ処理が可能になります。

i)HDFファイルの解凍

コマンドプロンプトから以下のプログラムを起動します。HDFEOS_COMは同じディレクトリに置くか、Pathを設定しておいてください。

HDFEOS_COM task uphe df MOD021KM.J20050401014538.20050401015726.hdf

HDFEOS_COM task uphe df MOD03.J20050401014538.20050401015726.hdf

taskの後に続くキーワードで処理を指定します。ここで、upheはHDF-EOSファイルの解凍(unpack)を指示します。dfの後には処理するファイル名を記載します。

ii)幾何補正

幾何補正のtaskgeoで、parfの次に以下のようなパラメータファイルを指定します。

HDFEOS_COM task geo parf filename

[パラメータファイルの内容]
imf: f:\modis\work\MOD021KM_EV_1KM_RefSB.ers
lat: f:\modis\work\MOD03_Latitude.ers
lon: f:\modis\work\MOD03_Longitude.ers
crd: geodetic_wgs84
area: 122 149 0.01 24 46 0.01

入力ファイルと緯度・経度ファイル(MOD3)を指定し、座標系が等緯度・経度(Geodetic、Plate Carre)、データムがWGS84であることを指定します。areaは経度範囲と増分、緯度範囲と増分の6つの数字を指定します。このパラメータファイルは分解能0.01度の日本を含む範囲の画像データを出力します。

さて、これでMODIS L1Bの一通りの処理がバッチでできることがわかりました。大量のデータを処理するスクリプト(バッチファイル)については、もう少し考えてみようと思います。近日中に、特定領域のサブセットの作成に取り掛かりたいと思います。


お問い合わせはこちらまで