【39】JS提取图片的主体颜色

语言:js
颜色量化算法:中位切分法

简介

1.获取图像的像素点数据,getImageData,得到的数据每四位分别代表一个rgba的值,这里可以把透明的像素点去掉即a=0的像素点,也可以把范围设置大一点。按每四位存到一个数组里头,接下来就是对数组进行处理。

2.中位切分算法首先把所有像素映射到RGB空间,我们以R,G,B中最长的边构造一个立方体,并且以这条边从中间切割,可以分别得到两个包含相同像素点的长方体,再以长方体的最长边进行中位切割,如此反复下去,满足条件时停止切割,比如颜色的极值小于50停止,或者长方体少于100个像素点时停止,此时,我们得到了满足条件的长方体,把像素点的平均值作为了此长方体的代表颜色。

完整代码




    
    
    
    getcolor


    
    
    

效果展示

2020-02-07-130349.png

参考资料

图像颜色提取

你可能感兴趣的:(【39】JS提取图片的主体颜色)