热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

测试图像“monarch”_腾讯IEG开源GAMEAISDK:自动化测试吃鸡、MOBA类游戏

近日,腾讯互娱(IEG)开源了一款名为GAMEAISDK的自动化测试平台,该平台封装好了多种工具供开发者使用,
7de67b62e5eefeb90d54397cd0b011e8.png
近日,腾讯互娱(IEG)开源了一款名为 GAME AI SDK 的自动化测试平台,该平台封装好了多种工具供开发者使用,目前支持的游戏类型有跑酷类、吃鸡类、射击类、MOBA 类等。

项目地址:https://github.com/Tencent/GameAISDK

01b1d6c97900219562fc53b7d218255c.png
d4c372009e7c7a18529c06ffce944ebf.png
平台内置的「天天酷跑」示例。左图为未训练随机做动作,右图是训练好的效果。

SDK(软件开发工具包)一般是软件工程师为特定的软件包、软件框架、硬件平台、操作系统等创建应用软件时可使用的开发工具集合。

似乎有些抽象。在实际项目中,我们只需记住,SDK 是手游渠道提供的,集成了用户登录、社区功能、社交分享功能、数据后台统计功能的功能模块。接入 SDK 后,游戏厂商和渠道都要对 SDK 包进行测试,测试通过才能上线。

看了上文展示的酷跑动图效果,是不是想上手试试吃鸡类、射击类的游戏体验呢?这个开源项目可以满足你的需求,它支持使用者进行项目接入以及二次开发。

AI SDK 平台

AI SDK 平台是一个基于游戏图像来开发游戏 AI 的开源工具包。工具包主要完成了 UI 检测、游戏内元素识别、AI 算法(DQN、IM)等功能。开发者可以基于此工具包完成游戏自动化测试。

目前该平台已支持的游戏类型有跑酷类、吃鸡类、射击类、MOBA 类等。特定场景下它可以代替人工进行游戏场景的自动化,减少游戏场景测试的人力投入。

该工具包主要包括 AI SDK、AI Client、SDKTool(配置文件工具)这几部分。

SDKTool 帮助我们生成跟具体游戏相关的 AI SDK 所需配置文件。如在游戏运行过程中,整个流程中需要动作交互的 UI、需要识别的游戏元素等。AI 开发过程中用到的信息可来自于游戏图像(AI Client 获取)或其他数据。AI SDK 能够自动化完成游戏 UI 操作并进入游戏场景,像玩家一样操作手机玩游戏。

功能简介

GAME AI SDK 平台具备以下功能:

  • 提供多种图像识别算法,识别游戏场景中的关键特征数据,如游戏场景中的技能状态、按钮位置、目标物位置等。
  • 提供模仿学习和强化学习 AI 算法,可直接用于训练游戏场景 AI。
  • 提供了配套的样本采集、图像标注工具。

AI SDK 模块简介

AI SDK 主要包括 AI Client 模块、MC 模块、IO 模块、UI 模块、GameReg 模块、AI 模块。

8c52082818f09c06dae8ac87ba2bbdfd.png
图 1:AI SDK 模块图。
  • AI Client 主要与手机端交互,获取游戏图像,并执行 UI 或 AI 输出的动作;
  • IO 模块与 AI Client 交互,作为 AI SDK 的数据输入输出控制;
  • MC 模块与 IO 模块交互,将数据分发至 AI SDK 后端的 UI 和 AI 模块,并做一些业务逻辑的管理控制;
  • UI 模块根据游戏图像,识别出需要进行的 UI 操作;
  • GameReg 模块根据游戏图像,识别出游戏场景内的数字、血条、目标物等元素;
  • AI 模块根据识别到的游戏元素,依照 AI 算法执行业务逻辑。
878facd7e85cf8dc401a1215f07afb5f.png
图 2:架构图。

环境部署

运行 AI SDK 中的 demo,首先需要安装依赖,然后将本地 PC 机连接手机(或手机模拟器),通过 AI Client 实时采集手机(或手机模拟器)的游戏画面,并传给 AI 服务进行处理。把 AI 服务处理的动作结果反馈到连接 PC 的手机上,完成动作的交互。

470940750d8d4878d6d267a532b353a0.png
图 3:AI SDK 和手机的交互图。

部署依赖环境

部署依赖环境主要是安装 AI SDK、SDKTool(配置文件生成工具)、AI Client 的环境依赖。

该项目提供了两种操作系统的部署过程。

Ubuntu:目前 SDK 工具包运行在 16.04 的 64 位 Ubuntu 系统上,使用的深度学习框架为 TensorFlow,所以使用前需要安装依赖的 ubuntu 系统和相应的依赖第三方工具包,如 TensorFlow、OpenCV、protobuf 等。

环境主要依赖 nvdia-cuda 9.0、cudnn 7.0、opencv 3.4.2、protobuf 3.2.0、android adb、poster 工具集等依赖包。具体请参考:https://github.com/Tencent/GameAISDK/blob/master/doc/environment/InstallStepByStep.md。

Windows:SDK 包下自带要安装的依赖包文件「requirements.txt」,所以 windows 下只需要安装「requirements.txt」中的依赖。具体请参考:https://github.com/Tencent/GameAISDK/blob/master/doc/environment/SDKToolEnv.md。

此外,该项目还介绍了配置文件工具 SDK Tool、项目接入、二次开发以及调试技巧,详情请参考项目链接。

参考链接:https://ieg.tencent.com/https://github.com/Tencent/GameAISDK

https://mp.weixin.qq.com/s/b8YXnZni0wBzoHZjzdRwGQ



推荐阅读
  • 这是原文链接:sendingformdata许多情况下,我们使用表单发送数据到服务器。服务器处理数据并返回响应给用户。这看起来很简单,但是 ... [详细]
  • Windows下配置PHP5.6的方法及注意事项
    本文介绍了在Windows系统下配置PHP5.6的步骤及注意事项,包括下载PHP5.6、解压并配置IIS、添加模块映射、测试等。同时提供了一些常见问题的解决方法,如下载缺失的msvcr110.dll文件等。通过本文的指导,读者可以轻松地在Windows系统下配置PHP5.6,并解决一些常见的配置问题。 ... [详细]
  • 安装Tensorflow-GPU文档第一步:通过Anaconda安装python从这个链接https:www.anaconda.comdownload#window ... [详细]
  • Webmin远程命令执行漏洞复现及防护方法
    本文介绍了Webmin远程命令执行漏洞CVE-2019-15107的漏洞详情和复现方法,同时提供了防护方法。漏洞存在于Webmin的找回密码页面中,攻击者无需权限即可注入命令并执行任意系统命令。文章还提供了相关参考链接和搭建靶场的步骤。此外,还指出了参考链接中的数据包不准确的问题,并解释了漏洞触发的条件。最后,给出了防护方法以避免受到该漏洞的攻击。 ... [详细]
  • 深度学习中的Vision Transformer (ViT)详解
    本文详细介绍了深度学习中的Vision Transformer (ViT)方法。首先介绍了相关工作和ViT的基本原理,包括图像块嵌入、可学习的嵌入、位置嵌入和Transformer编码器等。接着讨论了ViT的张量维度变化、归纳偏置与混合架构、微调及更高分辨率等方面。最后给出了实验结果和相关代码的链接。本文的研究表明,对于CV任务,直接应用纯Transformer架构于图像块序列是可行的,无需依赖于卷积网络。 ... [详细]
  • GPT-3发布,动动手指就能自动生成代码的神器来了!
    近日,OpenAI发布了最新的NLP模型GPT-3,该模型在GitHub趋势榜上名列前茅。GPT-3使用的数据集容量达到45TB,参数个数高达1750亿,训练好的模型需要700G的硬盘空间来存储。一位开发者根据GPT-3模型上线了一个名为debuid的网站,用户只需用英语描述需求,前端代码就能自动生成。这个神奇的功能让许多程序员感到惊讶。去年,OpenAI在与世界冠军OG战队的表演赛中展示了他们的强化学习模型,在限定条件下以2:0完胜人类冠军。 ... [详细]
  • 通过Anaconda安装tensorflow,并安装运行spyder编译器的完整教程
    本文提供了一个完整的教程,介绍了如何通过Anaconda安装tensorflow,并安装运行spyder编译器。文章详细介绍了安装Anaconda、创建tensorflow环境、安装GPU版本tensorflow、安装和运行Spyder编译器以及安装OpenCV等步骤。该教程适用于Windows 8操作系统,并提供了相关的网址供参考。通过本教程,读者可以轻松地安装和配置tensorflow环境,以及运行spyder编译器进行开发。 ... [详细]
  • 云原生应用最佳开发实践之十二原则(12factor)
    目录简介一、基准代码二、依赖三、配置四、后端配置五、构建、发布、运行六、进程七、端口绑定八、并发九、易处理十、开发与线上环境等价十一、日志十二、进程管理当 ... [详细]
  • Skywalking系列博客1安装单机版 Skywalking的快速安装方法
    本文介绍了如何快速安装单机版的Skywalking,包括下载、环境需求和端口检查等步骤。同时提供了百度盘下载地址和查询端口是否被占用的命令。 ... [详细]
  • 云原生边缘计算之KubeEdge简介及功能特点
    本文介绍了云原生边缘计算中的KubeEdge系统,该系统是一个开源系统,用于将容器化应用程序编排功能扩展到Edge的主机。它基于Kubernetes构建,并为网络应用程序提供基础架构支持。同时,KubeEdge具有离线模式、基于Kubernetes的节点、群集、应用程序和设备管理、资源优化等特点。此外,KubeEdge还支持跨平台工作,在私有、公共和混合云中都可以运行。同时,KubeEdge还提供数据管理和数据分析管道引擎的支持。最后,本文还介绍了KubeEdge系统生成证书的方法。 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • 本文介绍了C#中数据集DataSet对象的使用及相关方法详解,包括DataSet对象的概述、与数据关系对象的互联、Rows集合和Columns集合的组成,以及DataSet对象常用的方法之一——Merge方法的使用。通过本文的阅读,读者可以了解到DataSet对象在C#中的重要性和使用方法。 ... [详细]
  • t-io 2.0.0发布-法网天眼第一版的回顾和更新说明
    本文回顾了t-io 1.x版本的工程结构和性能数据,并介绍了t-io在码云上的成绩和用户反馈。同时,还提到了@openSeLi同学发布的t-io 30W长连接并发压力测试报告。最后,详细介绍了t-io 2.0.0版本的更新内容,包括更简洁的使用方式和内置的httpsession功能。 ... [详细]
  • 本文介绍了PhysioNet网站提供的生理信号处理工具箱WFDB Toolbox for Matlab的安装和使用方法。通过下载并添加到Matlab路径中或直接在Matlab中输入相关内容,即可完成安装。该工具箱提供了一系列函数,可以方便地处理生理信号数据。详细的安装和使用方法可以参考本文内容。 ... [详细]
  • 解决nginx启动报错epoll_wait() reported that client prematurely closed connection的方法
    本文介绍了解决nginx启动报错epoll_wait() reported that client prematurely closed connection的方法,包括检查location配置是否正确、pass_proxy是否需要加“/”等。同时,还介绍了修改nginx的error.log日志级别为debug,以便查看详细日志信息。 ... [详细]
author-avatar
飞天猪的世界公寓
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有