目录:
最近在互联网上有很多关于色彩管理的讨论。 Android Oreo为色彩管理提供了新的支持,Pixel 2 XL以其糟糕的表现而闻名,而这两个结合在一起使我们想要谈论它。 但是,色彩管理究竟意味着什么呢?
让我们来谈谈它以及它的使用方式和原因,甚至可能是一些更酷的东西。
什么是色彩管理?
不要笑,但在谈论我们的小工具如何正确地做到这一点之前,你必须先了解我们眼睛看到的颜色是什么颜色。
颜色最容易被描述为色调,饱和度和亮度的结果。
光在特定波段或波长上发射能量,但是我们的眼睛看不到它们中的大多数。 这被称为频谱。 像IR(红外线,或比我们可以看到的光谱的红色末端更长的波长)和UV(紫外线,比我们可以看到的蓝色波长更短)这样的术语是真实的,并且有很多科学关于测量它们的强度,但它们不是与 颜色有关, 因为颜色是人类的东西。
在那些可见的光波长中, 色调是一个带能量最多的点, 饱和度定义了带宽(光的发射开始于光谱和它结束的地方),而亮度是人的强度 -可见光波。 Hue定义了我们的眼睛会看到什么颜色,饱和度定义了它的纯度,而Brilliance定义了它的亮度。 图表有帮助,所以这是一个。
在该图表中,红色,绿色和蓝色都具有大致相同的色调 - 它们在450-550纳米附近达到峰值。 红色带宽最多(覆盖更多频谱),因此饱和度低于带宽最少的蓝色。 所有三种颜色都具有非常高的亮度,在它们达到峰值时,它们同样强烈。 我们的眼睛将其解释为泥泞的丑陋黄色。 所有以红色,蓝色和绿色创建的颜色都有自己的光谱轮廓,就像丑陋黄色一样。
电视上的颜色和手机上的颜色以及相机的颜色都需要匹配。
RGB代表红色,绿色和蓝色。 它是一种用于创建颜色的附加模型,其中每个光谱中的光被发射以产生颜色。 如果您有彩色喷墨打印机(请记住那些?),它会使用青色,品红色,黄色和黑色(CMYK)作为减色模型创建颜色,其中应用颜色以使从表面反射的光是特定颜色。 RGBA(A用于Alpha并确定透明度)是在显示器上用于生成颜色的模型,无论使用何种类型的显示器。
使用CMYK模型的打印机产生的颜色和使用RGBA模型在手机屏幕上产生的颜色必须与我们的眼睛看起来相同 - 红色需要看起来是红色。
这是最基本形式的色彩管理。
实际颜色管理
“创造”颜色有很多不同的方法。 我们查看了上面的HSB,RGB和CMYK模型,但是还有很多其他方法可以尝试表示光源的输出对我们的眼睛来说是什么样的。 它们的设计都是为了使粉红色看起来是粉红色,绿色看起来是绿色,橙色看起来是橙色,等等。 我们可以很好地了解在任何介质中任何颜色模型试图表示什么颜色。 但一个基本的想法是不够的。
做一些事情与做得好不一样,这也适用于色彩管理。
颜色的光谱几乎是无限的,当你使用的东西能够显示超过少数时,你需要一种方法来确保一个人的眼睛看到一个特定的绿色阴影,无论它在哪里显示或是什么正在使用模型来创建它。 当您处理现代电子显示器可以显示的数百万种不同颜色时,重现正确颜色的好方法变得非常重要。
你需要一个好的屏幕
你从显示器本身开始。 任何好的高端显示器都需要能够重现宽色域 。 ITU-R(国际电信联盟 - 无线电通信部门)制定的标准决定了广泛的色域,它们涉及大量的数学和科学。 值得庆幸的是,我们不需要进行数学计算,只需要知道哪些颜色空间符合标准。 对于我们的手机,这通常是DCI-P3色彩空间。
现在,显示器可以显示更多颜色。
命中注定的Galaxy Note 7被列为首款配备100%DCI-P3 HDR显示屏的手机,但自从我们看到大量公司的DCI-P3显示器以来。 iPhone 7和更新的一体机,OnePlus 5及更高版本,HTC U11 +和Pixel 2 XL等都配备了100%兼容的DCI-P3显示器。 这意味着屏幕 可以 正确,准确地再现颜色,以符合ITU-R标准。
然后你校准它
一旦您使用正确的硬件,校准就会发挥作用。 校准是测量显示器的输出,因为它会再现不同的颜色并调整硬件,以使读数满足特定值。 因为不可能校准1670万种不同的颜色,所以使用了常见的颜色空间。 最 常见的是sRGB(标准红绿蓝)。
由HP和Microsoft开发的sRGB是显示器,打印机和互联网的标准,当没有定义特定的色彩空间时,它是一个非常好的标准。 校准sRGB非常简单,因为您可以使用一个非零值的通道调整,另外两个调整为零并循环。 这就是为什么你会看到255, 255, 255表示颜色(一个是白色)或255, 0, 0(红色)。 一旦校准了每个主要通道的色度,每种其他颜色也将被校准。
理想情况下,这是每个制作显示器的公司都会将显示器运出门外的。
在Oreo之前,Android上的色彩管理被打破了
问题是一些使用宽色域显示器的公司会拉伸sRGB空间并将颜色值重新解释为它们自己独特的色域。 这使得三个主要通道非常过饱和,这反过来意味着显示器能够显示的1670万种颜色中的每一种都不再被校准为在任何其他设备上看起来相同。
有许多颜色空间和配置文件。 Android最重要的是sRGB。
在Android Oreo之前,应用程序使用sRGB色彩空间。 这是有原因的 - 低端硬件。 显示宽色域比sRGB空间需要更多GPU和CPU功率。 如果Android设置为默认的宽色空间,那么人们购买的一些手机很难显示它。 即使手机的显示器甚至无法显示所有颜色,仍然会有相当大的性能影响。
高端设备制造商认为,“打破”颜色校准和处理颜色与他们自己的价值将展示他们的优秀显示器,如果有一件事我已经学会做这项工作将近八年是一个手机制造商只关心什么是最好的自己。
有些应用程序仍然需要显示大部分准确的颜色,即使制造商打破了色彩空间,因此开发人员不得不去饱和他们的资产来尝试和补偿。 例如,当红色停止符号与您识别的红色停止符号相同时,视频效果最佳,而不是制造商认为应该是的随机颜色。 一旦你推出了一个100%DCI-P3显示器的设备,该显示器针对sRGB色彩空间进行了校准,事情就会开始变得糟糕。 这是围绕Pixel 2上“静音”颜色问题的症结所在,尽管一些专家说校准在单元之间不是很准确。
这是它如何修复
适当的宽色域支持使得这个特殊的Pixel 2 XL和Note 8在两个屏幕上显示相同的图像。这是一个简单的部分,可能应该从一开始就完成。 开发人员可以检测设备是否正在使用宽色域显示,并且应用程序内部的活动使用正确的色彩空间来充分利用它。 如果设备无法显示宽色,则使用默认的sRGB配置文件。
Google为希望在其应用中遵循新指南的开发者提供了大量资产:
- 适用于API 26的Android通用色彩空间文档
- Android支持的色彩空间
- 广泛的颜色资产和内容指南
这一切都很好,并且应该被证明是确保颜色在不同设备之间看起来相同的好方法,除非它是一个无法显示每种颜色的低端模型。 这些设备之间仍然看起来正确,因为它们会使用sRGB颜色空间。 问题是让每个人都做同样的事情。
我们希望事情会变得更好
为了实现这一目标,三星,OnePlus,LG和其他所有“破坏”sRGB解释的公司必须回过头来纠正它,开发人员需要重建他们的应用以支持新的色彩空间指南。 没有人愿意这样做。
在应用程序开发人员使应用程序看起来很好之前,公司不会改变他们做事的方式,开发人员也不会编写看起来会破坏数以百万计的手机的应用程序。 Apple能够过渡到正确的色彩管理,因为它控制硬件和软件空间,以及设置App Store指南。 谷歌没有那种奢侈品。
在某个地方有人正在考虑解决所有问题的方法。 并在Pixel 2手机上提供用户可选的色彩空间来弥补 - 嗯,不是这样。 我们知道所有参与者都希望以正确的方式做事,这也意味着不会破坏已售出的手机上的任何东西。 希望它能早日解决。