【问题标题】:Methods for creating a color palette from an image?从图像创建调色板的方法?
【发布时间】:2011-05-23 19:16:45
【问题描述】:

假设我有一张未指定颜色深度和尺寸的图像。
有什么方法可以将其压缩为 n 调色板?
我的 google-fu 在这个方面很弱。

【问题讨论】:

    标签: colors palette color-palette


    【解决方案1】:

    嗯,最简单的方法就是查看图像并创建一个字典,将像素颜色映射到整数。对于每个像素,如果其颜色在字典中,则增加其计数。如果不是,则将其计数为 1。这将为您提供每种颜色在图像中出现的次数。

    然后,按数量排序,您将找到图像中最常见的 256 种颜色。这些颜色构成了您的调色板。

    然后,再次迭代图像。对于每个像素,找到最接近该像素颜色的调色板颜色,并将该像素的索引设置为该调色板索引。

    这将是一个很好的“第一次”,但在具有大量颜色的图像中,它可能无法很好地找到调色板。在字典阶段,您可能希望组合“足够接近”的颜色,以避免许多非常相似的颜色都得分不佳,即使它们在一起很常见。

    为了获得更好的结果,您需要查看dithering 技术。

    【讨论】:

      【解决方案2】:

      这个问题被称为颜色量化。例如,请参阅pngquant

      如果您正在寻找算法,请搜索 Median Cut、Octtree、K-Means、Linde–Buzo–Gray、NeuQuant。理想情况下在 Google Scholar 上,因为常规结果会通过隐藏付费墙发送垃圾邮件。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-07-20
        • 1970-01-01
        • 1970-01-01
        • 2012-05-21
        • 2011-01-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多