Immagine OpenEXR (.exr)

Academy Standard

OpenEXR (EXR) este formatul standard de imagini cu gamă dinamică ridicată (HDR) din industria cinematografică și a efectelor vizuale (VFX), care acceptă pixeli în virgulă mobilă pe 16 biți (half) și 32 biți pe straturi infinite.

Inspectează și Metadate

Sistemele de operare și analizatoarele de fișiere identifică fișierele EXR prin inspectarea secvenței binare inițiale:

Selectează sau plasează fișierele aici

Conversie 100% privată în browser - fișierele nu părăsesc niciodată dispozitivul tău

sau lipește Ctrl+V
Garanție de confidențialitate cu zero transmisie în rețea: 0 octeți încărcați pe servere externe. Toată procesarea a avut loc local în sandbox-ul browserului tău.

Semnătura antetului la nivel de octet (Magic Bytes)

Sistemele de operare și analizatoarele de fișiere identifică fișierele EXR prin inspectarea secvenței binare inițiale:

SEMNĂTURĂ HEX (OFFSET 0):

76 2F 31 01

REPREZENTARE ASCII: v/1.

Standardizare: Academy Software Foundation (ASWF) Open Standard

Specificații tehnice

Arhitectură containerExtensible chunk-based container supporting arbitrary channels, parts, and deep data layers
CompresiePIZ (wavelet), ZIP/ZIPS, RLE, B44/B44A, DWAA/DWAB (lossy DCT), and uncompressed
Endianitatea octețilorLittle-Endian (Intel x86)
Spații de culoareLinear ACEScg, ACES2065-1, Linear Rec.709, Arbitrary chromaticity coordinates
Canale și structurăArbitrary channel names (R, G, B, A, Z-depth, Normal, WorldPos, MotionVectors, Cryptomatte)
Dimensiuni maximePractically unlimited (supports tiled deep zoom and multi-gigapixel canvas bounds)
TransparențăFull floating-point alpha channel and deep-compositing volumetric sample arrays
Streaming și progresivScanline or tiled chunk streaming enables fast partial-frame reads and proxy rendering

Matrice de comparație tehnică: EXR vs Competitori

Atribut tehnicEXR (Curent)HDRTIFFPNG
Gamă dinamică16-bit half & 32-bit float liniarExponent partajat pe 8 biți (RGBE)Întreg 8/16-bit sau float 32-bitÎntreg standard 8-bit / 16-bit
Pasaje cu canale multipleCanale și părți arbitrare nelimitateDoar RGBSuport limitat pentru straturiDoar RGBA
Adopție în industrieStandard universal 100% pentru VFX & 3D la HollywoodIluminare 3D / panoramă vechePrepresă și fotografieStandard web universal
Managementul culorilorIntegrare nativă ACES & OpenColorIOGamă / liniar ad-hocEtichete profil ICCEtichete sRGB / ICC

Moduri comune de corupție și ghid de recuperare hexazecimală

Imaginea se afișează complet întunecată sau arsă, cu pete albe nucleare.

Cauză principală: Lipsește transformarea de afișare liniar-la-sRGB sau este atribuit un spațiu de culoare ACES incorect.

Recuperare: Aplicați o transformare a curbei de ton ACEScg sau Linear-to-sRGB în File2File HDR Viewer.

Analiză de securitate și vectori de atac asupra parserului

Analizoarele complexe OpenEXR bazate pe fragmente (chunk) trebuie să valideze strict definițiile canalelor și limitele de dale (tile) pentru a preveni problemele de securitate a memoriei.

Vectori de atac cunoscuți

  • Depășire de întreg (integer overflow) în calculul pasului bufferului cu canale multiple în libopenexr.
  • Citire în afara limitelor heap-ului în timpul decomprimării fluxului comprimat PIZ sau DWAA.
  • Refuz al serviciului (DoS) prin recursivitate adânc imbricată a antetului de fragmente multi-part.

Cele mai bune practici de securitate:

Origini istorice și repere

2020Lansarea OpenEXR 3.0 sub egida Academy Software Foundation, modernizând suportul pentru fire de execuție multiple (multi-threading).
2013OpenEXR 2.0 introduce compozitingul Deep Data și structuri de imagini multi-part.
2003Industrial Light & Magic deschide codul sursă OpenEXR sub o licență BSD modificată, după utilizarea sa în filmul Harry Potter.
1999Creat de inginerii ILM Florian Kainz, Rod Bogart și Drew Hess pentru a înlocui formatele Cineon/DPX pe 8 biți.

Avantaje cheie și beneficii

  • Suportul nativ pentru 16-bit half-float (FP16) și 32-bit float (FP32) păstrează o luminozitate extremă, de la lumina directă a soarelui până la umbre întunecate.
  • Arhitectura arbitrară cu canale multiple încapsulează toate trecerile de randare 3D (beauty, diffuse, specular, depth, cryptomatte) într-un singur fișier.
  • Algoritmii de compresie DWAA/DWAB și PIZ, lideri în industrie, obțin o compresie incredibilă fără pierderi vizuale.

Limitări tehnice și dezavantaje

  • Dimensiuni substanțiale ale fișierelor la salvarea trecerilor de randare 32-bit 4K/8K necomprimate și multi-strat.
  • Consum ridicat de CPU și memorie în timpul decomprimării cu canale multiple în software-ul de consum.
  • Necesită transformări de management al culorilor (ACES sau OCIO) pentru a se randa corect pe ecranele standard sRGB.

Curiozități tehnice interesante

  • Industrial Light & Magic a inventat tipul de date în virgulă mobilă de 16 biți „half" special pentru formatul OpenEXR.
  • Primii patru octeți magici ai fiecărui fișier EXR sunt 0x76 0x2F 0x31 0x01, ceea ce înseamnă în ASCII „v/1\x01".
  • OpenEXR acceptă „Deep Data", unde un singur pixel stochează mai multe eșantioane de culoare și adâncime la distanțe diferite prin fum și nori semitransparenți.

Întrebări tehnice frecvente

De ce este OpenEXR formatul standard pentru VFX de la Hollywood?

Deoarece stochează valori de lumină în virgulă mobilă pe 16 biți și 32 biți cu o gamă dinamică infinită, treceri de randare 3D multi-strat și informații de compozitare profundă necesare pentru efecte vizuale fotorealiste.

Care este diferența dintre half float și float în EXR?

Half float utilizează 16 biți per canal de culoare, oferind 30 de trepte (stops) de gamă dinamică la jumătate din dimensiunea fișierului unui float complet pe 32 biți, făcându-l favoritul industriei pentru randări de tip beauty.

Cum pot converti EXR în PNG sau JPG standard?

Poți converti fișiere EXR în imagini PNG sau JPG cu mapare de tonuri folosind File2File.app direct în browserul tău web.