Radiance HDR (.hdr)
Radiance StandardRadiance RGBE (HDR) on põhiline kõrge dünaamilise ulatuse vorming, mis töötati välja Radiance sünteetilise pildisüsteemi jaoks ja salvestab fotomeetriliselt täpseid heledusväärtusi jagatud 8-bitise eksponendi abil.
Kontrolli ja metaandmed
Operatsioonisüsteemid ja failianalüsaatorid tuvastavad HDR faile, kontrollides algset binaarset baidijada:
Baidi-taseme päise allkiri (maagilised baidid)
Operatsioonisüsteemid ja failianalüsaatorid tuvastavad HDR faile, kontrollides algset binaarset baidijada:
HEX-ALLKIRI (NIHE 0):
23 3F 52 41 44 49 41 4E 43 45 0AASCII-ESITUS: #?RADIANCE\n
Standardiseerimine: Radiance Synthetic Imaging System Standard
Tehnilised andmed
| Konteineri arhitektuur | ASCII header ending with empty line followed by resolution string and binary RLE scanlines |
| Tihendamine | Adaptive adaptive run-length encoding (RLE) applied per-channel scanline |
| Baitide järjekord (Endianness) | Big-Endian / Network byte order |
| Värviruumid | Linear Rec.709 RGB with CIE chromaticity coordinates |
| Kanalid ja struktuur | RGBE: Red, Green, Blue (8-bit mantissas) + shared 8-bit Exponent |
| Max mõõtmed | Practically unlimited (32-bit unsigned resolution strings) |
| Läbipaistvus | None (physical radiant luminance measurements) |
| Voogedastus ja progressiivsus | Sequential scanline-by-scanline streaming playback |
Tehniline võrdlusmaatriks: HDR vs konkurendid
| Tehniline atribuut | HDR (Praegune) | EXR | TIFF | JPEG |
|---|---|---|---|---|
| Piksli kodeering | 32-bitine RGBE (jagatud 8-bitine eksponent) | 16-bitine pooltäpsus / 32-bitine ujukoma kanali kohta | Täisarvuline 8/16-bitine või 32-bitine ujukoma | 8-bitine gammaga kodeeritud täisarv |
| Esmane kasutusjuht | 360-kraadine keskkonnavalgustus (IBL) | VFX mitmekäiguline komposiitgraafika | Fotograafia ja trükiettevalmistus | Standardsed veebigraafikaelemendid |
| Dünaamilise ulatuse ulatus | 76 suurusjärku (10^-38 kuni 10^38) | Praktiliselt lõputu ujukomavahemik | Võib erineda bitisügavuse järgi | Piiratud 8-bitine SDR-vahemik |
| Toetatud kanalid | Ainult RGB | Piiramatud meelevaldse nimega kanalid | Mitu meelevaldset kanalit | RGB / CMYK |
Levinud riknemisvead ja heksataaste juhend
Pilt kuvab horisontaalseid triibuvööteid üle kogu kaadri laius.
Juurpõhjus: Rikutud pikkuskodeeringu (RLE) loenduri bait skaneerimisrea dekompressioonis.
Taastamine: Taastage kahjustatud skaneerimisrea markerid File2File HDR Repairi abil või teisendage EXR-vormingusse.
Turvaanalüüs ja parsimisründevektorid
Radiance HDR-i dekoodrid pargivad sageli ASCII päiseridu, kasutades piiramatuid stringifunktsioone, mis võivad käivitada pinupuhvri ületäitumisi (stack buffer overflow).
Teadaolevad ründavektorid
- Piiramatud sprintf/sscanf kutsed eraldusvõime stringipäiste lugemisel ('-Y %d +X %d').
- Hapniku lubatud piiridest väljas kirjutamine (out-of-bounds write) vigase RLE skaneerimisrea dekodeerimise ajal.
- Täisarvu ületäitumine sihtkoha 32-bitiste ujukomapuhvrite eraldamisel.
Kaitsealased parimad tavad:
Ajalooline taust ja verstapostid
Peamised eelised
- Kompaktne 32-bitine mälumaht piksli kohta, kattes samas 76 suurusjärku füüsilist valguse heledust.
- Universaalne tugi 3D-renderduspakettides (Blender, Unreal Engine, Unity, Cinema 4D) 360-kraadiste keskkonnakaartide jaoks.
- Lihtne ja vastupidav failistruktuur, mida on lihtne rakendada kõigil tarkvaraplatvormidel.
Tehnilised piirangud ja puudused
- Äärmuslikes pimedates piirkondades võib jagatud 8-bitise eksponendi kodeeringu tõttu esineda kvantiseerimisribastust.
- RGB-kanalid ei saa salvestada negatiivseid numbreid ega meelevaldseid mitmekihilisi passe.
- Mitmekäigulise visuaalsete efektide tootmise jaoks on see suures osas OpenEXR-i poolt välja tõrjutud.
Huvitavaid tehnilisi fakte
- Iga Radiance HDR-fail algab tekstipäisega '#?RADIANCE' või '#?RGBE'.
- Vorming loodi füüsilise arhitektuurse valgustuse simuleerimiseks hoone projekteerimisel enne struktuuride ehitamist.
- Paul Debeveci ikooniline 1997. aasta SIGGRAPH-i teadusartikkel „Recovering High Dynamic Range Radiance Maps from Photographs" kasutas seda vormingut CGI-valgustuse revolutsiooniliseks muutmiseks.
Korduma kippuvad tehnilised küsimused
Milleks kasutatakse 3D-s HDRI-faili?
HDRI-faile (.hdr) kasutatakse 360-kraadiste panoraamkeskkonna kaartidena, et pakkuda 3D-objektidele fotorealistlikku reaalset valgustust, varjusid ja peegeldusi.
Kuidas toimib RGBE 32-bitine kodeering?
Selleks, et mitte salvestada kolme eraldi ujukomaarvu, kasutab RGBE punase, rohelise ja sinise jaoks kumbagi 8 bitti ning lisaks ühist 8-bitist eksponenti, mahutades täieliku HDR-i dünaamilise ulatuse vaid 4 baidile piksli kohta.
Kas ma saan HDR-i JPG-ks teisendada?
Jah. File2File.app saab 32-bitiseid Radiance HDR-faile toonikaardistada ja teisendada standardseteks JPG- või PNG-piltideks otse teie brauseris.