0

ImageMagic コマンドに相当する RMagick とは:

compare -metric AE -fuzz 25% img1.png img2.png result.png

次の Ruby コードは正常に動作し、必要な float 値が得られますが、結果の画像は fuzz の影響を受けません。

img1       = Magick::Image.read("img1.png").first
img2       = Magick::Image.read("img1.png").first
img1.fuzz  = "25%"
img, float = img1.compare_channel(img2, Magick::AbsoluteErrorMetric)
img.save('result.png')
4

1 に答える 1

0

ご使用の方法で問題なく動作すると思います。rmagick (2.13.3) を使用しています

このようなsgは、比較のために私にとってはうまくいきました。ファズ % をいじってみると違いが生まれます...

require 'RMagick'
require 'pp'

include Magick
a = ImageList.new("/path/to/ref/asset/missing-thumbnail.jpg")
b = ImageList.new("https://url-to-check.com/getAssetImage/objId:2225296/videoVersionId:2225297/type:cover/width:138/height:200/imageId:2247209.jpg")
c = ImageList.new("/path/to/second/asset/imageId:189577.jpg")
#a.display
#b.display
c.fuzz = '20%'
diff = c.compare_channel(b, Magick::AbsoluteErrorMetric) 
if  diff[1] == 0
  puts "yeeey. they r identical..."
else
  puts "ojh. they r not the same..."
  #pp diff 
  puts diff[1]
end
exit
于 2014-09-07T12:30:20.443 に答える