【php】有没有人知道dribbble的这个颜色功能怎么实现的
比如下面图,他那个右边有8个颜色,这8个颜色是左边图片中取到的,这个不应该是人工选择的,应该是程序直接上传图片的时候分析出来的把,这个用PHP能做到吗?或者其他什么语言,思路是什么,有没有插件什么的
http://dribbble.com/shots/1421754-Stationary-for-Sevenly?list=popular&offset=10
http://dribbble.com/colors/333399
回答
找了很久,http://www.degraeve.com/color-palette/,没研究过它有没有api,即使没有api,反正这个也是GET传值,用phpquery or phantomjs抓取就行了,so easy,怎么做你懂得,这个问题可以结束了
我的思路:
1,像素超过一定大小之后, 先压缩文件(缩小像素),防止后续操作过多占用资源,这一步可以用upyun、百度云之类支持图片压缩的云存储实现。
2,取出图像所有像素的颜色值(遍历第一步获取的尺寸、php有个方法能根据坐标取像素点信息)。
3,上一步中取到的几万个像素点颜色值,用颜色量化算法去聚类,具体的你自己找其他语言文件改成PHP吧,中文资料比较少,英文有很多不给你找了。最好有些数学基础,颜色量化完了是散点图, 你得会提取聚焦点。
给你点资料:
百科上的颜色量化说明
Javascript版本的颜色提取
Quora上的问题
换成英文搜吧资料一大把一大把的,这种东西查着资料直接写就好。
以上是 【php】有没有人知道dribbble的这个颜色功能怎么实现的 的全部内容, 来源链接: utcz.com/a/101846.html