0

我使用 OpenCV 计算了一系列图像的直方图,但在某些时候,即使图像具有不同的外观,它们的直方图也是相同的,因此熵和直方图的差异也是相同的。

在这里如何区分这些图像?

请帮忙!

4

1 回答 1

0

如果输入图像是灰度的,那么只有 1 个通道,现在大多数图像都是彩色的。如果文件是灰度文件,则只有 1 个通道。

这里有一些很容易尝试的东西。对于灰度,您可以对每一行像素进行平均以获得单个灰度值,然后生成行平均值的直方图,同时对每列值进行平均并制作直方图。

过度简化结果。如果你有 3 个文件,

一种左半黑右半白的。

一种顶部为黑色,底部为白色的

一个有黑白方格的棋盘。

标准直方图将显示 50% 的黑色像素和 50% 的白色像素。

水平直方图将显示左/右和棋盘具有全部 50% 灰色,而顶部/bot 将具有 50% 黑色和 50% 白色

垂直直方图将显示顶部/bot 和棋盘具有全部 50% 灰色,而左/右将显示 50% 黑色和 50% 白色。

因此,虽然所有 3 个文件都具有相同的基本直方图,但它们在水平直方图上是唯一的。

水平直方图是低分辨率的,因为它们是平均值,所以您仍然需要完整的直方图进行主要识别。

当然,除了水平和垂直之外,您还可以得出其他平均值。

于 2013-02-13T20:47:46.300 回答