柔性显示器件亮室色域计算方法

上传人:姜泥 文档编号:333004948 上传时间:2022-09-01 格式:PDF 页数:8 大小:315.83KB
返回 下载 相关 举报
柔性显示器件亮室色域计算方法_第1页
第1页 / 共8页
柔性显示器件亮室色域计算方法_第2页
第2页 / 共8页
柔性显示器件亮室色域计算方法_第3页
第3页 / 共8页
柔性显示器件亮室色域计算方法_第4页
第4页 / 共8页
柔性显示器件亮室色域计算方法_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《柔性显示器件亮室色域计算方法》由会员分享,可在线阅读,更多相关《柔性显示器件亮室色域计算方法(8页珍藏版)》请在金锄头文库上搜索。

1、GB/T 38001.51-XXXX/IEC 62715-5-1:2017 30 A A 附 录 A(资料性)亮室色域计算方法 A.1 目的 该方法的目的是描述一种计算三维CIELAB颜色空间中分散色点的色域体积的过程。A.2 计算色域值的程序 程序应按如下(见图A.1)。图A.1 计算色域空间的分析流程图 1)根据 7.4 中规定在标准室内或室外照度条件下,至少测试显示的红色、绿色、蓝色、青色、品红色、黄色、黑色和白色。表 A.1 提供了在暗室照度条件下使用 sRGB 基色将白色亮度(Y)归一化至 100的示例。开始 测试颜色的光谱辐亮度 结束 计算/测试黑色与其他颜色之间的等级 将 XYZ

2、 转换至 CIELAB 确定 CIELAB 坐标下的四面体 计算四面体的总体积 GB/T 38001.51-XXXX/IEC 62715-5-1:2017 31 表A.1 sRGB 基色的三激值 颜色 xQ yQ XQ,amb YQ,amb ZQ,amb 红色 0.640 0.330 41.239 21.264 1.933 绿色 0.300 0.600 35.758 71.517 11.919 蓝色 0.150 0.060 18.048 7.219 95.053 青色 0.225 0.329 53.806 78.736 106.973 品红 0.321 0.154 59.287 28.483

3、96.986 黄色 0.419 0.505 76.998 92.781 13.853 黑色 0.000 0.000 0.000 0,000 0.000 白色 0.313 0.329 95.046 100.000 108.906 2)使用公式(43)(46)将所有颜色点转换至 CIELAB 颜色空间中。表 A.2 和图 A.2 为 CIELAB颜色空间中 sRGB 颜色设置示例。表A.2 CIELAB 颜色空间中 sRGB 颜色设置示例 颜色 a*b*L*红色 80.105 67.223 53.233 绿色-86.188 83.186 87.737 蓝色 79.194-107.854 32.30

4、3 青色-48.084-14.128 91.117 品红 98.250-60.833 60.320 黄色-21.561 94.488 97.138 黑色 0 0 0 白色 0 0 100 GB/T 38001.51-XXXX/IEC 62715-5-1:2017 32 图A.2 CIELAB 颜色空间中 sRGB 的色域 3)通过将显示的色点中包含的所有四面体相加来计算色域体积,并报告与 sRGB 色域体积相比的体积百分比。表 A.3 提供暗室下在 CIELAB 颜色空间内计算的 sRGB 色域体积的显示示例。表A.3 CIELAB 颜色空间中 sRGB 色域示例 色域 总计 8.20105

5、相对 sRGB 百分比 100%A.3 用于CIELAB色域计算的表面分解法 A.3.1 目的 该算法基于任意一组CIE 1931XYZ三刺激值给定的色域角。最小颜色组为红色、绿色、蓝色、青色、品红色、黄色、黑色和白色。对于在CIELAB色域空间轮廓中没有良好表现的凸形形状的情况,需要更多的采样颜色才能准确地确定色域空间值。XYZ值应以输入变量P的形式排列,最少需要八种颜色情况。输出值是计算所得的色域空间。A.3.2 条件 假设CIE XYZ颜色空间内的色域定义为给定极限值条件的凸形空间。CIELAB颜色空间的色域也将是凸形空间,通过用最大亮度的点(比如白色点)在CIE XYZ空间内归一化,并

6、将不再完全是凸形的地方转换为CIELAB颜色空间。A.3.3 算法 90 80 70 60 50 40 30 20 10 0-80-60-40-20 0 20 40 60 80-100-50 绿色(-86.2、83.2、87.7)青色(-48.1、-14.1、91.1)黄色(-21.5、-94.4、97.1)白色(0、0、100)红色(80.1、67.2、53.2)品红色(98.2、-60.8、60.3)蓝色(79.2、-107.8、32.3)GB/T 38001.51-XXXX/IEC 62715-5-1:2017 33 a)获得变量 P 为颜色拐点的凸形空间,令该空间的表面分组个数为 T,

7、将总体积 v 初始化为 0;b)计算 P 点的平均值作为中间值并令该值为 Pm;c)对于每一个三角形表面模块 T:1)令 s 等于 L*、a*、b*坐标大于 10 的边缘数;2)如果 s=0,则计算则计算曲面顶点和与 Pm 之间的体积,使 v 加上该体积;3)如果 s=3,则计算 CIEXYZ 空间中的各个中点,并用两个最靠近三角形顶点的中点和三个交点将一个三角形分为 4 个从属三角形,并对每个从属三角形重复此操作 3 次;4)如果 s=1 或 2,计算在 CIELAB 空间中最大边缘在 CIEXYZ 空间内的各个中点,并通过边缘中点和对面顶点将一个三角形分成 2 个从属三角形,并对每个从属三

8、角形重复此操作 3次;注1:其中顶点为标准 RGBCMYKW。注2:使用范围比长度计算更快。d)返回总体积 v 值。A.3.4 软件执行示例 为了执行下面的Matlab程序,执行以下指令,并将相应的sRGB数据加载到存储中:P=GetGamutCorners(sRGB)默认使用D65白光 P=0 0 0 0.4124 0.2126 0.0193 0.7700 0.9278 0.1385 0.3576 0.7152 0.1192 0.5381 0.7874 1.0697 0.1805 0.0722 0.9505 0.5929 0.2848 0.9699 0.9505 1.0000 1.0891

9、其中,数据矩阵对应于下面的三刺激坐标,如表A1所示:XK YK ZK XR YR ZR XY YY ZY XG YG ZG XC YC ZC XB YB ZB XM YM ZM XW YW ZW 通过执行以下命令获得CIELAB色域空间:CIELabVol_subd(P)ans=8.201x105 GB/T 38001.51-XXXX/IEC 62715-5-1:2017 34 CIELabVol_subd.m function v=CIELabVol_subd(P)%Each row of P contains XYZ tri-stimulus values of gamut corner

10、points.%The 3D gamut is defined as the convex hull of these points in XYZ space.%The surface is recursively subdivided down to a threshold scale in CIELAB%and the volume made by each surface tile to a central point is summed thresh=10;%CIELab subdivision threshold%Get the hull defined by the points

11、T=convhulln(P);%Get the white point(taken as the primary with the maximum Y)W,i=max(P(:,2);W=P(i,:);%Normalise the gamut to the white point Pn=P./(repmat(W,size(P,1),1);%get the mid-point Pm=mean(Pn);%add-on the CIELab points Pn=Pn,XYZ2Lab(Pn);Pm=Pm,XYZ2Lab(Pm);%calculate and sum the Lab volume of e

12、ach surface tile to the mid-point v=0;for n=1:size(T,1),v=v+SubDLabVol(Pn(T(n,:),:),Pm,thresh);end%sub-functions%XYZ2Lab converts XYZ values arranged in columns to L*a*b*function t =XYZ2Lab(t)i=(t0.008856);t(i)=t(i).(1/3);t(i)=7.787*t(i)+16/116;t=116*t(:,2)-16,500*(t(:,1)-t(:,2),200*(t(:,2)-t(:,3);e

13、nd GB/T 38001.51-XXXX/IEC 62715-5-1:2017 35%Recursive function to devide up the surface tile then return the volume function v =SubDLabVol(vp,c,th)%Get the max extent of each edge(quicker than length calculation)m=max(abs(vp-circshift(vp,1),2);%Count how many edges have extents larger than the thres

14、hold s=sum(mth);if(s=0),%no edges larger:return the volume v=abs(det(vp(:,4:6)-repmat(c(1,4:6),3,1)/6);elseif(s=3),%all edges larger:divide tile in four%get edge mid-points ip=(vp(:,1:3)+circshift(vp(:,1:3),1)/2;%calculate CIELab points of the mid-points ip=ip,XYZ2Lab(ip);%and call recursively for e

15、ach sub-tile v=SubDLabVol(vp(1,:);ip(1:2,:),c,th);v=v+SubDLabVol(vp(2,:);ip(2:3,:),c,th);v=v+SubDLabVol(vp(3,:);ip(1:2:3,:),c,th);v=v+SubDLabVol(ip,c,th);else%one or two edges larger:split the tile on the largest edge%shift the order so 1-2 has the largest extent m,i=max(m);vp=circshift(vp,2-i);%cal

16、culate the mid-point of 1-2 and the CIELab point ip=(vp(1,1:3)+vp(2,1:3)/2;ip=ip,XYZ2Lab(ip);%and call recursively for the two sub-tiles v=SubDLabVol(vp(1 3,:);ip,c,th);v=v+SubDLabVol(vp(2:3,:);ip,c,th);end end end GB/T 38001.51-XXXX/IEC 62715-5-1:2017 36 GetGamutCorners.m function P =GetGamutCorners(P,wh)%GET PRIM returns a set of colour corner points based on a standard gamut%input string must contain one of:%sRGB,Rec709,EBU,NTSC%optionally one of%D50,D55,D65,D75,IllA,IllE if ischar(P)if nargi

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 规章制度

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号