对于视频校色,为什么ICC/ICM配置文件通常不能按预期工作?

发布时间:2023年10月19日

电影和电视行业在很大程度上避免使用ICC配置文件进行显示校准和色彩工作流程管理。

是什么让ICC配置文件不适合电影和电视使用?它们的任何方面,或采用基于ICC的工作流程进行硬件显示校准的校准系统,是否可行?

本页仅关注ICC配置文件用于显示器校准,而不是它们在打印工作流程或其他应用程序的颜色管理中的使用,尽管这里提出的观点是全面有效的


 为什么选择ICC Profiles?

ICC配置文件是由来自不同行业的大量公司和个人开发的,所有这些公司和个人都具有不同的要求和需求,因此需要一个包含大量选项、变化和功能的复杂工作流解决方案。

更重要的是,这些公司和个人的ICC配置文件操作所需的颜色准确度水平与电影和电视行业的要求不匹配,因为大多数要求来自印刷世界,其中颜色准确度比绝对更主观,这是由于在直接显示监视器上观看源图像时尝试匹配不同反射印刷介质的不精确性质。

由于所有观看媒体和环境的相似性,电影和电视行业依赖于更高水平的色彩匹配精度。这使得能够使用简单得多但准确得多的色彩管理,其中显示设备(显示器/监视器/投影仪)被校准到与任何和所有输入源隔离的给定标准。

因此,对于那些习惯于更简单,更准确,基于3D LUT的颜色和外观管理方法的人来说,理解ICC配置文件可能非常困难,如在电影和电视行业中使用的那样。

必要时,本页强调了基于ICC的“显示校准”在电影和电视行业中使用的局限性和问题。它没有试图评估ICC配置文件在任何其他行业中的适用性。然而,在阅读本页之后,您应该清楚,如果使用3D LUT将显示器自校准到高度准确的水平,则可以获得更好的颜色工作流程,以用于任何行业,并将“显示”ICC配置文件简化为简单的颜色空间定义,如本页末尾所述。

在本页中,我们还重点介绍了最佳的显示器校准,这是通过使用ColourSpace的3D LUT实现的。由于完全缺乏体积数据,我们不认为1D灰度/白色点LUT与3x 3矩阵组合产生可接受的校准水平。

ICC配置文件本身不校准任何东西。它们包含测量和信息数据,符合ICC标准的软件通过CMM(颜色管理模块)对其进行操作。图形程序中的CMM使用给定ICC中包含的数据执行图像调整,以尝试纠正设备/显示器校准问题/不准确性。

ICC配置文件执行图像调整,而不是直接显示校准。

使用不同CMM的不同图形程序通常会从相同的ICC配置文件数据产生不同的结果/精度。

通过设计,没有基于ICC的显示器校准可以接近通过3D LUT直接硬件校准获得的精度。

了解ICC应用程序和工作流程

ICC配置文件的问题之一是它们使用分布式方法进行颜色管理,其中包括通过图像操作进行显示校准。这意味着显示器校准的不同方面被保持在不同的“位置”内,可能包括:在显示器本身内;在ICC档案中;甚至在显卡中。

当在基于ICC的工作流程中使用时,任何显示器实际上被准确地校准本身是非常罕见的,几乎闻所未闻。

对于基于ICC的显示器校准,这被称为硬件与软件校准,因为显示器校准中的一些潜在地保持在显示器内,而校准的其他方面保持在ICC简档内,因此是基于软件的,并且实际上是图像操纵,而不是显示器校准。

潜在地,针对“显示器校准”的所有基于ICC的校正可以被保持在ICC简档内,但绝不是所有校正都被保持在显示器自身的硬件内。显示器从未完全校准。

问题在于,当基于ICC的校准系统被用于尝试直接“硬件校准”显示器(没有软件ICC简档参与)时,它仅使用用于灰度/白色点管理的1D LUT和用于色域(颜色)的简单3x 3矩阵来这样做。3x 3矩阵只能使用矩阵的6个平面侧来管理作为单个实体的色域,而根本没有任何体积信息。

此外,1D LUT组件甚至可以不驻留在显示器内,或者可以由保存在视频卡的VCGT(视频卡伽马表)内的1D LUT数据“补充”,或者甚至在ICC自身内,其中“校正”被应用为图像操纵。

任何体积色域信息(显示器色域内的测量-参见下面的分析补丁计数)(如果有的话)将被保存在相关的“显示器”ICC配置文件中,用于通过图像操作链接的“软件校准”。ICC配置文件在PC内使用的任何ICC感知图形程序内起作用,在图像显示在部分校准的显示器上之前有效地校正图像的色域。这意味着任何不支持ICC的程序都不会使用ICC配置文件数据进行图像校正,因此只能部分正确地显示任何图像。

术语图像校正是这里的关键,因为这是ICC配置文件的工作方式。它们保存的配置文件数据被图形程序的CMM(颜色管理模块)用来“校正”图像,而不是校准屏幕。如前所述,这意味着显示器本身实际上没有完全校准,并且由于处理限制(可用处理能力),CMM无法将图像实时校正到真正精度所需的水平,如下所述。

ICC配置文件显示校准工作流程

下面描述了与ICC配置文件一起用于显示器校准的分布式颜色管理。

  1. Source Image 源图像源图像(可能包括输入ICC配置文件)
  2. ICC aware graphics programICC感知图形程序ICC profile(转换为工作色彩空间)
  3. ICC Working Colour Space 工作色彩空间工作色彩空间(例如sRGB)
  4. Working Colour Space ICC感知图形程序ICC配置文件(显示配置文件数据,用于校正图像色域/颜色,以尝试补偿显示器的不准确性)
  5. VCGT 显卡VGCT 1D LUT(可用于灰度/白色点校正)
  6. Grading Display 显示器校准1D LUT和3×3矩阵(可用于有限的显示硬件校准,如果可用)k

此图像工作流程是通用的,但将有助于理解ICC配置文件如何以分布式形式通过图像校正用于显示器校准,而显示器本身未完全校准。

注意,ICC内的显示器色域配置文件数据不用于校准显示器,而是由CMM用于对图像应用校正,其试图补偿不准确校准的显示器的不准确性。这种校正的水平-其精度-取决于使用中的图形程序中的CMM,并且是关于为什么没有基于ICC的校准可以接近真正的基于显示器的硬件3D LUT校准的关键部分。

ICC配置文件数据以表格形式保存,通常称为查找表,但不应与真正的3D LUT混淆。ICC配置文件表通常只包含原始测量值,而不包含处理后的校正数据。

各种颜色空间之间的转换是通过PCS(配置文件连接空间),没有显示在上图中。

在上述基于ICC的彩色工作流程中,最后三个组件全部联合收割机以“调整”所显示的图像,使其与原始“显示轮廓”和CMM所允许的一样精确,因此其在显示器上看起来是正确的。
注:使用术语“调整显示的图像”,因为显示器本身从未完全校准。

正因为如此,任何不知道ICC的图形程序,就像大多数电影和电视创意系统一样,将有效地看到一个未校准的显示器,使任何创意色彩决策无效!

如果使用VCGT 1D LUT,则可能会出现其他潜在问题,因为它严格来说不是ICC规范的组成部分,并且依赖于第三方管理程序来确保在PC启动时加载VCGT。不幸的是,这种加载失败或VCGT LUT在没有警告的情况下被覆盖是常见的,进一步使显示器校准无效。

并且如上所述,用于灰度/白色点的1D LUT可以潜在地保持在显示器内;国际刑事法院;或者两个或所有三个的任何组合,使得很难真正知道显示器本身实际上是灰度/白色点校准的什么级别。它可能只是灰度校准,没有白色点校正,反之亦然。或者根本没有校准…

性能分析与校准

与在电影和电视彩色工作流程中使用3D LUT相比,在谈论ICC配置文件和校准时,有一件事可能非常令人困惑,那就是使用术语“配置文件”或“配置文件”和“校准”。

轮廓是显示器的测量或表征,以记录其对已知输入的实际响应。这是任何最终校准精度的关键,因为所使用的补片数量,特别是体积补片,定义了可以达到的最终精度水平。ICC分析很少使用许多补丁-见下文。

在基于直接显示的校准工作流程中,与ColourSpace一样,配置文件数据可以立即用于生成直接“硬件”校准-直接加载到显示器中的3D LUT,与专业分级监视器一样。

在这样的直接显示校准工作流程中,剖析和校准被直接链接。

在基于ICC的校准中,显示器首先被“硬件校准”,这可能涉及手动用户调整,或者可以仅仅是从初始剖析生成的1D LUT和3x 3矩阵。

无论如何,在部分硬件校准之后,剩余的体积轮廓数据被保持在ICC轮廓内以用于图像校正,从而尽可能地完成校准工作流程。

可以看出,在ICC校准工作流程中,校准和轮廓数据的概念是分开的,这是在比较这两种方法时造成大量混淆的原因。

不考虑上述问题,假设完全符合ICC工作流程,基于ICC的显示器校准可以达到什么样的精度水平?

从根本上说,任何基于ICC的显示器校准结果都不可能像使用ColourSpace那样准确,原因很简单。基于ICC的工作流程中使用的色彩处理(CMM)与ColourSpace中使用的高级色彩引擎完全不同。

当通过ColourSpace执行高精度显示校准时,该过程有两个不同的步骤。第一个是显示器的表征,以获得其实际能力和潜在的伽马和色域,通过使用大量色标的测量分析来执行。然后,该显示器表征数据用于生成3D LUT,该3D LUT将尽可能准确地“校准”显示器。

初始表征所需的时间与探针读取分析过程中使用的所有补丁所需的时间一样长,并且将根据补丁的数量和所使用的探针而变化。这基本上与使用基于ICC的校准过程相同,但几乎总是通过使用ColourSpace的大量颜色补丁-原因如下所述。

3D LUT的生成是我们实际上更感兴趣的过程,因为这是定义校准的最终精度的地方。使用ColourSpace,LUT生成过程可能需要几秒钟到几分钟,具体取决于给定显示器所需的“校准”级别。与其他基于3D LUT的校准系统相比,ColourSpace的速度非常快,因为它的颜色引擎是最先进的,这就是为什么ColourSpace校准不会像其他系统那样引入伪影/条带,也是为什么它可以产生最准确的最终校准。

现在将上述内容与ICC生成最终图像校正的方式进行比较。

如上所述,基于ICC的“校准”实际上不是与ColourSpace相同的校准,因为ICC包含显示器的配置文件数据,而不是显示器的实际处理的“校正”。图像在显示在未校准的显示器上之前通过图形程序的CMM进行“校正”。这种校正必须使用相对简单的颜色处理算法来执行,否则在图像管道中会有明显的延迟-可能是几分钟。

将其与ColourSpace中的高级颜色引擎生成高度精确的3D校准LUT所需的时间进行比较。这样的处理是不可能通过图形程序的坐标测量机。

此外,基于ICC的图像校正是由使用中的图形程序内的CMM定义的,而不是ICC简档本身,因为它们倾向于保存原始测量(简档)数据,因此图像校正的结果将取决于所使用的图形/创意应用而不同。例如,在Photoshop中,可以在Adobe ACE和Microsoft ICM之间进行交换-这是两种不同的CMM,可以生成不同的结果。

由此可以容易地看出,由CMM使用ICC简档数据执行的图像校正永远不可能希望匹配ColourSpace生成的3D LUT的精度。它基本上不打算,因为处理开销太大,CMM处理通常基于简单的线性插值。

没有基于ICC的颜色工作流程能够采用先进的颜色引擎进行图像校准,导致与ColourSpace生成的3D校准LUT相比,最终颜色准确度相对较低。

另一个因素是基于ICC的校准系统,因为有很多,大多数PC显示器制造商提供自己的校准系统,如EIZO的ColorNavigator; NEC的SpectraView戴尔的DUCCS等。最大的共同点是他们倾向于使用X-Rite的Publisher/Profiler系统来执行分析和有限的硬件校准。

这种基于ICC的校准系统几乎总是首先带您通过手动校准过程,使用显示器的OSD或硬件控制按钮来设置所需的黑色和白色水平,以及可能的白色点(色温)等。这就是大多数这些系统所称的硬件校准。

第二步可以是用有限数量的块来“配置”显示器,以便定义显示器的灰度和色域,并且潜在地将1D灰度/白色点LUT和3 × 3矩阵加载到显示器中以用于进一步的硬件校准(如果可用的话)。

然而,可能根本不存在对显示器的附加硬件校准,而是依赖于图形卡的VCGT来进行灰度级/白色点校准,并且依赖于相关联的ICC的色域简档数据来允许使用中的图形程序管理最终图像校正。

或者,可能没有1D LUT和/或3x 3矩阵加载到显示器中,并且可能根本不使用VCGT,所有显示器捕获的配置文件数据都保存在ICC内,完全依赖于使用中的图形应用程序来校正显示时图像的每个伽马和颜色方面。

在所有这些场景中可以看到的是,显示器从未真正完全校准,并且必须使用图形程序的CMM来动态生成图像校正的限制永远无法与3D LUT校准的精度相匹配。

 分析修补程序计数

如已经陈述的,当剖析用于校准的显示器时使用的片的数量定义了任何给定显示器的潜在校准精度。一般而言,补丁越多,校准结果越好,因为“校正”LUT的生成对显示器的体积不规则性有更好的理解。

对于离线校准系统,例如ColourSpace,可以使用数千个补丁(容易地为10,000个),因为生成校准LUT的处理时间是无关紧要的。

使用动态图像校正,与ICC配置文件和图形程序CMM一样,没有可用的处理时间,并且具有太多配置文件数据的ICC可能会减慢图形程序。

因此,许多制造商校准程序将贴片的数量限制为最多几百个。X-Rite的Publisher/Profiler最多有6,000个,但X-Rite自己的操作信息表明使用的要少得多,并且许多制造商特定的校准系统仅限于100个甚至10个补丁。

此外,仅仅因为给定的ICC可能包含大量的补丁颜色数据,不能保证使用中的CMM将实际使用所有数据,或者将正确地解释它。通常,由于CMM能够执行的有限的颜色处理,太多的数据将导致图像伪影。

基于X-Rite的制造商硬件校准

另外,不基于ICC的制造商硬件校准系统,例如Atomos和SmallHD,也使用X-Rite Publisher/Profiler系统,并且仅生成1D LUT和3×3矩阵校准,并且不执行基于3D LUT的校准。

 色适应

由于ICC配置文件工作流程已经为印刷行业开发,所有色度学都基于在D50照明环境中查看印刷品,并尝试将显示器与相同的感知颜色匹配。

因此,由于所有ICC配置文件的预期白色点被指定为D50,因此所有色度值都需要从显示器的默认白色点进行调整,对于Rec709和sRGB,默认白色点为D65。这方面的问题是适应变换基本上是对人眼如何适应变化的白色点进行建模的最佳猜测。这不是真正的数学转换。此外,有许多不同的自适应变换在使用中,虽然布拉德福德变换目前是最广泛使用的,但已知具有其他变换(诸如夏普变换)试图克服的问题。

最终的结果是需要应用任何形式的色适应将引入未知的误差,因为它们都是近似值。它们引入的误差量可能小到不相关,但可能不会…

在研究了许多第三方ICC配置文件之后,也很明显,所使用的实际变换矩阵值并不总是相同的,即使报告使用了相同的变换-例如Bradford。

十六进制舍入误差

所有ICC配置文件中固有的另一个错误是使用十六进制值,而不是十进制值。这会导致ICC配置文件中的舍入错误,而不管ICC生成中使用的值的原始精度如何。

Q:我的工作色彩空间ICC真的正确吗?

虽然不一定与显示器校准直接相关,但是对于一般流通的不同工作颜色空间ICC简档存在真实的问题。实际上很少有人是准确的,不仅仅是因为这里概述的问题。

如上所述,我们已经研究了许多第三方ICC配置文件,包括标准工作颜色空间配置文件,例如sRGB,Rec709等。许多都有固有的错误,包括配置文件中的错误值,如错误指定的颜色和伽马值。

有多少用户实际验证他们使用的ICC工作空间的准确性?

色彩准确度与快乐的繁殖

除了显示“配置文件”数据外,ICC配置文件还包含有关CMM应如何管理数据的其他信息。由于ICC配置文件真正针对的是工作流程中的颜色管理,在工作流程中不可能始终保持准确性-图像从扫描仪和相机等捕获设备移动到喷墨打印机,激光打印机,平版印刷等输出设备,通过监视器进行创造性输入-试图始终保持绝对的颜色准确性是不可能的。

因此,附加信息被保存在ICC简档内以帮助生成令人愉悦的图像。

渲染意图就是这样一组信息,旨在管理由于色域限制而无法正确显示的颜色。基本上,如何处理色域外的颜色。它们定义了如何处理色域外的颜色,四个选项中的每一个都会根据它们所做的妥协产生不同的结果。

四个渲染意图是:

  • 感知:将目标颜色空间压缩到显示器的可用颜色空间(色域),导致整个范围内的所有颜色值都不准确
  • 饱和度:大致类似于感知,具有相同的色域压缩,但以牺牲色调准确度为代价保留饱和度
  • 绝对比色法:不使用颜色压缩,而是裁剪色域颜色,为显示器可以显示的所有颜色保持准确的色度
  • 相对比色法:与绝对色度相同,但它不尝试校正白色点,而是根据白色点变化向所有颜色添加相对偏移

从上述信息中可以明显看出,绝对色度是为显示器校准提供预期结果的唯一选项。但是,某些基于ICC的校准系统默认为感知,或者V4 ICC配置文件可以包含多个渲染意图。

这可能会导致问题,因为不同的图形程序可能默认使用不同的渲染意图。例如,如果显示ICC包含感知意图,则Lightweight使用感知意图,而Photoshop使用色度。

应该注意的是,ICC配置文件没有定义在使用色度渲染意图时应该如何处理色域外的颜色,将决定权留给使用中的CMM,这意味着不同的CMM会出现颜色变化。


ICC校准验证

如何使用ICC配置文件的一个真实的问题是验证校准。

问题是您必须使用正在处理ICC配置文件数据的CMM进行验证,例如,这意味着通过Photoshop运行补丁集,如果这是图形程序,以及您正在使用的相关CMM。

若要通过Photoshop执行此操作,您需要在ColourSpace中使用DIP模式(显示独立轮廓),并在Photoshop中运行补丁集作为“动画”,每个补丁设置为使用中的探头所需的持续时间。


V4 ICC和3D LUT

随着v4 ICC配置文件(以及新的iccMAX配置文件)的引入,增加了使用LutAtoBType标记的功能,这大大提高了3D LUT仿真的可达到精度。精确模拟3D LUT的能力消除了CMM在运行中处理任何校正的需要,有效地保证了图像校正的颜色精度。

这就是SpaceMan ICC生成v4 ICC配置文件的原因,因为它通过LutAtoBType标记有效地将完整的3D LUT嵌入到ICC配置文件中。这可以用于高度精确的显示器校准,ICC与生成3D LUT的显示器相关联,例如通过“Windows颜色管理”。

使用加载了ColourSpace 3D LUT的v4 ICC配置文件的一个主要好处是能够保持校准精度,因为ColourSpace已经完成了生成校准LUT的所有艰苦工作,这意味着使用ICC的图形程序和相关CMM根本不需要执行任何处理。它只是通过ICC中保存的3D LUT数据传递图像。

有关使用SpaceMan ICC进行显示校准的更多信息,请参见SpaceMan ICC用户手册。

不幸的是,并非所有的ICC感知程序都符合v4 ICC(或icc MAX)。


一种更好的方式来显示校准ICC工作流?

对于任何真正关心颜色准确性的人来说,他们选择的显示器应该始终具有内置的3D LUT功能。如果没有这一点,任何颜色准确性将受到限制的所有原因上述,特别是当使用基于ICC的工作流程。

有了3D LUT功能的显示器,可以采用更好,更准确,本质上更简单的工作流程。

显示器应使用ColourSpace进行精确校准,使用直接加载到显示器中的3D LUT。该校准可以是针对给定的颜色空间标准,诸如Rec709、P3、sRGB、Adobe RGB等。或者,校准可以针对显示器固有色域,用于不用于电影和电视可交付物的应用(即,用于摄影工作流)。

相关的显示器ICC配置文件可以是简单的曲线和矩阵配置文件,或曲线和着色剂配置文件,简单地定义显示器的校准。

例如,如果显示器已经被3D LUT校准到Rec 709,则ICC简档将伽马定义为2.4,并且色域定义为Rec 709。

由于显示器经过精确校准,因此不需要在显示器ICC配置文件中保存任何附加信息,并且如果需要,图形程序CMM将仅被要求执行简单的颜色空间转换!

校准显示器本身

在以上部分中,建议对于不受设定的颜色空间标准约束的图像工作流程,诸如当执行摄影工作时,将纸打印作为所需的最终交付,将显示器校准到其自身的原生色域可能是有利的。

这与校准到给定的颜色空间(例如Rec 709)完全相同,除了“目标”颜色空间是基于显示器的峰值RGB值的用户定义的颜色空间。

使用ColourSpace,在显示器未校准的情况下,使用校准界面测量100%红色、绿色、蓝色和白色。记录xy值,并使用它们通过“转换颜色空间”菜单生成新的颜色空间,并添加显示器目标伽马值-最有可能为2.2用于摄影工作。

这个新的颜色空间现在就是您要使用正常的ColourSpace过程校准显示器的颜色空间!

相同的gamma和xy值可用于生成新的简单曲线和矩阵,或曲线和着色剂显示ICC配置文件。

 伽马

在尝试校准到sRGB时,许多显示器校准系统存在一个特定问题。目标伽马。

有一种误解认为sRGB颜色空间标准具有复合伽马,其线性部分接近黑色。

这是不正确的,因为实际上这是图像处理的一部分,而不是显示器校准的目标颜色空间标准。对于显示器校准,目标颜色空间应使用简单的幂律伽玛,2.2。

这是因为sRGB被设计为与CRT显示器一起工作,并且所有CRT显示器都是幂律伽马。
(For sRGB规范似乎假设CRT显示器本身是2.2伽马-今天我们认为它们是2.35。

sRGB的公式为:x <= 0.0031308?x * 12.92:(1.055 * pow(x,1/2.4))- 0.055

Rec 709的公式为:x < 0.018?(x * 4.5):1.099 * pow(x,(0.45))- 0.099

两者都有接近黑色的线性部分,具有不同的整体系统伽玛。

对于独立的显示器校准,使用这些标准是不正确的,应该使用纯幂律伽马,就像ColourSpace中的标准颜色空间预设一样。

联系我们:

如果您有什么问题或想要了解的讯息,可以在下方评论区留言或直接联系我们:sale@colorspace.com.cn或拨打电话400-886-3881!分享您的看法或提出您的问题!

关注【正印科技】公众号了解更多行业动态

Was this helpful?

0 / 0

http://xzh.i3geek.com
发表回复 0