转自:机器之心
还愁在《原神》里钓不到鱼吗?这有一份早退的提瓦特钓鱼指南。
在游戏圈,你能够没有玩过,但肯定听过《原神》。
尽管这是一款口碑两极分化的游戏,但不得不抵赖《原神》是以后最为炽热的游戏之一。
特地是在国外,原神能够说是火的一塌糊涂。
就在往年 9 月,这款从凋谢公测起便多次登顶国内外探讨热度和手游吸金榜第一的凋谢世界冒险游戏更新了版本,增加 / 丰盛了地图,并且上线了一款小游戏——钓鱼。游戏中多个水域都有钓鱼点,不同的地位能够钓不同的鱼。
只管是再一般不过的玩法,还是引得玩家流连。一般来说,钓鱼一共分三个步骤:甩杆→期待鱼儿上钩→提竿。其中所波及的原理须要肯定数字图像处理与机器学习根底。模型分为鱼群定位与辨认和拉杆 (和鱼博弈) 两个局部。
很多玩家都在寻找钓鱼攻略,你还在愁在《原神》里钓不到鱼吗?明天咱们为你送上这份早退的提瓦特钓鱼指南。
这份钓鱼指南能够说是齐全解放双手,不须要任何操作,只须要启动程序就能实现。上线短短几天,播种 1600 + 星。
GitHub 地址:
https://github.com/7eu7d7/gen…
感兴趣的小伙伴也能够去 B 站观看视频,上线不到三天,超过 44 万次播放量。这满屏的弹幕,不禁让人直呼离谱。
曾经有网友开始上手了,并评论道:曾经在部署了,连夜下载了 anaconda。
B 站地址:
https://www.bilibili.com/video/BV1964y1b7vV?spm_id_from=333.905.b_7570566964656f.3
我的项目介绍
原神主动钓鱼 AI 由两局部模型组成:YOLOX、DQN。此外,该我的项目还用到了迁徙学习,半监督学习来进行训练。模型也蕴含了一些应用 opencv 等传统数字图像处理办法实现的不可学习局部。
- YOLOX 用于鱼的定位和类型的辨认以及鱼竿落点的定位;
- DQN 用于自适应控制钓鱼过程的点击,让力度落在最佳区域内。
装置
该我的项目是在 python 运行环境中应用的,须要先装置 python,这里举荐应用 anaconda。
配置环境:关上 anaconda prompt(命令行界面),创立新的 python 环境并激活(举荐 python3.7 或以下版本):
conda create -n ysfish python=3.6
conda activate ysfish
下载工程代码:应用 git 下载,或间接在 github 网页端下载后间接解压:
git clone https://github.com/7eu7d7/genshin_auto_fish.git
依赖库装置:切换命令行到本工程所在目录:
cd genshin_auto_fish
执行以下命令装置依赖:
python -m pip install -U pip
python requirements.py
如果要应用显卡进行减速须要装置 CUDA 和 cudnn,装置后忽视下面的命令用上面这条装置 gpu 版:
pip install -U pip
python requirements.py --cuda [cuda 版本]
# 例如装置的 CUDA11.x
python requirements.py --cuda 110
装置 yolox:切换命令行到本工程所在目录,执行以下命令装置 yolox:
python setup.py develop
预训练权重下载:下载预训练权重 (.pth 文件),yolox_tiny.pth 下载后将权重文件放在 工程目录 / weights 下。
YOLOX 训练工作流程:YOLOX 局部用半监督学习打标签。标注大量样本后训练模型生成其余样本伪标签再人工修改,一直迭代以进步精度。样本量较少所以应用迁徙学习,在 COCO 预训练的模型上进行 fine-tuning。
将 yolox/exp/yolox_tiny_fish.py 中的 self.data_dir 的值改为解压后 2 个文件夹所在的门路。
训练代码:
python yolox_tools/train.py -f yolox/exp/yolox_tiny_fish.py -d 1 -b 8 --fp16 -o -c weights/yolox
DQN 训练工作流程:管制力度应用强化学习模型 DQN 进行训练。两次进度的差值作为 reward 为模型提供学习方向。模型与环境间交互式学习。
间接在原神内训练耗时较长,首先你须要制作一个仿真环境,大略模仿钓鱼力度管制操作。在仿真环境内预训练一个模型。随后将这一模型迁徙至原神内,实现域间迁徙。
仿真环境预训练代码:
python train_sim.py
原神游戏内训练:
python train.py
运行
以上准备就绪后,就能够运行钓鱼 AI,留神命令行窗口肯定要以管理员权限启动。
显卡减速:
python fishing.py image -f yolox/exp/yolox_tiny_fish.py -c weights/best_tiny3.pth --conf 0.25 --nms 0.45 --tsize 640 --device gpu
cpu 运行:
python fishing.py image -f yolox/exp/yolox_tiny_fish.py -c weights/best_tiny3.pth --conf 0.25 --nms 0.45 --tsize 640 --device cpu
运行后呈现 init ok 后按 r 键开始钓鱼,原神须要全屏。出于性能思考检测框不会实时显示,解决运算后盾进行。
更多实现细节,读者可参考原我的项目。
https://github.com/7eu7d7/gen…
开源前哨
日常分享热门、乏味和实用的开源我的项目。参加保护 10 万 + Star 的开源技术资源库,包含:Python、Java、C/C++、Go、JS、CSS、Node.js、PHP、.NET 等。