HDF ファイル形式とは?
.hdf ファイルは、1988 年にイリノイ大学の国立スーパーコンピュータ応用研究所 (NCSA) によって開発された HDF4 (Hierarchical Data Format version 4) バイナリコンテナに科学データセットを保存します。HDF4 は、科学者やエンジニアが多次元配列、ラスタ画像、テーブル、メタデータなどの異種数値データを単一のポータブルなファイルに保存できるように設計されました。
このフォーマットは、4 バイトのマジックシーケンス 0E 03 13 01 によって識別されます。内部的に HDF4 はフラットな「タグとリファレンス」アーキテクチャを採用しており、すべてのデータオブジェクトはデータ記述子ブロック内の 12 バイトの記述子(タグ、リファレンス番号、オフセット、長さ)によって記述されます。圧縮はデータセットごとにオプションで、RLE、SKPHUFF (修正ハフマン)、または DEFLATE (gzip) を使用できます。32 ビット符号付きオフセットフィールドの制限により、データオブジェクトごとに 2 GB という厳格な制限があります。
NASA は、Terra および Aqua 衛星からのリモートセンシング製品を、.hdf 拡張子を使用した HDF4 ベースの HDF-EOS フォーマットで配布しています。HDF4 は、1998 年にリリースされた完全な再設計版である HDF5 に取って代わられており、現在は新しい科学研究には HDF5 が推奨されています。どちらのフォーマットも .hdf 拡張子を持つ場合がありますが、マジックバイトによって確実に見分けることができます (HDF4: 0E 03 13 01、HDF5: 89 48 44 46)。
セキュリティと安全性
リスク: LOWHDF4 は実行コードを含まないパッシブなバイナリデータコンテナです。開いても安全です。非常に大きなデータセットは RAM を使い果たす可能性があるため、pyhdf や MATLAB を使用してサブセットを読み込んでください。不正な形式の HDF4 ファイルは、古いバージョンの libhdf4 のバグを誘発する可能性があるため、ツールを最新の状態に保ってください。一部の HDF4 ライブラリバージョン (4.2.15 未満) には CVE 評価のセキュリティ脆弱性があったため、4.2.16 以降にアップデートしてください。
形式の詳細
概要- HDF5 ファイル (稀に) - 一部のツールは HDF5 データを .hdf 拡張子で保存します。マジックバイトを使用して HDF4 (0x0E031301) と HDF5 (0x89HDF...) を区別してください。
HDF ファイルを開くプログラム
技術的詳細
詳細仕様| マジックバイト | オフセット 0 に 0E 03 13 01 |
| フォーマットタイプ | バイナリ科学データコンテナ (フラットなタグ/リファレンスアーキテクチャ、HDF4) |
| バイト順序 | ネイティブはビッグエンディアン。各データオブジェクトが独自のバイト順記述子を保持 |
| 圧縮 | データセットごとにオプション:RLE、SKPHUFF (修正ハフマン)、または DEFLATE (gzip) |
| データ型 | 多次元配列 (Scientific Datasets)、ラスタ画像 (1-32 bpp)、テーブル (Vdata)、グループ (Vgroups)、注釈 |
| 最大オブジェクトサイズ | データオブジェクトあたり約 2 GB (32 ビット符号付きオフセットフィールドの制限) |
| 最大次元数 | 1 つの科学データセットにつき最大 32 次元 |
| 最大オブジェクト参照数 | タグタイプごとに 65,535 (16 ビットリファレンス番号) |
| アーキテクチャ | フラットなタグ/リファレンス - データ記述子ブロック内の 12 バイト記述子 (タグ、リファレンス、オフセット、長さ) でオブジェクトを記述 |
| 主な科学的用途 | NASA EOS リモートセンシング (Terra、Aqua 衛星)、気候および大気研究 |
| 後継フォーマット | 1998 年にリリースされた完全な再設計版 HDF5 (.h5 / .hdf5)。HDF4 とのバイナリ互換性なし |
| HDF4 メンテナンス状況 | 2015 年頃よりセキュリティ修正のみ。新機能の追加はなし |
| 変換ツール | h4h5tools (The HDF Group) により HDF4 ファイルを HDF5 に変換可能 |
| リリース日 | 1988 (HDF 1.0 by NCSA, University of Illinois) |
| 最新バージョン | HDF4 4.2.16 (2022); HDF4 maintenance-only since HDF5 became primary |
| オープンスタンダード | はい · ロイヤリティフリー |
| 仕様書 | support.hdfgroup.org |
HDF の変換
コミュニティ Q&A
ユーザーからの質問まだ質問はありません。HDF ファイルについて最初の質問をしてみましょう。