class Simulacrum::RMagicDiff
The RMagicDiff
class implements image diffing using ImageMagick
Public Instance Methods
delta()
click to toggle source
# File lib/simulacrum/diff/rmagick.rb, line 8 def delta @delta * 100 end
Private Instance Methods
compare()
click to toggle source
# File lib/simulacrum/diff/rmagick.rb, line 14 def compare a = Magick::Image.read(@a_path) b = Magick::Image.read(@b_path) @image, @delta = square_root_mean_squared(a, b) end
square_root_mean_squared(a, b)
click to toggle source
# File lib/simulacrum/diff/rmagick.rb, line 20 def square_root_mean_squared(a, b) # Calculate the Square Root Mean Squared Error for the comparison of the # two images. # # Gets the color difference for each pixel, and square it, average all # the squared differences, then return the square root. # # http://www.imagemagick.org/discourse-server/viewtopic.php?f=1&t=17284 a[0].compare_channel(b[0], Magick::MeanSquaredErrorMetric) end