Gamma虽然是一个专有名词,其实可以解释为power(指数)运算。如果参数x的Gamma值为a,那么这个公式可以写为:
у= хa我们通常将X称为底数,a称为指数。需要记住的就是这样的一个公式:output = inputGamma Power指数函数对于读者来说可能不是很直观,但其实它很简单。只需要把底数设置为0-1,如果数设置为1,那么结果就不会改变(恒等公式),比如图4.086中的"Gammal.0曲线"。
这时当我们把指数设置为2,也就是底数的平方。通过这样的操作,我们会得到一些很重要的特性:
0.002=0.00-0.00=00.252-0.25-0.25 0.06250.502-0.50-0.50 =0.250.752-0.75-0.75 =0.56251.002-1.00-1.00= 1.00请注意,图4.087中的Gamma2.0曲线,在这个例子中我们可以看到当指数大于1时最终的结果要小于输入值。
蓝色的线条表示Gamma输出为1.0,红色的线条表示Gamma输出为2.0.
当所有的Ganma值都小于1.0时,得到的结果也会越大,也就是相反的曲线形状。当我们将Gamm值调整为0.4:
0.000.4 00.250.4=0.5743..
0.500,4 = 0.7578...
0.750.4 = 0.8913..
1.000.4 = 1.00在这之前,我们的最小值和最大值都保持在0-1之间没有改变,所有其他的值都有了较大的改变如图4.088所示。
现在如果我想要把两个Gamma操作合并呢?例如上面的函数Gamma 0.4外再进行一个Gamma 3.0的操作会得到什么样的结果呢?根据指数法则我们知道,在一个指数函数外再加一个指数,就是把两个指数相乘:
(xa)h= xab合并一些Gamma操作其实就是简单的乘法操作。当Gamma为2.0,我们想要通过一种方式来使最终曲结果为Gamma等于1.0,很明显我们需要另外的power指数函数,也就是什么值乘以2能得到1呢?答案就是12-0.5,我们称之为倒数(或是乘法互逆),如果两个数相乘的结果为1,那么这两个数就互为倒数。由此得出,如果想要把一个经过Gamma校正的图像恢复为linear[线性],便需要在此Gamma基础再乘以一个当前Gamma的倒数即可:linear output = inputl/current Gamma这也就解释了为什么当显示器对画面进行了Gamma 2.2的操作,这是为了使图像恢复正常的线性显示,我们需要再为图像进行一次Gamma 0.4545的操作,2.2 ×0.4545=1.0,如图4.089所示。
通过上面的学习,我们知道Gamma其实就是一条曲线,其背后的运算为指数运算,并且Gamma值为10时的曲线为Linear[线性]曲线。
为什么要学习这些呢?因为早期CRT显示器显示的问题导致图像显示较暗。这种好像电视的色彩空间YUV一样的历史遗留问题,直接导致现在的图像在拍摄后其Gamma便不是Linear[线性],所以在进后期制作时会产生种种问题,这在后面的课程中我们便会找到答案。
Gamma的由来其实与我们所使用的电脑的显示设备有很大的关系。由于早期的CRT显示器使用的是电子枪发射电子束到荧光屏幕上,但是屏幕上显示的亮度和实际的亮度信号并不是1:1的,而存在一种亮度失真。假设输入的是黑白信号,这种失真将使被显示的图像中间区域偏暗,从而觉得图像整体比原始图像偏暗;如果输入的是彩色信号,这种失真除了使显示的图像偏暗以外,还可能会造成图像的色调发生偏移。Gamma伽马校正就是用来解决这一月题的。通过对原始输入的信号进行伽马校正,提高其中间调区域来恢复其原始亮度。对于CRT显示器,由于品牌不同,其技术水平也有所不同,但一股来说,Gamma伽马校正值就是2.2。这也是Gamma22的由来。
图4.090所示为Sony显示器的Gamma伽马曲线,图上的曲线表示的就是Sony显示器未经校正的Gamma伽马曲线,x轴为输入的亮度信号,y轴为屏幕显示的亮度(单位为cd/m流明度)。
我们可以看到输入值与输出值并不是一对应的,而存在一条凹陷的曲线,这会使输出图像的亮度明显偏暗。如果想要解决这个问题,可以通过为输入值应用一条对应的倒数曲线,这样便可以使最终的显示结果恢复正常.
下面一组图像就是为了说明Gamma曲线对图像亮度所产生的影响,如图4.091所示。
由上面的原理我们知道,所有图像在真实环境下其Gamma曲线都是1.0,可以显示正确的明暗效果,但当使用显示器进行显示时,便会显示为比我们肉眼所看到要暗的图像,因为图像进行了一个Gamma 2.2的调整。所以为了解决这个问题,大多数数字图像在产生后就自动加亮了(进行了Gamma
04的反向调节),这样显示在显示器上时,其实进行了如下运算:Gamma 2.2 x Gamma 0.4545 = Gamma 1.0这样便把Gamma恢复成了1.0的正确显示结果。对于大多数普通用户来说,这确实是一件好事,它,我们看到了正确的图像效果,不需要我们手动去做任何亮度调节处理。Gamma的调整确实方便了普通用户,但对于我们制作人员来说却变成了一个问题。如果一张图像其对于场景的亮度描述不是线性的,旦我们对其进行操作,或是把它同其他的图片进行合成操作,便会得到错误的颜色结果,我们将不同Gmma值的图像进行合成操作时,会得到不同的Y值,也就是不同的亮度值,如图4.092所示。
把几种不同坐标曲线的图像进行合成操作,因为每个坐标系的曲线不同,同一个x如等于5,那么代不同的坐标系,得到的Y也不相同。
如何来解决这个问题呢?聪明的读者朋友可能已经想到了,那就是把所有图像都转换成Linear[线怕,这样一来,所有的 就都等于Y。这便提醒我们建立一个正确地使用Gamma的工作流程,把所有1的工程文件都转换为线性状态进行存储和操作。很多软件并没有把Ganma的校正作为默认操作来处理,ENuke在这方面进行了自动操作,在后面的内容中我们会进行详细的讲解。
上一篇 Nuke中的LUT如何应用?
下一篇 Nuke中的Gamma是什么
热门课程
专业讲师指导 快速摆脱技能困惑相关文章
多种教程 总有一个适合自己专业问题咨询
你担心的问题,火星帮你解答本文探讨了室内设计课程线下学习的价值和优势,为有志于深入学习室内设计的学生提供了参考和建议。了解火星时代教育的新兴在线学习平台......
游戏特效培训学习班是为了满足游戏行业对专业特效人才的需求,通过系统的培训学习,帮助学员掌握游戏特效技术,提升职业素养和技能水平。
本文评价和推荐一门优质的UI设计课程,为学习者提供专业的UI设计培训,适合想要从事网页UI和前端开发的人士。
本文是一篇关于有经验的UE5设计培训的文章,为学习和提升UE5设计技能的人们提供相关的培训信息和建议。
想要学习3dmax的火星学习哪个学校好?本文介绍了一些值得考虑的选择。
本文介绍网络游戏模型培训班的重要性和益处,以及如何选择适合的培训班。
1. 打开微信扫一扫,扫描左侧二维码
2. 添加老师微信,马上领取免费课程资源
同学您好!