O que é o formato de ficheiro HDR?
O arquivo .hdr é uma imagem raster Radiance HDR (High Dynamic Range), desenvolvida por Greg Ward no Lawrence Berkeley National Laboratory como parte do sistema de simulação de iluminação Radiance no final dos anos 1980. O formato era originalmente armazenado com a extensão .pic antes de .hdr se tornar o padrão.
Cada pixel é codificado usando RGBE - três valores de mantissa de 8 bits para os canais vermelho, verde e azul, além de um único expoente compartilhado de 8 bits. Isso compacta um pixel HDR de ponto flutuante completo em apenas 4 bytes, representando um alcance dinâmico que abrange cerca de 76 ordens de magnitude (~10⁻³⁸ a 10³⁸). A desvantagem é que todos os três canais compartilham um único expoente, portanto, a precisão por canal é menor do que em formatos como OpenEXR, que armazena floats reais de 16 ou 32 bits por canal e suporta múltiplas camadas.
O arquivo começa com um cabeçalho ASCII contendo a assinatura #?RADIANCE (algumas ferramentas escrevem #?RGBE em vez disso - ambos são válidos). Após o bloco de variáveis chave=valor e uma linha de resolução, os dados de pixel são armazenados como scanlines codificadas por comprimento de execução (RLE). Uma codificação de luminância alternativa também é suportada: definir o campo de cabeçalho FORMAT como 32-bit_rle_xyze alterna de RGB para o espaço de cor CIE XYZ.
Arquivos .hdr são amplamente utilizados para mapas de ambiente HDRI em renderização 3D e motores de jogos, onde o alto alcance dinâmico permite uma iluminação baseada em imagem precisa. Eles são suportados pelo Blender, GIMP, Adobe Photoshop e pela maioria dos pipelines de renderização em tempo real. Para trabalhos de produção de VFX que exigem precisão de float por canal e suporte a múltiplas camadas, o OpenEXR tornou-se amplamente o padrão da indústria.
Segurança e proteção
RISCO: LOWUm .hdr Radiance é uma imagem passiva - sem scripts, macros ou conteúdo executável - portanto, o arquivo em si não é um vetor de malware. As únicas precauções práticas são os tamanhos de arquivo grandes para mapas HDRI de alta resolução e o raro bug de parser de biblioteca de imagem; mantenha seu editor atualizado. Evite sites suspeitos de «conversor HDR gratuito» que incluam adware - GIMP, Krita, Blender e Photopea cobrem a necessidade gratuitamente.
Detalhes do formato
em resumo- Analog Devices / Mentor SPICE .hdr (dados de cabeçalho) - Algumas ferramentas de EDA e dados escrevem um arquivo auxiliar de cabeçalho/metadados .hdr em texto simples - não relacionado a imagens.
- ENVI / cabeçalho de sensoriamento remoto .hdr - Cabeçalhos raster ENVI usam .hdr como um arquivo de texto auxiliar que descreve uma imagem raw acompanhante, não uma imagem Radiance.
- Ativos '.hdr' de motores de jogo / instalação - Ocasionalmente, um motor nomeia um cubemap HDR compactado ou um arquivo de cabeçalho genérico como .hdr.
Programas que abrem arquivos HDR
Detalhes técnicos
especificação profunda| Esquema de codificação | RGBE - mantissa de 8 bits por canal R, G, B mais um expoente compartilhado de 8 bits; compacta um pixel HDR em exatamente 4 bytes |
| Alcance dinâmico | ~76 ordens de magnitude (~10⁻³⁸ a 10³⁸); equivalente a aproximadamente 25+ stops fotográficos |
| Assinatura do arquivo | ASCII `#?RADIANCE` seguido por quebra de linha (0x0A) no deslocamento de byte 0; `#?RGBE` no deslocamento 0 é igualmente válido e amplamente produzido |
| Compressão | Codificação adaptativa por comprimento de execução (RLE) de scanlines; o armazenamento de scanline plano (não compactado) também é permitido pela especificação |
| Formato do cabeçalho | Bloco de variáveis ASCII simples chave=valor (FORMAT, EXPOSURE, COLORCORR, PRIMARIES, SOFTWARE, etc.) terminado por uma linha em branco |
| Linha de resolução | Codifica largura, altura e orientação como, por exemplo, `-Y 512 +X 1024`; todas as quatro combinações de inversão/rotação são suportadas |
| Codificações de cor | `32-bit_rle_rgbe` (RGB linear, padrão) e `32-bit_rle_xyze` (variante de luminância CIE XYZ), selecionadas através do campo de cabeçalho `FORMAT` |
| Tipo MIME | `image/vnd.radiance` (registrado na IANA); `image/x-hdr` é uma alternativa informal amplamente utilizada |
| Ordem dos bytes | Independente de endianness; os dados de pixel consistem em bytes individuais armazenados por pixel sem campos de números inteiros de vários bytes |
| Tamanho de arquivo típico | 1 MB - 30 MB; mapas de ambiente HDRI panorâmicos em resoluções como 8192×4096 atingem a faixa superior |
| Limite de dimensões | Sem limite rígido de formato; largura e altura são armazenadas como números inteiros decimais simples na linha de cabeçalho de resolução |
| Espaço de cor | Luz linear sem curva de gama incorporada; os campos de cabeçalho EXPOSURE e COLORCORR carregam metadados de correção referenciados à cena |
| Canal alfa | Não suportado; nem a codificação RGBE nem a XYZE incluem um plano de transparência ou alfa |
| Precisão por canal | ~8 bits de precisão relativa por canal devido ao expoente compartilhado; a precisão absoluta depende do valor de exposição da cena |
| Extensão histórica | `.pic` era usado no sistema de iluminação Radiance original; `.hdr` tornou-se dominante à medida que o formato se espalhou para ferramentas de imagem e 3D |
| Lançado | 1985-1989 (Radiance lighting simulation system); .pic originally, later .hdr |
| Versão mais recente | RGBE/XYZE encoding (stable; format essentially unchanged) |
| Padrão aberto | Sim · livre de royalties |
| Especificação | floyd.lbl.gov |
Conversões de HDR
Perguntas e Respostas da Comunidade
perguntado por usuáriosAinda não há perguntas - seja o primeiro a perguntar sobre arquivos HDR.