新的iTunes 11有一个非常好的查看专辑歌曲列表的视图,在专辑封面的功能中为字体和背景选择颜色。有人知道算法是怎么运作的吗?
当前回答
Panic的韦德·科斯格罗夫写了一篇不错的博客文章,描述了他的算法实现,类似于iTunes中的算法。它包括Objective-C中的一个示例实现。
其他回答
我只是写了一个JS库,实现了@Seth所描述的大致相同的算法。可以在github.com/arcanis/colibrijs和NPM上以colibrijs的形式免费获得。
根据@Seth的回答,我使用PHP和Imagick实现了在图片的两个横向边界中获得主色调的算法。
https://gist.github.com/philix/5688064#file-simpleimage-php-L81
它被用来填充http://festea.com.br封面照片的背景
Panic的韦德·科斯格罗夫写了一篇不错的博客文章,描述了他的算法实现,类似于iTunes中的算法。它包括Objective-C中的一个示例实现。
根据@Seth-thompson的回答和@bluedog的评论,我建立了一个小的Objective-C (Cocoa-Touch)项目来生成图像功能的配色方案。
你可以在以下网址查看项目:
https://github.com/luisespinoza/LEColorPicker
目前,LEColorPicker正在做:
Image is scaled to 36x36 px (this reduce the compute time). It generates a pixel array from the image. Converts the pixel array to YUV space. Gather colors as Seth Thompson's code does it. The color's sets are sorted by count. The algorithm select the three most dominant colors. The most dominant is asigned as Background. The second and third most dominants are tested using the w3c color contrast formula, to check if the colors has enought contrast with the background. If one of the text colors don't pass the test, then is asigned to white or black, depending of the Y component.
现在,我将检查ColorTunes项目(https://github.com/Dannvix/ColorTunes)和Wade Cosgrove项目的新功能。对于提高配色效果,我也有一些新的想法。
我在不同的上下文中问了同样的问题,并被指向http://charlesleifer.com/blog/using-python-and-k-means-to-find-the-dominant-colors-in-images/的一个学习算法(k Means),它使用图像中的随机起点大致做同样的事情。这样,算法就能自己找到主色调。
推荐文章
- 为什么优秀的UI设计对某些开发者来说如此困难?
- 缺少推荐的图标文件-该包不包含iPhone / iPod Touch的应用程序图标,像素为“120x120”,png格式
- 滚动或滑动窗口迭代器?
- Xcode 10的对象库去哪了?
- 非递归深度优先搜索算法
- 使嵌套JavaScript对象平放/不平放的最快方法
- 大的Ө符号到底代表什么?
- 堆与二叉搜索树(BST)
- 给定一个数字数组,返回所有其他数字的乘积的数组(不除法)
- 广度优先Vs深度优先
- 如何在新的材质主题中改变背面箭头的颜色?
- androidviewpager与底部点
- 用于桌面应用程序的Swing vs JavaFx
- 错误ITMS-9000:“冗余二进制文件上传。火车1.0版本已经有一个二进制版本上传。
- 分治算法与动态规划的区别