GPU Gems1 - 22 颜色控制(Color Controls)

这章将在游戏中图像处理的讨论,扩展到技术和艺术上控制颜色的方法和应用,包括将图像从一些的色彩空间中移入移出,以及快速地给任何2D或3D场景加上精美的色调。

色彩校正(Color Correction)是几乎所有印刷和胶片成像应用的一部分。色彩校正可用于将彩色图像从一个色彩空间移动到另一个色彩空间。

我们在电视、杂志和电影中剪刀的大部分图像,都经过了非常小心的彩色校正和控制。对于这个过程的理解,可以帮助开发者在实时应用程序中得到同样华美的视觉效果。

色彩校正通常有两种做法:一是各个通道的校正,分别是改变红色、绿色和蓝色各成分;二是混色操作,基于红、绿、蓝各个成分的同时操作,得到每个通道的输出值。

色彩校正的机理可以简洁而容易地在一个shader中描述。重要的是,美术和程序员使用的普通工具就能有效地控制他们。在这章中,运用Photoshop创建控制资源,然后通过像素shader应用到实时程序中(敲重点)

在Photoshop中提供了一些基于通道校正的工具。如级别(levels)和曲线(Curves)工具。

其中曲线是仿制了化学中的交叉处理(cross-processing)外观,确切地说,就是在C41化合物中处理E6叫绝所产生的假颜色外观。这样的处理已在印刷、电影和电视领域使用多年。

fig22-03.jpg
重新创建交叉处理效果的Photoshop曲线

 

fig22-04a.jpg
伪交叉处理 (a)原始图 (b)曲线调节之后

 

首先制作纹理

 

fig22-05.jpg
RGB灰度范围和调节后的RGB梯度

 

然后可以使用下面几行shader代码运用于输出颜色,使用色彩校正纹理映射,可以随意地用曲线工具重新创建任何色彩变化:

float3 InColor = tex2D(inSampler, IN.UV).xyz;
float3 OutColor;
OutColor.r = tex1D(ColorCorrMap, InColor.r).r;
OutColor.g = tex1D(ColorCorrMap, InColor.g).g;
OutColor.b = tex1D(ColorCorrMap, InColor.b).b;

 也就是说,使用每个原始的红、绿和蓝像素的灰度值,确定在梯度纹理中我们寻找的相关位置,然后由梯度纹理本身定义对新颜色的重映射,即由复杂曲线调节所定义的新颜色,如下图。

fig22-06.jpg

 

 可以通过把输入RGB值乘上一个矩阵进行不同彩色空间之间的转换。

float4 colorCubePS(vertexOutput IN,
                   sampler2D ColorTex,
                   float3x3  RGBxform) : COLOR
{
  float3 texColor = tex2D(ColorTex, IN.UV);
  float3 result = mul(RGBxform, texColor);
  return float4(result, 1.0);
}
fig22-07.jpg
DCC工具所做的彩色立方体变换预览

 

 

关键词提炼】

颜色控制(Color Controls)

色彩校正(Color Correction)

基于通道的颜色校正(Channel-Based Color Correction)

灰度变换(Grayscale Conversion)

色彩空间变换(Color-Space Conversions)

图像处理(Image Processing)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
GPU Gems是一本关于图形处理器(GPU)编程的经典书籍,由Nvidia公司出版。这本书的内容涵盖了各种有关GPU编程的主题,包括渲染、光照、物理模拟、图像处理等。通过学习这本书,读者可以了解到如何充分利用GPU的并行计算能力来提高图形渲染的效率和质量。 为了进行GPU Gems的下载,可以通过以下几种途径实现。 首先,可以到Nvidia的官方网站上搜索GPU Gems相关的资源,并尝试下载电子版的PDF文件或者浏览在线的html版本。这需要通过分别访问各个章节的网页或者注册成为Nvidia开发者来获取下载权限。网上也有一些第三方提供GPU Gems资源下载的网站,可以通过搜索引擎查找。 其次,可以尝试在一些科研论文或者技术博客的网站上查找GPU Gems相关的下载链接。这些链接可能是其他开发者或者研究者在自己的网站或者博客上分享的资源。在这些网站上找到链接后,可以直接点击下载相应的资源。 此外,可以尝试通过一些知名的编程书籍网站或者图书馆的在线平台搜索GPU Gems相关的电子书。这些平台通常会有一些付费或者免费的电子书资源,读者可以根据自己的需求选择合适的版本进行下载。 总之,通过以上的途径,读者有很多选择来下载GPU Gems,他们可以根据自己的需求选择相应的方式。无论是通过官方网站、第三方网站,还是其他相关平台,读者都能够找到他们需要的GPU Gems资源。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值