Radiance HDR (.hdr)

Radiance Standard

Radiance RGBE (HDR) er det grundlæggende format med stort dynamisk omfang, der blev udviklet til Radiance-systemet til syntetisk billeddannelse, og som gemmer fotometrisk nøjagtige luminansværdier ved hjælp af en delt 8-bit-eksponent.

Undersøgelse og metadata

Operativsystemer og filanalysatorer identificerer HDR-filer ved at inspicere den indledende binære bytesekvens:

Vælg eller træk filer hertil

Privat - filer forlader aldrig din enhed

eller indsæt Ctrl+V
Privatlivsgaranti uden netværksoverførsel: 0 byte overført til eksterne servere. Al behandling foregik lokalt i browserens sandkasse.

Byte-niveau Header-signatur (Magic Bytes)

Operativsystemer og filanalysatorer identificerer HDR-filer ved at inspicere den indledende binære bytesekvens:

HEX-SIGNATUR (OFFSET 0):

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

ASCII-REPRÆSENTATION: #?RADIANCE\n

Standardisering: Radiance Synthetic Imaging System Standard

Tekniske specifikationer

ContainerarkitekturASCII-header, der slutter med en tom linje, efterfulgt af opløsningsstreng og binære RLE-scanlinjer
KomprimeringAdaptiv RLE-kodning anvendt på hver kanals scanningslinjer
Byte-rækkefølgeBig-Endian / netværksbyterækkefølge
FarverumLineær Rec.709 RGB med CIE-kromaticitetskoordinater
Kanaler og strukturRGBE: rød, grøn, blå (8-bit mantisser) + fælles 8-bit eksponent
Maks. dimensionerPraktisk talt ubegrænset (opløsningsstrenge med unsigned 32-bit-heltal)
GennemsigtighedIngen (fysiske målinger af udstrålet luminans)
Streaming og progressivSekventiel streamingafspilning scanlinje for scanlinje

Teknisk sammenligningsmatrix: HDR sammenlignet med konkurrenterne

Teknisk attributHDR (Aktuel)EXRTIFFJPEG
Pixel-kodning32-bit RGBE (delt 8-bit eksponent)16-bit half / 32-bit float pr. kanalHeltal 8/16-bit eller 32-bit float8-bit gammakkodet heltal
Primær anvendelse360-graders miljøbelysning (IBL)VFX-sammensætning med flere gennemløbFotografi og prepressStandard webgrafik
Dynamisk omfang76 størrelsesordener (10^-38 til 10^38)Praktisk talt ubegrænset flydende kommatalområdeVarierer med bitdybdenBegrænset 8-bit SDR-område
Understøttede kanalerKun RGBEt vilkårligt antal kanalerFlere vilkårlige kanalerRGB / CMYK

Almindelige korruptionstilstande og hex-gendannelsesvejledning

Billedet viser vandrette stribebånd på tværs af hele billedets bredde.

Grundlæggende årsag: Korrupt tællerbyte for kørselslængde ved RLE-dekomprimering af en scanningslinje.

Gendannelse: Gendan beskadigede scanningslinjemarkører med File2File.app HDR Repair, eller konverter filen til EXR.

Sikkerhedsanalyse og parser-angrebsvektorer

Radiance HDR-dekodere behandler ofte ASCII-headerlinjer med strengrutiner uden længdebegrænsning, som kan udløse bufferoverløb på stakken.

Kendte angrebsvektorer

  • sprintf/sscanf-kald uden længdebegrænsning ved læsning af opløsningsstrenge i headers ('-Y %d +X %d').
  • Skrivning uden for heap-bufferens grænser under dekodning af misformet RLE-scanningslinje.
  • Heltalsoverløb ved allokering af destinationsbuffere til 32-bit flydende kommatal.

Defensive bedste praksisser: Valider længden af ASCII-headeren og scanningslinjedimensionerne før allokering af billedbuffere.

Historisk oprindelse og milepæle

2000Paul Debevec populariserer HDR-billedbaseret belysning (IBL) i computergrafik ved hjælp af Radiance .hdr-filer.
1997Adaptiv scanline run-length-kodning standardiseres for at reducere filstørrelser.
1989Greg Ward opfinder RGBE 32-bit pixel-kodningen og .hdr-formatet på Lawrence Berkeley National Laboratory.

Vigtige fordele og styrker

  • Kompakt hukommelsesaftryk på 32 bit pr. pixel, samtidig med at det spænder over 76 størrelsesordener i fysisk lysluminans.
  • Understøttes af mange 3D-renderingsprogrammer til miljøkort, men understøttelsen afhænger af programmet.
  • En forholdsvis kompakt filstruktur, som software med Radiance HDR-understøttelse kan implementere.

Tekniske begrænsninger og ulemper

  • Kvantiseringsbånd kan forekomme i ekstreme mørke områder på grund af delt 8-bit eksponentkodning.
  • RGB-kanaler kan ikke gemme negative tal eller vilkårlige lag med flere gennemløb.
  • Stort set erstattet af OpenEXR til produktion af visuelle effekter med flere gennemløb.

Interessante tekniske fakta

  • Enhver Radiance HDR-fil starter med tekstoverskriften '#?RADIANCE' eller '#?RGBE'.
  • Formatet blev skabt til at simulere fysisk arkitektonisk belysning i bygningsdesign, før strukturerne blev opført.
  • Paul Debevecs ikoniske SIGGRAPH-artikel fra 1997 'Recovering High Dynamic Range Radiance Maps from Photographs' brugte dette format til at revolutionere CGI-belysning.

Ofte stillede tekniske spørgsmål

Hvad bruges en HDRI-fil til i 3D?

HDRI (.hdr) filer bruges som 360-graders panoramiske miljøkort til at skabe fotorealistisk belysning, skygger og refleksioner på 3D-objekter.

Hvordan fungerer 32-bit RGBE-kodning?

I stedet for at gemme tre separate flydende kommatal bruger RGBE 8 bit hver for rød, grøn og blå plus en delt 8-bit eksponent, så hele HDR-dynamikområdet kan rummes på kun 4 bytes pr. pixel.

Kan jeg konvertere HDR til JPG?

Ja. File2File.app kan tone-mappe og konvertere 32-bit Radiance HDR-filer til standard JPG- eller PNG-billeder direkte i din browser.