在OpenCV中训练SIFT功能

Seb*_*Seb 6 c opencv image-manipulation image-processing computer-vision

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

我在网上搜索了培训SIFT关键点的方法,但是它们都在某种博士论文中,这些论文都涉及到所有这些数学算法,老实说,这些算法让我失望,因为我没有参加任何数学课程一段时间.

如果有人有任何建议或链接,以便能够了解培训的工作原理或需要做些什么来实施,请告诉我.或者,如果有人在没有SIFT的情况下有更简单的方法,那么我将非常感谢其他形式的检测.以下是我尝试过的列表:

  • 冲浪
    • 因为返回无效结果而失败
  • Haar特征与Adaboosting
    • 因为我在2011年7月11日开始训练100张带有100张负片图像的正面模型而失败,截至2011年7月19日它仍在运行
  • 模板与具有和不具有阈值的相同徽标的各种变换匹配
    • 失败,因为我必须根据它无法在图像中检测任何内容的次数指数地创建徽标

提前致谢

Jac*_*cob 3

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