c -在OpenCV中训练SIFT特征



我创建了一个小的SIFT应用程序,它获取关键点并将其保存到一个文本文件中。我用这个来抓取信息从一个标志(说at&t;T),并使用它来比较与该标志的其他图像。问题是我的许多图像都有标识的变化,由于缩放,旋转或照明,它不能拾取它。我想知道是否有可能获得一组图像,抓住它的关键点,并通过某种训练算法运行它以增强检测。

我在网上搜索了训练SIFT关键点的方法,但它们都在某种博士论文中,这些论文都是关于数学算法的,老实说,这让我很困惑,因为我已经有一段时间没有上数学课了。

如果有人有任何建议或链接,以便能够了解培训是如何工作的,或者需要做什么来实现一个请让我知道。或者,如果有人有更简单的方法来做到这一点,而不需要SIFT,那么我将非常感谢其他形式的检测。以下是我尝试过的方法:

  • 冲浪
    • 返回无效结果失败
  • 具有自增强特性
    • 失败,因为我在2011年7月11日开始训练100个正面模型和100个负面图像,它仍然运行到2011年7月19日
  • 模板匹配相同标志的各种变换,有阈值和没有阈值
    • 失败了,因为我必须根据无法在图像
    • 中检测到的次数指数级地需要创建徽标

Thanks in advance

一个简单的起点是收集几个at&t徽标的SIFT/SURF描述符,并对它们使用FLANN。然后,取一张测试图像,计算描述符,进行范围搜索,确定最近邻距离等,并尝试找出"接近度"的度量。

您可以使用PCA来减少维数,然后您可以在从徽标提取的向量特征集上训练某种分类器,例如SVM。你也可以使用BoW(单词袋特性)。你也可以在谷歌上搜索"logo识别",很多资料都可以找到。

相关内容

  • 没有找到相关文章

最新更新