【问题标题】:Reverse Image Search Storage in Relational Database关系数据库中的反向图像搜索存储
【发布时间】:2011-12-11 21:30:26
【问题描述】:

所以,this question 与我需要的类似,但那里的答案不太匹配。我正在寻找一种方法来获取一组SURF 描述符并将它们存储在 MySQL 数据库中,以便我可以从用户那里获取图像,并快速运行反向图像搜索。

我现在在做什么

目前,我正在获取jOpenSurf 给我的描述符列表,遍历它们,并将它们转换为two 64 character strings。有了这个,我可以很容易地查询和找到精确匹配,但我不只是想要精确匹配,我想做特征比较。

我需要做什么(我认为)

在网上做了一些研究并查看了jOpenSurf提供的比较代码后,我认为我需要做的是将每个兴趣点的向量值存储在数据库中,以便我可以进行比较。但这就是我卡住的地方。

我需要什么帮助

究竟如何将矢量值存储到 MySQL 数据库中,以便对图像的相似度匹配进行比较?

【问题讨论】:

    标签: mysql image-processing data-storage fingerprint


    【解决方案1】:

    我不知道 mysql 中有什么可以原生地允许向量比较的东西——有些人质疑地理空间模块是否允许这样做,但共识是不允许的(例如向量上的余弦函数)。

    您需要在数据库之外评估相似度分数,并在评估后将它们存储在数据库中(例如,将每张图像的前 5 个匹配项存储在数据库中)。假设您使用的是对称评分算法,您只需为最多 N 个图像更新数据库,以便为每个评估的新图像管理前 N 个相似图像。

    如果您愿意,可以使用反向索引数据库(例如搜索引擎)提供基于图像特征和其他元数据或文本的图像相关性搜索,如果您愿意的话:http://www.mendeley.com/research/lire-lucene-image-retrieval-an-extensible-java-cbir-library/

    【讨论】:

    • 经过深思熟虑的答案。我试图通过一个非常复杂的查询自己实现这一点,并且在我的头撞到墙上太多之后放弃了。我最终只存储了一个向量字符串,然后取出所有图像并逐个比较它们。慢得多,但容易得多。此外,存储热门点击也可以,但我需要用户能够上传图片以进行查询。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-10
    相关资源
    最近更新 更多