Radiance HDR (.hdr)
Radiance StandardiRadiance RGBE (HDR) on perinteinen korkean dynaamisen alueen muoto, joka on kehitetty Radiance-synteettiselle kuvantamisjärjestelmälle. Se tallentaa valometrisesti tarkkoja luminanssiarvoja käyttämällä jaettua 8-bittistä eksponenttia.
Tarkastele tiedostoa ja sen metatietoja
Käyttöjärjestelmät ja tiedostoanalyysaattorit tunnistavat HDR-tiedostot tarkistamalla tiedoston alun binäärisarjan:
Otsaketunniste tavutasolla (tunnistetavut)
Käyttöjärjestelmät ja tiedostoanalyysaattorit tunnistavat HDR-tiedostot tarkistamalla tiedoston alun binäärisarjan:
HEKSADEKSIMAALINEN TUNNISTE (SIJAINTI 0):
23 3F 52 41 44 49 41 4E 43 45 0AASCII-ESITYSTAPA: #?RADIANCE\n
Standardointi: Radiance Synthetic Imaging System Standard
Tekniset tiedot
| Säiliöarkkitehtuuri | ASCII-otsake, jota seuraa tyhjä rivi, resoluutiomerkkijono ja binääriset RLE-skannausrivit |
| Pakkaus | Mukautuva RLE-koodaus kunkin kanavan skannausriville |
| Tavujärjestys (Endianness) | Big-Endian (verkkotavujärjestys) |
| Väriavaruudet | Lineaarinen Rec.709 RGB CIE-värikoordinaateilla |
| Kanavat ja rakenne | RGBE: punainen, vihreä ja sininen (8-bittiset mantissat) sekä yhteinen 8-bittinen eksponentti |
| Suurimmat mitat | Käytännössä rajoittamaton (32-bittiset etumerkittömät resoluutiomerkkijonot) |
| Läpinäkyvyys | Ei läpinäkyvyyttä (fyysisen säteilykirkkauden mittaukset) |
| Suoratoisto ja progressiivinen lataus | Tietovirran peräkkäinen toisto skannausrivi kerrallaan |
Tekninen vertailumatriisi: HDR vs. kilpailijat
| Tekninen attribuutti | HDR (Nykyinen) | EXR | TIFF | JPEG |
|---|---|---|---|---|
| Pikselikoodaus | 32-bittinen RGBE (yhteinen 8-bittinen eksponentti) | 16-bittinen half tai 32-bittinen liukuluku kanavaa kohti | 8- tai 16-bittinen kokonaisluku tai 32-bittinen liukuluku | 8-bittinen gammakoodattu kokonaisluku |
| Ensisijainen käyttötarkoitus | 360 asteen ympäristövalaistus (IBL) | VFX-monipassikompositointi | Valokuvaus ja prepress | Standardi verkkografiikka |
| Dynaamisen alueen laajuus | 76 suuruusluokkaa (10^-38 - 10^38) | Käytännössä rajaton liukulukualue | Vaihtelee bittisyvyyden mukaan | Rajallinen 8-bittinen SDR-alue |
| Tuetut kanavat | Vain RGB | Rajoittamattomat mielivaltaiset kanavat | Useita mielivaltaisia kanavia | RGB / CMYK |
Yleiset vioittumistavat ja heksadesimaalinen palautusopas
Kuvassa näkyy vaakasuuntaisia raitakaistoja koko kehyksen leveydeltä.
Perussyy: Vioittunut juoksupituuden laskentatavu skannausrivin RLE-purussa.
Korjaus: Korjaa vioittuneet skannausrivimerkinnät File2File.app HDR Repairilla tai muunna EXR-muotoon.
Tietoturva-analyysi ja tiedostojäsentimien hyökkäysvektorit
Radiance HDR -dekooderit jäsentävät usein ASCII-otsikkorivejä käyttämällä rajoittamattomia merkkijonorutiineja, jotka voivat laukaista pinon puskurin ylivuotoja.
Tunnetut hyökkäysvektorit
- Rajoittamattomat sprintf/sscanf-kutsut luettaessa resoluutiomerkkijonon otsikoita ('-Y %d +X %d').
- Kekomuistin ulkopuolinen kirjoitus virheellistä RLE-skannausriviä purettaessa
- Kokonaisluvun ylivuoto varattaessa kohdepuskureita 32-bittisille liukuluvuille.
Tietoturvan parhaat käytännöt: Tarkista ASCII-otsakkeen pituus ja skannausrivien mitat ennen kuvapuskurien varaamista
Historia ja virstanpylväät
Tärkeimmät edut
- Kompakti 32-bittinen muistijalanjälki pikseliä kohden, samalla kun se kattaa 76 suuruusluokkaa fyysistä valon luminanssia.
- Monet 3D-renderöintiohjelmistot tukevat sitä ympäristökarttojen tallennusmuotona, mutta tuki riippuu sovelluksesta.
- Suhteellisen yksinkertainen tiedostorakenne, jonka voi toteuttaa Radiance HDR:ää tukeva ohjelmisto.
Tekniset rajoitukset
- Kvantisointijuovaisuutta voi esiintyä äärimmäisen tummilla alueilla jaetun 8-bittisen eksponenttikoodauksen vuoksi.
- RGB-kanavat eivät voi tallentaa negatiivisia lukuja tai mielivaltaisia monipassitasoja.
- OpenEXR on syrjäyttänyt tämän suurelta osin monipassisten visuaalisten tehosteiden tuotannossa.
Mielenkiintoisia teknisiä faktoja
- Jokainen Radiance HDR -tiedosto alkaa tekstitunnisteella '#?RADIANCE' tai '#?RGBE'.
- Muoto luotiin simuloimaan fyysistä arkkitehtonista valaistusta rakennussuunnittelussa ennen rakenteiden pystyttämistä.
- Paul Debevecin ikoninen vuoden 1997 SIGGRAPH-julkaisu 'Recovering High Dynamic Range Radiance Maps from Photographs' käytti tätä muotoa mullistaakseen CGI-valaistuksen.
Usein kysytyt tekniset kysymykset
Mihin HDRI-tiedostoa käytetään 3D-grafiikassa?
HDRI-tiedostoja (.hdr) käytetään 360 asteen panoraamaympäristökarttoina tarjoamaan fotorealistista todellisen maailman valaistusta, varjoja ja heijastuksia 3D-objekteille.
Miten RGBE 32-bittinen koodaus toimii?
Sen sijaan, että tallennettaisiin kolme erillistä liukulukua, RGBE käyttää 8 bittiä kullekin punaiselle, vihreälle ja siniselle värikanavalle sekä jaettua 8-bittistä eksponenttia, jolloin täysi HDR-dynaaminen alue mahtuu vain 4 tavuun pikseliä kohden.
Voinko muuntaa HDR-tiedoston JPG-muotoon?
Kyllä. File2File.app pystyy sävykartoittamaan ja muuntamaan 32-bittiset Radiance HDR -tiedostot tavallisiksi JPG- tai PNG-kuviksi suoraan selaimessasi.