for what?
为了业务的实现,开发了一个包webshotcompare用来在JavaScript语言中实现图像差异和偏移的识别。
效果?
针对几种情况,webshotcompare最终输出三种图片,分别为:
- 框选版:针对无偏移,能快速找出差异
- 差异图:针对出现偏移的情况,比较清晰的看到偏差内容
- 点匹配图:用于确定偏移具体对象
除此之外,还会输出具体数据结果:
{
diffPass: false,
shiftPass: false,
diff: { diffPrecent: 5.39483400081052, imgDistance: 0.03125 },
shift: { rate: 0.5106382978723404, shiftCount: 24, goodMatchesCount: 47 },
img: {
diff: '/Users/key/Desktop/mini/testForImgCom/images/RESULT.png',
shift: '/Users/key/Desktop/mini/testForImgCom/images/RESULT_MATCHES.png',
diffByPixel: '/Users/key/Desktop/mini/testForImgCom/images/RESULT_DIFF.png'
}
}
还能收获什么
极少有人会去选择js或OpenCV.js来做图像处理,但如果你有使用JavaScript进行图像处理的需求,并且与该包需求类似,考虑到OpenCV.js在这一方面(尤其是feature2d)并没有文档,这份包的源码是一份很好的实践参考代码。并且,这份代码真正被运用到了业务中,能够保证在各种场景下能够取得预期结果,很多东西可以被复用(尤其是如何获取OpenCV初始化时机)。