欽州浦北網(wǎng)站建設(shè)百度云群組

本源碼模型主要用了SamLynnEvans Transformer 的源碼的解碼部分。以及pytorch自帶的預(yù)訓(xùn)練模型"resnet101-5d3b4d8f.pth"
本資源整理自網(wǎng)絡(luò),源地址:https://github.com/FengQuanLi/ResnetGPT
注意運(yùn)行本代碼需要注意以下幾點(diǎn) 注意!!!!!
1、目前這個(gè)模型在用后裔100多局對戰(zhàn)數(shù)據(jù)下訓(xùn)練出來后,對局表現(xiàn)出各種送人頭之類的問題,以及代碼本身各種不規(guī)范,請多原諒。
2、本代碼本來只是我試驗(yàn)?zāi)P湍芊裢嫱跽邩s耀,B站朋友強(qiáng)烈要求開源。倉促開源估計(jì)問題很多,請多原諒。
3、運(yùn)行環(huán)境win10;win7未測試,估計(jì)是可以。需要一張6G或以上顯存的英偉達(dá)顯卡,雖然4G的1050ti勉強(qiáng)也可以。
4、需要一臺打開安卓調(diào)試并能玩王者榮耀的手機(jī),虛擬機(jī)沒有試過,理論上應(yīng)該可行。
5、需要下載scrcpy 的windows版本。把所有文件解壓到項(xiàng)目根目錄即可(這是我的笨辦法) 。
位置如圖

6、pyminitouch庫運(yùn)行時(shí)會自動安裝minitouch。如果無法自動安裝則需要手動安裝minitouch ,比較麻煩,如有困難請多多百度。
還有,minitouch不支持Android10
7、本人用的手機(jī)分辨率是1080*2160的,本代碼并沒有針對不同的手機(jī)做優(yōu)化。不同的手機(jī)minitouch命令中所描述的位置會有差異,需要對代碼做出相應(yīng)調(diào)整,請務(wù)必注意。
8、注意游戲的布局,務(wù)必要一樣。布局可參考B站視頻或者我上傳的訓(xùn)練用截圖。如圖。

9、游戲更新以后可能會導(dǎo)致無法預(yù)料的后果,因此并不能保證此代碼玩王者榮耀的長期有效性。
我之后可能出視頻教程,同時(shí)講講我的設(shè)計(jì)思路。部分地區(qū)截圖不可見,可下載項(xiàng)目在pycharm下打開readme.md即可見。
運(yùn)行與生成訓(xùn)練數(shù)據(jù)
需要的庫
torch
torchvision
pynput
pyminitouch
可能還有其它庫
運(yùn)行訓(xùn)練好的模型
如果前面的工作做好了就可以把模型跑起來了,這里聲明這個(gè)經(jīng)過訓(xùn)練的模型僅僅訓(xùn)練100多局,水平很低,青銅人機(jī)都未必能打過。
一、首先下載模型 你可以從google云盤 下載訓(xùn)練過的模型,也可以百度網(wǎng)盤下載
鏈接:https://pan.baidu.com/s/1Bt7BXukDDCpc1aWFI2iKxg
提取碼:5c1k
后放入weights文件夾下
二、先運(yùn)行 “啟動和結(jié)束進(jìn)程.py” 啟動scrcpy 把“訓(xùn)練數(shù)據(jù)截取_A.py” 中的兩項(xiàng)改成你的,_DEVICE_ID 是 adb devices后顯示的那個(gè)id

三、啟動王者榮耀進(jìn)入5v5人機(jī)對戰(zhàn) 運(yùn)行 “訓(xùn)練數(shù)據(jù)截取_A.py” 即可。
生成訓(xùn)練數(shù)據(jù)
運(yùn)行 “訓(xùn)練數(shù)據(jù)截取_A.py” 時(shí)可以通過按鍵操控角色,這時(shí)就可以生成訓(xùn)練用的數(shù)據(jù),如果沒有操控則會生成一個(gè)空文件夾和空json文件。
按"i"鍵則結(jié)束或則是重新運(yùn)行
按鍵'w' 's ' 'a' 'd'控制方向 左、下、右箭頭對應(yīng)是1、2、3技能,上箭頭長按則攻擊。其它按鍵請參考源碼。
每次獲取訓(xùn)練圖片最好不要超過5000張
你也可以下載訓(xùn)練數(shù)據(jù)樣本(只是樣本,數(shù)據(jù)量不大,不能指望兩局對戰(zhàn)數(shù)據(jù)就有效果,我估計(jì)這個(gè)模型現(xiàn)有參數(shù)可以吃下上萬場的對戰(zhàn)數(shù)據(jù))
百度網(wǎng)盤 鏈接:https://pan.baidu.com/s/1Ak1sLcSRimMWRgagXGahTg
提取碼:t4k3
google云盤
解壓后注意存放位置,請參考源碼。
如何訓(xùn)練
一、數(shù)據(jù)預(yù)處理
將圖片用resnet101預(yù)處理后再和對應(yīng)操作數(shù)據(jù)一起處理后用numpy數(shù)組儲存?zhèn)溆谩?/p>
具體要做的就是運(yùn)行 “處理訓(xùn)練數(shù)據(jù)5.py”
二、訓(xùn)練
預(yù)處理完成以后運(yùn)行 “訓(xùn)練_B.py”即可。
游戲按鍵映射本地化
按鍵映射通過 './json/名稱_操作.json' 文件完成,如前文所述,由minitouch進(jìn)行按壓模擬。
1. 前期準(zhǔn)備:
開啟“開發(fā)者模式”,允許“USB調(diào)試”,允許“USB調(diào)試(安全設(shè)置):允許通過USB調(diào)試修改權(quán)限或模擬點(diǎn)擊”。后兩項(xiàng)均在進(jìn)入開發(fā)者選項(xiàng)后可以找到。
2. 按鍵可視化,按鍵軌跡監(jiān)控:
開啟“顯示點(diǎn)按操作的視覺反饋”,開啟“指針位置”。后者方便查看自己手機(jī)屏幕點(diǎn)按的像素點(diǎn)坐標(biāo)信息,從而生成對應(yīng)本地手機(jī)按鍵映射的.json文件。
3. 映射本地化計(jì)算說明:

此計(jì)算以手機(jī)充電口朝右握持為例,反向握持同理可推。樣例手機(jī)分辨率1080x2160。Android“指針位置”中顯示的坐標(biāo)信息以圖中左上角紅色原點(diǎn)所示,xy軸如圖。此原點(diǎn)不論如何握持(充電口朝左或右),其始終保持在視野左上角,由重力感應(yīng)判定。minitouch坐標(biāo)原點(diǎn)如圖中左下角藍(lán)色原點(diǎn)所示,此點(diǎn)為物理固定點(diǎn),不隨手機(jī)握持方向改變,反向握持此點(diǎn)在右上角。另外注意兩個(gè)坐標(biāo)系xy軸方向不同。在圖中設(shè)定下,Android指針坐標(biāo)(X,Y)對應(yīng)minitouch坐標(biāo)(1080-Y,X):即在點(diǎn)按屏幕中某點(diǎn)時(shí),安卓調(diào)試顯示的(X,Y)在.json文件中的坐標(biāo)應(yīng)為(1080-Y,X)。
4. 本地映射文件生成:
'check_json.py'為調(diào)試和生成本地.json按鍵映射文件的腳本。重映射時(shí)請一一記錄每個(gè)按鍵在自己手機(jī)中顯示的“指針位置”,并按照上述計(jì)算方法換算為.json文件中需 要輸入的坐標(biāo)。此腳本會生成一個(gè)'./json/local_layout.json'文件,請?jiān)?#39;處理訓(xùn)練數(shù)據(jù)5.py'中進(jìn)行相應(yīng)替換。此外,'處理訓(xùn)練數(shù)據(jù)5.py'中:‘加一技能’,‘加二技能’,‘加三技能’,‘購買’變量也許進(jìn)行同樣處理。.json文件中指令含義請參照minitouch。
往期精品內(nèi)容推薦
計(jì)算機(jī)視覺經(jīng)典教材-《計(jì)算機(jī)視覺:算法與應(yīng)用第二版》免費(fèi)pdf分享
斯坦福NLP大佬Chris Manning-《信息檢索和網(wǎng)頁搜索》課程分享
2020年8月新書-《機(jī)器學(xué)習(xí)角度-因果推理算法介紹》免費(fèi)pdf分享
PyTorch精品課程-《PyTorch框架+項(xiàng)目實(shí)戰(zhàn)》推薦
周志華《機(jī)器學(xué)習(xí)》(西瓜書)-所有公式推導(dǎo)集合pdf版分享
2020年強(qiáng)化學(xué)習(xí)免費(fèi)新書-《不確定性決策與強(qiáng)化學(xué)習(xí)》pdf分享
Cristos Goodrow訪談-YouTube算法概述
中文自然語言處理醫(yī)療、法律等公開數(shù)據(jù)集整理分享