我正在尝试比较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);
})
但是,获得一个空的'diff'图像。 日志显示2个图像不同:
{ isSameDimensions: true,
dimensionDifference: { width: 0, height: 0 },
misMatchPercentage: '0.73',
analysisTime: 143,
getDiffImage: [Function] }
不知道我在这里缺少什么,非常感谢任何帮助。
答案 0 :(得分: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);
});
这可以做它应该做的事情。希望有所帮助。