比较2个图像中的特征形状(matlab计算机视觉)

时间:2016-01-09 17:34:43

标签: image matlab computer-vision feature-detection matlab-cvst

我试图通过功能检测来比较两个图像

主要目标是要确定两张图片是否相似,如果不是,我会跳到下一个模型并比较这两张图片,直到我发现找到了最相似的人。

我设法检测到两张图片中的优点,但在比较这两张图片时苦苦挣扎。 两张图片都有大约100-200个特征,手动我可以找到一些匹配点,它们位于两个地方的相同位置。

不幸的是,matchFeatures命令非常简单,它只是将1个功能与另一个功能进行比较而不使用其他功能。 这将是并且不起作用仅仅因为两个图像不是相同的图片。 它们可能是同一个对象,但不是同时拍摄的。所以我无法将奇异特征与单一特征进行比较。

我试图比较形状。

因此,我会在一张图片中根据点(要素)制作一个虚构的形状,并尝试在另一张图片中找到类似的东西。

我尝试手动构建一个递归函数,计算两者中相似的距离并试图找到一些更接近这些点的相似距离,但复杂性非常大,而且matlab很难做到这一点,所以我退出了。

我有点被困在这里,我正在寻找一些新想法如何管理它。

总结(或 TL; DR )我试图这样做: enter image description here

但是,不是将奇异特征与单一特征进行比较,而是通过他们正在创建的形状将特征组(我甚至不需要他们的描述,只是位置)比较为一组特征。

1 个答案:

答案 0 :(得分:1)

我还不会放弃功能匹配。你到底遇到了什么问题?正确匹配太少或者错误太多?

如果正确匹配太少,您可以尝试调整特征检测器的参数以检测更多点。 100-200实际上相当少。尝试降低指标阈值并增加比例级别的数量。您还可以尝试调整matchFeatures的参数以允许更多匹配。

如果您有太多虚假匹配,那么您可以尝试使用estimateGeometricTransform函数来计算两个图像之间的几何变换并消除异常匹配。