叠加两个图像

时间:2011-05-25 10:05:13

标签: opencv

我正在尝试比较两张图片来评估他们的注册情况。我想使用棋盘式图案覆盖这两个图像,其中(例如)左上角20 x 20像素补丁显示第一个图像,然后在图像1和2之间交替。

我在Matlab中编写了一个类似的脚本,其中包括在另一个上面显示一个图像,然后在顶部图像上应用棋盘透明度。这在OpenCV中是否可行?

2 个答案:

答案 0 :(得分:0)

你可以在图像的双循环中手动弄乱alpha通道。

我实际上想提出一种测试注册的替代方案,这可能更敏感。您可以对每个图像进行灰度表示(如果它们原来是彩色,则转换为灰色)并将它们放入新图像的不同颜色通道中。当img2进入B时,在R和G中说img1。然后,你可以显示新图像。任何错误注册的区域都会显示颜色,而正确注册的部分是灰色的。

答案 1 :(得分:0)

最快捷的方式:

  1. 在matlab上创建跳棋板。
  2. 将其另存为png / bmp图像(无压缩)
  3. 将此图片加载到opencv中并将其用作蒙版
  4. 使用加载的遮罩
  5. 在图像上使用cvAdd

    P.S。你可以在openCV中编写棋盘面具创建者,但是如果你只需要调试它就可以保存这个任务并使用matlab