如何在航拍图像中找到网球场

信息处理 计算机视觉
2021-12-22 23:10:17

我有兴趣在我的县找到所有网球场(以及其他类似的明确定义的特征,如篮球场),并且我有良好(但不同)分辨率的航拍图像,但我不确定找到它们的最佳方法. 以下是图像的两个示例:

VBMP 2009 的网球场和篮球场 Bing 的网球场

我查看了各种方法,我认为模板匹配不会起作用,因为它会非常慢,因为可以有任意比例和旋转,而且颜色也可以变化。霍夫变换听起来很有希望,但是一旦我得到所有线条,我不确定如何找到构成具有适当比例(约 36x29 英尺)的矩形的线条,或者更好地考虑其他标记的线条

作为背景,我的目标是将我县的所有网球场添加到 OpenStreetMap。

3个回答

您可以利用一些非常强烈的颜色和几何线索。我会尝试以下方法:

  1. 提取绿色通道并对其应用分水岭类型算法,然后是连通分量随后计算每个组件的组件统计信息(区域和边界框)。仅保留面积 ~= 边界框大小的组件。这仅适用于矩形物体,并将消除森林/林地等。
  2. 隔离白色通道 (R=G=B) 并对输出应用霍夫变换。这会给你线条。结合 1 和 2 来获得您的网球场。

我会首先只考虑绿色通道,或者以更智能的方式利用网球场的特殊颜色特性。

完成后,您可以应用边缘检测器,使用高阈值,因为线和球场之间的对比度非常高。

为了进一步去除异常值,您可以在过程结束时应用霍夫变换。

让我们知道您是否取得了好成绩!

啊哈,它写了一篇关于这个主题的博客文章!

在他们的帖子中,他们将网球场的图像转换为灰度图像。他们在哪里找到每条水平和垂直线的一阶和二阶导数。使用这些信息,他们能够确定照片中亮线(可能的球场边界)的位置。从那里他们将图像缩小为只有亮线的黑白呈现。

这是他们开始搜索网球场图像的时候。他们使用所谓的“模型形状”。模型形状本质上是对您正在寻找的对象的描述“例如:网球场的 11 条线”。作者找到所有平行线段,并将平行线段与模型形状进行比较。如果线段和模型形状之间的匹配度足够高,那么您已经找到了一个网球场。