像Krita一样实施Kubelka-Munk来混合颜色(颜色),如油漆

时间:2012-04-20 21:49:42

标签: colors

是否有人知道在哪里找到或实施Kubelka-Munk function混合颜色如天然油漆? Emanuelle Tamponi implemented this function in Krita,一个开源项目,但我无法在任何地方找到这个或类似的方法,以“自然”混合颜色共享。它可能是商业敏感或私人的,但如果你不问你也不会发现!

3 个答案:

答案 0 :(得分:4)

随意重用我们在krita中的代码。它位于calligra / krita / plugins / extensions / painterlyframework中。它确实需要颜料库作为备份,但我想你可以很容易地从中抽象出来。

但请注意,该代码属于GPLv2 +许可证。如果您重复使用代码或光源文件,您的代码也需要是GPL。

(欲了解更多信息,请联系我--boud@valdyas.org或在irc.freenode.net上的#krita上发帖,我是Krita的维护者)。

答案 1 :(得分:2)

这是我创建的一个使用简化的Kubelka-Munk模型的实现。它假设混合时所有颜色都具有相同的浓度,并且所有颜色都是不透明的。如果有用,请随意以任何方式使用它。

https://github.com/benjholla/ColorMixer

答案 2 :(得分:2)

由于您需要在可见光谱范围内同时获得吸收和散射曲线,因此RGB值无法提供足够的信息来执行真正的Kubelka-Munk计算。相反,您可以从RGB值生成代表性反射率曲线,然后使用反射率信息执行减色混合,例如,通过计算两条反射曲线的加权几何平均值。