RGBE bildformat
Filnamnstillägg |
.hdr
|
---|---|
Internet mediatyp |
image/vnd.radiance
|
Magiskt nummer | 23 3f 52 41 44 49 41 4e 43 45 0a |
Typ av format | förlustfritt bildformat |
Hemsida |
RGBE eller Radiance HDR är ett bildformat som uppfanns av Gregory Ward Larson för Radiance -renderingssystemet. Den lagrar pixlar som en byte vardera för RGB- värden (röd, grön och blå) med en delad exponent på en byte. Således lagrar den fyra byte per pixel.
Beskrivning
RGBE tillåter pixlar att ha det dynamiska omfånget och precisionen för flyttalsvärden i en relativt kompakt datastruktur (32 bitar per pixel) - ofta när bilder genereras från ljussimuleringar är intervallet för färgintensitetsvärden per pixel mycket större än kommer fint att passa in i standardintervallet 0..255 (8-bitars) standard 24-bitars bildformat . Som ett resultat klipps antingen ljusa pixlar till 255, eller så förlorar dunkla pixlar numerisk precision.
Genom att använda en delad exponent får RGBE-formatet några av fördelarna med flyttalsvärden samtidigt som det använder mindre än de 32 eller 16 bitar per färgkomponent som skulle behövas för enkel precision eller halvprecisionsdata i IEEE flyttalsformatet , och med ett högre dynamiskt område än halvprecision. Ett exponentvärde på 128 mappar heltalsfärger [0..255] till [0..1) flyttalsrymd.
En andra variant av formatet använder XYZ-färgmodellen med en delad exponent. Mimetypen och filtillägget är identiska, så applikationer som läser detta filformat måste tolka den inbäddade informationen om färgmodellen.
Greg Ward tillhandahåller kod för att hantera RGBE-filer i sin Radiance- renderare.
Liknande format
OpenGL kräver stöd för ett analogt RGB9_E5-färgformat (inte rendering), där tre kanaler har 9 bitar av mantiss vardera och delar 5 bitar av exponent.
JPEG XT del 2 (Dolby JPEG-HDR) och del 7 profil A är baserade på RGBE-formatet.
RGBM är ett format med exponenten ersatt med en delad multiplikator, medan RGBD lagrar en delare istället. Dessa format saknar det dynamiska omfånget för RGBE och logLUV, men är mer mottagliga för ett naivt tillvägagångssätt med linjär interpolation på varje komponent. Liksom RGBE kan de paketeras i vilket format som helst som accepterar en fyrkanalig färgmodell, inklusive vanliga format som PNG (tillämpar RGBA-strukturen) för 3D-texturer.
Ett större utbud av färgformat tar den mer konventionella vägen att lagra separata flyttal. Dessa inkluderar Xbox ' 7e3 '-formatet (3 10-bitars flyttalsfärgkanaler , var och en med 7 bitars mantissa och 3 bitars exponent) och OpenGL R11F_G11F_B10F-formatet.