Press "Enter" to skip to content

基于深度学习的玩家检测

本站内容均来自兴趣收集,如不慎侵害的您的相关权益,请留言告知,我们将尽快删除.谢谢.

足球中的球员检测

 

在过去的几年里,人们对使用数据来改进足球队的游戏越来越感兴趣。对足球数据的分析和研究可以对多个领域产生积极影响,例如,球员球探、团队游戏(例如,球场控制和xG模型)、球员训练和表现等。

 

具体地说,计算机视觉可以是从游戏/训练视频中提取相关信息的重要工具。

玩家检测管道

 

为了从视频片段中检测和识别(通过球衣编号)球员,我建立了一个包含3个步骤的工作流程:

 

从视觉上看,整个管道定义如下:

 

1.播放器检测

 

第一步是最容易实现的。幸运的是,已经有预先训练好的深度学习模型可以用来从图像中检测人,在这种情况下,它将检测足球运动员。

 

在本例中,我使用了一个使用Darknet框架的预先训练好的YOLO模型,该模型使用Coco数据集中的数千张图像进行训练。使用python,有一个名为dnn的OpenCV模块,其中包含了YOLO/Darknet。查看此链接,了解如何使用YOLO进行对象检测。 link

 

以下是用于加载和检测玩家的Python代码片段

 

# initialize minimum probability to eliminate weak predictions
p_min = 0.5
thres = 0.

 

这里有一个例子。蓝色框表示检测到的具有各自概率的玩家。

 

2.号码检测

 

第二步重点是检测球员球衣上的号码。

 

对于这个任务,我使用衬衫上标有数字的数据集(您可以在这里找到更多信息)来训练一个深度学习模型。对图像进行了尺度调整和灰度应用预处理。 here

该模型对应于预先训练的VGG模型,在顶部用一些层进行训练(即,转移学习)。以下是模型体系结构的一个片段。

 

# load the VGG16 network, ensuring the head FC layers are left off

 

这里有一个例子。红色方框表示检测到的玩家和检测到的数字。

3.号码识别

 

最后一步涉及检测到的号码的标识。为了完成这项任务,对CNN模型进行了数据增强训练。模型架构如下。

 

classifier = Sequential()

 

这里有一个例子。除了玩家和号码检测之外,我们还可以看到预测的人数。

把所有的东西放在一起

 

通过连续应用这3个步骤,我们可以得到球员的实时预测,包括球衣号码的识别。

 

下面是一个实时预测的示例。

结束语

 

在这篇文章中,我介绍了一条检测球场上足球运动员的管道,并在球衣上识别他们的号码。我将这项任务分为3个步骤:玩家检测、号码检测和号码识别。对于每个人,都训练了一个深度学习模型,根据最终目标使用不同的体系结构。

 

未来的一步是计算球员在球场上的坐标。要实现这一点,首先需要确定节线。

 

我希望你觉得这篇文章有趣!有关足球数据科学的更多工作,请访问我的repo:https://github.com/danielazevedo/Football-Analytics https://github.com/danielazevedo/Football-Analytics

 

原创文章,作者:fendouai,如若转载,请注明出处:https://panchuang.net/2021/06/21/%e5%9f%ba%e4%ba%8e%e6%b7%b1%e5%ba%a6%e5%ad%a6%e4%b9%a0%e7%9a%84%e7%8e%a9%e5%ae%b6%e6%a3%80%e6%b5%8b/

Be First to Comment

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注