澈澈子

喜欢可爱的东西/和脸滚键盘\n\r魔法少女/里世界资深杂鱼

 

今天突发奇想想写一个图片颜色主色调提取器。

大致思路是把rgb编码展开,对应位组合,从高位开始插入八叉树,忽略最后两位,插入完毕后对后三层数值取加权平均(标准差小于16,可以认为这样是合理的),最后叶子结点便是候选色。这样最多产生8^3个候选色,直接粗暴地取数量最多的前N个作为主题色就可以了。

这样做保真度会比较高,但是我希望能让主题色看起来和谐统一,那么就需要在保持色相基本不变的情况下尽量统一明度和饱和度。这一点还需要读一下rgb转hsl的相关文档,想想怎么做比较合理。

想先用JS实现,然后学一下C++,再用C++实现一遍,正好当C++练习了。然后再看看Node Addon文档写成Node扩展。

 
评论

© 澈澈子 | Powered by LOFTER