Qu'est-ce que le format de fichier HDF ?
Les fichiers .hdf stockent des ensembles de données scientifiques dans le conteneur binaire HDF4 (Hierarchical Data Format version 4), développé en 1988 par le National Center for Supercomputing Applications (NCSA) de l'Université de l'Illinois. HDF4 a été conçu pour permettre aux scientifiques et ingénieurs de stocker des données numériques hétérogènes - tableaux multidimensionnels, images matricielles, tableaux et métadonnées - dans un seul fichier portable.
Le format est identifié par la séquence magique de quatre octets 0E 03 13 01. En interne, HDF4 utilise une architecture plate de type « tag-and-reference » : chaque objet de données est décrit par un descripteur de 12 octets (étiquette, numéro de référence, décalage, longueur) dans un bloc de descripteurs de données. La compression est optionnelle par ensemble de données et peut utiliser RLE, SKPHUFF (Huffman modifié) ou DEFLATE (gzip). Une limite stricte de 2 Go par objet de données résulte des champs de décalage signés de 32 bits.
La NASA distribue des produits de télédétection issus des satellites Terra et Aqua au format HDF-EOS basé sur HDF4 en utilisant l'extension .hdf. HDF4 a été remplacé par HDF5 - une refonte complète publiée en 1998 - qui est désormais recommandé pour les nouveaux travaux scientifiques. Les deux formats peuvent porter l'extension .hdf ; les octets magiques permettent de les distinguer de manière fiable (HDF4 : 0E 03 13 01 ; HDF5 : 89 48 44 46).
Sécurité et sûreté
RISQUE : LOWHDF4 est un conteneur de données binaires passif sans code exécutable. Sûr à ouvrir. Les ensembles de données très volumineux peuvent épuiser la RAM - utilisez pyhdf ou MATLAB pour lire des sous-ensembles. Des fichiers HDF4 malformés pourraient déclencher des bogues dans les anciennes versions de libhdf4 ; gardez vos outils à jour. Certaines versions de la bibliothèque HDF4 (avant 4.2.15) présentaient des vulnérabilités de sécurité classées CVE - mettez à jour vers la version 4.2.16+.
Détails du format
en bref- Fichier HDF5 (occasionnellement) - Certains outils enregistrent les données HDF5 avec l'extension .hdf ; utilisez les octets magiques pour distinguer HDF4 (0x0E031301) de HDF5 (0x89HDF...).
Programmes qui ouvrent les fichiers HDF
Détails techniques
spécifications approfondies| Octets magiques | 0E 03 13 01 à l'offset 0 |
| Type de format | Conteneur de données scientifiques binaires (architecture plate étiquette/référence, HDF4) |
| Ordre des octets | Big-endian natif ; chaque objet de données stocke son propre descripteur d'ordre d'octets |
| Compression | Optionnelle par ensemble de données : RLE, SKPHUFF (Huffman modifié) ou DEFLATE (gzip) |
| Types de données | Tableaux multidimensionnels (Scientific Datasets), images matricielles (1-32 bpp), tableaux (Vdata), groupes (Vgroups), annotations |
| Taille max d'objet | ~2 Go par objet de données (limitation du champ de décalage signé 32 bits) |
| Dimensions max | Jusqu'à 32 dimensions par ensemble de données scientifique |
| Références d'objet max | 65 535 par type d'étiquette (numéros de référence 16 bits) |
| Architecture | Plate étiquette/référence - objets décrits par des descripteurs de 12 octets (tag, ref, offset, length) dans des blocs de descripteurs de données |
| Utilisation scientifique primaire | Télédétection NASA EOS (satellites Terra, Aqua) ; recherche climatique et atmosphérique |
| Remplacé par | HDF5 (.h5 / .hdf5), une refonte complète publiée en 1998 ; non compatible au niveau binaire avec HDF4 |
| Statut de maintenance HDF4 | Correctifs de sécurité uniquement depuis environ 2015 ; aucune nouvelle fonctionnalité ajoutée |
| Outil de conversion | h4h5tools (The HDF Group) convertit les fichiers HDF4 en HDF5 |
| Publié | 1988 (HDF 1.0 by NCSA, University of Illinois) |
| Dernière version | HDF4 4.2.16 (2022); HDF4 maintenance-only since HDF5 became primary |
| Standard ouvert | Oui · libre de droits |
| Spécification | support.hdfgroup.org |
Conversions HDF
Q&R de la communauté
posées par les utilisateursPas encore de questions - soyez le premier à poser une question sur les fichiers HDF.