我正在使用SIFT描述符。在检测MSER和DoG(SIFT)功能时,我已经完成了令人满意的匹配(拒绝了不匹配项之后)。比较,也是因为在最后的应用中,视觉特征跟踪过程将提供一组GFTT特征。
我正在使用
cv::FeatureDetector::detect(...)
,它为我提供了一个std::vector<cv::KeyPoint>
,其中填充了检测到的特征/关键点/区域出于兴趣。结构cv::KeyPoint
包含有关特征位置的基本信息,以及有关在其中检测到关键点的size
和octave
的信息。我使用GFTT进行的第一个结果很糟糕,直到我比较了典型的
size
和octave
参数具有不同类型的功能:MSER设置大小(10到40px之间)并将八度设为0
DoG(SIFT)设置大小和八度(大小/八度比率在20到40之间)
GFTT参数始终为:size = 3,八度= 0
我认为这是因为GFTT功能的主要目的不是用于匹配,而只是用于跟踪。这说明了匹配结果的质量低下,因为从这样的微小特征中提取的描述符不再具有歧视性,并且对许多事物不变,包括小的1像素偏移。
如果我手动设置GFTT的
size
到10-12,我得到了很好的结果,与使用MSER或DoG(SIFT)时非常相似。我的问题是:有没有一种更好的方法来确定增加
size
(和/或octave
),而不是仅仅去看看10看看是否可行?我想避免对size
增加值进行硬编码,并以编程方式确定它,但是只要我有一些可靠的论据来支持对新的size
增加值/ size
增加值/ size
估计算法的选择,就可以进行硬编码了。#1 楼
我不确定您的确切问题是否会得到很好的回答:SIFT和SURF的比例空间实际上是为自动估算围绕拐角状关键点的“良好”相关邻域大小而设计的(这是什么好特征现在,更肯定的答案是:
建立关键点和良好匹配的数据库(例如,使用方形校准图案)并创建在此数据库上进行自动性能评估以找到正确的大小。该任务实际上可以真正实现自动化(请参见Mikolajczyk和Schmid关于点匹配评估的工作)
在图像金字塔中嵌入您的良好功能,使其也具有某种比例。您可以在多尺度FAST和Harris兴趣点上查找参考,这些参考点的操作与此过程非常相似。模糊(或多或少的blockSize运算符所做的事情)并查看拐角何时消失。但是请注意,更多的模糊会使拐角远离其真实位置。
如果您确实在寻找一些快速修复的方法,请尝试使用5x5到11x11之间的尺寸(立体声块匹配中使用的典型尺寸)。如果您正在寻找一个令人满意的标准,请尝试在您的噪声水平下最大化两个特征点良好匹配的可能性。
评论
$ \ begingroup $
我一直在寻找比您建议的解决方案更快捷,更简单的解决方案。此外,我只能在提取关键点并与某物匹配后才能确定匹配是好是坏。即使我完全随机地匹配它们,我也会得到一些很好的匹配-所以您的第一个建议并没有帮助。至于第二部分,更加快捷:我知道没有完美的参数,但是正如我所说,将大小增加到12很有帮助-质量可以与SIFT和MSER匹配相媲美。我只是毫不犹豫地选择100以上或34以上的12 ...
$ \ endgroup $
–佩内洛普
2012年5月9日9:47
#2 楼
为了帮助您确定检测器的最佳参数,OpenCV为此配备了AjusterAdapter。我从来没有亲自使用过它,但是它可能是通过编程确定参数的标准方法。还要注意,尽管Keypoints具有多个属性,但并不是所有算法都有意义。因为Keypoint结构用于不同的算法,所以它具有所有这些字段,但有时不使用它们,这就是为什么要获得那些octave = 0的原因。海事组织。
评论
$ \ begingroup $
我知道某些类型的功能有时不是出于某种目的的最佳类型,但是最近的工作一直在尝试使用不止一种类型的v.features / interest区域并通过组合获得更好结果的方法。可以单独使用任何一种类型(如果您有兴趣,我可以添加指向作品的链接)。另外,我正在做的至少是部分研究,因此,我尝试做一下并评估使用不同关键点类型获得的结果,即使其中一些结果不如最新技术也是如此。艺术。我将研究AdjusterAdapter,谢谢。
$ \ endgroup $
–佩内洛普
2012年6月14日下午7:16
$ \ begingroup $
我只是浏览了界面提供的功能。它只能增加或减少检测器检测到的功能数量。此外,我对检测到的功能没有任何问题。我只是想调整它们的大小,以便更好地用于匹配(将大小增加到10可以做到这一点,但是我对此没有任何具体的(足够的)论点)
$ \ endgroup $
–佩内洛普
2012年6月14日上午8:17
评论
Hey @ penelope:看看这个链接,这个家伙已经做了一些不错的工作。[computer-vision-talks.com/2011/08/…@Sistu嘿,在一般情况下,对于平面对象,看起来像是描述符的很好的一般比较,但是我正在处理特定类型的图像,我需要做自己的测试。此外,这个问题比“我需要参考材料来比较各种类型的除草机的性能”更为具体。不过,这是一个不错的链接,请查看一下。