tonemapping

时间:2020-06-21 12:11:32   收藏:0   阅读:70

 

技术图片

 

tone mapping operator就是这样一个映射曲线  输入0-正无穷 输出0-1  (上图例子 aces 曲线 可以处理负值 输出也是 0-2.2

曲线包含三部分

技术图片

 

 

技术图片

 

 

技术图片

 

 

技术图片

 

 

 光谱轨迹 第三张是真实世界的光谱轨迹

srg 和aces都  大约  是它的子集

tonemap就是做hdr相关转换的 在游戏最后做tonemap可以从hdr映射回ldr ---适应ldr显示器  可以选aces曲线回去 也可以自己调曲线 总之都是为了从0-正无穷到0-1 

图一就是aces映射曲线看起来的样子

最简单的从0-正无穷 映射到0-1的方法是  color/(color+1)但这个曲线不好看 

 

其余的颜色变化是用colorgrading来调的 白平衡 饱和度之类的

技术图片

 

 

技术图片

 

 

技术图片

 

 技术图片

 

 ue的tonemap

这篇paper里有他们整个的后处理管线

 

看来我对LUT那里的理解有问题 这几位大佬的意思是说 LUT是在LDR空间做的 (在photoshop里把映射关系 用一张图表示出来 把这张图在游戏里使用)

也就是说LUT是做colorgrading的 而已。。这种方法没有办法在hdr的设备上显示,也没有办法得到更广阔的色域gamut (which is about hdr

 

按照unity来看

它把colorgrading作为一个更宽的定义 包含tone 包含其它的色温什么的

ue把colorgrading和tonemapping当俩并列的概念来看

Rec709

Rec2020

 

 

https://www.youtube.com/watch?v=A-wectYNfRQ

https://bruop.github.io/tonemapping/

哎呀 原来我做讲座的时候一直都是在讲tonemap是来做hdr做ldr映射的 但后来自己忘记是这样了。。。还以为讲座的时候没这么讲 讲错了呢

估计各份文档都是这么说的。。所以当时没写错

 

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!