0

0

零编码在手游《明日方舟》中实现目标检测

P粉084495128

P粉084495128

发布时间:2025-07-31 11:50:23

|

883人浏览过

|

来源于php中文网

原创

本文介绍用飞桨PaddleDetection框架零编码实现《明日方舟》每日轮换任务检测。先下载安装该框架,建议用AIStudio避免本地安装问题。接着准备数据,替换数据集、修改配置文件,再用GPU训练模型,最后评估效果,检测出任务位置后可结合脚本工具完成任务。

☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜

零编码在手游《明日方舟》中实现目标检测 - php中文网

零编码在手游《明日方舟》中实现目标检测

一、前言

之前分享过使用飞桨强化学习框架PARL玩游戏《明日方舟》。有群友问:“我用OCR检测游戏场景中的文字,然后加上NLP也能实现这个效果!!!”。
的确,在玩游戏这个应用场景下,多种人工智能方法都有可能达到目标。
       

本文要分享的方法是:采用飞桨PaddleDetection框架,零编码实现。

二、目标定义

零编码在手游《明日方舟》中实现目标检测 - php中文网 一般来说,我们用人工智能,就是想让它帮我们玩游戏。比如我这种上班族,根本没有时间玩。
具体到上图中的目标:《明日方舟》游戏任务页,每日都会更新新的任务。我们当然可以把截屏传递给强化学习算法,让算法学习应该点击哪个任务,最终通过adbutil发出指令来完成任务。
但是有没有比强化学习更巧妙的方法呢?

就让我们一起来取巧吧!!!

三、PaddleDetection实现《明日方舟》每日轮换任务检测

本文分享一种无编码的方法实现《明日方舟》每日轮换任务的目标检测。检测出每日任务的位置后,我们可以直接用App脚本工具完成该任务,实现起来非常简单。

下载PaddleDetection

# 从国内Mirror下载PaddleDetection%cd ~
!git clone https://gitee.com/paddlepaddle/PaddleDetection

       

安装PaddleDetection

%cd ~/PaddleDetection/!python setup.py install
!pip install -r requirements.txt

       

检查PaddleDetection是否安装成功

%cd ~/PaddleDetection/!python ppdet/modeling/tests/test_architectures.py

       

注意:最简单的方法是用AIStudio,因为本机安装(GPU)可能会遇到以下问题:

GPT Detector
GPT Detector

在线检查文本是否由GPT-3或ChatGPT生成

下载
  • 使用Win10+conda环境,清华源镜像可能会莫名其妙下载失败。
  • 使用pip安装,有几个依赖关系需要自行解决,需要你对pip工具有一定熟悉程度才行。
  • 如果"家境贫寒",需要调整batch_size,否则可能报GPU内存大小不够。而初学者找不到参数在哪里改。

AIStudio的使用步骤执行本文后面的“Code部分”即可。

四、数据准备

  1. 上传制作好的voc格式的标注数据集到 ~/work下(我已经制作好了,可以直接用)
  2. 解压~/work/voc.zip,删除原voc文件夹并替换它(PaddleDetection/dataset/voc)
  3. 拷贝PaddleDetection/configs/yolov3目录下的yolov3_mobilenet_v1_270e_voc.yml文件,复制为arknight_voc.yml
  4. 修改arknight_voc.yml文件中配置项../dataset/voc.yml为 ../dataset/arknight_voc.yml;修改配置项weights: output/arknight_voc/model_final
  5. 在PaddleDetection/configs/datasets目录中,复制配置 voc.yml 为 arknight_voc.yml,匹配上一条的改动
  6. 修改arknight_voc.yml文件中配置map_type为integral;修改配置num_classes: 9; 训练文件名修改为train.txt;测试文件名修改为valid.txt,匹配数据集对应的目录

五、模型训练

开启AIStudio的GPU版本,并允许下面代码,我加了eval参数,你可以看到mAP数值的变化,不知道mAP是啥的同学请百度

%env PYTHONPATH=/home/aistudio/PaddleDetection
%cd /home/aistudio/PaddleDetection/!export CUDA_VISIBLE_DEVICES=0!python -u tools/train.py -c configs/yolov3/arknight_voc.yml --eval

       

经过大约10多分钟的训练,我们可以获得训练模型

六、评估效果

  1. 上传测试图片文件1621734815.679468-1024x576-1.jpg到PaddleDetection/demo目录下
  2. 执行下面的预测命令,去infer_output目录查看结果
!python tools/infer.py -c configs/yolov3/arknight_voc.yml --infer_img=demo/1621734815.679468-1024x576-1.jpg --output_dir=infer_output/ -o weights=output/arknight_voc/model_final

       

效果图

零编码在手游《明日方舟》中实现目标检测 - php中文网        

七、总结

  1. 人工标注voc数据可以用labelImg工具,在Mac和Win都可以安装此软件。
  2. num_classes参数表示目标的总的分类数目。
  3. 本文采用yolov3算法,backbone采用了mobilenet_v1,使用了预训练集。所以你可以看到,我才标注了十几张图片,就可以非常准确的识别到目标了。
  4. map_type是一个很容易被忽略的参数,这里我把它设置为integral。目前并没有找到关于这个参数的官方的说明文档。大家依葫芦画瓢设置呗。
  5. 飞桨升级到2.x版本后,PaddleDetection改动比较大,我之前做过一个可乐瓶检测的项目,比现在麻烦一些,建议大家用2.x以后的PaddleDetection版本。
  6. 实测用CPU训练是非常慢的,请一定要用GPU版本,百度AIStudio每日赠送的算力完全够用。

附录:可在AIStudio上运行的代码如下:

In [8]
# 下载PaddleDetection%cd ~
!git clone https://gitee.com/paddlepaddle/PaddleDetection
   
In [9]
# 安装%cd ~/PaddleDetection/
!python setup.py install
!pip install -r requirements.txt
   
In [10]
%cd ~/PaddleDetection/
!python ppdet/modeling/tests/test_architectures.py
   
  1. 上传制作好的voc格式的明日方舟每日轮换数据集到 ~/work下
  2. 备份 ~/PaddleDetection/dataset/voc 目录
  3. 解压~/work/voc.zip,删除原voc文件夹并替换它
  4. 拷贝yolov3_mobilenet_v1_270e_voc.yml,重命名为arknight_voc.yml
  5. 修改配置项../dataset/voc.yml为 ../dataset/arknight_voc.yml;修改配置项weights: output/arknight/model_final
  6. cd /home/aistudio/PaddleDetection/configs/datasets,复制配置cp voc.yml arknight_voc.yml
  7. 修改配置map_type为integral;修改配置num_classes: 9; 训练文件名修改为train.txt;测试文件名修改为valid.txt
In [18]
%env PYTHONPATH=/home/aistudio/PaddleDetection
%cd /home/aistudio/PaddleDetection/
!export CUDA_VISIBLE_DEVICES=0!python -u tools/train.py -c configs/yolov3/arknight_voc.yml --eval
   
  1. 上传测试图片文件1621734815.679468-1024x576-1.jpg到demo目录
  2. 执行下面的预测命令,去infer_output目录查看结果
In [19]
!python tools/infer.py -c configs/yolov3/arknight_voc.yml --infer_img=demo/1621734815.679468-1024x576-1.jpg --output_dir=infer_output/ -o weights=output/arknight_voc/model_final
   

相关文章

每周好玩新游推荐
每周好玩新游推荐

最近有什么好玩的新游戏?最近哪些游戏比较好玩?这里为大家带来本周热门新游合集,汇聚了最新一周的高分爆款新游,还在为不知道玩什么游戏而烦恼的玩家,快来保存下载体验吧!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
pip安装使用方法
pip安装使用方法

安装步骤:1、确保Python已经正确安装在您的计算机上;2、下载“get-pip.py”脚本;3、按下Win + R键,然后输入cmd并按下Enter键来打开命令行窗口;4、在命令行窗口中,使用cd命令切换到“get-pip.py”所在的目录;5、执行安装命令;6、验证安装结果即可。大家可以访问本专题下的文章,了解pip安装使用方法的更多内容。

339

2023.10.09

更新pip版本
更新pip版本

更新pip版本方法有使用pip自身更新、使用操作系统自带的包管理工具、使用python包管理工具、手动安装最新版本。想了解更多相关的内容,请阅读专题下面的文章。

411

2024.12.20

pip设置清华源
pip设置清华源

设置方法:1、打开终端或命令提示符窗口;2、运行“touch ~/.pip/pip.conf”命令创建一个名为pip的配置文件;3、打开pip.conf文件,然后添加“[global];index-url = https://pypi.tuna.tsinghua.edu.cn/simple”内容,这将把pip的镜像源设置为清华大学的镜像源;4、保存并关闭文件即可。

756

2024.12.23

python升级pip
python升级pip

本专题整合了python升级pip相关教程,阅读下面的文章了解更多详细内容。

345

2025.07.23

golang map内存释放
golang map内存释放

本专题整合了golang map内存相关教程,阅读专题下面的文章了解更多相关内容。

75

2025.09.05

golang map相关教程
golang map相关教程

本专题整合了golang map相关教程,阅读专题下面的文章了解更多详细内容。

36

2025.11.16

golang map原理
golang map原理

本专题整合了golang map相关内容,阅读专题下面的文章了解更多详细内容。

60

2025.11.17

java判断map相关教程
java判断map相关教程

本专题整合了java判断map相关教程,阅读专题下面的文章了解更多详细内容。

40

2025.11.27

AO3中文版入口地址大全
AO3中文版入口地址大全

本专题整合了AO3中文版入口地址大全,阅读专题下面的的文章了解更多详细内容。

1

2026.01.21

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
最新Python教程 从入门到精通
最新Python教程 从入门到精通

共4课时 | 11.4万人学习

Django 教程
Django 教程

共28课时 | 3.3万人学习

SciPy 教程
SciPy 教程

共10课时 | 1.2万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号