【发布时间】:2016-07-31 04:04:18
【问题描述】:
我正在尝试比较两张图片,看看它们是否相同。它们应该具有相同的尺寸,可能具有相同的大小,但是内容有时会发生变化,我希望能够检测到。
在我的情况下,我有两种方法:一种是获取每个图像中的颜色数量。 (在我的情况下,如果图像不同,颜色的数量会发生变化)
或者确实使用图像处理器比较文件。
我选择使用ruby-vips8,因为众所周知它比RMagick 快得多,而且在我的情况下,性能很重要。
我对@987654329@ 做了一些刮擦,但我找不到比较两个图像或获取颜色数量的方法(所以我可以使用这种方法进行比较)。
有什么帮助吗?
ruby-vips8 是libvips 的包装器。
http://www.rubydoc.info/gems/ruby-vips8/0.1.0/Vips/ http://www.vips.ecs.soton.ac.uk/index.php?title=VIPS
更新:
随着用户Aetherus的回答,我才意识到我什至不需要ruby-vips8 来完成这样的任务。我将文件作为字符串进行比较(正如他所建议的那样)。它对我来说效果很好,而且速度也非常快。
我没有将他的答案标记为最佳,因为我的问题是询问是否可以使用 ruby-vips8 这样做。是特定于 lib 的场景,因此在这种情况下 user894763 答案更合适。
【问题讨论】:
-
看来vips支持直方图,比较直方图是比较图片的一种方式stackoverflow.com/questions/6499491/comparing-two-histograms。 OpenCV 可以提供更复杂的方法来比较图像stackoverflow.com/questions/11541154/…
标签: ruby image-processing vips