我用深度学习分析LoL小地图,自制数据集DeepLeague开源(上)

本文为雷锋字幕组编译的技术博客,原标题 DeepLeague: leveraging computer vision and deep learning on the League of Legends mini map + giving away a dataset of over 100,000 labeled images to further esports analytics research,作者Farza。

翻译 | 曹永胜   校对 |  李振  整理 |  凡江

深度联盟(DeepLeague):在英雄联盟(League of Legends)的小地图上应用机器视觉和深度学习,并给出了超过10万个的标记图像,用于后续的电竞(esports)研究。

GitHub Repo + Dataset:

https://github.com/farzaa/DeepLeague

作者注1:所有这些都是免费和开源的。我在这篇文章的第2部分解释了所有的技术细节,你可以在这里找到。如果您有任何问题,请随时与我联系。

作者注2:如果你是一个LCS团队(The League of Legends Championship Series,LCS。英雄联盟冠军系列赛),请雇佣我!我将帮助你打败韩国 Overlords。在Twitter上联系我吧。

DeepLeague正在工作。 我输入的只是一个LCS游戏的VOD(Video-On-Demand,VOD,点播视频),通过分析VOD的像素,DeepLeague可以告诉我们每个冠军是如何在地图上移动的。 厉害!

暂时想象自己是一名足球队教练,有人给你提供了一个程序。它可以播放足球比赛的视频,并在比赛的每一个时刻输出你球队球员的坐标。 如果我们将数据可视化,它看起来就像下面的GIF图片,你可以看到蓝色团队的玩家们有一个小盒子,上面画着程序生成的程序。程序替我们“监控”比赛。

DeepLeague是什么?

DeepLeague是第一个将计算机视觉、深度学习和英雄联盟结合在一起的算法和数据集(超过100,000个图像),通过让开发人员能够轻松访问游戏中像素的数据,将LoL分析提升到下一个级别。给定一个关于英雄联盟小地图的图片,它可以为冠军选手预测边界框和标签。所以,你给DeepLeague的是一个VOD(基本上只是一堆图像),它会输出这样的东西:

Regi’s 在我给他看了 DeepLeague之后的反应。

DeepLeague “监控”着小地图,然后在没有任何其他输入的情况下,告诉你,每个冠军选手在每个时刻的位置。

所以,只要有一段视频,你就可以在比赛的每一秒内聚集冠军和冠军的位置。这方面有很多用例,特别是在LoL esport场景中,这些数据非常有用,因为你需要给DeepLeague提供一个玩家游戏的VOD。这意味着它适用于scrims、solo-q游戏和其他个人游戏,其中所有需要的都是一个简单的VOD(甚至ARAM! )

在DeepLeague之前,没有办法得到这种游戏内的数据,因为Riot API只提供post游戏分析。

当你拿到DeepLeague的输出数据后,可以做的事情:

分析一下打野的路径,他在哪里开始他的路线,当他在哪里,当他回来的时候,他在什么时候,施加了最大的压力。

分析团队什么时候拿“龙”,当他们决定拿“龙”的时候,他们是如何在地图上以团队的形式轮换的,作为一个团队,他们是如何拿下男爵的的。

分析什么时候一路会崩,什么时候他们受到其他路想的压力时,什么时候他们会失去一条线路,什么他们被单杀,什么时候他们离开推进的线路。

当然. 你可以在Faker的VODs上运行DeepLeague,来收集关于他如何操作和真正学习的数据。

让我们讨论一下。

我为什么做这个?

这个GIF图片没有任何用途,我就是喜欢这两个人

我已经在电子竞技系统工作了大约四年了,其中最有趣的事情之一就是做一个支持团队的幕后工作。球员会得到教练、分析师、厨师、健身教练、心理学家等方面的疯狂支持,而球员们除了比赛本身没什么可担心的。 但是,这个行业刚刚兴起,目前使用的方法可能不是最好的。 为了说明这一点,我想谈谈一个全职英雄联盟分析师的一些主要职责:

观察相当长时间的不同地区的比赛视频,比如欧洲和韩国。在比赛水平提升前,抓住其中重要的元素,使自己队伍处于领先地位。

对那些似乎在特定的补丁上过度使用的冠军做笔记,这样他们就可以在自己的游戏中利用这些“力量选择”。

记录下无数其他的事情,比如:守卫分布,丛林路线,团队拿龙的时候,团队聚集在一起的时机,团队蹲人的时机,玩家死亡的地方,他们推进的地方等等。

当你想成为一名分析师的时候,阅读了职位描述时

这适用于每一位辛勤工作的教练/分析师。确保你的团队有最好的获胜机会的唯一方法是,先收集所有这些信息,理解它,然后弄清楚如何将信息反馈给那些在游戏中处于主导位置的玩家。我相信你可以看到,没有教练或分析师的英雄联盟球队是少数!

但是,分析师的工作听起来很痛苦。最糟糕的是,因为这个行业是新兴的,目前对分析师来说最好的工具就是微软的Excel。

现在,您已经了解了一些幕后发生的事情,让我来谈谈为什么更有用的工具不存在 。

要理解的最重要的事情之一是,Riot Games没有任何API,可以让你知道在游戏中每秒会发生什么。他们所提供的只是游戏后的统计数据,比如死亡,死亡等等。这对人们来说是很糟糕的,就像传奇队的职业联盟一样,他们会从这些详细的现场游戏信息中获益。这里有一个非永久性的解决方案,我稍后会解释,但它只适用于live LCS游戏。让我们看一看可能的情况。

Riot听到这句话“Hey Riot! 你是否会给我们一个API,给我们开发者更多的实时数据,这样我们就可以改进分析,创建其他工具来帮助玩家变得更好?“时的反应

让我们假设TSM是另一个团队,比如Cloud 9。玩家们将在各自的游戏房间里玩他们的个人电脑。游戏结束后,没有办法弄清楚到底发生了什么,而又不去看VOD。他死在哪里?在哪里他守卫吗?他从哪里开始他的打野?所有这些信息都必须手动聚合。有些人可能会说,“为什么不能直接将数据与客户端聚合?”,1)这是违反服务条款的,2)它是加密的,尤其难以破解。

小地图

我马上就知道我想用小地图来做这个小项目。它以最简单的方式提供了关于这个游戏的最简单的信息。对于你的数据集来说,这是一种非常好的获得数据的方式,尤其是在深度学习的时候,因为这意味着你的算法可能会更容易学习。

https://medium.com/@farzatv/deepleague-leveraging-computer-vision-and-deep-learning-on-the-league-of-legends-mini-map-giving-d275fd17c4e0

更多文章,关注雷锋网

添加雷锋字幕组微信号(leiphonefansub)为好友

备注「我要加入」,To be a  AI  Volunteer !雷锋网雷锋网雷锋网

  • 发表于:
  • 原文链接:http://kuaibao.qq.com/s/20180301A0Y98K00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券