OpenEXR-kép (.exr)
Academy SzabványAz OpenEXR professzionális HDR-képformátum, amelyet film- és vizuáliseffektus-munkafolyamatokban használnak. Támogatja a 16 bites half és 32 bites lebegőpontos képpontokat, valamint több csatornát és réteget.
Vizsgálat és metaadatok
Az operációs rendszerek és a fájlelemzők a kezdő bináris bájtsorozat vizsgálatával azonosítják a(z) EXR fájlokat:
Bájtszintű fejlécaláírás (fájlazonosító bájtok)
Az operációs rendszerek és a fájlelemzők a kezdő bináris bájtsorozat vizsgálatával azonosítják a(z) EXR fájlokat:
HEX ALÁÍRÁS (ELTOLÁS 0):
76 2F 31 01ASCII ÁBRÁZOLÁS: v/1.
Szabványosítás: Academy Software Foundation (ASWF) Open Standard
Műszaki specifikációk
| Konténer architektúra | Bővíthető, darabokra tagolt tárolóformátum, amely tetszőleges csatornákat, részeket és mélyadat-rétegeket támogat |
| Tömörítés | PIZ (wavelet), ZIP/ZIPS, RLE, B44/B44A, DWAA/DWAB (veszteséges DCT) és tömörítetlen |
| Bájtsorrend | kis bájtsorrendű (Intel x86) |
| Színterek | Lineáris ACEScg, ACES2065-1, Lineáris Rec.709, Tetszőleges kromaticitási koordináták |
| Csatornák és struktúra | Tetszőleges csatornanevek (R, G, B, A, Z-mélység, Normal, WorldPos, MotionVectors, Cryptomatte) |
| Max. méretek | Gyakorlatilag korlátlan (csempézett, mély nagyítású megjelenítést és több gigapixeles vászonméretet támogat) |
| Átlátszóság | Teljes lebegőpontos alfa-csatorna és a mély kompozitáláshoz használt térfogati mintatömbök |
| Streaming és progresszív | A soronkénti vagy csempézett darabokban történő adatfolyam-olvasás gyors részleges képkocka-beolvasást és proxy-renderelést tesz lehetővé |
Műszaki összehasonlító mátrix: EXR vs. versenytársak
| Technikai attribútum | EXR (Jelenlegi) | HDR | TIFF | PNG |
|---|---|---|---|---|
| Dinamikatartomány | 16 bites félpontosságú és 32 bites lineáris lebegőpontos | 8 bites közös kitevő (RGBE) | 8/16 bites egész vagy 32 bites lebegőpontos | Szabványos 8 vagy 16 bites egész |
| Többcsatornás passzok | Korlátlan számú, tetszőleges nevű csatorna és képrész | Csak RGB | Korlátozott rétegtámogatás | Csak RGBA |
| Ipari elterjedtség | Széles körben használt a vizuális effektusok és a 3D-s gyártási munkafolyamatok terén | Korábbi 3D-s világítási és panorámaformátum | Nyomdai előkészítés és fotózás | A támogatás programonként eltér. |
| Színkezelés | Natív ACES- és OpenColorIO-integráció | Eseti gamma / lineáris | ICC-profilcímkék | sRGB- és ICC-címkék |
Gyakori sérülési módok és hexadecimális helyreállítási útmutató
A kép teljesen sötét vagy kiégett, vakítóan fehér foltokkal jelenik meg.
Kiváltó ok: Hiányzó lineáris-sRGB megjelenítési transzformáció vagy helytelen ACES színtér-hozzárendelés.
Helyreállítás: Alkalmazzon ACEScg vagy Linear-to-sRGB tónusgörbe-transzformációt a File2File.app HDR Viewerben.
Biztonsági elemzés és elemző (parser) támadási vektorok
A komplex, blokkalapú OpenEXR-elemzőknek szigorúan ellenőrizniük kell a csatornadefiníciókat és a csempehatárokat a memóriabiztonsági problémák elkerülése érdekében.
Ismert támadási vektorok
- Egészérték-túlcsordulás a többcsatornás pufferlépés-számításban a libopenexr könyvtárban.
- Halmon kívüli olvasás PIZ vagy DWAA tömörített adatfolyam dekompressziója során.
- Szolgáltatásmegtagadás (DoS) a mélyen egymásba ágyazott, többrészes blokkfejléc-rekurzió miatt.
Ajánlott védekezési módszerek: Dekódolja az EXR-fájlokat memóriabiztos, homokozóban futó WebAssembly-verziókkal, szigorú csempeméret-korlátokkal.
Történeti háttér és mérföldkövek
Főbb előnyök
- A natív 16 bites félpontos (FP16) és 32 bites lebegőpontos (FP32) támogatás megőrzi az extrém fényességet a közvetlen naptól a sötét árnyékokig.
- A tetszőleges csatornaarchitektúra egyetlen fájlba foglalja az összes 3D-s renderelési passzt (beauty, diffuse, specular, depth, cryptomatte).
- A DWAA és a DWAB veszteséges kodekek, amelyeket vizuálisan hatékony képtömörítésre terveztek; a látható eltérések a beállításoktól és a tartalomtól függően lehetnek alig észrevehetők vagy feltűnők.
Technikai korlátok és hátrányok
- Jelentős fájlméret tömörítetlen, többrétegű 4K/8K 32 bites renderelési menetek mentésekor.
- Magas CPU- és memóriaterhelés a többcsatornás kitömörítés során a felhasználói szoftverekben.
- Színkezelési transzformációkat (ACES vagy OCIO) igényel a helyes megjelenítéshez a szokványos sRGB-kijelzőkön.
Érdekes technikai tudnivalók
- Az Industrial Light & Magic kifejezetten az OpenEXR formátumhoz találta fel a 16 bites „half” lebegőpontos adattípust.
- Minden EXR fájl első négy varázsbájtja a 0x76 0x2F 0x31 0x01, ami ASCII kódolásban 'v/1\x01'-nek felel meg.
- Az OpenEXR támogatja a „Deep Data” (mély adatok) technológiát, ahol egyetlen képpont több szín- és mélységmintát tárol különböző távolságokban a félig áttetsző füstön és felhőkön keresztül.
Gyakran Ismételt Műszaki Kérdések
Miért használják az OpenEXR-t egyes vizuáliseffektus-munkafolyamatokban?
Megőrzi a nagy pontosságú HDR-képadatokat, és több csatornát, részt és mélységi adatot támogat a kompozitáláshoz.
Mi a különbség a half float és a float között az EXR-ben?
A half float csatornánként 16 bitet használ, ami 30 fényértéknyi dinamikatartományt kínál a teljes 32 bites float fájlméret feléért, így ez a szépségrenderelések (beauty render) kedvenc iparági formátuma.
Hogyan alakíthatok át EXR-t szabványos PNG- vagy JPG-formátumba?
Az EXR-fájlok tónusleképezett PNG- vagy JPG-képekké alakíthatók a File2File.app segítségével, közvetlenül a webböngészőben.