如何近似计算 555nm 光下的 P3-RGB 值

问题描述 投票:0回答:1

srgb有通用的方法,但我找不到P3的方法

image colors graphics gamut
1个回答
0
投票

只是一个简短的回答。我没有时间提供完整的详细信息,但它可能会为您提供进行正确计算的输入。

你说:大约,所以我会去维基百科看看,例如颜色空间,您可以在其中找到经典的色度图,在这种情况下: Chromaticity diagram

外线是光谱颜色(+底部的紫色线)。如果您观察,光谱线有蓝色数字,即波长(以 nm 为单位),因此您可以估计 555 的位置并找到 CIE xy 的坐标(通常我们使用缺失的坐标作为亮度,但在色域边界上,您可以使用必须拿走你得到的)。

现在您就获得了想要再现的色度。那么让我们检查一下(也在维基百科中)Display-P3 的数据(我认为它是 DCI-P3 的派生),所以 https://en.wikipedia.org/wiki/DCI-P3

您将获得 P3 的 3 个原色的色度和白点。现在您需要找到绿色和红色之间的直线上与所需 x,y 近似的点。通常使用两种方法:一是最近的点(即垂直点),二是从您的点出发的线与白点和红绿线相交的点。只需查看 P3 的色度图(可能在色域页面或谷歌搜索中),然后直观地选择 x,y 坐标。

现在事情变得更加复杂(因为我认为有人重构了维基百科页面)。我们有 x,y,并且我们想要 Display-P3 中的 R、G、B。我们经常使用中间色彩空间 XYZ(您应该找到从/到所有色彩空间的转换)。例如。 https://en.wikipedia.org/wiki/CIE_1931_color_space#CIE_xy_chromaticity_diagram_and_the_CIE_xyY_color_space您知道如何转换为X、Y、Z 选择Y(亮度)为1或255(根据您的喜好)。稍后我们将进行缩放,以使 R、G、B 值不超过 255(因此色度的最大亮度)。

我没有很快找到如何在 Display-P3 中将 XYZ 转换为 R、G、B,但您应该找到数据,或者只是使用 R、G、B 进行一般转换(以主色度作为参数给出)。请记住,在这个步骤中,我们在线性空间中工作,因此您需要应用 gamma (并且可能在此之前应用缩放值:3 个通道的缩放值相同,并且始终在线性空间上,否则色调将会改变)。

© www.soinside.com 2019 - 2024. All rights reserved.