首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何学习图像表示的重持有值?

如何学习图像表示的重持有值?
EN

Stack Overflow用户
提问于 2017-04-05 09:08:39
回答 1查看 55关注 0票数 0

我实现了一个基于内容的图像检索系统,它将图像编码到VLAD码中。简单地说,一幅图像是数千维的向量,图像之间的相似性是两个相对应的维数向量之间的L2距离。在实践中,我们返回查询代码与所有数据集代码之间的顶部-k最小距离。

现在,我正在牛津大厦数据集上测试这个系统,这是一个用于测试CBIR系统的流行数据集:有55个查询图像,我们计算平均精度来评估您的方法。

给定一个查询图像,一组真正的积极信息被定义为“好”和“确定”图像之间的结合。这些集是由dataset作者手工创建的,要获得更多信息,请阅读原始论文(参见上面的链接)。

因此,假设VLAD码完备,topk[0]是数据集图像之间最相似的图像,并且它的L2距离最小。查询代码。注意到这将用于对象识别应用程序,因此给定查询图像,我们希望返回最相似的图像(而不是top-k值),因此应该只考虑顶1距离来计算这个阈值。

我想做的是学习一个treshold值s.t。如果是topk[0]<treshold,我们可以安全地假设这是一个相关的图像。

机器学习并不是真正属于我的领域,但这正是我想要学习这个值的地方:我们计算所有图像的topk[0]平均值,其中topk[0]图像是一个真正的正数,而我们不考虑假阳性(它们会污染这个阈值vaue)。我意识到这是一个非常天真的解决方案,但没有比这更好的解决办法了。

对于我的实现,我注意到top[0]通常介于1.0*1.3*之间,以便进行良好的匹配,而通常非常“遥远”的图像具有>1.5*

EN

回答 1

Stack Overflow用户

发布于 2017-04-05 09:59:50

总的来说,我建议研究一些其他的方法来量化图像的相似性,比如尺度不变检测,对光照变化的鲁棒性等等。如果你只想要一个L2-范数的临界值,有几种方法可以解决这个问题。什么是“最好的”很大程度上取决于你想要什么。如果你重视尽量减少假阳性,那应该是你的成本-功能,如果你重视避免假阴性,而不是你应该优化。您也可以尝试优化这两个同时,您给予两个温度在您的成本函数权重。我能想到的一种方法是:

  1. 只取一半你的数据集
  2. 选择一个阈值(在你期望的范围的中间)
  3. 用这个阈值对你的数据进行分类,计数假阳性、假阴性、真阳性和真阴性,并评估你的质量。
  4. 考虑以下情况:
    • 如果结果令人满意,现在就坚持下去。
    • 如果你有太多的假阳性,那么你的门槛就会更严格(将未被探索过的间隔切成两半)。
    • 如果你有太多的错误否定,那么你的阈值就会变得不那么严格(将未被探索过的时间间隔减半)。

  1. 重复,直到你满意/有最佳的平衡。
  2. 预测你没有得到的一半,以找到你的阈值并验证你的结果。

只有一个选择,但也许你会发现这很有帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43226683

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档