PHP上基于颜色的图像搜索引擎

时间:2010-11-18 16:42:37

标签: php image search colors

我需要让PHP成为基于颜色的搜索,用户将点击调色板上的颜色,搜索将检索具有主要相似颜色的所有图像。

Restults将从具有最相似颜色的图像按降序排序。

任何人都可以指出一些指导方针或现有的类,例子......如何实现这个目标?

特别是搜索的“aproximation”或“类似”部分将如何? 如何选择不同种类的“橙色”,并将它们从最相似和最相似的类别中分类。

由于

5 个答案:

答案 0 :(得分:2)

答案 1 :(得分:2)

以下是我使用php GD lib函数分析图像的示例。从这里,您只需将分析的数据存储在数据库中,以便在搜索过程中使用。

详情请见:http://www.colab-aktiv.com/?page_id=263

基本步骤如下:

  • 定义颜色样本中的颜色

  • 使用要分析的图像创建图像对象,如果图像太大则调整图像大小

  • 创建图像对象并将颜色样本中的颜色加载到图像调色板中。这是GIF图像使用的调色板。这是比较调色板,将要分析的图像中的颜色进行比较。

  • 循环遍历图像中的所有像素,并将其与比较调色板中与像素最接近的匹配进行计数。

  • 按降序对计数结果进行排序

  • 显示最佳结果

答案 2 :(得分:1)

首先,您不应该动态搜索图像库。如果你必须找到每个图像的主要颜色,这将是非常慢的。您需要类似爬虫的东西,但专门用于图像。

要找出主要颜色,你需要一些坚实的数学基础:

http://en.wikipedia.org/wiki/Normal_distribution

答案 3 :(得分:1)

我做过类似的工作。我的实施可以在http://code.google.com/p/hppg/找到。可以在项目主页找到实例。此搜索引擎还具有按关键字和颜色同时搜索的功能。所有详细信息和代码都可以在项目主页上找到。希望如此有用:))

答案 4 :(得分:1)

我认为在这种情况下,使用Color coherence vector之类的算法可能会很有帮助,因为该算法会找到图像中颜色的关联组成部分,并定义一组相干和不相干的颜色。

“相干颜色”是描述主要色彩的另一个术语,这正是您要寻找的。可能您将只使用这些连贯的颜色功能,可以根据用户的选择进行匹配。

本教程Image Retrieval: Color Coherence Vector describes描述了算法的步骤,并举例说明了该算法的工作方式及其缺点。顺便说一句,我认为这些缺点不会影响您的用例,因为您主要是在寻找与主要颜色匹配的方法,而不管它在哪里。