Radiance HDR (.hdr)

Radiance Štandard

Radiance RGBE (HDR) je základný formát s vysokým dynamickým rozsahom vyvinutý pre syntetický zobrazovací systém Radiance, ktorý ukladá fotometricky presné hodnoty svietivosti pomocou zdieľaného 8-bitového exponentu.

Preskúmať a metadáta

Operačné systémy a analyzátory súborov identifikujú súbory HDR kontrolou počiatočnej binárnej bajtovej sekvencie:

Vyberte alebo presuňte súbory sem

100 % súkromná konverzia v prehliadači - súbory nikdy neopustia vaše zariadenie

alebo prilepiť Ctrl+V
Záruka súkromia s nulovým prenosom do siete: 0 bajtov odovzdaných na externé servery. Všetko spracovanie prebehlo lokálne v pieskovisku vášho prehliadača.

Podpis hlavičky na úrovni bajtov (Magic Bytes)

Operačné systémy a analyzátory súborov identifikujú súbory HDR kontrolou počiatočnej binárnej bajtovej sekvencie:

HEXADECIMÁLNY PODPIS (OFFSET 0):

23 3F 52 41 44 49 41 4E 43 45 0A

ASCII REPREZENTÁCIA: #?RADIANCE\n

Štandardizácia: Radiance Synthetic Imaging System Standard

Technické špecifikácie

Architektúra kontajneraASCII header ending with empty line followed by resolution string and binary RLE scanlines
KompresiaAdaptive adaptive run-length encoding (RLE) applied per-channel scanline
Poradie bajtov (Endianness)Big-Endian / Network byte order
Farebné priestoryLinear Rec.709 RGB with CIE chromaticity coordinates
Kanály a štruktúraRGBE: Red, Green, Blue (8-bit mantissas) + shared 8-bit Exponent
Max. rozmeryPractically unlimited (32-bit unsigned resolution strings)
PriehľadnosťNone (physical radiant luminance measurements)
Streamovanie a postupné načítavanieSequential scanline-by-scanline streaming playback

Technická porovnávacia matica: HDR vs konkurenti

Technický atribútHDR (Aktuálne)EXRTIFFJPEG
Kódovanie pixelov32-bit RGBE (zdieľaný 8-bitový exponent)16-bit half / 32-bit float na kanálCelozrnné 8/16-bit alebo 32-bit float8-bitové celé číslo kódované s gamou
Hlavné použitie360-stupňové osvetlenie prostredia (IBL)VFX viac-pasové skladanie (kompoziting)Fotografia a pred-tlačŠtandardná webová grafika
Rozsah dynamického rozsahu76 rádov (10^-38 až 10^38)Prakticky nekonečný rozsah s plávacou rádovou čiarkouLíši sa podľa farebnej hĺbkyObmedzený 8-bitový SDR rozsah
Podporované kanályIba RGBNeobmedzené ľubovoľné kanályViacero ľubovoľných kanálovRGB / CMYK

Bežné režimy poškodenia a príručka na obnovu v hexadecimálnom kóde

Obrázok zobrazuje vodorovné pruhové pásy cez celú šírku snímky.

Hlavná príčina: Poškodený bajt počtu dĺžky behu (RLE) pri dekompresii RLE riadkov skenovania.

Obnova: Obnovte poškodené značky riadkov skenovania pomocou nástroja File2File HDR Repair alebo ich konvertujte na EXR.

Bezpečnostná analýza a vektory útokov na parser

Dekodéry Radiance HDR často analyzujú riadky hlavičky ASCII pomocou neohraničených reťazcových rutín, ktoré môžu spustiť pretečenie vyrovnávacej pamäte zásobníka (stack buffer overflow).

Známe vektory útokov

  • Neobmedzené volania sprintf/sscanf pri čítaní hlavičiek reťazcov rozlíšenia ('-Y %d +X %d').
  • Zápis mimo vyhradenej pamäte haldy (heap out-of-bounds write) počas dekódovania nesprávne formátovaného RLE riadku.
  • Pretečenie celého čísla pri alokácii cieľových 32-bitových vyrovnávacích pamätí s plávacou rádovou čiarkou.

Najlepšie obranné postupy:

Historický pôvod a míľniky

2000Paul Debevec popularizuje osvetlenie založené na HDR obrazoch (IBL) v počítačovej grafike pomocou súborov Radiance .hdr.
1997Štandardizácia adaptívneho kódovania dĺžky behu riadkov (RLE) na zmenšenie veľkosti súborov.
1989Greg Ward vynájde 32-bitové kódovanie pixelov RGBE a formát .hdr v Lawrence Berkeley National Laboratory.

Kľúčové výhody a prednosti

  • Kompaktná pamäťová stopa 32 bitov na pixel a zároveň pokrytie 76 rádov fyzickej svietivosti svetla.
  • Univerzálna podpora v 3D renderovacích balíkoch (Blender, Unreal Engine, Unity, Cinema 4D) pre 360-stupňové mapy prostredia.
  • Jednoduchá a robustná štruktúra súborov, ktorú možno ľahko implementovať na všetkých softvérových platformách.

Technické obmedzenia a nevýhody

  • V extrémnych tmavých oblastiach môže dochádzať k farebným prechodom (banding) v dôsledku kódovania so zdieľaným 8-bitovým exponentom.
  • Kanály RGB nemôžu ukladat záporné čísla ani ľubovoľné viacvrstvové pasy.
  • Vo výrobe vizuálnych efektov pre viaceré pasy ho do veľkej miery nahradil formát OpenEXR.

Zaujímavé technické drobnosti

  • Každý súbor Radiance HDR začína textovou hlavičkou '#?RADIANCE' alebo '#?RGBE'.
  • Formát bol vytvorený na simuláciu fyzického architektonického osvetlenia pri návrhu budov ešte pred ich výstavbou.
  • Kultový článok Paula Debeveca zo SIGGRAPH 1997 'Recovering High Dynamic Range Radiance Maps from Photographs' použite tento formát na revolúciu v CGI osvetlení.

Často kladené technické otázky

Na čo sa v 3D grafike používa súbor HDRI?

Súbory HDRI (.hdr) sa používajú ako 360-stupňové panoramatické mapy prostredia na zaistenie fotorealistického osvetlenia reálneho sveta, tieňov a odrazov na 3D objektoch.

Ako funguje 32-bitové kódovanie RGBE?

Namiesto ukladania troch samostatných čísel s pohyblivou rádovou čiarkou používa RGBE 8 bitov pre červenú, zelenú a modrú zložku plus spoločný 8-bitový exponent, čím sa zmestí plný dynamický rozsah HDR do iba 4 bajtov na pixel.

Môžem konvertovať HDR do formátu JPG?

Áno. File2File.app dokáže upraviť tóny a konvertovať 32-bitové súbory Radiance HDR na štandardné obrázky JPG alebo PNG priamo vo vašom prehliadači.