回答
如果输入图像是灰度,那么只有1个通道,现在大多数图像都是彩色的。如果文件是灰度,那么只有1个通道。
这里有一些简单的尝试。对于灰度级,您可以对每行像素进行平均以获得单个灰度值,然后生成行平均值的直方图,同时对每个列值进行平均并生成该直方图。
通过简单的结果。如果你有3个文件,
其中一个左半边黑色和右半边白色。
一个具有顶部黑色和底部白色
一个具有黑色和白色正方形的棋盘。
标准直方图将显示50%的黑色像素和50%的白色。
水平直方图会显示左/右和棋盘称为具有全部50%灰色,而顶部/机器人将具有50%的黑色& 50%白色
甲垂直直方图将显示前/ BOT和棋盘全部为50%灰色,而左/右则显示50%黑色和50%白色。
所以,虽然所有3个文件将具有相同的基本直方图,它们将由水平直方图唯一。
水平直方图是低分辨率,因为它们是平均值,所以您仍然需要完整的历史曲线来进行主要识别。
当然你也可以想出除水平和垂直以外的其他平均值。
对行进行平均只会导致更多的“直方图冲突”,即具有相同直方图的不同图像。 – mmgp 2013-02-13 20:51:47
3个直方图一起使用时不适用。标准直方图仍然是唯一性的主要来源。只有当多幅图像的第一级直方图相似时,第二级图像才能用于区分。这将像第一个直方图是一个名称,如“约翰史密斯”和次要直方图是身高和体重。因此,与多个约翰史密斯约翰史密斯之一是5'10“和180磅,而第二个约翰史密斯是6'1”和380磅。 – 2013-02-13 21:29:44
计算机视觉中的一个标准程序是使用直方图金字塔来保留一些否则会丢失的空间信息。 [Here](http://www.robots.ox.ac.uk/~vgg/research/caltech/phog.html)是一个使用渐变而不是灰度值的例子。但他的想法仍然适用。 – sietschie 2013-02-14 08:55:26
- 1. 我们如何检测具有相同背景的图像边缘?
- 2. 两个matplotlib/pyplot直方图具有相同的轴或在同一个图上
- 3. 从3个不同的直方图创建图像直方图
- 4. 复制图像的锚标记具有相同的图像SRC
- 5. 我们如何区分图像滤镜效果?
- 6. 如何绘制图像的直方图?
- 7. 如何保存直方图的图像?
- 8. 如何检查两个PictureBox是否具有相同的图像?
- 9. 图像直方图
- 10. 如何强制肖像图像具有与横向图像相同的尺寸并且具有响应性?
- 11. 小工具:区分具有相同ID的视图上的点击
- 12. 如何删除具有相同相册ID的所有图像文件?
- 13. OpenCL的图像直方图
- 14. 如何将图像垂直切割成两个相同尺寸的图像
- 15. Jquery - 如何区分具有相同类别的多个按钮
- 16. 如何区分具有相同名称的表元素? Selenium Java
- 17. 如何区分具有相同功能的多个班级
- 18. 将直方图分成两个区域
- 19. 创建一个与现有PNG图像具有相同XMODEM-CRC的PNG图像
- 20. 适用JavaScript来的所有图像具有相同名称的
- 21. 我们如何实现具有相同方法名称的两个接口?
- 22. 返回分别具有相同键和不同值的地图?
- 23. R使直方图具有相等的宽度和#个折点
- 24. 直方图太不同了,他们应该如何
- 25. java中图像直方图的方差
- 26. 基于直方图的Weka分类图像分类
- 27. 我们如何区分git?
- 28. 图像具有相同的格式:一些图像显示出来,别人不
- 29. HTML我们如何给出相对使用的图像路径?
- 30. 如何使用现有的图像像素制作正确的直方图?
显而易见的答案是,你不应该通过直方图比较图像。单纯依靠直方图时,这是一个已知问题。还有很多其他方法可以比较图像,如果您包含一些您正在尝试比较的示例图像,则可能会出现更多相关的建议/答案。 – mmgp 2013-02-13 15:11:07
如何比较图像? – thang 2013-02-13 15:28:21
直方图通常会查看图像,因为它是黑色和白色。您可以尝试各个通道的直方图,以便获得红色直方图,绿色直方图和蓝色直方图并进行比较。 另一种技术是从另一个图像中减去一个图像,然后对结果图像进行直方图分析。该直方图将测量图像的差异。 – 2013-02-13 17:31:40