最近,一篇名为《Following Messi with TensorFlow and Object Detection》的教程文章展示了如何通过TensorFlow训练自定义目标检测模型来专门定位和识别足球巨星梅西;同时,笔者也希望这项技术有助于催生新的足球战术,提高竞技水平。我们之前将TensorFlow与对象检测模型一起使用,但总是使用预先指定的传统数据集,例如COCO。这一次的挑战将更上一层楼,我将分析一段足球比赛的片段并确定其中至少一名球员。说到足球,大家第一个想到的可能就是那些天赋异禀的球员,比如阿根廷的梅西。在本文中,我将:训练一个自定义的目标识别模型来定位梅西选择一个真实的赛事转播视频(我在本文中使用的是今年8月31日南美世界杯预选赛乌拉圭对阵阿根廷的视频),观看让我们看看我们能得到什么。通过这项技术,我们或许可以设计出新的战术,提高足球比赛的水平。注意:我们将使用带有上述对象检测模型的TensorFlow,并且两者都具有ApacheLicense2.0许可证。我们将从我们最终得到的开始:比赛的慢动作重播。如果您对此感兴趣,我建议您花时间逐步学习如何构建模型。它包括三个重要步骤:构建一个自定义数据集,其中包含可用于检测的目标通过TensorFlow训练和评估模型使用模型步骤:构建一个自定义数据集Moment1。如果我们看官方文档,我们会发现有一个单独的部分介绍如何构建自定义数据集。地址:https://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/using_your_own_dataset.md2。我们需要我们想要检测的物体的图像,我们需要给它们贴上标签。对于本例,我使用的是RectLabel工具,它是MacOS的不错选择。(还有其他替代方案,如LabelImg。)然后是第一个测试,我收集了119张足球比赛图像(数量不多,但足以进行测试)。我标记了大约100张梅西的照片。注意:要将示例放入实际应用程序,此步骤需要更多图像。3、下一步就是将照片和对应的标签转换成TF格式文件。脚本地址:https://github.com/nbortolotti/tensorflow-code-experiences/blob/master/custom_model_object_detection/generate_tfrecord.py。(我用了一个中间步骤把xml注释标签转成csv,脚本地址:https://github.com/nbortolotti/tensorflow-code-experiences/blob/master/custom_model_object_detection/xml_metadata_csv.py。)4.记住:*最好的环境是建立训练集和评估集。训练/评估自定义模型Moment5。完成上述文件后,我们就可以训练和评估模型了。对于这一步,我使用机器学习引擎,因为我没有本地基础设施来在1小时内执行整个过程。(官方说明:https://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/running_on_cloud.md)5个工作线程使用标准GPU。还强烈推荐使用TensorBoard来可视化训练和评估过程。记住:直接使用谷歌云存储。也就是说,所有文件都必须在此存储库类型中才能与训练引擎交互。TensorBoardML6中TotalLoss机器学习引擎的工作示例。使用21.77个单元,在1小时9分钟和20,000次迭代后,我们有多个检查点和一个可用的模型。7.我们使用最先进的检查点使用经过训练的模型进行推理。(官方文档:https://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/exporting_models.md)使用自定义模型Moment8。我们将从以下选项中使用此模型:使用此模型和脚本从检测结果生成视频。实现示例:https://github.com/nbortolotti/tensorflow-code-experiences/blob/master/custom_model_object_detection/od_video_generator.py。实时评估视频和解码标签以计算阿根廷球星外观的脚本。实现示例:https://github.com/nbortolotti/tensorflow-code-experiences/blob/master/custom_model_object_detection/od_video_label_detector.py注意:同一演示使用慢动作。地址:https://www.youtube.com/watch?v=ZCUJJN0q-To更多示例信息参见:https://github.com/nbortolotti/tensorflow-code-experiences/tree/master/custom_model_object_detection这个是可以的这个有趣的研究的开始......后续可能涉及如何改进运动战术,包括更多球员并验证联系。现在,我们只是使用传统的直播电视信息,如果我们使用更清晰或可以看到体育场全景的摄像头会怎样?可以计算所有玩家位置。事实上,我们的实验证明,用机器学习来识别球员是非常容易的,但是我们能否根据球员的位置和他们擅长的技能找到更好的战术呢?我希望你玩得开心,并希望在未来,我们能够看到TensorFlow实现到更多的体育领域。原文:https://becominghuman.ai/following-messi-with-tensorflow-and-object-detection-20ba6d75667【本文为“机器之心”专栏原文翻译,微信公众号“机器之心”theMachine(id:almosthuman2014)》]点此阅读更多本作者好文
