以辐射度单位还是光度单位渲染?


10

在传统渲染中,通常使用辐射度单位进行所有计算,无论是作为全光谱渲染还是按分量计算(XYZ,RGB等)。

但是,由于现代渲染添加了更多基于物理的模型,因此艺术家可以方便地以更熟悉的光度单位指定值,例如以流明表示的光强度。

在此处输入图片说明

为了将管道全部保留在一种类型的单元中,可以执行以下操作之一:

  1. 使用发光效率将光度单位转换为辐射度单位
  2. 将整个渲染管线保持为光度单位
    • 塞巴斯蒂安·拉加德(SébastianLagarde)在他的Siggraph 2014演讲“ 将冻伤转移到PBR”的课程笔记中很好地表达了这一想法。

我的问题是:

  1. 仅以光度单位进行渲染有任何不利之处吗?
    • 据我所知,光度单位只是偏向人眼的辐射度单位。考虑到我们将用肉眼观看最终图像,所以我认为这不是问题。
  2. 冻伤是RGB组件明智的引擎。通过仅以光度单位进行渲染,光谱渲染器是否还会有其他缺点?

Answers:


9

可以使用光度单位作为设置光亮度的整体比例。但是,您应该注意一些技术上的技巧。我会引用我去年写的一篇关于该主题的博客文章

对于RGB图像,重要的是要认识到我们的显示设备在辐射测量方面比在光度测量方面表现更好。红色像素值255和绿色像素值255都导致屏幕上的像素产生的辐射通量(瓦)大致相等,而不是光通量。同样,数码相机捕获的像素值对应于辐射通量,而不是光通量。

这就是为什么在将图像转换为灰度或计算像素的亮度时需要使用亮度系数来获得可感知的准确结果的原因。这也意味着渲染RGB图像以辐射度单位比以光度单位更自然地进行。

换句话说,光度单位对波长的依赖性与您所期望的不同。在普通的RGB颜色空间中,白色为(1、1、1),并且具有大致平坦的辐射光谱。但在所谓的“光度RGB”中,(1、1、1)不会是白色;它会是紫色,绿色范围内的能量更少,红色和蓝色范围内的能量更多。一个类似的问题会困扰试图渲染所有与波长相关的光度单位的所有光箱的光谱渲染器,但更糟的是,生成给定亮度所需的辐射会朝着可见光谱的两端发散,在该处人类的发光效率函数达到零。

因此,如果您希望使用光度单位,则IMO最好“作弊”,不要使用与波长相关的真正光度单位,而应使用某些固定波长(例如555 nm绿色,这是人体发光的峰值)效率函数)或频谱上的平均值作为参考单位,然后应用该单个单位来测量所有波长。从其他来源导入RGB颜色和光谱以及将其生成为输出时,这将使您的麻烦减少。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.