トップページ > データベース > 静止気象衛星ひまわりアーカイブ・ダウンロード情報

静止気象衛星ひまわり8号画像情報

 「ひまわり8/9号」の全球スキャン (FD) の gridded data (緯度経度直行座標系による精密幾何補正済データ) 公開準備が整いました。こちらのリリースノート(データ各種仕様)をご覧ください。

 また、準リアルタイムHimawari8画像ページにて、可視カラー画像(動画あり)およびバンドごとの画像をご覧いただけます。

《ご注意!》
 公開する gridded data はこれまでの静止気象衛星データとの関連性から、気象庁のバンド名とは異なるルールで作製・公開しています。ご注意下さい。

現在CEReSにて取り扱っています「ひまわり」データについてお知らせ

 現在公開中の「ひまわり8号」データは気象庁より配信を受けております。CEReSでは、気象庁のひまわりデータ取り扱いポリシーに基づき運用しております。詳細は、上記リリースノートをご参照ください。

静止気象衛星ひまわり6-7号(MTSAT)情報

 CEReS では、VL活動の一環としてウェザーニュース社、気象庁業務支援センター、東大地震研/生産研竹内研究室等の協力(データ提供)を受け、MTSATシリーズの無償データ提供を行っています。

各衛星仕様

各衛星仕様 画像をクリックすると拡大します。

  • MTSAT-1R ftp://mtsat.cr.chiba-u.ac.jp/MTSAT-1R/gridded_V2.0/
    • 観測経度:東経140° CEReS gridded data 作成期間:2005/Jun/28 03UTC - 2010/Jul/01 02 UTC
    • gridded data 範囲:経度 80° -- 200° (80.02 E -- 160.02 W)、緯度 60° -- 60° (59.98 N -- 59.98 S)
    • 空間解像度:0.04° (IR)、0.01° (VIS)、 画像サイズ:3000 pixels x 3000 lines (IR) 12000 pixels x 12000 lines (VIS)
    • データ仕様:2byte 符号無し整数 (unsigned short)、 big endian data order、 North to South data read
    • データが示すもの:CCTカウント値(物理量ではない)
  • MTSAT-2 ftp://mtsat.cr.chiba-u.ac.jp/MTSAT-2/gridded_V2.0/
    • 観測経度:東経145° CEReS gridded data 作成期間:2010/Jul/01 03UTC -
    • gridded data 範囲:経度 85° -- 205° (85.02 E -- 155.02 W)、緯度 60° -- 60° (59.98 N -- 59.98 S)
    • 空間解像度:0.04° (IR)、0.01° (VIS)、 画像サイズ:3000 pixels x 3000 lines (IR) 12000 pixels x 12000 lines (VIS)
    • データ仕様:2byte 符号無し整数 (unsigned short)、 big endian data order、 North to South data read
    • データが示すもの:CCTカウント値(物理量ではない)

 MTSAT-1R gridded data との互換性保持のため、MTSAT2でもMTSAT-1R と同じ gird data 範囲のデータセットを作成しています。(現在、データ調整中)

gridded data ファイル形式

 gridded data (緯度経度直交座標系に幾何補正されたデータ)は各チャンネル毎に1つのデータファイル(*.geoss)と10、あるいは5つのヘッダファイル(各HRITから取り出される.*.txt) で構成され、IRとVISでそれぞれbzip2 形式で圧縮されています。展開されたファイル名ルールは以下の通りです。

  • IRの場合
    • 圧縮形:YYYYMMDDHHmm.ir.tar.bz2
    • データ:IMG_DK0[1-3]IR[1-4]_YYYYMMDDHHmm.geoss
    • ヘッダ:hdr_ir[1-4]_YYYYMMDDHHmm_0??.txt (??: 01,...,10 [DK01], 01,..,05 [DK02,DK03])
  • VISの場合
    • 圧縮形:YYYYMMDDHHmm.vis.tar.bz2
    • データ:IMG_DK0[1-3]VIS_YYYYMMDDHHmm.geoss
    • ヘッダ:hdr_vis_YYYYMMDDHHmm_0??.txt (??: 01,...,10 [DK01], 01,..,05 [DK02,DK03])

 ここでYYYY:年、MM:月、DD:日、HH:時間(hour)、mm:観測開始分(minute) 注意!圧縮形とデータでは分が異なります!観測開始時間として正しいのは展開した後のデータファイル名です。ご注意下さい、IRの後の数字はチャンネル番号を示し、DK01、DK02、DK03 はMTSATの観測モードを示します(下を参照)。DK01は全球を観測するモード(fulldisk scan)で毎時間実施されています(大体 毎時25-35分に開始)。DK02 は北半球のみ観測するモード(NH)、DK03 は南半球のみ観測するモード(SH)です。特に予告が無ければ 00、 06、 12、 18 UTC には数値予報で利用する上空の風(衛星風)を算出するために南半球観測モードが実施され(連続して2回実施されます)、05、 11、 17、 23 UTC には同様の理由で北半球観測モードが連続して2回実施されます。それ以外の時間では00分付近で北半球観測モードが実施されています。詳しくは気象庁ひまわりの観測・配信スケジュールをご覧下さい。(気象庁関連サイトへのリンク)


 MTSAT-1R、MTSAT-2ともに観測モードを問わず、grid 化処理、公開を行っていますが、欠測、抜け等が生じている場合があります。あらかじめご容赦下さい。また、データ処理を行う際に下記クイックルックサイトにて画像を確認するのも有効かと思いますので、ご利用ください。

《ご参考までに》
 データを物理量として扱うためには変換処理(ヘッダに含まれる calibration table を元に輝度温度換算)が必要です。サンプルプログラムとして ftp://mtsat.cr.chiba-u.ac.jp/support/readMTSAT-2.0/ を参照下さい(ご利用は自己責任でお願いします)。中身はヘッダファイルの成形データ処理を行うシェルスクリプト(count2tbb.sh URL パス等が違うので適宜修正、参考にしながら作りなおすことをお薦めします)、およびCプログラム (count2tbb.c)、GrADS用ctl ファイル(MTSAT-tbb.ctl;これもMTSAT-1R用ですのでMTSAT2で使用する際には経度が異なります)で構成されています。Linux 環境下でのテスト、C は gcc、intel c での検証のみ行っていますが、他環境での動作確認は行っていません。

Byte order 変換

 これは MTSAT のみならず、一般的な情報です。本データは 2byte 符合無し整数 "big endian" です。"big endian" は大型計算機、汎用ワークステーション、Power PC (Mac) で読み込めるデータの並びで、その逆の "little endian" はパソコン(windows)、 PC-UNIX (Free-BSD、Linux [註:i386 [32bit] および x86_64 [64bit] データ読みだしは little endian です)での読みだし順です。データを読み出す際には、有償の衛星画像処理ソフトでは大抵対応しており、"intel type" ではない方でファイルを開けると読めると思います。自らプログラミングで対応する際には、PC で読む際には 1byte ずつ 2byte 単位でデータを読み、その順番を引っくり返す (byte swap) サブルーチンを組み込むことで対応可能です。PC-UNIX、 Windows+Cygwin では "dd"コマンドがあるため、以下の方法で2byte のバイトオーダを入れ替えることが可能です。 一括処理する(バッチ処理、shell化)際には1行以下のようなコマンドを組み込めば データを正しく読み込めると思います。

  $ dd if=hogehoge.input of=hogehoge.output conv=swab

 ここで hogehoge.input は元々のファイル名、hogehoge.output はバイトオーダを入れ替えたファイル名、conv=swab はバイトオーダを 入れ替えるためのオプションです。

 Fortran の場合には big endian 形式のバイナリで読みだし、little endian のバイナリとして吐き出すコンパイルオプションがあるものがあります。普段使用しているfortranコンパイラのマニュアルを確認してみてください。

HRIT データ

 生データの再配布に相当するため、原則公開することができません。どうしても研究遂行上必要である、というユーザの方は個別にご相談下さい(dbcom@cr.chiba-u.ac.jp または vl2016@cr.chiba-u.ac.jp にメールを送ってください)。

より高度な利用のために…

 気象庁衛星センターではGSICS(Global Space-Based Inter-Calibration System) の一環として、MTSATのIRチャンネルに関して極軌道衛星の hyperspectral サウンダ (Aqua/AIRS、METOP-A/IASI)による calibration を実施しています。より正確な輝度温度等に変換する必要がある研究事例ではこのレポートを利用することをお薦めします。

論文等で成果を公表

 ftp サイトからデータをダウンロードし、使用される際には特に連絡は必要ありません。ただし論文、学会発表等で当データを使い成果公表をされる際には以下の一文を謝辞に入れて下さい。

 「本研究で使用したMTSATデータは気象庁、ウェザーニュース、東大地震研・生産研竹内研究室で受信し、千葉大学環境リモートセンシング研究センターで処理、公開されたものを利用した。」

 また、データの科学的利用の調査の一環として、論文情報を送っていただけると非常に助かります。送付先は dbcom@cr.chiba-u.ac.jp (環境リモートセンシング研究センター計算機データベース委員会)です。ご協力のほど、よろしくお願いいたします。

静止気象衛星ひまわり5号およびGOES9号(GMS-5 SVISSR と GOES-9 Product)情報

 CEReS で受信・処理された GMS-5 SVISSR (Stretched Visible Infrared Spin Scan Radiometer)、および気象庁よりランドライン取得した GOES-9 Imager データを同一の緯度経度直交フォーマットに変換して公開しています。

公開 FTP site

データ仕様

 ← 画像をクリックすると拡大します。

  • Satellites:GMS-5、GOES-9
    • GMS-5 SVISSR:可視(vis; 0.55-0.90μm)、水蒸気(wv;6.5-7.0μm)、熱赤外1(ir1:10.5-11.5μm)、熱赤外2(ir2:11.5-12.5μm)
      • データ期間:1997年04月15日~2003年05月23日(GMS-5自体は1995年6月21日より運用)
    • GOES-9 Imager:可視(vis、Ch.1、0.52-0.72μm)、中間赤外(Ch.2、3.78-4.03μm)、水蒸気(wv、 Ch.3、6.47-7.02μm)、熱赤外1(ir1、Ch.4、10.2-11.2μm)、熱赤外2(ir2、Ch.5、11.5-12.5μm)
      • データ期間:2003年05月22日05UTC~2005年07月14日02UTC
  • GMS-5およびGOES-9 fine grid 共通 product 共通情報
    • 東経 100°~170.022095°、北緯 65.020981°~南緯65.2008446°
    • 空間解像度:赤道直下で約10km (東西 0.899322°、南北 0.899322°)
    • 画像サイズ:1448 ピクセル × 1448 ライン
    • バイナリ:1 byte 符号なし整数 (unsigned char)

ファイル名ルール

gXXYYMMDDHH.tar.bz2
gXX:衛星号数(g05 → GMS-5、g09 → GOES-9)
YY:年、MM:月、DD:日、HH:時間(世界標準時なので、JSTにするには9時間足してください。)

《ご注意!》
 GMS-5 product の上記時間に関しては “受信したデータの直前の正時”を示しています。 ほかの静止軌道衛星データセットに関してはスキャン → ファイル生成時の時間スタンプ作成となるため、CEReS GMS product に関しては1時間他のデータセットに比べ早くなっています! 解析時には十分にご注意下さい。

 ftp サイトに置いてあるデータはtar で固めてbzip2 で圧縮しています。 windows ではこの形式に対応しているソフトウェアで解凍して下さい。 UNIX/Linuxでは、以下のコマンドで解凍できます。
  $tar xjf gXXYYMMDDHH.tar.bz2  または、
  $bzip2 -d gXXYYMMDDHH.tar.bz2
  $tar xf gXXYYMMDDHH.tar

解凍後のファイル構成

 解凍すると4つのセット(br、jp、ro、fi)のファイルが各4チャンネル分ありますので計 16ファイルが生成されるはずです。それぞれ4セットのデータセットに ついてこれから記載しますが、

  gXXYYMMDDHH.*.ir1.gi ... ir1 channel
  gXXYYMMDDHH.*.ir2.gi ... ir2 channel
  gXXYYMMDDHH.*.wv.gi ... water vapor channel
  gXXYYMMDDHH.*.vis.gi ... visible

でチャンネルを表現しています。* は後述する各セット(br、jp、ro、fi)ごとに変化します。

各データセットの説明

ブラウズ用(Quicklooks) データセット

 解析用としては使わないと思いますが、画像を見る(確認する)上では有益なデータであると思います。 下での説明のファイル名は直前で記載した各セットの(*)の部分に相当します。

  • 日本付近のブラウズファイル (jp)
ファイル名例:gXXYYMMDDHH.jp.ir1.gi
緯度経度範囲: 東経 123°~156°、北緯 22°~ 49°、Polar Stereo 図法
データサイズ: 512 x 512
バイナリ:1byte integer (unsigned char)
ir1&2, wv: Tbb -100 (K), shorelines and lat & lon lines also added on image

  • Full-disk ブラウズファイル (jp)
ファイル名例:gXXYYMMDDHH.br.ir1.gi
緯度経度範囲: 東経 77°~158°(202°)、北緯 55°~ 南緯51°
データサイズ: 512 x 512
バイナリ:1byte integer (unsigned char)
ir1&2, wv: Tbb -100 (K), shorelines and lat & lon lines also added on image

このイメージと同様の画像が全て http://quicklooks.cr.chiba-u.ac.jp/~brows/ で閲覧できます。

解析用データセット

研究用に物理量換算ができるよう生成されたデータセットです。 このデータを使うことになるかと思います。各ファイル内の構成については後述します。

  • Rough grid data (ro)
ファイル名例:gXXYYMMDDHH.ro.ir1.gi
緯度経度範囲: 東経 77°~158°(202°)、北緯 55°~ 南緯51°
データサイズ: 580 x 580
バイナリ:1byte integer (unsigned char)

  • Fine grid data (fi)
ファイル名例:gXXYYMMDDHH.fi.ir1.gi
緯度経度範囲: 東経 100°~170.022095°、北緯 65.020981°~ 南緯65.2008446°
データサイズ: 1448 x 1448
バイナリ:1byte integer (unsigned char)

各サブセット(特に解析用データセット)のデータ構造

 上述したデータセットはヘッダ(80 byte)、データ本体、フッタ (lookup table; 解析用データセットのみ) となっています。

header
(80byte)
data
(1448 pixels x 1448 lines x 1 byte = 2096704 byte; fine grid data)
footer
(lookup table)

 ヘッダには計測日付情報が含まれていますが、ファイル名そのものがメタ情報と なっていますので、あえてheader情報を読む必要性は無いかと思います。 データ本体を読み取るためには最初の80byte をスキップし、データ本体分を 1byte 符号なし整数で読み取ればokです。 C のサンプルをここ sample-gms-data.c に置いておきます。

look up table (CCT値を物理量に換算するためのテーブル) の抽出

Windows (MS-C)でのサンプルプログラム(ご参考までに…)

 当センター近藤教授によって作成されたMS-Cでのサンプルプログラム群(使用環境:Microsoft Visual C++ 6.0、2003年頃)です。

  • GETCVYBL ( Get Convert Table; getvtbl.c ←残念ながら、現在このプログラムは行方不明です。)

 GMSの各センサーの値は8ビットで格納されていますが、それをアルベド、 輝度温度に変換するプログラムです。ヘッダー、イメージ、 トレーラーで校正される画像ファイルの中のトレーラーにテキストで格納されています。 校正テーブルの格納位置が時々ずれることがあるので、 ユーザーの皆様にはご迷惑をおかけしました。このプログラムではノミナルな位置から ±2バイトの範囲を検索するようにしましたので、バイトずれの問題は解決されました。 出力ファイルはテキストで、DN VIS IR1 IR2 WV の順に0~255のDN (Digital Number) に対応するアルベド、輝度温度が格納されます。 VISは0~63の64段階ですので、64以上のDNに対応するアルベドは 0が書き込まれています。

 校正表を読み込み、giファイルから、VIS、IR1、IR2、WVの値を出力するプログラムです。 変数は unsigned short で出力され、アルベドは0.1%、輝度温度は0.1度 (K) で格納されています。例えば、12.3%のアルベドは123、298.7Kは2987 で格納されています。必要に応じて書き直してください。

 解凍からアルベド、輝度温度抽出までを自動化するバッチファイルです。 ここでは、GNU-TAR、GZIP95を使用しています。
“fi2bin g0501080100”のように使います。これをダウンロードしたすべてのファイルについて実行するにはファイルが入っているフォルダで、 dir > go.batを実行します。次にgo.batを編集して、call fi2bin [fiファイルの先頭名]の並びを作成します。 バッチファイルからバッチファイルを呼び出す時にcallを使用します。 後はほっておけばアルベド、輝度温度変換済みファイルが作成されます。 一月分のデータ容量は約9GBになります。

《上記プログラムは2003年頃のものです、ご注意ください》
注1)gzip95は古くなりました。GNU-gzip等がありますので、そちらをお使いください。
注2)圧縮形式が Z で圧縮したものを tar で固めた旧形式ではなく、 tar で固めて bzip2 で圧縮した形式 (*.tar.bz2)ですので、 上記バッチファイルはwindows 上のコマンドプロンプト上でのバッチ処理の組み方 の例として見てもらえると幸いです。(樋口記載)

UNIX/Linux (GNU系toolが既にinstall済みであることが前提)

 完全に好みの問題となりますが、ここで紹介する例は、 Cによるプログラムはできるだけ少なく(単純化)し、shell (+ GNU tools) を最大限に使います。footer (lookup table)が始まる場所は 80byte (header) + 2096704 (data 本体) より後ろで、展開すると分かりますが、 ファイルそのものの大きさはほとんど変化がないので、こんな組み合わせをあてます:

  • Visible の場合
1 $tail -c 28269 gXXYYMMDDHH.fi.vis.gi > temp1.txt
2 $grep -a VISIBLE -A 66 temp1.txt > temp2.txt
3 $awk 'NR > 3 {print $1, $2}' temp2.txt > visible.calib

行数 やっていることの説明
1 tail コマンドは指定したファイルの後ろから読むもので -c 28269 で読むバイト 数を指定します。> はリダイレクトで、この場合は得られた結果をtemp1.txtに書き込め、と言う意味です。
2 書き込んだ結果 (temp1.txt) の中で VISIBLE と書かれた行を探しだし (grep はパターンマッチングのコマンドです)、その行から 66行分だけ取り出して (データと物理量換算表 [lookup table]のみを取り出す。他の情報も footer には含まれているので) temp2.txt に書き込め、と言う意味です。 66行というのは、元のデータが可視は64階調しか無いからです。
3 データの整形をします。awk を使います。temp2.txt の3行目以降で1列目と2列目 のデータのみを visible.cailb に書き出せ、と言う意味です。
これでdata値とそれに対応する物理量のデータのみを取り出すことが可能となります。

  • Water Vapor、IR1 & IR2 の場合
1 $tail -c 28269 gXXYYMMDDHH.fi.wv.gi > temp1.txt
2 $grep -a INFRARED -A 258 temp1.txt > temp2.txt
3 $awk 'NR > 3 {print $1, $4}' temp2.txt > wv.calib <-- Water Vapor の場合
4 $awk 'NR > 3 {print $1, $2}' temp2.txt > ir1.calib <-- IR-1 の場合
5 $awk 'NR > 3 {print $1, $3}' temp2.txt > ir2.calib <-- IR-2 の場合

行数 やっていることの説明
1 tail コマンドは指定したファイルの後ろから読むもので -c 28269 で読むバイト 数を指定します。> はリダイレクトで、この場合は得られた結果をtemp1.txtに書き込め、と言う意味です。
2
3 各チャンネル毎に必要な情報を取ります。2行目迄のデータ処理 (temp2.txt)で;
digital number IR-1(Kelvin) 1R-2(Kelvin) Water Vapor(Kelvin) の順で入っていますので、IR1 の情報が必要であれば print $1, $2 、 WV の場合には $1,$4 としてそれぞれのcalibration table のみを取得することが可能だと思います。
4
5

 後は前述したファイルからデータ部分だけを読み取るプログラム sample-gms-data.c と、lookup table情報を取り出したファイルを使って、データを物理量に換算するプログラムを作成すれば物理量換算は可能です。サンプルとして、Visible 用のプログラム convert-gms-visible.c と、それ以外のプログラム convert-gms.c を置いておきます。これらのプログラムの走らせ方は、

  $./a.out datafile outputfile lookuptablefile

で、3つの引数(入力バイナリファイル、出力バイナリファイル、look up table テキストファイル)が必要です。a.out はコンパイル後のデフォルトの実行ファイルで、適宜読み替えて下さい。この実行ファイルの他、必ず3つの引数が必要です。ファイル名は元々のファイル名をうまく使うなど工夫し、shell で for 文等を使えば連続的に処理が可能です。

 

ほか注意事項

  • 1998年5月以前のlookuptable
 CEReS product の中にはlookup table は含まれていません。visibleに関しては定数が入っているので、1998年以降の table をそのまま流用すれば使えると思います。wv、ir に関しては、生データから出力させれば作成可能だと思いますが、手間的に大変なので ;-) 手抜きで申し訳ありませんが、高知大学が運営されている気象情報頁の換算表 http://weather.is.kochi-u.ac.jp/sat/CAL/ を参照していただけると幸いです。

  • 定時に観測データが抜けている問題
 03Z (12JST) の観測データが 極端に少ない問題がCEReS 受信 GMS-5 データにありますが、生データのスキャンライン数が1100ライン以下のデータについては、プログラム上プロダクト加工しておりません。ご了承ください。

静止気象衛星ひまわり1号~5号およびGOES9号データ(SVISSR以外)公開情報

 CEReSで受信・処理されたデータ以外のVISSR、RVISSR、SVAデータおよび一部griddedデータの公開を開始しました。

公開 FTP site