标签: content-based-retrieval

识别相似图像的好方法?

我在PHP中开发了一种简单快速的算法来比较图像的相似性.

其快速(800x600图像每秒约40个)以及未经优化的搜索算法可以在22分钟内完成3,000张图像,将每张图像与其他图像进行比较(3 /秒).

基本概述是获取图像,将其重新调整为8x8,然后将这些像素转换为HSV.然后将Hue,Saturation和Value截断为4位,它变成一个大的十六进制字符串.

比较图像基本上沿着两个字符串,然后添加它找到的差异.如果总数低于64,那么它的图像相同.不同的图像通常在600 - 800左右.低于20和极其相似.

我可以使用这个型号有什么改进吗?我还没有看到不同组件(色调,饱和度和值)与比较的相关性.顺化可能很重要,但其他人呢?

为了加快搜索速度,我可能会将每个部分的4位分成两半,并将最重要的位先放入,这样如果它们检查失败,则根本不需要检查lsb.我不知道一种有效的方法来存储这样的位,但仍然允许它们被轻松搜索和比较.

我一直在使用3000张照片的数据集(大多数是独一无二的)并没有任何误报.它完全不受调整大小和相当的亮度和对比度变化的抵抗力.

php gd image computer-vision content-based-retrieval

16
推荐指数
1
解决办法
1万
查看次数

9
推荐指数
1
解决办法
3304
查看次数

关于(平均)平均精度的混淆

这个问题中,我询问了关于精确回忆曲线的说明.

特别是,我问我们是否必须考虑固定数量的排名来绘制曲线,或者我们可以合理地选择自己.根据答案,第二个是正确的.

然而,现在我对平均精度(AP)值存在很大疑问:AP用于在数值上估计给定特定查询的算法有多好.平均平均精度(MAP)是多个查询的平均精度.

我的疑问是:如果AP根据我们检索的对象数量而变化,那么我们可以将此参数调整为我们的优势,因此我们可以显示最佳AP值.例如,假设pr曲线精确地执行直到10个元素然后可怕,我们可以"欺骗"计算(M)AP值,仅考虑前10个元素.

我知道这听起来很混乱,但我在任何地方都没有找到任何相关信息.

information-retrieval mean content-based-retrieval average-precision

6
推荐指数
2
解决办法
1166
查看次数

谷歌如何通过图像搜索?

最近谷歌通过图像在图像搜索中推出了新功能意味着我们可以通过在谷歌搜索框中上传图像来搜索其他图像.这怎么可能?

http://images.google.com

search content-based-retrieval

5
推荐指数
1
解决办法
4905
查看次数

推荐系统:它是基于内容的过滤吗?

有人可以帮我澄清一下.

我目前正在使用协同过滤(ALS),它返回一个推荐列表,其中包含与推荐项目相对应的分数.除此之外,如果项目包含与用户喜欢的内容相对应的标签,例如"浪漫电影",我会提高分数(+0.1).对我来说,这被认为是一种混合协作方法,因为它通过基于内容的过滤提升了协作过滤结果(如果我错了,请纠正我).

现在,如果我在没有进行协同过滤的情况下采用相同的方法,该怎么办?它会被视为基于内容的过滤吗?因为我仍然会根据每个菜肴的内容和属性推荐菜肴,这些菜肴的内容和属性对应于用户喜欢的内容(例如"浪漫电影").

我之所以感到困惑是因为我看过基于内容的过滤,他们应用了Naive Bayes等算法,这种方法类似于对项目的简单搜索(在内容上).

recommendation-engine machine-learning collaborative-filtering content-based-retrieval predictionio

3
推荐指数
1
解决办法
905
查看次数

Mahout是否提供了一种确定内容之间相似性的方法(基于内容的推荐)?

Mahout是否提供了确定内容之间相似性的方法?

我想将基于内容的推荐作为Web应用程序的一部分.我知道Mahout善于利用用户评级矩阵并根据它们提出建议,但我对协作(基于评级)的建议不感兴趣.我想评分两段文本的匹配程度,然后推荐与我在用户个人资料中为用户存储的文本最匹配的项目...

我已经阅读了Mahout的文档,看起来它主要促进了协作(基于评级)的建议,但不是基于内容的建议......这是真的吗?

recommendation-engine mahout content-based-retrieval mahout-recommender

1
推荐指数
1
解决办法
2834
查看次数

骆驼:如何在“选择时间”中完成所有“时间”

我需要在 Apache Camel 路线中询问操作员“选择时间”的问题。在以下示例中,如果我有两个具有 1, 2 值的 soap-env:Order 元素,那么我想创建两个名为 output_1.xml 和 output_2.xml 的 xml 文件。但是,代码只能创建一个文件output_1.xml。谁能给我任何想法或提示?谢谢你的帮助。

    public void configure() {
    ...  
    from("direct:a")
        .choice()
            .when(ns.xpath("//soap-env:Envelope//soap-env:Order='1'"))
                .to("file://data?fileName=output_1.xml")
            .when(ns.xpath("//soap-env:Envelope//soap-env:Order='2'"))
                .to("file://data?fileName=output_2.xml")
            .when(ns.xpath("//soap-env:Envelope//soap-env:Order='3'"))
                .to("file://data?fileName=output_3.xml")
}
Run Code Online (Sandbox Code Playgroud)

apache-camel content-based-retrieval

1
推荐指数
1
解决办法
5351
查看次数