【问题标题】:How can I implement a color search for an image gallery?如何实现图像库的颜色搜索?
【发布时间】:2011-01-02 20:44:12
【问题描述】:

我正在开发一个简单的图片库项目,我想实现基于颜色十六进制代码的搜索功能。因此,如果有人在搜索中输入“ff1212”,它将只显示那些包含特定红色阴影的图像。我见过一个网站,它的搜索方式符合我的要求:http://cssline.com(AJAX 部分很好,但它是我所追求的服务器端的东西)。

我不知道如何存储每张图像的颜色数据。我应该获取图像中使用的每个唯一十六进制代码并将它们作为标签存储在数据库中吗?这似乎会创建一个巨大的数据集,从而减慢搜索速度。将图像本身存储在数据库中并在搜索期间扫描它们的颜色怎么样?这听起来也很慢。我知道,一旦我弄清楚如何存储数据以进行快速搜索,我就可以弄清楚如何对搜索本身进行编码。

有没有人有任何可以帮助我的提示或建议?

【问题讨论】:

    标签: database image search colors hex


    【解决方案1】:

    首先,将图像中的颜色数量减少到可行的数量(最多 16 种左右)。 然后,为了能够比较不同的图像,我认为只存储网络安全值(@erelander 所说的间隔)来规范化结果是个好主意。

    【讨论】:

      【解决方案2】:

      您可以尝试将每个图像的颜色间隔存储在数据库中,而不是存储每个唯一的颜色值。当然,搜索这些区间可能需要不同的搜索算法。

      【讨论】:

      • 我不确定我理解你所说的颜色间隔是什么意思。这些数据在数据库中的外观如何?
      【解决方案3】:

      我不认为在数据库中存储颜色值会使其变慢。但是,它会使它变得非常大!鉴于您可以索引颜色值的数据,这个过程会很快。

      【讨论】:

      • 因此,如果我将颜色十六进制代码存储为使用链接表的标签,那么即使每个图像可能有数百或数千种颜色,查询仍然会很快?
      猜你喜欢
      • 1970-01-01
      • 2012-01-18
      • 2014-01-26
      • 1970-01-01
      • 1970-01-01
      • 2013-10-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多