Radiance HDR 이미지 (.hdr)

Radiance 표준

Radiance RGBE (HDR)는 Radiance 합성 이미징 시스템을 위해 개발된 기초적인 고다이나믹 레인지(HDR) 포맷으로, 공유 8비트 지수를 사용하여 측광학적으로 정확한 휘도 값을 저장합니다.

검사 및 메타데이터

운영 체제와 파일 분석기는 파일 선두의 바이너리 바이트 시퀀스를 검사하여 HDR 파일을 식별합니다:

여기에 파일을 선택하거나 놓으세요

100% 브라우저 내 프라이버시 변환 - 파일이 기기를 절대 떠나지 않습니다

또는 붙여넣기 Ctrl+V
제로 네트워크 전송 프라이버시 보장: 외부 서버로 업로드된 데이터 0바이트. 모든 처리는 브라우저 샌드박스내에서 로컬로 수행되었습니다.

바이트 단위 헤더 시그니처 (매직 바이트)

운영 체제와 파일 분석기는 파일 선두의 바이너리 바이트 시퀀스를 검사하여 HDR 파일을 식별합니다:

16진수 시그니처 (오프셋 0):

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

ASCII 표현: #?RADIANCE\n

표준화: Radiance Synthetic Imaging System Standard

기술 사양

컨테이너 아키텍처ASCII header ending with empty line followed by resolution string and binary RLE scanlines
압축Adaptive adaptive run-length encoding (RLE) applied per-channel scanline
바이트 엔디안Big-Endian / Network byte order
색 공간Linear Rec.709 RGB with CIE chromaticity coordinates
채널 및 구조RGBE: Red, Green, Blue (8-bit mantissas) + shared 8-bit Exponent
최대 크기Practically unlimited (32-bit unsigned resolution strings)
투명도None (physical radiant luminance measurements)
스트리밍 및 프로그레시브Sequential scanline-by-scanline streaming playback

기술 비교 매트릭스: HDR 대 경쟁사

기술적 속성HDR (현재)EXRTIFFJPEG
픽셀 인코딩32비트 RGBE (공유 8비트 지수)채널당 16비트 half / 32비트 float정수 8/16비트 또는 32비트 float8비트 감마 인코딩 정수
주요 사용 사례360도 환경 조명 (IBL)VFX 멀티패스 합성사진 및 프리프레스표준 웹 그래픽
다이나믹 레인지 범위76 orders of magnitude (10^-38 ~ 10^38)사실상 무한한 부동소수점 범위비트 심도에 따라 다름제한된 8비트 SDR 범위
지원 채널RGB 전용제한 없는 임의 채널다수의 임의 채널RGB / CMYK

일반적인 손상 모드 및 헥스 복구 가이드

이미지 전체 프레임 너비에 걸쳐 수평 스트릭 밴드가 표시됩니다.

근본 원인: 스캔라인 RLE 압축 해제 중 손상된 런레인지 카운트 바이트.

복구: File2File HDR Repair를 사용하여 손상된 스캔라인 마커를 복구하거나 EXR로 변환합니다.

보안 분석 및 파서 공격 벡터

Radiance HDR 디코더는 종종 스택 버퍼 오버플로우를 유발할 수 있는 제한 없는 문자열 루틴을 사용하여 ASCII 헤더 라인을 파싱합니다.

알려진 공격 벡터

  • 해상도 문자열 헤더('-Y %d +X %d')를 읽을 때 제한 없는 sprintf/sscanf 호출.
  • 형식이 잘못된 RLE 스캔라인 디코딩 중 힙 범위를 벗어난 쓰기.
  • 대상 32비트 부동소수점 버퍼를 할당할 때의 정수 오버플로우.

방어적 모범 사례:

역사적 배경 및 주요 이력

2000폴 데베벡(Paul Debevec)이 Radiance .hdr 파일을 사용하여 컴퓨터 그래픽에서 HDR 이미지 기반 조명(IBL)을 대중화합니다.
1997파일 크기를 줄이기 위해 적응형 스캔라인 런레인지 인코딩이 표준화되었습니다.
1989그렉 워드(Greg Ward)가 로렌스 버클리 국립 연구소에서 RGBE 32비트 픽셀 인코딩과 .hdr 포맷을 발명합니다.

주요 장점

  • 76자릿수의 물리적 광휘도 범위를 아우르면서도 픽셀당 32비트의 컴팩트한 메모리 용량을 제공합니다.
  • 360도 환경 맵을 위해 3D 렌더링 패키지(Blender, Unreal Engine, Unity, Cinema 4D) 전반에서 범용적으로 지원됩니다.
  • 모든 소프트웨어 플랫폼에서 쉽게 구현할 수 있는 단순하고 견고한 파일 구조를 가지고 있습니다.

기술적 제한 사항 및 단점

  • 공유 8비트 지수 인코딩으로 인해 극도로 어두운 영역에서 양자화 밴딩 현상이 발생할 수 있습니다.
  • RGB 채널은 음수나 임의의 멀티패스 레이어를 저장할 수 없습니다.
  • 멀티패스 시각효과(VFX) 제작 분야에서는 OpenEXR로 대체된 경우가 많습니다.

흥미로운 기술적 상식

  • 모든 Radiance HDR 파일은 '#?RADIANCE' 또는 '#?RGBE' 텍스트 헤더로 시작합니다.
  • 이 포맷은 건물이 지어지기 전에 건축 설계에서 물리적 건축 조명을 시뮬레이션하기 위해 만들어졌습니다.
  • 폴 데베벡의 상징적인 1997년 SIGGRAPH 논문 '사진으로부터 고다이나믹 레인지 레이디언스 맵 복구(Recovering High Dynamic Range Radiance Maps from Photographs)'는 이 포맷을 사용하여 CGI 조명을 혁신했습니다.

자주 묻는 기술 질문

3D에서 HDRI 파일은 어떤 용도로 사용되나요?

HDRI(.hdr) 파일은 3D 객체에 포토리얼리스틱한 현실 세계의 조명, 그림자, 반사를 제공하기 위한 360도 파노라마 환경 맵으로 사용됩니다.

RGBE 32비트 인코딩은 어떻게 작동하나요?

RGBE는 세 개의 분리된 부동소수점 숫자를 저장하는 대신 빨강, 초록, 파랑에 각각 8비트를 사용하고, 공유되는 8비트 지수(exponent)를 더해 전체 HDR 다이나믹 레인지를 픽셀당 단 4바이트에 담습니다.

HDR을 JPG로 변환할 수 있나요?

네. File2File.app을 사용하면 브라우저에서 직접 32비트 Radiance HDR 파일을 톤맵핑하여 표준 JPG 또는 PNG 이미지로 변환할 수 있습니다.