【问题标题】:How to identify changes in two images of same object如何识别同一对象的两个图像中的变化
【发布时间】:2013-04-26 22:23:44
【问题描述】:

我有两张我知道代表完全相同的对象的图像。在下图中,它们被称为参考和匹配。

图像 Match 与 Reference 相比可以进行以下变换:

  1. 对象可能通过添加(例如,在侧面添加污垢或文字)或遗漏(已取出后视镜)局部改变了其外观。

  2. 仅水平拉伸或缩小尺寸(垂直方向不调整尺寸)

  3. 部分参考图像在匹配中不存在(在参考图像中以红色阴影显示)。

问题:如何识别以上述方式发生“变化”的区域?

想法#1:一旦匹配图像的开始和结束(图像中编号为 1 和 3)与参考图像中的相应列对齐,动态时间扭曲似乎是一个不错的选择,但我不确定如何继续。

想法 2:在图像之间匹配 SIFT 特征。特征点位置产生的镶嵌将图像分解成不均匀的图块。使用跨图像的特征对应关系来确定要跨图像匹配的图块。使用相似性度量来找出任何变化。

【问题讨论】:

    标签: image-processing computer-vision feature-detection


    【解决方案1】:

    您可能需要考虑迭代注册算法。基本上,您想要执行优化以找到变换的参数,在您的情况下是水平缩放和水平平移。优化参数后,您将获得两张图像之间的转换,转换一张以匹配另一张,然后可以使用减法来识别有差异的区域。

    要注册,请查看 ITK 库。 您可能可以使用互信息作为指标进行梯度优化。它有许多不同的转换,可以捕获平移和缩放。代码应该在您展示的示例图像上快速运行。

    【讨论】:

    • 变换不仅仅是水平缩放和水平平移。正如我在原始问题中提到的,原始对象的某些部分可能已更改(添加或删除)。
    • @curryage - 只要它们仅代表图像的一部分,您就不会真正关心它们。如果颜色发生变化、汽车起火等,优化过程将足够强大,仍然可以为您提供准确的结果。这样想,您正在寻找共识,需要将大量像素更改为没有让您的指标在正确优化时最大化/最小化。
    • 此外,如果您使用诸如互信息之类的度量标准,它将忽略颜色变化之类的东西 - 它不会寻找精确匹配,而是在目标图像和移动图像中寻找对应的颜色对。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-05-28
    • 2018-11-19
    • 1970-01-01
    • 2019-06-18
    • 2012-10-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多