algorithm - 我如何判断两张照片是否相同但有一些亮度差异
问题描述
我有一些照片对,其中一些对象的细节不同,而另一些则相同。然而,即使是具有相同物体的照片对,尽管物体的结构和细节是相同的,但在光照或照片质量上也会存在一些差异(由于相机状态不稳定)。
我需要将具有相同对象的对象与具有更改对象的对象区分开来,并且不受光线条件或相机质量的影响。我怎么能这样做?
========
编辑:这是一对具有相同对象的:
这是一对具有不同细节的对象:
即使是第一对也会在光照条件或其他非内容差异方面存在差异,但预计这些不会影响我的结果。请问我该怎么做?
解决方案
您可以使用全局 Lucas-Kanade 算法(原论文“Lucas-Kanade 20 Years On: A Unifying Framework”)来匹配没有特征的图像。Richard Szeliski 说它是参数化(全局)运动。它返回变换矩阵 A:移位、缩放、仿射或单应性。这个矩阵中的一些值表示图片不相同:
Scale: A[0][0] != 1 or A[1][1] != 1
Shift horizontal and vertical: A[0][2] != 0 and A[1][2] != 0
Rotation: A[0][1] != 0 and A[1][0] != 0
推荐阅读
- reactjs - 是否可以隐藏材料表中特定行的编辑选项?
- python - 具有不同数量值 Pandas 的 DataFrame 到 Dictionary
- python - 如何在具有不同轴的同一图表上绘制条形图和线形图?
- java - 当它们打印相同的东西时,为什么两个字符串不相等?
- python - 在本地创建 Python 包以使用 pip 安装
- next.js - nextjs 组件获取数据
- css - 使用媒体查询的奇怪行为
- c - C中的指针和强制转换
- python - 如何从网页抓取功能中删除某些信息(美汤):
- linux - /usr/bin/ld: 搜索 -lstdc++ 时跳过不兼容的 /usr/lib/gcc/x86_64-linux-gnu/9/libstdc++.a /usr/bin/ld: 找不到 -lstdc++