openCV H检测
openCV H detection
对于无人机比赛,我需要使用 openCV 进行图像处理以检测“H”(用于直升机停机坪)。我尝试过一些经典算法,但结果并不令人满意。
- SIFT(和SURF):所有的角度都是一样的(90度)所以即使找到“H”,也是方向错误。
- matchTemplate: 挺好的,但是不是旋转和大小不变的。所以我需要做太多不同尺寸和不同方向的测试。
- 霍夫线变换:当无人机离目标太远或太近时,由于它们的粗细,它不会检测到相同的线。
- Machine Learning for OCR:我忽略了如何让它准确学习,因为我正在搜索的模板是唯一的。
有人可以给我一些建议吗? :)
编辑:这是我们需要检测的 "H":
识别直升机停机坪的最佳方法是训练 Haar 分类器,然后 运行 它在:
- 原图
- 图片正负22、45、68、90度旋转
Haar 分类器是通过添加小的旋转来训练的,因此上述角度应该足以覆盖图像中直升机停机坪的所有旋转。另一种方法是为不同的旋转训练多个分类器;这更常见,因为 Haar 分类器放弃了最早的证据,并且 运行 多个分类器比旋转高分辨率图像更快。
也可以尝试使用旋转进行模板匹配,但这需要更多的旋转。
对于无人机比赛,我需要使用 openCV 进行图像处理以检测“H”(用于直升机停机坪)。我尝试过一些经典算法,但结果并不令人满意。
- SIFT(和SURF):所有的角度都是一样的(90度)所以即使找到“H”,也是方向错误。
- matchTemplate: 挺好的,但是不是旋转和大小不变的。所以我需要做太多不同尺寸和不同方向的测试。
- 霍夫线变换:当无人机离目标太远或太近时,由于它们的粗细,它不会检测到相同的线。
- Machine Learning for OCR:我忽略了如何让它准确学习,因为我正在搜索的模板是唯一的。
有人可以给我一些建议吗? :)
编辑:这是我们需要检测的 "H":
识别直升机停机坪的最佳方法是训练 Haar 分类器,然后 运行 它在:
- 原图
- 图片正负22、45、68、90度旋转
Haar 分类器是通过添加小的旋转来训练的,因此上述角度应该足以覆盖图像中直升机停机坪的所有旋转。另一种方法是为不同的旋转训练多个分类器;这更常见,因为 Haar 分类器放弃了最早的证据,并且 运行 多个分类器比旋转高分辨率图像更快。
也可以尝试使用旋转进行模板匹配,但这需要更多的旋转。