Butteraugli
Version: GIT Web: http://bit.ly/butteraugli
Lots of cool Github projects use computer vision libraries from the OpenCV project to do great things, but we’ve noticed that getting the right set of OpenCV modules to run on a computer is a task for advanced users. So we’re always on the look-out for any smart scientific software with a very low entry barrier.
It was with some luck that we discovered Butteraugli, a Googlesponsored open source project for working with bitmap images. Butteraugli is a small tool that compares two bitmap images and estimates their psychovisual similarity. The initial research goal was to give a reliable scalar score for image pairs to highlight the difference between two files, even in cases when you can barely see it with your own eyes.
Butteraugli takes a few seconds to compile (just run $ make in the source directory), but it does work well. Throw any pair of PNG or JPEG images at it, and Butteraugli will give you the score of their similarity. Both images should have the same dimensions in pixels, but beware of using large images, because Butteraugli is a very CPU-intensive program, and it may take a lot of time to compare large files. But at least the command syntax is straightforward: $ butteraugli file1 file2
If both files are identical, then Butteraugli will estimate their similarity as 0. But if there is the slightest difference in the images, or even if the files was re-encoded with different compression level, the application will immediately detect it. The most useful aspect of the software is that it can draw a ‘heat map’ of differences between two images. This is created by using the following: $ butteraugli file1 file2 heatmap.ppm
The resulting heatmap will contain highlights that are placed exactly where Butteraugli detects differences between your images. There are many cases when the software would come in handy, from examining medical images, to detecting excessive JPEG compression ratio on family photos. Butteraugli is able to wield great power in just a few kilobytes of source code!
“Butteraugli can draw a ‘heat map’ of differences between two images”