返回介绍

颜色修正曲线(ColorCorrectionCurve)

发布于 2021-06-20 00:15:02 字数 5088 浏览 1265 评论 0 收藏 0

颜色修正曲线 (Color Correction Curve) 通过对每个颜色通道使用曲线来进行颜色调整。通过基于深度的调整可以根据与相机的像素距离改变颜色调整。例如,因为存在大气散射中的粒子效应,所以风景中的对象通常会随着距离增大而更大程度地减饱和。

还可以应用选择性的调整,因此可以对自己选择的另一种颜色交换场景中的目标颜色。

最后,通过“饱和度”(Saturation) 可以方便地调整所有颜色饱和或减饱和(直至图像变为黑白),这是仅使用曲线时无法实现的效果。

有关基于查找纹理的颜色分级,另请参阅新的颜色修正 Lut (Color Correction Lut) 效果

以下图像演示如何通过仅仅增强饱和度滑块和蓝色通道曲线来使场景彻底不同

与其他图像效果一样,此效果仅适用于 Unity 专业版,并且必须先安装 Pro Standard Assets 然后才能使用。

属性

属性:功能:
模式 (Mode)在高级或简单配置模式之间进行选择。
饱和度 (Saturation)饱和度级别(0 创建黑白图像)。
红色 (Red)红色通道曲线。
绿色 (Green)绿色通道曲线。
蓝色 (Blue)蓝色通道曲线。
红色(深度)(Red (Depth))用于基于深度的修正的红色通道曲线。
绿色(深度)(Green (Depth))用于基于深度的修正的绿色通道曲线。
蓝色(深度)(Blue (Depth))用于基于深度的修正的蓝色通道曲线。
混合曲线 (Blend Curve)定义如何执行前景和背景颜色修正之间的混合。
选择性颜色修正 (Selective Color Correction)
启用 (Enable)启用 (Enable) 启用可选的选择性颜色修正。
关键 (Key)选择性颜色修正的关键颜色 (key color)。
目标 (Target)选择性颜色修正的目标颜色。

了解曲线

曲线提供 了一种增强图像的强大方式,可以用于增大或减小对比度、添加色调或创建迷幻的颜色效果。曲线分别作用于每个红色、绿色和蓝色颜色通道,所依据的理念是将每个输入亮度级别(即像素的原始亮度值)映射到所选的输出级别。输入与输出值之间的关系可以在一个简单图中演示:

水平轴表示输入级别,垂直轴表示输出级别。线条上的任何点都指定给定输入在处理过程中映射到的输出值。当“曲线”是从左下到右上的默认直线时,输入值映射到相同输出值,这会使像素保持不变。但是,曲线可以重新绘制以根据需要重新映射亮度级别。简单示例是线条以对角线形式从左上到右下的情况:

在此情况下,像素的亮度将反转;0% 映射到 100%,25% 映射到 75%,反之亦然。如果这应用于所有颜色通道,则图像将如同原始图像的照相负片 (photographic negative)。

对比度

图像中的大多数细节通过像素之间的亮度级别差异(与其颜色无关)进行传达。亮度差异小于 2% 的像素可能无法区分,但是高于此值时,差异越大,细节印象可能越深刻。图像中亮度值的传播称为其对比度。

如果将较浅斜率用于曲线,而不是角到角的对角线,则完整的输入值范围会挤压为较窄的输出值范围:

这会具有减小对比度的效果,因为输出中像素值之间的差异一定会小于输入(事实上,两个稍有不同的输入值可能实际上会映射到相同输出值)。请注意,因为图像不再占据完整的输出值范围,则可以在范围中向上和向下滑动曲线,从而形成整体上更亮或更暗的图像(平均亮度有时称为“就座”点,是在电视机上通过亮度控制进行调整的参数)。减小的对比度可以在场景中实现阴暗、雾或眩目光源的印象,具体取决于整体亮度。

不需要在整个亮度级别范围内减小对比度。曲线的斜率可以随其长度而变化,其中较浅部分对应于对比度减小的范围。在较浅部分之间,斜率可能比默认值更陡峭,对比度在这些范围内实际上会增大。像这样更改曲线可用于在图像的某些部分中增大对比度,同时在细节重要性较低的区域中减小对比度:

颜色效果

如果曲线设置对于每个颜色通道(红色、绿色和蓝色)都相同,则变化主要影响像素的亮度,而其颜色相对来说可保持不变。但是,如果曲线设置对于每个通道不相同,则颜色可能会显著改变。可以在颜色通道之间进行许多复杂交互,不过可以从下图中获得一些基本见解:

如上面的部分所述,减小对比度可能伴随着整体亮度的提高或降低。也就是说,如果红色通道变亮,则红色色调将在图像中可见。如果该通道变暗,则图像会着色为青色(因为此颜色是通过组合其他两个原色(绿色和蓝色)而获得)。

基于深度的颜色修正 (Depth-Based Color Correction)

在从远处查看时,颜色的显示通常稍有不同。例如,在风景场景中,颜色由于大气光散射而易于减饱和。可以使用基于深度的颜色修正创建这种效果。启用此项时,可使用两组颜色曲线,一组用于相机的近处裁剪平面,另一组用于远处裁剪平面。应用于对象的实际修正取决于其相对于相机的距离;两个裁剪平面之间的规范化距离用作两组颜色曲线之间的插值参数。插值的确切类型通过附加混合曲线指定,该曲线通过与颜色曲线将输入映射到输出差不多的方式,将规范化距离映射到插值。默认情况下,此曲线是直对角线,这会形成两个颜色修正之间的线性插值。不过它可以进行修改,以便根据距离使修正偏移。

选择性颜色修正 (Selective Color Correction)

使用此设置可以替换原始图像中的特定颜色(称为“关键”)并将其替换为所选目标颜色。将单个精确颜色用于关键容易引入视觉假象,因而改用范围。形成的颜色是关键与目标颜色之间的插值,具体取决于原始图像像素与指定键颜色的接近程度。

编辑曲线

在监视器 (inspector) 中单击曲线之一可打开编辑窗口:

该窗口底部是一些针对常见曲线的预设。但是,也可以通过处理关键点来改变曲线。右键单击曲线线条可添加新关键点,可以使用鼠标四处拖动该点。如果右键单击一个点,则会看到上下文菜单,其中提供 用于编辑曲线的几个选项。除了可以删除关键之外,还有四个确定如何影响曲线形状的选项:

  • 自动 (Auto):曲线将穿过该点,其形状将进行调整以使相邻点之间的弯曲平滑。
  • 自由平滑 (Free Smooth):可以使用附加到关键点的手柄编辑曲线的切线。
  • 水平 (Flat):启用“自由平滑”(Free Smooth) 模式并水平设置切线。
  • 折断 (Broken):与“自由平滑”(Free Smooth) 模式一样,关键点具有切线手柄,但是曲线左右的手柄可以分别移动以形成急剧折断而不是平滑曲线。

以下这些选项是控制点切线手柄行为方式的几个设置:

  • 自由 (Free):在指定切线上对曲线启用“折断”(Broken) 模式。
  • 线性 (Linear):关键点与其相邻者之间的曲线设置为直线。
  • 常量 (Constant):从曲线到其相邻者绘制平直水平线条,并采用急剧跃变 (sharp step) 形式来进行垂直移位。

硬件支持

该效果需要带像素着色器 (2.0) 或 OpenGL ES 2.0 的显卡。 此外,还需要深度纹理支持。 PC: 自 2004 年后的 NVIDIA 卡 (GeForce 6)、自 2004 年后的 AMD 卡 (Radeon 9500)、自 2006 年后的 Intel 卡 (GMA X3000);移动: 带深度纹理支持的 OpenGL ES 2.0;控制台: Xbox 360、PS3。

将自动禁用所有不被终端用户显卡支持的图像效果。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文