小编mit*_*hil的帖子

将重叠的图像彼此移动以获得准确的差异

我想获取使用相机捕获的打印图像的差异。

我使用python库尝试了许多解决方案:opencv,image-magic等。

我发现用于图像比较的解决方案具有更高的准确性:

  1. 移动图像:从左到右,寻找差异最小。
  2. 从左向右移动图像,寻找最小差异。
  3. 移动图像:从上到下,寻找最小的差异。
  4. 移动图像:从下到上,寻找最小的差异。

拍摄图像的条件:1. 相机永远不会移动(安装在固定架上)。2.将对象手动放置在白板上,因此永远不会正确对齐对象。(每次角度都是轻微的变化,因为它是手动的)

使用相机针对以下代码捕获的图像样本:

图像样本1:白色圆点:

图片1作为原始图片

图像样本2:作为原始图像

图像2与白色溺爱

图像样本3:黑点

在此处输入图片说明

带有白点打印的可接受输出不可用,但只能标记差异(缺陷):

接受的输出

目前,我正在使用以下Image-magic命令来实现图像差异:

compare -highlight-color black -fuzz 5% -metric AE Image_1.png Image_2.png -compose src diff.png
Run Code Online (Sandbox Code Playgroud)

代码:

compare -highlight-color black -fuzz 5% -metric AE Image_1.png Image_2.png -compose src diff.png
Run Code Online (Sandbox Code Playgroud)

差异之后的输出是不正确的,因为比较工作在像素间进行,因此仅标记实际差异还不够聪明:

输出

我提到的上述解决方案将能够获得所需的差异作为输出,但是没有库或image-magic命令可用于此类图像比较。

任何python代码或Image-magic命令可以做到这一点?

python opencv image-comparison imagemagick image-processing

3
推荐指数
1
解决办法
632
查看次数