Radiance HDR (.hdr)

Radiance Standartinis

„Radiance RGBE" (HDR) yra bazinis didelio dinaminio diapazono formatas, sukurtas „Radiance" sintetinio vaizdavimo sistemai, saugantis fotometriškai tikslias šviesumo vertes naudojant bendrą 8 bitų eksponentą.

Tikrinti ir metaduomenys

Operacinės sistemos ir failų analizatoriai atpažįsta HDR failus tikrindami pradinę dvejetainę baitų seką:

Pasirinkite arba nuvilkite failus čia

100% privatus konvertavimas naršyklėje - failai niekada nepalieka jūsų įrenginio

arba įklijuokite Ctrl+V
Nulinio tinklo perdavimo privatumo garantija: 0 baitų įkelta į išorinius serverius. Visas apdorojimas vyko vietoje, jūsų naršyklės smėlio dėžėje (sandbox).

Baitų lygio antraštės parašas (magiškieji baitai)

Operacinės sistemos ir failų analizatoriai atpažįsta HDR failus tikrindami pradinę dvejetainę baitų seką:

ŠEŠIOLIKTAINIS PARAŠAS (POSLINKIS 0):

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

ASCII ATVAIZDAVIMAS: #?RADIANCE\n

Standartizacija: Radiance Synthetic Imaging System Standard

Techninės specifikacijos

Konteinerio architektūraASCII header ending with empty line followed by resolution string and binary RLE scanlines
GlaudinimasAdaptive adaptive run-length encoding (RLE) applied per-channel scanline
Baitų seka (Endianness)Big-Endian / Network byte order
Spalvų erdvėsLinear Rec.709 RGB with CIE chromaticity coordinates
Kanalai ir struktūraRGBE: Red, Green, Blue (8-bit mantissas) + shared 8-bit Exponent
Maksimalūs matmenysPractically unlimited (32-bit unsigned resolution strings)
SkaidrumasNone (physical radiant luminance measurements)
Srautas ir progresyvusis įkėlimasSequential scanline-by-scanline streaming playback

Techninė palyginimo matrica: HDR vs konkurentai

Techninis atributasHDR (Dabartinis)EXRTIFFJPEG
Pikselių kodavimas32 bitų RGBE (bendras 8 bitų eksponentas)16 bitų pusinio / 32 bitų slankiojo kablelio kanaluiSveikasis 8/16 bitų arba 32 bitų slankiojo kablelio8 bitų gama koduotas sveikasis
Pagrindinis paskirties atvejis360 laipsnių aplinkos apšvietimas (IBL)VFX kelių sluoksnių kompozicijaFotografija ir spaudos paruošimasStandartinė žiniatinklio grafika
Dinaminio diapazono aprėptis76 dydžio eilės (nuo 10^-38 iki 10^38)Praktikiai begalinis slankiojo kablelio diapazonasSkiriasi priklausomai nuo bitų gylioRibotas 8 bitų SDR diapazonas
Palaikomi kanalaiTik RGBNeriboti savavališki kanalaiKeli savavališki kanalaiRGB / CMYK

Dažni sugadinimo režimai ir šešioliktainio atkūrimo vadovas

Vaizde rodomos horizontalios dryžių juostos per visą kadro plotą.

Pirminė priežastis: Sugadintas ilgio skaičiaus baitas skenuojamosios eilutės RLE išskleidime.

Atkūrimas: Atkurkite pažeistus skenuojamosios eilutės žymeklius naudodami „File2File HDR Repair" arba konvertuokite į EXR.

Saugumo analizė ir analizatoriaus atakos vektoriai

„Radiance HDR" dekoderiai dažnai analizuoja ASCII antraštės eilutes naudodami neapribotas eilučių funkcijas, kurios gali sukelti dėklo (stack) buferio perpildymą.

Žinomi atakos vektoriai

  • Neapriboti sprintf/sscanf iškvietimai skaitant raiškos eilutės antraštes („-Y %d +X %d").
  • Dėmės (heap) ribų viršijimo rašymas išskleidžiant sugadintą RLE skenuojamąją eilutę.
  • Sveikųjų skaičių perpildymas paskirstant paskirties 32 bitų slankiojo kablelio buferius.

Geriausia apsaugos praktika:

Istorinė kilmė ir svarbiausi etapai

2000Paul Debevec išpopuliarino HDR vaizdu pagrįstą apšvietimą (IBL) kompiuterinėje grafikoje naudodamas „Radiance" .hdr failus.
1997Standartizuotas adaptyvus skenuojamųjų eilučių ilgio kodavimas (RLE), siekiant sumažinti failų dydį.
1989Greg Ward išrado RGBE 32 bitų pikselių kodavimą ir .hdr formatą Lawrence Berkeley nacionalinėje laboratorijoje.

Pagrindiniai privalumai

  • Kompaktiškas 32 bitų vienam pikseliui atminties užimamas plotas, apimantis 76 fizinės šviesos luminansos dydžio eiles.
  • Universalus palaikymas 3D perteikimo paketuose („Blender", „Unreal Engine", „Unity", „Cinema 4D") 360 laipsnių aplinkos žemėlapiams.
  • Paprasta, tvirta failų struktūra, lengvai įdiegiama visose programinės įrangos platformose.

Techniniai apribojimai ir trūkumai

  • Ypatingai tamsiose srityse gali pasireikšti kvantavimo juostos dėl bendro 8 bitų eksponento kodavimo.
  • RGB kanalai negali saugoti neigiamų skaičių arba savavališkų kelių sluoksnių.
  • Daugiausia pakeistas „OpenEXR" formatu kuriant kelių sluoksnių vaizdo efektus.

Įdomūs techniniai faktai

  • Kiekvienas „Radiance HDR" failas prasideda tekstine antrašte „#?RADIANCE" arba „#?RGBE".
  • Formatas buvo sukurtas imituoti fizinį architektūrinį apšvietimą pastatų projektavime dar prieš pastatų statybas.
  • Ikoninis Paul Debevec 1997 m. SIGGRAPH pranešimas „Aukšto dinaminio diapazono „Radiance" žemėlapių atkūrimas iš fotografijų" panaudojo šį formatą CGI apšvietimui revoliucionuoti.

Dažniausiai užduodami techniniai klausimai

Kam 3D grafikoje naudojamas HDRI failas?

HDRI (.hdr) failai naudojami kaip 360 laipsnių panoraminiai aplinkos žemėlapiai, kad būtų užtikrintas fotorealistiškas realaus pasaulio apšvietimas, šešėliai ir atspindžiai ant 3D objektų.

Kaip veikia RGBE 32 bitų kodavimas?

Vietoj to, kad būtų saugomi trys atskiri slankiojo kablelio skaičiai, RGBE naudoja po 8 bitus raudonai, žaliai ir mėlynai spalvoms bei bendrą 8 bitų eksponentą, todėl visas HDR dinaminis diapazonas telpa vos į 4 baitus vienam pikseliui.

Ar galiu konvertuoti HDR į JPG?

Taip. „File2File.app“ gali atlikti tonų kartografavimą ir konvertuoti 32 bitų „Radiance HDR“ failus į standartinius JPG arba PNG vaizdus tiesiog jūsų naršyklėje.