Ảnh Radiance HDR (.hdr)

Radiance Tiêu chuẩn

Radiance RGBE (HDR) là định dạng dải động cao nền tảng được phát triển cho hệ thống tạo hình tổng hợp Radiance, lưu trữ các giá trị độ chói chính xác về mặt trắc quang bằng cách sử dụng số mũ 8-bit chung.

Kiểm tra & Siêu dữ liệu

Các hệ điều hành và trình phân tích tệp nhận dạng tệp HDR bằng cách kiểm tra chuỗi byte nhị phân đầu tệp:

Chọn hoặc thả tệp vào đây

Riêng tư - tệp không bao giờ rời khỏi thiết bị của bạn

Hoặc dán Ctrl+V
Cam kết bảo vệ quyền riêng tư, không truyền dữ liệu qua mạng: 0 byte được tải lên máy chủ bên ngoài. Toàn bộ quá trình xử lý diễn ra cục bộ trong hộp cát trình duyệt của bạn.

Chữ ký ở đầu tệp (mẫu byte nhận diện)

Các hệ điều hành và trình phân tích tệp nhận dạng tệp HDR bằng cách kiểm tra chuỗi byte nhị phân đầu tệp:

CHỮ KÝ HEX (OFFSET 0):

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

BIỂU DIỄN ASCII: #?RADIANCE\n

Tiêu chuẩn hóa: Radiance Synthetic Imaging System Standard

Thông số kỹ thuật

Kiến trúc ContainerTiêu đề ASCII kết thúc bằng dòng trống, tiếp theo là chuỗi độ phân giải và dòng quét RLE nhị phân
NénMã hóa độ dài dãy thích ứng (RLE), áp dụng cho từng dòng quét của mỗi kênh.
Thứ tự byteBig-endian / thứ tự byte mạng
Không gian màuRGB Rec.709 tuyến tính với tọa độ sắc độ CIE
Kênh & Cấu trúcRGBE: đỏ, lục, lam (mantissa 8 bit) + số mũ 8 bit dùng chung
Kích thước tối đaThực tế gần như không giới hạn (chuỗi độ phân giải không dấu 32 bit)
Độ trong suốtKhông có (đo độ chói bức xạ vật lý)
Truyền phát & Tăng dầnPhát truyền tuần tự từng dòng quét

Ma trận so sánh kỹ thuật: HDR so với các đối thủ

Thuộc tính kỹ thuậtHDR (Hiện tại)EXRTIFFJPEG
Mã hóa điểm ảnh32-bit RGBE (số mũ 8-bit chung)16-bit half / 32-bit float mỗi kênhSố nguyên 8/16-bit hoặc 32-bit floatSố nguyên mã hóa gamma 8-bit
Trường hợp sử dụng chínhChiếu sáng môi trường 360 độ (IBL)Ghép nối đa lớp VFXNhiếp ảnh & chế bản inĐồ họa web tiêu chuẩn
Phạm vi dải động76 bậc độ lớn (10^-38 đến 10^38)Phạm vi float gần như vô hạnThay đổi theo độ sâu bitPhạm vi SDR 8-bit hạn chế
Các kênh được hỗ trợChỉ RGBCác kênh tùy ý không giới hạnNhiều kênh tùy ýRGB / CMYK

Các dạng hỏng thường gặp và hướng dẫn khôi phục bằng mã hex

Hình ảnh hiển thị các dải sọc nằm ngang trên toàn bộ chiều rộng khung hình.

Nguyên nhân gốc rễ: Byte đếm độ dài chạy bị hỏng trong quá trình giải nén RLE dòng quét.

Khắc phục: Khôi phục các điểm đánh dấu dòng quét bị hỏng bằng tính năng Sửa lỗi HDR của File2File.app hoặc chuyển đổi sang EXR.

Phân tích bảo mật và các đường tấn công nhằm vào bộ phân tích cú pháp

Bộ giải mã Radiance HDR thường phân tích các dòng tiêu đề ASCII bằng những hàm xử lý chuỗi không giới hạn, có thể gây tràn bộ đệm ngăn xếp.

Các véc-tơ tấn công đã biết

  • Các lệnh gọi sprintf/sscanf không giới hạn khi đọc chuỗi tiêu đề độ phân giải ('-Y %d +X %d').
  • Ghi quá giới hạn vùng nhớ heap trong quá trình giải mã dòng quét RLE bị lỗi.
  • Tràn số nguyên khi cấp phát bộ đệm dấu phẩy động 32-bit cho dữ liệu đích.

Biện pháp phòng thủ tốt nhất: Xác thực độ dài tiêu đề ASCII và kích thước dòng quét trước khi cấp phát bộ đệm hình ảnh.

Nguồn gốc lịch sử và các cột mốc

2000Paul Debevec phổ biến hóa chiếu sáng dựa trên hình ảnh HDR (IBL) trong đồ họa máy tính bằng cách sử dụng các tệp .hdr của Radiance.
1997Mã hóa độ dài dãy thích ứng theo dòng quét được tiêu chuẩn hóa để giảm dung lượng tệp.
1989Greg Ward phát minh ra mã hóa điểm ảnh 32-bit RGBE và định dạng .hdr tại Phòng thí nghiệm Quốc gia Lawrence Berkeley.

Ưu điểm & Lợi ích chính

  • Dung lượng bộ nhớ 32-bit mỗi điểm ảnh nhỏ gọn trong khi bao trùm 76 bậc độ lớn của độ chói ánh sáng vật lý.
  • Được nhiều bộ phần mềm kết xuất 3D hỗ trợ cho bản đồ môi trường, dù mức hỗ trợ tùy ứng dụng.
  • Cấu trúc tệp tương đối gọn, có thể được triển khai trong phần mềm hỗ trợ Radiance HDR.

Hạn chế & Nhược điểm kỹ thuật

  • Hiện tượng phân tầng lượng tử hóa (banding) có thể xảy ra ở các vùng tối cực hạn do mã hóa số mũ 8-bit chung.
  • Các kênh RGB không thể lưu trữ số âm hoặc các lớp đa lượt tùy ý.
  • Đa phần đã bị OpenEXR thay thế trong sản xuất kỹ xảo điện ảnh đa lớp.

Thông tin kỹ thuật thú vị

  • Mọi tệp Radiance HDR đều bắt đầu bằng tiêu đề văn bản '#?RADIANCE' hoặc '#?RGBE'.
  • Định dạng này được tạo ra để mô phỏng chiếu sáng kiến trúc vật lý trong thiết kế tòa nhà trước khi các công trình được xây dựng.
  • Bài báo mang tính biểu tượng tại SIGGRAPH năm 1997 của Paul Debevec 'Khôi phục bản đồ bức xạ dải động cao từ ảnh chụp' đã sử dụng định dạng này để cách mạng hóa ánh sáng CGI.

Các câu hỏi kỹ thuật thường gặp

Tệp HDRI dùng để làm gì trong đồ họa 3D?

Các tệp HDRI (.hdr) được sử dụng làm bản đồ môi trường toàn cảnh 360 độ để cung cấp ánh sáng, bóng đổ và phản chiếu chân thực từ thế giới thực trên các đối tượng 3D.

Mã hóa RGBE 32-bit hoạt động như thế nào?

Thay vì lưu trữ ba số dấu phẩy động riêng biệt, RGBE sử dụng mỗi 8 bit cho màu đỏ, xanh lá cây và xanh dương, cộng với một số mũ 8 bit dùng chung, phù hợp với dải động HDR đầy đủ chỉ trong 4 byte cho mỗi pixel.

Tôi có thể chuyển đổi HDR sang JPG không?

Có. File2File.app có thể ánh xạ tông màu và chuyển đổi các tệp Radiance HDR 32-bit thành hình ảnh JPG hoặc PNG tiêu chuẩn trực tiếp trong trình duyệt của bạn.