Radiance HDR (.hdr)
Radiance SzabványA Radiance RGBE (HDR) a Radiance szintetikus képalkotó rendszer számára kifejlesztett alapvető nagy dinamikatartományú formátum, amely fotometriai szempontból pontos fényességértékeket tárol egy megosztott 8 bites exponens segítségével.
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) HDR fájlokat:
Bájt-szintű fejléc aláírás (Magic Bytes)
Az operációs rendszerek és a fájlelemzők a kezdő bináris bájtsorozat vizsgálatával azonosítják a(z) HDR fájlokat:
HEX ALÁÍRÁS (ELTOLÁS 0):
23 3F 52 41 44 49 41 4E 43 45 0AASCII REPREZENTÁCIÓ: #?RADIANCE\n
Szabványosítás: Radiance Synthetic Imaging System Standard
Műszaki specifikációk
| Konténer architektúra | ASCII header ending with empty line followed by resolution string and binary RLE scanlines |
| Tömörítés | Adaptive adaptive run-length encoding (RLE) applied per-channel scanline |
| Bájtsorrend | Big-Endian / Network byte order |
| Színterek | Linear Rec.709 RGB with CIE chromaticity coordinates |
| Csatornák és struktúra | RGBE: Red, Green, Blue (8-bit mantissas) + shared 8-bit Exponent |
| Max. méretek | Practically unlimited (32-bit unsigned resolution strings) |
| Átlátszóság | None (physical radiant luminance measurements) |
| Streaming és progresszív | Sequential scanline-by-scanline streaming playback |
Műszaki összehasonlító mátrix: HDR vs Versenytársak
| Technikai attribútum | HDR (Jelenlegi) | EXR | TIFF | JPEG |
|---|---|---|---|---|
| Képpont-kódolás | 32 bites RGBE (megosztott 8 bites exponens) | 16 bites félpontos / 32 bites lebegőpontos csatornánként | Egész 8/16 bites vagy 32 bites lebegőpontos | 8 bites gammázott egész |
| Elsődleges felhasználási terület | 360 fokos környezeti világítás (IBL) | VFX többrészes kompozíció | Fotózás és nyomdai előkészítés | Standard webes grafika |
| Dinamikatartomány | 76 nagyságrend (10^-38 - 10^38) | Gyakorlatilag végtelen lebegőpontos tartomány | Bitenként változó | Korlátozott 8 bites SDR tartomány |
| Támogatott csatornák | Csak RGB | Korlátlan tetszőleges csatorna | Több tetszőleges csatorna | RGB / CMYK |
Gyakori sérülési módok és hexadecimális helyreállítási útmutató
A kép vízszintes csíkokat jelenít meg a teljes képmező szélességében.
Kiváltó ok: Sérült futás hosszúságú (RLE) számlálóbájt a pásztázási sor RLE dekompressziójában.
Helyreállítás: Állítsa helyre a sérült sorjelölőket a File2File HDR Repair segítségével, vagy konvertálja EXR formátumba.
Biztonsági elemzés és elemző (parser) támadási vektorok
A Radiance HDR dekódolók gyakran korlátlan karakterlánc-rutinokkal elemzik az ASCII fejlécsorokat, ami verem-puffer túlcsordulást okozhat.
Ismert támadási vektorok
- Korlátlan sprintf/sscanf hívások felbontás-karakterlánc fejlécek olvasásakor ('-Y %d +X %d').
- Halom túlcímzéses írás hibás RLE pásztázási sor dekódolása során.
- Egész túlcsordulás a cél 32 bites lebegőpontos pufferek lefoglalásakor.
Védekező Legjobb Gyakorlatok:
Történeti háttér és mérföldkövek
Főbb előnyök
- Kompakt, 32 bites memóriafogyasztás képpontonként, miközben átfogja a fizikai fényerősség 76 nagyságrendjét.
- Univerzális támogatás a 3D renderelő csomagokban (Blender, Unreal Engine, Unity, Cinema 4D) a 360 fokos környezeti térképekhez.
- Egyszerű, robusztus fájlstruktúra, amely minden szoftverplatformon könnyen megvalósítható.
Technikai korlátok és hátrányok
- Kvantálási sávosodás léphet fel az extrém sötét régiókban a megosztott 8 bites exponenses kódolás miatt.
- Az RGB csatornák nem tudnak negatív számokat vagy tetszőleges többrétegű adatokat tárolni.
- A többrészes vizuális effektusok gyártása terén nagyrészt felváltotta az OpenEXR.
Érdekes technikai tudnivalók
- Minden Radiance HDR fájl a '#?RADIANCE' vagy '#?RGBE' szöveges fejléccel kezdődik.
- A formátumot az építészeti világítás fizikai szimulálására hozták létre az épületek megépítése előtt.
- Paul Debevec ikonikus 1997-es SIGGRAPH tanulmánya, a „Recovering High Dynamic Range Radiance Maps from Photographs" ezt a formátumot használta a CGI világítás forradalmasítására.
Gyakran Ismételt Műszaki Kérdések
Mire használatos egy HDRI fájl a 3D-ben?
A HDRI (.hdr) fájlokat 360 fokos panoráma környezeti térképként használják, hogy fotorealisztikus valós világítási, árnyékolási és tükröződési hatásokat biztosítsanak a 3D objektumokon.
Hogyan működik az RGBE 32 bites kódolás?
Ahelyett, hogy három különálló lebegőpontos számot tárolna, az RGBE 8-8 bitet használ a vörös, zöld és kék csatornákhoz, valamint egy közös 8 bites exponentes, így a teljes HDR dinamikatartomány mindössze 4 bájtra sűríthető pixelenként.
Átalakíthatok HDR-t JPG-be?
Igen. A File2File.app képes tónusleképezni és standard JPG vagy PNG képekké konvertálni a 32 bites Radiance HDR fájlokat közvetlenül a böngésződben.