找回密码
 立即注册
查看: 2004|回复: 6

Gamma校正与线性工作流

  • TA的每日心情
    开心
    2024-7-20 12:47
  • 签到天数: 278 天

    [LV.8]以坛为家I

    26

    主题

    397

    回帖

    455

    VC币

    星辰大海

    Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

    积分
    394366

    新人登场崭露头角渐入佳境活跃达人

    橙兜酱 发表于 2022-11-2 00:40:59 | 显示全部楼层 |阅读模式
    本帖最后由 橙兜酱 于 2022-11-2 00:43 编辑


    这个是我自己学3D的时候做的一些笔记,虽然说这种科普已经烂大街百度一大堆了。
    所以这个笔记单纯的就是发出来留个备份,顺便记录一下我自己思考写出来的深度知识,如果未来我忘记了可以看这个笔记找回我现在的思考方式。
    大家看个乐呵就行,如果有什么错误大家也可以在评论区交流一下哈~


    什么是Gamma

    Gamma值就是对动态范围内亮度的非线性存储/还原算法。

    为什么需要Gamma校正

    在黑暗中点亮一个蜡烛,你会感觉到亮度会明显的增加,但是如果在明亮的房间内点亮蜡烛,你不会感受到亮度增加。这是人眼对于自然亮度的 非线性感知 。人眼对于黑暗环境下的亮度更加敏感。



    A:人眼感受到舒服的光强变化      B:真实世界的光强变化



    在现实最暗和最亮的动态范围是巨大的,如果要将其存储出来要耗费大量的存储而且不方便传输,所以想要把这么高宽容度的图片存储下来,方便传输,压缩是必不可少的。

    我们把物理光强50%的灰度叫做物理中灰,人眼中的50%的灰度叫美术中灰。
    可以看到,美术中灰对应的物理光强差不多是21.8%。

    8位通道能存储的值是0-255,而21.8%的美术中灰对应的值是256 x 0.218 = 55.808,也就是说整个美术暗部,只有55级灰阶用来存储,那么自然就会出现灰阶断层。



    而相机拍下来的图片是真实物理的线性光照明,如果压缩成8bit的话,线性光灰色部分因为暗部太少而会出现灰阶断层。基于人眼对暗部变化比亮部更为敏感的特性,人们就用了一套算法来提升暗部的层次,抛弃亮部的细节。

    这个算法就是Gamma,保存人眼感兴趣的暗部,压缩不感兴趣的亮部。

    Gamma值的存在,归根到底,是一个解决方案,用于化解“无限的自然存在,与有限的存储容量/传输带宽”之间的矛盾。

    了解Gamma校正
    Gamma校正与线性工作流_image_4.gif


    在了解校正前先简单的回顾一下什么是 线性色彩空间非线性色彩空间

    简单来说 线性色彩空间 是真实世界的灰度变化,经过Gamma矫正就是 非线性色彩空间 的了。

    Gamma=0.45是给电脑看的,这样会省存储空间,但是人眼看起来不舒服(太亮了)。
    Gamma=1代表着图片是线性色彩空间。
    Gamma=2.2是给人眼看的,这样会增加存储空间,但是人眼看起来舒服。
    (Gamma2.2的颜色空间叫做sRGB颜色空间)

    Gamma矫正如果互为倒数就可以无损还原回来,此时Gamma为1 。

    了解Gamma转换

    渲染器/相机拍摄的图片是 线性色彩空间 的,在转为8bit图片时候,为了保证低亮度的分辨精度,降低高亮度的量化存储开销,会先经过Gamma0.45校正,变成 非线性色彩空间



    经过传输后图片来到其他人的电脑,如果按照Gamma=0.45来显示的话图片会太亮,所以显示器会使用Gamma=2.2把图片还原出原本图片的正常灰度。



    非线性是怎么对渲染结果产生影响的

    非线性工作流的缺点:灯光衰减快,高光容易过曝,室内易昏暗。



    渲染器渲染的是线性色彩空间,如果你的材质是非线性的(Gamma=0.45),加上线性的灯光合成后会导致过曝的材质加上正常的灯光,然后你的屏幕在通过Gamma=2.2把过曝的材质拉回Gamma=1,此时原本Gamma=1的灯光就会被变的更暗。

    使用线性工作流

    在贴图输入给渲染器前需要使用Gamma=2.2,把美术数据还原成物理数据,这个过程叫De-Gamma。



    使用线性的材质,用线性的灯光渲染线性的结果,此时显示器会使用Gamma=2.2压暗,手动抵消回来就是正确的结果了。



    ---
    笔记参考:
    [Gamma校正与线性工作流入门讲解](https://www.bilibili.com/video/BV15t411Y7cf/)
    [【罗sir的课】色彩校正中的 gamma 值大揭秘](https://www.bilibili.com/video/BV1Sb4y1i7i6/)
    [gamma校正与线性工作流 - Win的小站 (winotmk.com)](https://www.winotmk.com/2020/06/1976)
    [色彩校正中的 gamma 值是什么?](https://www.zhihu.com/question/27467127/answer/37555901)
    [从0开始的技术美术之路(十)伽马校正_古守音的博客](https://blog.csdn.net/qq_43210334/article/details/117229466)
    [百人计划2.6伽马矫正](https://zhuanlan.zhihu.com/p/484571648)
    [【TA的自我修养 | 图形篇03】色彩空间与gamma校正](https://zhuanlan.zhihu.com/p/559048003)
    [色彩校正中的 gamma 值是什么?](https://www.zhihu.com/question/2 ... 8109535232%EF%BB%BF)
    [Gamma校正与线性工作流入门(韩世麟老师的视频笔记)](https://zhuanlan.zhihu.com/p/361093652)





    评分

    参与人数 3活跃度 +64066 收起 理由
    toaru + 66 很给力!
    Seekladoom + 51200
    铁皮厚厚 + 12800 赞一个!

    查看全部评分

    动画年鉴-统计表 (notion.so)
    动画年鉴网盘目录 (xido.workers.dev)

    欢迎参观,如果想一起收集整理的话可以在统计表主页找我联系方式~
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2024-7-20 12:47
  • 签到天数: 278 天

    [LV.8]以坛为家I

    26

    主题

    397

    回帖

    455

    VC币

    星辰大海

    Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

    积分
    394366

    新人登场崭露头角渐入佳境活跃达人

    橙兜酱  楼主| 发表于 2022-11-2 00:51:24 | 显示全部楼层
    另外还有一些其他问题:
    只要纹理不是用于基础色的话,用在其他比如高光、糙度、金属度之类的黑白接口上色彩空间都要要用非彩色吗?
    现在的情况是不清楚纹理方面的格式....不知道怎么看纹理是线性还是非线性的,也不知道为啥基础色可以直接用sRGB,而不需要用非彩色

    动画年鉴-统计表 (notion.so)
    动画年鉴网盘目录 (xido.workers.dev)

    欢迎参观,如果想一起收集整理的话可以在统计表主页找我联系方式~
    回复

    使用道具 举报

  • TA的每日心情
    无聊
    2023-3-18 18:33
  • 签到天数: 3 天

    [LV.2]偶尔看看I

    23

    主题

    313

    回帖

    1056

    VC币

    星辰大海

    Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

    积分
    406747
    Lambholl 发表于 2022-11-2 18:24:37 | 显示全部楼层
    果然这种偏向于专业的都没人回帖(哭
    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    2017-3-4 14:01
  • 签到天数: 4 天

    [LV.2]偶尔看看I

    14

    主题

    122

    回帖

    0

    VC币

    中级会员

    Rank: 3Rank: 3

    积分
    3590
    amiemie666 发表于 2022-11-2 20:15:04 | 显示全部楼层
    和这个讨论屏幕响应时间的视频一样,特有 学术感。
    这个视频里也有涉及到gamma转换的问题。
    https://space.bilibili.com/457709751
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2024-7-20 12:47
  • 签到天数: 278 天

    [LV.8]以坛为家I

    26

    主题

    397

    回帖

    455

    VC币

    星辰大海

    Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

    积分
    394366

    新人登场崭露头角渐入佳境活跃达人

    橙兜酱  楼主| 发表于 2022-11-2 20:41:03 | 显示全部楼层
    amiemie666 发表于 2022-11-2 20:15
    和这个讨论屏幕响应时间的视频一样,特有 学术感。
    这个视频里也有涉及到gamma转换的问题。
    https://space. ...

    这个也没怎么难的,了解出现原理和解决方法就够了。


    78-PBR纹理-线性工作流_哔哩哔哩_bilibili

    就是因为这个视频我查了半天资料终于把看懂了
    动画年鉴-统计表 (notion.so)
    动画年鉴网盘目录 (xido.workers.dev)

    欢迎参观,如果想一起收集整理的话可以在统计表主页找我联系方式~
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2024-7-20 12:47
  • 签到天数: 278 天

    [LV.8]以坛为家I

    26

    主题

    397

    回帖

    455

    VC币

    星辰大海

    Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

    积分
    394366

    新人登场崭露头角渐入佳境活跃达人

    橙兜酱  楼主| 发表于 2022-11-2 20:42:49 | 显示全部楼层
    Lambholl 发表于 2022-11-2 18:24
    果然这种偏向于专业的都没人回帖(哭

    问题不大,只是记录出来,有没有人看无所谓,而且这东西网上一大堆,
    https://www.bilibili.com/video/BV15t411Y7cf/
    这个视频讲的很好,只要看这个视频在看几篇文章就能理解
    动画年鉴-统计表 (notion.so)
    动画年鉴网盘目录 (xido.workers.dev)

    欢迎参观,如果想一起收集整理的话可以在统计表主页找我联系方式~
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2024-7-20 12:47
  • 签到天数: 278 天

    [LV.8]以坛为家I

    26

    主题

    397

    回帖

    455

    VC币

    星辰大海

    Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

    积分
    394366

    新人登场崭露头角渐入佳境活跃达人

    橙兜酱  楼主| 发表于 2022-11-4 11:52:09 | 显示全部楼层
    https://www.bilibili.com/video/BV19e4y1y7Mo/

    这个视频也讲的很详细
    动画年鉴-统计表 (notion.so)
    动画年鉴网盘目录 (xido.workers.dev)

    欢迎参观,如果想一起收集整理的话可以在统计表主页找我联系方式~
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    快速回复 返回顶部 返回列表