Image OpenEXR (.exr)
Norme StandardOpenEXR (EXR) est le format d'image à plage dynamique élevée (HDR) standard de l'industrie du cinéma et des effets visuels (VFX), prenant en charge des pixels à virgule flottante de 16 bits half et de 32 bits sur un nombre infini de couches.
Inspecter et métadonnées
Les systèmes d'exploitation et les analyseurs de fichiers identifient les fichiers EXR en inspectant la séquence d'octets binaires de tête :
Signature d'en-tête au niveau des octets (Magic Bytes)
Les systèmes d'exploitation et les analyseurs de fichiers identifient les fichiers EXR en inspectant la séquence d'octets binaires de tête :
SIGNATURE HEXADÉCIMALE (DÉCALAGE 0) :
76 2F 31 01REPRÉSENTATION ASCII : v/1.
Normalisation : Norme ouverte de l'Academy Software Foundation (ASWF)
Spécifications techniques
| Architecture de conteneur | Conteneur extensible basé sur des blocs prenant en charge des canaux arbitraires, des parties et des couches de données profondes |
| Compression | PIZ (ondelette), ZIP/ZIPS, RLE, B44/B44A, DWAA/DWAB (DCT avec pertes) et non compressé |
| Boutisme des octets | Petit-boutiste (Intel x86) |
| Espaces colorimétriques | Linéaire ACEScg, ACES2065-1, Linéaire Rec.709, Coordonnées de chromaticité arbitraires |
| Canaux et structure | Noms de canaux arbitraires (R, G, B, A, profondeur Z, Normal, WorldPos, MotionVectors, Cryptomatte) |
| Dimensions maximales | Pratiquement illimité (prend en charge le zoom profond en mosaïque et les limites de canevas multi-gigapixels) |
| Transparence | Canal alpha à virgule flottante complet et tableaux d'échantillons volumétriques de composition profonde |
| Streaming et progressif | La diffusion en flux de blocs de lignes de balayage ou de mosaïques permet des lectures rapides de cadres partiels et un rendu proxy |
Matrice de comparaison technique : EXR vs Concurrents
| Attribut technique | EXR (Actuel) | HDR | TIFF | PNG |
|---|---|---|---|---|
| Plage dynamique | Linéaire demi-flottant 16 bits et flottant 32 bits | Exposant partagé 8 bits (RGBE) | Entier 8/16 bits ou flottant 32 bits | Entier standard 8 bits / 16 bits |
| Passes multicanaux | Canaux et parties nommés arbitraires illimités | RVB uniquement | Prise en charge limitée des calques | RVBA uniquement |
| Adoption par l'industrie | Norme universelle 100 % VFX et 3D Hollywood | Éclairage 3D / panorama historique | Pré-presse et photographie | Norme Web universelle |
| Gestion des couleurs | Intégration native ACES et OpenColorIO | Gamma / linéaire ad hoc | Balises de profil ICC | Balises sRGB / ICC |
Modes de corruption courants et guide de récupération hexadécimale
L'image s'affiche complètement sombre ou saturée avec des taches blanches nucléaires.
Cause racine: Transformation d'affichage linéaire vers sRGB manquante ou attribution incorrecte de l'espace colorimétrique ACES.
Récupération: Appliquez une transformation de courbe de tonalité ACEScg ou linéaire vers sRGB dans la visionneuse HDR File2File.
Analyse de sécurité et vecteurs d'attaque de l'analyseur
Les analyseurs OpenEXR complexes basés sur des blocs doivent valider strictement les définitions de canaux et les limites des mosaïques pour éviter les problèmes de sécurité de la mémoire.
Vecteurs d'attaque connus
- Dépassement d'entier dans le calcul du pas de tampon multicanal dans libopenexr.
- Lecture hors limites du tas lors de la décompression d'un flux compressé PIZ ou DWAA.
- Déni de service par récurrence d'en-tête de bloc multipartie profondément imbriquée.
Bonnes pratiques de défense: Décodez les fichiers EXR à l'aide de compilations WebAssembly en bac à sable sécurisées en mémoire avec des limites strictes de dimensions de mosaïque.
Origines historiques et jalons
Principaux avantages
- La prise en charge native du demi-flottant 16 bits (FP16) et du flottant 32 bits (FP32) préserve une luminance extrême, du plein soleil aux ombres profondes.
- L'architecture multi-canal arbitraire englobe toutes les passes de rendu 3D (beauté, diffuse, spéculaire, profondeur, cryptomatte) dans un seul fichier.
- Les algorithmes de compression de pointe DWAA/DWAB et PIZ permettent une compression incroyable sans perte visuelle.
Limites techniques
- Tailles de fichiers substantielles lors de l'enregistrement de passes de rendu 32 bits 4K/8K multicouches non compressées.
- Charge processeur et mémoire élevée lors de la décompression multicanal dans les logiciels grand public.
- Nécessite des transformations de gestion des couleurs (ACES ou OCIO) pour s'afficher correctement sur les écrans sRGB standard.
Anecdotes techniques
- Industrial Light & Magic a inventé le type de données à virgule flottante « half » de 16 bits spécifiquement pour le format OpenEXR.
- Les quatre premiers octets magiques de chaque fichier EXR sont 0x76 0x2F 0x31 0x01, ce qui se traduit en ASCII par 'v/1\x01'.
- OpenEXR prend en charge les « données profondes » (Deep Data), où un seul pixel stocke plusieurs échantillons de couleur et de profondeur à différentes distances à travers de la fumée et des nuages semi-transparents.
Foire aux questions techniques
Pourquoi OpenEXR est-il le format standard pour les effets visuels à Hollywood ?
Parce qu'il stocke des valeurs lumineuses à virgule flottante de 16 bits et 32 bits avec une plage dynamique infinie, des passes de rendu 3D multicouches et des informations de composition profonde requises pour des effets visuels photoréalistes.
Quelle est la différence entre demi-flottant et flottant dans EXR ?
Le demi-flottant utilise 16 bits par canal de couleur, offrant 30 diaphragmes de plage dynamique pour la moitié de la taille de fichier d'un flottant complet de 32 bits, ce qui en fait le favori de l'industrie pour les rendus de beauté.
Comment puis-je convertir un EXR en PNG ou JPG standard ?
Vous pouvez convertir des fichiers EXR en images PNG ou JPG mappées par tonalité à l'aide de File2File.app directement dans votre navigateur Web.