Radiance HDR (.hdr)
Radiance StandardnoRadiance RGBE (HDR) je temeljni format visokog dinamičkog opsega razvijen za Radiance sintetički sistem za snimanje, koji čuva fotometrijski tačne vrednosti osvetljenosti pomoću deljenog 8-bitnog eksponenta.
Pregledaj i metapodaci
Operativni sistemi i analizatori datoteka identifikuju HDR datoteke proverom početnog binarnog niza bajtova:
Potpis zaglavlja na nivou bajtova (Magic Bytes)
Operativni sistemi i analizatori datoteka identifikuju HDR datoteke proverom početnog binarnog niza bajtova:
HEX POTPIS (OFFSET 0):
23 3F 52 41 44 49 41 4E 43 45 0AASCII REPREZENTACIJA: #?RADIANCE\n
Standardizacija: Radiance Synthetic Imaging System Standard
Tehničke specifikacije
| Arhitektura kontejnera | ASCII header ending with empty line followed by resolution string and binary RLE scanlines |
| Kompresija | Adaptive adaptive run-length encoding (RLE) applied per-channel scanline |
| Bajtni redosled (Endianness) | Big-Endian / Network byte order |
| Prostori boja | Linear Rec.709 RGB with CIE chromaticity coordinates |
| Kanali i struktura | RGBE: Red, Green, Blue (8-bit mantissas) + shared 8-bit Exponent |
| Maksimalne dimenzije | Practically unlimited (32-bit unsigned resolution strings) |
| Transparentnost | None (physical radiant luminance measurements) |
| Strimovanje i progresivno učitavanje | Sequential scanline-by-scanline streaming playback |
Tehnička matrica poređenja: HDR vs Konkurenti
| Tehnički atribut | HDR (Trenutno) | EXR | TIFF | JPEG |
|---|---|---|---|---|
| Kodiranje piksela | 32-bitni RGBE (deljeni 8-bitni eksponent) | 16-bitni half / 32-bitni float po kanalu | Celobrojni 8/16-bitni ili 32-bitni float | 8-bitni celi broj kodiran gamom |
| Primarna namena | Osvetljenje okruženja od 360 stepeni (IBL) | VFX višeslojni kompoziting | Fotografija i priprema za štampu | Standardna veb grafika |
| Opseg dinamičkog opsega | 76 redova veličine (10^-38 do 10^38) | Praktično beskonačan opseg pokretnog zareza | Varira u zavisnosti od dubine bita | Ograničeni 8-bitni SDR opseg |
| Podržani kanali | Samo RGB | Neograničeni proizvoljni kanali | Više proizvoljnih kanala | RGB / CMYK |
Uobičajeni režimi oštećenja i vodič za heksadecimalni oporavak
Slika prikazuje horizontalne trake duž cele širine kadra.
Osnovni uzrok: Oštećen bajt brojača dužine ponavljanja (RLE) tokom dekompresije linije skeniranja.
Oporavak: Rekonstruišite oštećene oznake linija skeniranja pomoću alata File2File HDR Repair ili konvertujte u EXR.
Bezbednosna analiza i vektori napada parsera
Radiance HDR dekoderi često parsiraju linije ASCII zaglavlja koristeći funkcije za niske koje nemaju ograničenja dužine, što može izazvati prelivanje bafera na steku (stack buffer overflow).
Poznati vektori napada
- Neograničeni pozivi funkcija sprintf/sscanf prilikom čitanja zaglavlja sa nizom rezolucije ('-Y %d +X %d').
- Upis van opsega heap memorije tokom dekodiranja nepravilno formatirane RLE linije skeniranja.
- Prelivanje celobrojne vrednosti prilikom alokacije odredišnih bafera sa 32-bitnim pokretnim zarezom.
Defanzivne najbolje prakse:
Istorijat i prekretnice
Ključne prednosti
- Kompaktan memorijski otisak od 32 bita po pikselu uz obuhvatanje 76 redova veličine fizičke svetlosne luminance.
- Univerzalna podrška u paketima za 3D renderovanje (Blender, Unreal Engine, Unity, Cinema 4D) za panoramske mape okruženja od 360 stepeni.
- Jednostavna, robusna struktura datoteke koja se lako implementira na svim softverskim platformama.
Tehnička ograničenja i nedostaci
- U ekstremno tamnim regionima može doći do pojave trakaste kvantizacije (banding) zbog kodiranja sa deljenim 8-bitnim eksponentom.
- RGB kanali ne mogu da čuvaju negativne brojeve ili proizvoljne višeslojne prolaze.
- Uglavnom ga je potisnuo OpenEXR za produkciju vizuelnih efekata sa više prolaza.
Zanimljivosti
- Svaka Radiance HDR datoteka počinje tekstualnim zaglavljem '#?RADIANCE' ili '#?RGBE'.
- Format je kreiran radi simulacije fizičkog arhitektonskog osvetljenja u dizajnu zgrada pre nego što su same strukture izgrađene.
- Kultni rad Paula Debevca iz 1997. godine objavljen na SIGGRAPH-u pod nazivom 'Recovering High Dynamic Range Radiance Maps from Photographs' koristio je ovaj format da revolucioniše CGI osvetljenje.
Često postavljana tehnička pitanja
Za šta se koristi HDRI datoteka u 3D-u?
HDRI (.hdr) datoteke se koriste kao panoramske mape okruženja od 360 stepeni kako bi obezbedile fotorealistično osvetljenje iz stvarnog sveta, senke i refleksije na 3D objektima.
Kako funkcioniše RGBE 32-bitno kodiranje?
Umesto čuvanja tri odvojena broja sa pokretnim zarezom, RGBE koristi po 8 bita za crvenu, zelenu i plavu boju, plus deljeni 8-bitni eksponent, čime se pun HDR dinamički opseg pakuje u samo 4 bajta po pikselu.
Mogu li da konvertujem HDR u JPG?
Da. File2File.app može da izvrši mapiranje tona i konvertuje 32-bitne Radiance HDR datoteke u standardne JPG ili PNG slike direktno u vašem pretraživaču.