基于pytorch框架用resnet101加GPT搭建AI玩王者荣耀

本源码模型主要用了SamLynnEvans Transformer 的源码的解码部分。 以及pytorch自带的预训练模型"resnet101-5d3b4d8f.pth"

注意运行本代码需要注意以下几点 注意!!!!!
1、目前这个模型在用后裔100多局对战数据下训练出来后,对局表现出各种送人头之类的问题,以及代码本身各种不规范,请多原谅。
2、本代码本来只是我试验模型能否玩王者荣耀,B站朋友强烈要求开源。 仓促开源估计问题很多,请多原谅。
三、运行环境win10;win7未测试,估计是可以。 需要一张6G或以上显存的英伟达显卡,虽然4G的1050ti勉强也可以。
四、需要一台打开安卓调试并能玩王者荣耀的手机,虚拟机没有试过,理论上应该可行。
五、需要下载scrcpy 的windows版本。 把所有文件解压到项目根目录即可(这是我的笨办法) 。
位置如图

六、pyminitouch库运行时会自动安装minitouch。 如果无法自动安装则需要手动安装minitouch ,比较麻烦,如有困难请多多百度。
还有,minitouch不支持Android10
七、本人用的手机分辨率是1080*2160的,本代码并没有针对不同的手机做优化。 不同的手机minitouch命令中所描述的位置会有差异,需要对代码做出相应调整,请务必注意。
八、注意游戏的布局,务必要一样。 布局可参考B站视频或者我上传的训练用截图。 如图。

布局图

九、游戏更新以后可能会导致无法预料的后果,因此并不能保证此代码玩王者荣耀的长期有效性。
我之后可能出视频教程,同时讲讲我的设计思路。 部分地区截图不可见,可下载项目在pycharm下打开readme.md即可见。

运行与生成训练数据

需要的库
torch
torchvision
pynput
pyminitouch
可能还有其它库

运行训练好的模型

如果前面的工作做好了就可以把模型跑起来了,这里声明这个经过训练的模型仅仅训练100多局,水平很低,青铜人机都未必能打过。
一、首先下载模型 你可以从google云盘 下载训练过的模型,也可以百度网盘下载
链接:https://pan.baidu.com/s/1Bt7BXukDDCpc1aWFI2iKxg
提取码:5c1k
后放入weights文件夹下
二、先运行 “启动和结束进程.py” 启动scrcpy 把“训练数据截取_A.py” 中的两项改成你的,_DEVICE_ID 是 adb devices后显示的那个id

启动和结束进程.py

三、启动王者荣耀进入5v5人机对战 运行 “ 训练数据截取_A.py” 即可。

生成训练数据

运行 “训练数据截取_A.py” 时可以通过按键操控角色,这时就可以生成训练用的数据,如果没有操控则会生成一个空文件夹和空json文件。
按"i"键则结束或则是重新运行
按键’w’ 's ’ ‘a’ 'd’控制方向 左、下、右箭头对应是1、2、3技能,上箭头长按则攻击。 其它按键请参考源码。
每次获取训练图片最好不要超过5000张

你也可以下载训练数据样本(只是样本,数据量不大,不能指望两局对战数据就有效果,我估计这个模型现有参数可以吃下上万场的对战数据)
百度网盘 链接:https://pan.baidu.com/s/1Ak1sLcSRimMWRgagXGahTg 提取码:t4k3
google云盘
解压后注意存放位置,请参考源码。

如何训练

一、数据预处理
将图片用resnet101预处理后再和对应操作数据一起处理后用numpy数组储存备用。
具体要做的就是运行 “处理训练数据5.py”
二、训练
预处理完成以后运行 “训练_B.py”即可。

游戏按键映射本地化
按键映射通过 ‘./json/名称_操作.json’ 文件完成,如前文所述,由minitouch进行按压模拟。

1,前期准备:
开启“开发者模式”,允许“USB调试”,允许“USB调试(安全设置):允许通过USB调试修改权限或模拟点击”。后两项均在进入开发者选项后可以找到。

2,按键可视化,按键轨迹监控:
开启“显示点按操作的视觉反馈”,开启“指针位置”。 后者方便查看自己手机屏幕点按的像素点坐标信息,从而生成对应本地手机按键映射的.json文件。

3,映射本地化计算说明:

layout_description 此计算以手机充电口朝右握持为例,反向握持同理可推。 样例手机分辨率1080x2160。 Android“指针位置”中显示的坐标信息以图中左上角红色原点所示,xy轴如图。 此原点不论如何握持(充电口朝左或右),其始终保持在视野左上角,由重力感应判定。 minitouch坐标原点如图中左下角蓝色原点所示,此点为物理固定点,不随手机握持方向改变,反向握持此点在右上角。 另外注意两个坐标系xy轴方向不同。 在图中设定下,Android指针坐标(X,Y)对应minitouch坐标(1080-Y,X):即在点按屏幕中某点时,安卓调试显示的(X,Y)在.json文件中的坐标应为(1080-Y,X)。

4,本地映射文件生成:
‘check_json.py’为调试和生成本地.json按键映射文件的脚本。 重映射时请一一记录每个按键在自己手机中显示的“指针位置”,并按照上述计算方法换算为.json文件中需 要输入的坐标。 此脚本会生成一个’./json/local_layout.json’文件,请在’处理训练数据5.py’中进行相应替换。 此外,'处理训练数据5.py’中:‘加一技能’,‘加二技能’,‘加三技能’,‘购买’变量也许进行同样处理。.json文件中指令含义请参照minitouch。

基于pytorch框架用resnet101加GPT搭建AI玩王者荣耀相关推荐

  1. 目标检测-基于Pytorch实现Yolov3(1)- 搭建模型

    原文地址:https://www.cnblogs.com/jacklu/p/9853599.html 本人前段时间在T厂做了目标检测的项目,对一些目标检测框架也有了一定理解.其中Yolov3速度非常快 ...

  2. 银行股价预测——基于pytorch框架RNN神经网络

    银行股价预测--基于pytorch框架RNN神经网络 任务目标 数据来源 完整代码 流程分析 1.导包 2.读入数据并做预处理 3.构建单隐藏层Rnn模型 4.设计超参数,训练模型 5.加载模型,绘图 ...

  3. Pytorch之CNN:基于Pytorch框架实现经典卷积神经网络的算法(LeNet、AlexNet、VGG、NIN、GoogleNet、ResNet)——从代码认知CNN经典架构

    Pytorch之CNN:基于Pytorch框架实现经典卷积神经网络的算法(LeNet.AlexNet.VGG.NIN.GoogleNet.ResNet)--从代码认知CNN经典架构 目录 CNN经典算 ...

  4. 基于Pytorch框架的轻量级卷积神经网络垃圾分类识别系统

    今天在查资料的时候在网上看到一篇文章,博主是基于TensorFlow实现的CNN来完成对垃圾分类识别的,想到最近正好在使用Pytorch就想也做一下,就当是项目开发实践了.先看下动态操作效果: 原文在 ...

  5. 【Linux云计算架构:第三阶段-Linux高级运维架构】第25章—— 搭建jumperserver管理王者荣耀数万台游戏服务器

    本节内容: 34.1 Jumpserver堡垒机概述-部署Jumpserver运行环境 34.2 安装Coco组件 34.3 安装Web-Terminal前端-Luna组件-配置Nginx整合各组件 ...

  6. qlabel 边加载边更新_王者荣耀:9月版本更新,九位英雄调整,三大战边回归,飞牛笑了...

    王者荣耀英雄策划通过分析当前峡谷众英雄在全段位的数据表现,不定期对英雄进行平衡调整,特别是这两周涉及了多位英雄削弱与加强,而这些英雄有望在9月的第一轮版本更新后实装正式服,一起随小编来看看你的本命是否 ...

  7. 小案例:搭建简易版王者荣耀英雄购买商城网页版

    目录 一.网页赏析: 二.代码分三部分: 1.html代码: 2.main.css赏析: 3.初始化reset.css代码: 三.主要素材下载地址: 一.网页赏析: 二.代码分三部分: 1.html ...

  8. qlabel 边加载边更新_王者荣耀:这变态技能谁顶得住?游戏内更新机制优化!...

    王者荣耀官微发布了即将优化的游戏内更新机制,以后版本更新我们可以更快的启动游戏了.张大仙定制活动语音包上线,语音包是限时的,可以用3个月,喜欢的玩家可以在王者营地领取. 体验服的小伙伴又给我发了一波觉 ...

  9. Windows下基于vue框架的UXP插件开发环境搭建及程序试运行

    从PS2021(v22)开始,Adobe官方引入了新的插件平台:UXP,它的最终任务是取代现有的CEP,所以赶紧来提前做一下准备吧,我对这方面也一直很感兴趣,但是这方面的中文资料太少了,然后在网上查了 ...

最新文章

  1. DOS命令大全(经典收藏)
  2. RDKit | 基于Fraggle算法评估化合物的相似性
  3. SAP MM 对采购订单执行收货,报错 - Table T169P entry ZNMI does not exist -
  4. 【bzoj4571SCOI2016美味】
  5. 团队作业——随堂小测
  6. 个人项目耗时对比记录表
  7. apt ubuntu 指定ipv4_macOS 下使用 Docker 搭建 ubuntu 环境
  8. 20个使用柔和的色调的优秀网站设计示例
  9. 谷粒商城:Oss endpoint can‘t be empty.
  10. 常用测试用例设计方法4-场景法
  11. 悟空互动:如何让百度更快的收录网站,试试快速收录提交入口!
  12. Exception | This means that said other beans do not use the final version of the bean. This is often
  13. 最大公约数是啥意思_最大公约数是什么意思
  14. AutoLayout(Ⅱ):遇到的几个小问题(Keng)
  15. 好用全面的电商评论文本情感分析实战教程
  16. 现在程序员的工资是不是被高估了?
  17. 计算机网络——Ping实验
  18. vue.runtime.esm.js?2b0e:619 [Vue warn]: Duplicate keys detected: ‘tab-Test3‘. This may cause an upda
  19. JS逆向解析---某知名小说网站内容加密
  20. Java+Maven+TestNG接口(API)自动化测试教程(九) 使用 Extent Reporters 美化测试报告

热门文章

  1. Qt新手入门指南 - 如何创建模型/视图(二)
  2. 基于matlab的双音多频信号识别,基于MATLAB的双音多频信号识别
  3. 维智科技AI驱动的银行智能决策
  4. 西部数码虚拟主机服务器配置,虚拟主机怎么配置net
  5. 本地连接不见了的分析及解决方法
  6. 【已开源】基于jsPlumb.js的模仿sqlFlow数据血缘图的前端页面
  7. 关于keil c51和mdk兼容安装后代码提示功能不见了的解决方法
  8. Windows Installer CleanU(Windows 安装程序清理实用程序 )
  9. 案例四:9月14日 采购计划无法申请/分派
  10. 于佳 计算机科学技术学院,计算机科学技术学院举行“倾听-点亮未来”师生座谈会...