2

对于无人机比赛,我需要使用 openCV 进行图像处理以检测“H”(对于直升机停机坪)。我尝试了一些经典算法,但结果并不令人满意。

  • SIFT(和 SURF):所有的角度都是相同的(90 度),所以即使找到“H”,它的方向也是错误的。
  • matchTemplate:相当不错,但它不是旋转和大小不变的。所以我需要做太多不同尺寸和不同方向的测试。
  • 霍夫线变换:当无人机离目标太远或太近时,由于它们的粗细,它不会检测到相同的线。
  • OCR 的机器学习:我忽略了如何让它准确学习,因为我正在搜索的模板是独一无二的。

有人可以给我一些建议吗?:)

编辑:这是我们需要检测的“H”: 待检测的H字母

4

1 回答 1

1

识别直升机停机坪的最佳方法是训练一个 Haar 分类器,然后运行它:

  1. 原始图像
  2. 正负 22、45、68、90 度旋转的图像

通过添加小旋转来训练 Haar 分类器,因此上述角度应该足以覆盖图像中直升机停机坪的所有旋转。另一种方法是针对不同的旋转训练多个分类器;这更常见,因为 Haar 分类器放弃了最早的证据,并且运行多个分类器比旋转高分辨率图像要快。

也可以尝试使用旋转进行模板匹配,但这需要更多的旋转次数。

于 2017-06-28T06:51:08.247 回答