2

我正在尝试比较 2 张图像并使用 node-resemble-js 突出显示第三张图像中的差异。

尝试了以下代码:

var imgData1 = 'C:\\Users\\Image1.png';
var imgData2 = 'C:\\Users\\Image2.png';

var diffImage = 'C:\\Users\\';

    resemble(imgData1).compareTo(imgData2).ignoreNothing().onComplete(function (data) {

        data.getDiffImage().pack().pipe(fs.createWriteStream( diffImage + 'diff.png'));
        console.log(data);
    })

但是,得到一个空的“差异”图像。日志显示两张图片不同:

{ isSameDimensions: true,
  dimensionDifference: { width: 0, height: 0 },
  misMatchPercentage: '0.73',
  analysisTime: 143,
  getDiffImage: [Function] }

不知道我在这里错过了什么,任何帮助将不胜感激。

4

1 回答 1

0

我的代码略有不同,它适用于我:

var fs = require('fs'); 
var resemble = require('node-resemble-js');

var img1 = fs.readFileSync('./img1.png');
var img2 = fs.readFileSync('./img2.png');

resemble(img1).compareTo(img2).ignoreNothing().onComplete(function (data) {
    data.getDiffImage().pack().pipe(fs.createWriteStream( './diff.png'));
    console.log(data);
});

这做了它应该做的。希望有帮助。

于 2016-12-16T09:24:44.643 回答