在Matlab中求两个直方图间的相似矩阵

在Matlab中求两个直方图间的相似矩阵,matlab,histogram,similarity,Matlab,Histogram,Similarity,伙计们 我希望在Matlab中比较直方图对。我已经对这个课题做了一些研究,因为我意识到它相当大。我已将选择范围缩小到两种方法: 为数据创建GMM,并使用采样通过Kullback-Liebler进行比较 我找到了一些直方图之间高级卡方比较的算法。该算法采用两个直方图,一个bin相似矩阵和一个归一化因子 我有一个非常技术性的问题:如何在Matlab中检索这个bin相似矩阵?两个箱子之间的相似性是如何定义的?我似乎找不到一个合适的解释 谢谢我从来没有听说过“垃圾箱相似性矩阵”,搜索也没有发现任何结果,

伙计们

我希望在Matlab中比较直方图对。我已经对这个课题做了一些研究,因为我意识到它相当大。我已将选择范围缩小到两种方法:

  • 为数据创建GMM,并使用采样通过Kullback-Liebler进行比较
  • 我找到了一些直方图之间高级卡方比较的算法。该算法采用两个直方图,一个bin相似矩阵和一个归一化因子
  • 我有一个非常技术性的问题:如何在Matlab中检索这个bin相似矩阵?两个箱子之间的相似性是如何定义的?我似乎找不到一个合适的解释

    谢谢

    我从来没有听说过“垃圾箱相似性矩阵”,搜索也没有发现任何结果,所以我在这里告诉你如何比较直方图

    统计中的标准方法是使用。但是请注意,关联的假设检验假设两个分布中的一个是精确已知的,因此不能使用它。不过,您仍然可以使用统计信息作为两个估计分布(直方图)的不相似性度量

    如果对直方图进行规格化,则它是对概率分布的估计,因此可以将其插入

    卡方统计和Kullback–Leibler散度在这两个参数中都是不对称的。通过在两个方向上应用它,然后取平均值,可以对称化这两个度量值。对于KL发散,这是公认的


    对于所有这些,您当然必须确保使用相同的容器定义计算两个直方图。此外,你的结果很大程度上取决于你使用了多少箱子。

    对我来说,论文中也不清楚如何计算箱子相似性矩阵。 但是,此处提供了描述该文件的代码:

    有一个函数叫做:sift\u bin\u similarity\u function.m。
    这就是计算箱子相似性的实现。

    这就是你想要的吗?:不过你需要统计工具箱。但你们可以在社区里找到一些东西:是的,我看到了pdist。我不认为它输出两个直方图之间的距离矩阵,我认为它更适合两组观测值之间的欧几里德距离。我给出了一个关于如何比较直方图对的一般答案。如果您需要一个与“bin相似性矩阵”相关的具体答案,请提供相关参考。顺便说一句,这是Kullback–Leibler.Hi,如果你检查一下链接,你会发现它们所涵盖的不仅仅是欧几里得。他们将为您提供许多指标的成对距离矩阵。”欧几里德的“修克利德的”、“城市街区的”、“明科夫斯基的”、“切比雪夫的”、“马哈拉诺比斯的”、“余弦的”、“相关性的”、“斯皮尔曼的”、“汉明的”、“贾卡德的”