【问题标题】:Image size influence comparing histograms OpenCV图像大小影响比较直方图 OpenCV
【发布时间】:2014-03-24 11:23:09
【问题描述】:

我正在使用 compareHist() 函数来比较两个图像的直方图。

我的问题是:图像的大小对结果有相当大的影响吗?在比较之前我应该​​调整图像大小还是标准化直方图?我正在使用 CV_COMP_CORREL 方法。

【问题讨论】:

    标签: image opencv histogram


    【解决方案1】:

    您必须在比较之前对直方图进行归一化处理。

    假设您有非标准化直方图,例如其中一个在区间 [0..1000] 中有一个 bin 值,另一个在 [0..1] 中。你怎么能比较他们?当然,像加法这样的数学运算都是没有意义的,因为这个加法的结果是什么?

    那么实际上图像的大小并不重要。

    实际上意味着如果你有一个图像 A 并且你将它缩放两次并且你有一个图像 B,那么如果你计算 hist(A) 和 hist(B),则对两者进行归一化,那么直方图将是几乎一样。这是因为如果您按因子 k 缩放图像,并且图像 A 中有颜色 c 的 n 个像素,那么在图像 B 中,颜色 c 大约有 k*k*n 个像素(取决于插值)。所以每个颜色量也成比例地“缩放”,所以如果你对 hist(A) 和 hist(B) 进行归一化,结果将大致相同(如果你的 bin 的大小大于 1,比如 16 等)

    【讨论】:

    • 而且在实现中是强制的吗?我在这两种情况下都得到了相同的结果,或者 compareHist 函数可能会自动归一化。
    • 我不这么认为。您的意思是您首先比较了没有归一化的直方图,然后比较了归一化的直方图并得到了相同的结果?
    • 确实如此。我不知道为什么。也许这是我正在测试的具体案例。
    • 是的,我想是的。一般规则是在比较之前对直方图进行归一化。这就像一条规则“在某些情况下它不是必需的,但你不想浪费时间思考它是否必要”。
    猜你喜欢
    • 2013-03-24
    • 2015-07-27
    • 2015-05-01
    • 2012-08-14
    • 2015-03-07
    • 2019-08-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多