大家好,
我希望在创建DNG规范转发矩阵方面得到一些指导。
我自己试着这样做已经有一段时间了……
坦白地说,最后我只是使用Adobe DNG配置文件编辑器对现有的正向矩阵(通过颜色矩阵调整)进行了我想要的更改。
但是花了这么长时间试图理解这一点,它有点卡在我的脑海里,我需要一个了结!!
这里是……
的前提
我想创建转发矩阵与“嵌入式”配置文件,我的相机OEM包括他们的相机使用。
我是一个LR用户。所以在LR中,我可以在相机校准面板中选择“Adobe标准”和“嵌入式”。
我提取了每一份资料。
adobe包含很多数据(如果你已经读到这里,你可能知道是哪些数据,我就不一一列出了)
嵌入的配置文件包含2颜色矩阵没有其他(bar“0”value DNG spec tags当然)
我的问题
我已经阅读了adobe DNG规范文件,但我还是不知道我需要做什么……
我相信正向矩阵可以用颜色矩阵中的数据来计算
这个问题的数学似乎相当简单....(只是显然不适合我)
从Adobe:
首先,反转XYZtoCamera矩阵。
CameraToXYZ = Inverse (XYZtoCamera)
其次,计算白平衡变换
CA * CA = CA *
(CA是布鲁斯·林德布卢姆网站上的一个等式)
我用excel做数学运算…
(MINVERSE表示逆矩阵,MMULT表示相乘)
我的症结似乎是创建正确的XYZtoCamera矩阵。
来自DNG规范
DNG 1.2.0.0及以后版本需要特定的插值算法:线性
插值使用逆相关色温。
为了找到两个标签集之间的插值加权因子,找到相关的颜色
温度为用户选择的白平衡和两个校准光源。如果
白平衡温度是在两个标定光源温度之间,然后全部反转
温度和使用线性插值。否则,使用最近的校准标记集。
我的第一个障碍似乎是找到用户选择的WB。
我的dgs功能标签“AsShotNeutral”
如
0.4459930314、1、0.8338762215
如果我假设(…)这是一个扩展的XY值,然后CIE 1931的XY到CCT计算器给我4419开尔文(FWIW, LR说5000k,所以也许这不是那么远…)
(也有可能“AsShotNeutral”值是RAW乘数)
因此,由于我不确定,我正试图遵循DNG规范指令处理未知的XY值
1.猜xy的值。用这个猜测来找到插值加权因子之间颜色校正标签2.通过计算找到一个新的xy值:
XYZ =反转(XYZtoCamera) * cameranneutral
(如果XYZtoCamera矩阵不是平方矩阵,那么使用伪逆矩阵。)
3.将生成的XYZ转换为新的xy值。
4.迭代直到xy值收敛到一个解。
我对这个要求不太确定。
我读过一些关于这个主题的博客或网站,他们似乎建议在图上画点,直到xy值收敛为一个解
我确实不知道我面临的主要问题是我阅读的文档基本上是针对软件开发人员试图从头编写一个.DCP,当事实上我想做的是把一组现有的颜色矩阵并计算相关矩阵。
TLDR
我有两个OEM .DCP颜色矩阵,每个标准光源一个(A和D65)
0.7571 -0.2249 -0.0223 -0.4171 1.3145 0.1062 -0.0357 0.1601 0.7591
0.6653 -0.1486 -0.0611 -0.4221 1.3303 0.0929 -0.0881 0.2416 0.7226
我还有一个DNG标签'AsShotNeutral'
0.4459930314 - 1 0.8338762215
我将如何去计算DNG规格。dcp正向矩阵仅基于上述数据?
非常感谢