# Introduction
**现已支持不同分辨率屏幕**
原神自动钓鱼AI由[YOLOX](https://github.com/Megvii-BaseDetection/YOLOX), DQN两部分模型组成。使用迁移学习,半监督学习进行训练。
模型也包含一些使用opencv等传统数字图像处理方法实现的不可学习部分。
其中YOLOX用于鱼的定位和类型的识别以及鱼竿落点的定位。DQN用于自适应控制钓鱼过程的点击,让力度落在最佳区域内。
# 安装使用流程
安装python运行环境(解释器),推荐使用 [anaconda](https://www.anaconda.com/products/individual#Downloads).
## python环境配置
打开anaconda prompt(命令行界面),创建新python环境并激活:
```shell
conda create -n ysfish python=3.8
conda activate ysfish
```
推荐安装<font color=#66CCFF>**python3.8或以下**</font>版本。
## 下载工程代码
使用git下载,[git安装教程](https://www.cnblogs.com/xiaoliu66/p/9404963.html):
```shell
git clone https://github.com/7eu7d7/genshin_auto_fish.git
```
或直接在**github网页端**下载后直接解压。
## 依赖库安装
切换命令行到本工程所在目录:
```shell
cd genshin_auto_fish
```
执行以下命令安装依赖:
```shell
python -m pip install -U pip
python requirements.py
```
如果要使用显卡进行加速需要 [安装CUDA和cudnn](https://zhuanlan.zhihu.com/p/94220564?utm_source=wechat_session&ivk_sa=1024320u) 安装后无视上面的命令用下面这条安装gpu版:
```shell
pip install -U pip
python requirements.py --cuda [cuda版本]
#例如安装的CUDA11.x
python requirements.py --cuda 111
#或者使用代理加速
python requirements.py --cuda 111 --proxy http://127.0.0.1:1080 # use proxy to speed up
```
可能会有Time out之类的报错,多试几遍,github太卡。
## 安装yolox
切换命令行到本工程所在目录,执行以下命令安装yolox:
```shell
python setup.py develop
```
## 预训练权重下载
- [`best_tiny3.pth`](https://github.com/7eu7d7/genshin_auto_fish/releases/download/weights/best_tiny3.pth)
- [`fish_genshin_net.pth`](https://github.com/7eu7d7/genshin_auto_fish/releases/download/weights/fish_genshin_net.pth)
- [`fish_sim_net.pth`](https://github.com/7eu7d7/genshin_auto_fish/releases/download/weights/fish_sim_net.pth)
- [`yolox_tiny.pth`](https://github.com/Megvii-BaseDetection/YOLOX/releases/download/0.1.1rc0/yolox_tiny.pth)
下载后将权重文件放在 <font color=#66CCFF>**工程目录/weights**</font> 下
# 运行钓鱼AI
原神需要以1080x1920的分辨率运行,分辨率高的屏幕可以开窗口模式。
命令行窗口一定要以<font color=#66CCFF>**管理员权限**</font>启动
显卡加速
```shell
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运行
```shell
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键开始钓鱼,原神需要全屏。出于性能考虑检测框不会实时显示,处理运算后台进行。
# YOLOX训练工作流程
<**只用来钓鱼不需要训练,直接用预训练权重就可以**>
YOLOX部分因为打标签太累所以用半监督学习。标注少量样本后训练模型生成其余样本伪标签再人工修正,不断迭代提高精度。
样本量较少所以使用迁移学习,在COCO预训练的模型上进行fine-tuning.
下载数据集并解压:[原神鱼群数据集](https://1drv.ms/u/s!Agabh9imkP8qhHkZYzKsi_OQ4pfj?e=V2VApo),
[数据集(迅雷云盘:ugha)](https://pan.xunlei.com/s/VMkCJx-bOnpF431_9R0E8vAsA1)
将yolox/exp/yolox_tiny_fish.py中的self.data_dir的值改为解压后2个文件夹所在的路径。
训练代码:
```shell
python yolox_tools/train.py -f yolox/exp/yolox_tiny_fish.py -d 1 -b 8 --fp16 -o -c weights/yolox_tiny.pth
```
# DQN训练工作流程
控制力度使用强化学习模型DQN进行训练。两次进度的差值作为reward为模型提供学习方向。模型与环境间交互式学习。
直接在原神内训练耗时较长,太累了。首先制作一个仿真环境,大概模拟钓鱼力度控制操作。在仿真环境内预训练一个模型。
随后将这一模型迁移至原神内,实现域间迁移。
仿真环境预训练代码:
```shell
python train_sim.py
```
原神游戏内训练:
```shell
python train.py
```
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
毕设&课程作业_基于深度强化学习的原神自动钓鱼AI.zip (86个子文件)
Graduation Design
yolox_tools
pseudo_gene.py 9KB
train.py 4KB
demo.py 10KB
test_sim.py 1KB
setup.py 2KB
fishing.py 6KB
train_sim.py 2KB
train_mf.py 6KB
utils
utils.py 5KB
__init__.py 42B
render.py 1KB
config.yaml 102B
capture.py 552B
yolox
__init__.py 126B
layers
__init__.py 151B
csrc
vision.cpp 524B
cocoeval
cocoeval.cpp 20KB
cocoeval.h 3KB
fast_coco_eval_api.py 6KB
evaluators
__init__.py 178B
voc_eval.py 6KB
voc_evaluator.py 7KB
coco_evaluator.py 7KB
data
data_augment.py 8KB
__init__.py 354B
samplers.py 3KB
dataloading.py 4KB
datasets
__init__.py 350B
voc_classes.py 442B
coco.py 7KB
coco_classes.py 1KB
fish_classes.py 200B
mosaicdetection.py 10KB
voc.py 13KB
datasets_wrapper.py 4KB
data_prefetcher.py 2KB
utils
__init__.py 443B
setup_env.py 3KB
model_utils.py 3KB
ema.py 2KB
demo_utils.py 4KB
checkpoint.py 1KB
dist.py 8KB
metric.py 3KB
boxes.py 4KB
logger.py 3KB
lr_scheduler.py 6KB
allreduce_norm.py 3KB
visualize.py 4KB
exp
__init__.py 191B
base_exp.py 2KB
yolox_tiny_fish.py 956B
yolox_base.py 10KB
build.py 1KB
core
__init__.py 152B
trainer.py 11KB
launch.py 4KB
models
__init__.py 297B
losses.py 2KB
yolo_fpn.py 2KB
yolox.py 1KB
darknet.py 6KB
network_blocks.py 6KB
yolo_head.py 23KB
yolo_pafpn.py 3KB
fisher
__init__.py 0B
agent.py 7KB
environment.py 15KB
predictor.py 3KB
models.py 812B
requirements.py 2KB
setup.cfg 615B
train.py 2KB
imgs
food_gn.png 13KB
target_right.png 990B
food_bug.png 11KB
food_fy.png 14KB
bar2.png 1KB
target_now.png 463B
fishing.png 3KB
exit.png 5KB
food_cm.png 13KB
bite.png 823B
target_left.png 980B
test.py 1KB
README.md 4KB
共 86 条
- 1
资源评论
学术菜鸟小晨
- 粉丝: 1w+
- 资源: 5005
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功