opengl-es – CITemperatureAndTint有向量输入怎么办?

前端之家收集整理的这篇文章主要介绍了opengl-es – CITemperatureAndTint有向量输入怎么办?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
好的,因此核心图像过滤器温度和色调有两个输入,中性和目标中性.然而,我最大的问题是它们都是双分量向量,这意味着它们都有两个数字输入.我希望第一个从2500到10000.矢量将用于什么?

解决方法

执行温度和色调调整的基本目的是校正捕获图像的白平衡:考虑场景的环境照明并调整颜色,使图像看起来更像是在“白色”光下拍摄(大约6500K) ).

温度与图像的温暖或凉爽有关,并且通常在质量上表征为橙色或蓝色.

色调是指在相同温度下颜色偏向绿色或品红色.请注意,色调(定义如此)主要与色温无关. (看一下带有普朗克轨迹和等温线的CIE图,以形成你对此的直觉.这里是一个:http://en.wikipedia.org/wiki/File:Planckian-locus.png).

因此,当您对执行白平衡调整感兴趣时(无论是使图像看起来更逼真,还是出于艺术目的),您必须提供四种不同的参数:初始图像的温度,白点的色调为它出现在初始图像中,输出图像的所需色温,以及输出图像中应出现的“中性”色调的色调偏移.图像的温度/色调组合是场景中的环境光和被成像材料的响应的函数,温度和色调都是有意义地表征捕获图像的白平衡所必需的.

这就是为什么CITemperatureAndTint需要两个向量:它需要刚刚描述的两对(温度,色调).

现在,如果要创建用于控制白平衡的UI,则实际上不必让用户控制所有这四个值.相反,将第二个向量(TargetNeutral)保持在常量(6500,0)并允许用户调整另一个向量(中性).通过这种布置,用户将选择感知的色温和原始图像的色调偏移. (您可以选择保持中性向量不变并允许用户调整目标中性向量;这可能更适合用户想要艺术性地调整白平衡的上下文,但是所选值与结果之间的相关性图像并不那么明显).

猜你在找的iOS相关文章