Commit Graph

67 Commits

Author SHA1 Message Date
辉鸭蛋
c0e1c4c28b 6.3 map 2026-01-14 00:39:05 +08:00
FishmanTheMurloc
9c3a2d738d 修复错误的Pen生命周期导致绘制失败的问题;单元测试鱼的名字的入参更新 (#2545) 2025-12-14 00:29:26 +08:00
辉鸭蛋
ea40534851 添加出战角色检测方法2:边缘像素白色比例 2025-11-26 00:17:43 +08:00
辉鸭蛋
71eb73c449 优化角色识别方式 2025-11-14 03:03:10 +08:00
FishmanTheMurloc
bc346d1680 GridScreen增加填充算法以应对item识别不全的问题 (#2423) 2025-11-01 14:12:41 +08:00
FishmanTheMurloc
11c09d3d49 将PartyAvatarInitTests涉及到的代码与本体运行解耦 (#2396) 2025-10-27 10:25:31 +08:00
辉鸭蛋
d308ea70ef 适配6.1新角色 2025-10-22 23:31:16 +08:00
辉鸭蛋
87bbe32592 update submodule 2025-10-10 22:33:25 +08:00
FishmanTheMurloc
f5e22d20cb 圣遗物分解套装筛选的改进和JS引擎的约束 (#2319) 2025-10-10 22:09:34 +08:00
辉鸭蛋
a10cdc32d0 新的角色编号框识别方式 & 出战角色识别 (#2309) 2025-10-10 02:49:18 +08:00
FishmanTheMurloc
8a7440dbbe ScriptObjectConverter.GetValue()新增支持一层集合泛型参数解析;CountInventoryItem新增支持复数物品的计数,并在Dispatcher中向JavaScript暴露此种使用方式 (#2267) 2025-09-26 23:15:18 +08:00
bhbghghbgb
0aef3ec39a feat:自动圣遗物转化功能可识别并标记未激活副词条 (#2258) 2025-09-26 15:18:30 +08:00
FishmanTheMurloc
808dbec396 暴露ocr的版本信息供调用者检查,增加一个检查此项的单测 (#2259) 2025-09-24 13:39:38 +08:00
辉鸭蛋
547b4a4929 update submodule 2025-09-24 01:15:47 +08:00
辉鸭蛋
dc04c22473 调整浓缩树脂识别范围,解决V4模型无法准确识别浓缩树脂个数的问题 #2185 2025-09-24 01:09:40 +08:00
FishmanTheMurloc
25774aedbd 修复切换队伍列表向下查找时有时会识别不正确的bug (#2209) 2025-09-17 01:56:19 +08:00
辉鸭蛋
af707f304c 优化自动拾取的预处理环节,优化最终文字展现,使自动拾取OCR识别更加稳定 (#2211) 2025-09-17 01:46:41 +08:00
FishmanTheMurloc
c78a9418e1 6.0鱼定义和测试用例 (#2201) 2025-09-14 20:29:52 +08:00
FishmanTheMurloc
feed609fb1 适配新版本激活石化古树识别树脂 (#2174) 2025-09-11 23:31:02 +08:00
辉鸭蛋
595f5279cc 6.0 数据生成 2025-09-09 00:49:14 +08:00
FishmanTheMurloc
37fcde080f 图标识别应用两则 (#2154) 2025-09-06 01:17:05 +08:00
FishmanTheMurloc
85178f3a71 图标识别模型更新 (#2150) 2025-09-05 01:28:55 +08:00
FishmanTheMurloc
5d843c9c8f 给JS调用的背包数数独立任务 (#2133) 2025-09-02 01:18:37 +08:00
FishmanTheMurloc
8c85cb90c7 圣遗物分解的bugfix和优化 (#2114) 2025-08-29 14:50:35 +08:00
辉鸭蛋
21ce9912e4 新增V4Auto的Ocr类型,使用最优模型识别,单测 PaddleOcrService_VariousLangWords_ShouldEqualOrMatch 已通过 2025-08-27 01:13:19 +08:00
FishmanTheMurloc
2753a81c1f 圣遗物分解筛选改用JS (#2087) 2025-08-22 10:31:14 +08:00
辉鸭蛋
5d0cfb7819 修复大地图匹配不正常的问题 2025-08-02 18:59:22 +08:00
辉鸭蛋
55667d2627 5.8角色模型 2025-08-02 15:14:46 +08:00
Takaranoao
6d9da4d15b feat: PaddleOcrV5 (#1966) 2025-08-02 14:51:07 +08:00
辉鸭蛋
2f877ac4d1 地图切分 2025-07-31 21:39:15 +08:00
辉鸭蛋
fd5fb8218b 5.8 地图生成 2025-07-31 00:45:39 +08:00
FishmanTheMurloc
120b80cb70 截取物品图标 实现使用星星作为名称后缀 (#1938) 2025-07-28 13:39:47 +08:00
辉鸭蛋
e3906cb19c 调整命名空间 2025-07-18 23:31:46 +08:00
FishmanTheMurloc
d73f21464e 截取物品图标独立任务 (#1856) 2025-07-09 23:26:18 +08:00
辉鸭蛋
8799f34ce8 修复 Yap 无法正常使用的问题 #1459 2025-06-22 02:31:37 +08:00
FishmanTheMurloc
32f744538b 用CV的相位相关方法代替旧的方法来检测grid界面是否还能滚动,配有单元测试;封装了一个grid界面的操作类,直接对此类对象进行遍历即可获取所有项 (#1724) 2025-06-20 22:56:21 +08:00
辉鸭蛋
d7e0af3a57 5.7 角色数据新增 Add new characters Skirk and Dahlia to combat_avatar.json 2025-06-19 00:29:27 +08:00
FishmanTheMurloc
4787f4f2f9 尝试复现RodNet的训练结果 (#1688)
* 增加RodNet必须支持训练的单元测试;RodNet的torch链路改造成全张量计算,由此把之前忽略的参数dz、h_coeff、offset变得可学习

* 了解到损失函数CrossEntropyLoss内置了softmax,因此从forward方法中移出;offset是手动指定的偏置值,不是学习得到的,因此也移出到单独的PostProcess方法中

* 根据得到的源码整理RodNet;新增在数据集上达到一定准确率的单元测试
2025-06-14 20:03:14 +08:00
FishmanTheMurloc
0c02808626 使用TorchSharp重写RodNet,以利后续优化 (#1613)
* 使用TorchSharp重写RodNet,以利后续优化

* 增加一个外部torch加载配置来代替直接的依赖,如配置不生效则使用原先手搓的算法

* BgiOnnxFactory取消单例,改为在App服务类中注册为单例,由此修复了一堆单元测试

* BgiOnnxFactory中几个静态方法改为成员方法以和App解耦;因不再有多个mat源供消耗,FishBite中文字块算法不再改动传入的mat,使得后续串联的算法不受其影响

* 将BehavioursTests中临时的配置读取方式改为读取主项目编译环境中的json文件;新建单元测试的README

* 将RodNet算法更新到 010006a44c 的版本;RodNet中关于torch库推理和直接数学计算的校验移至单元测试

* 更新RodNet算法至最新:add5672731

* 注释调试用的代码
2025-06-01 15:16:54 +08:00
Takaranoao
5b3bac478d 升级多个依赖&增加额外的推理加速功能&迁移OCR (#1459)
* 更新多个NuGet包至最新版本

* 重构模型加载以适应yolosharp

* feat: 改变接口。TensorRT缓存的初步支持,修改配置项。

* 更新依赖并调整变量顺序,修复加载问题

* 更新AvalonEdit和Microsoft.ML.OnnxRuntime包至最新版本,以修复问题

* fix: downgrade Microsoft.ML.OnnxRuntime.DirectML to version 1.21.0

* typo

* fix: change log level from warning to error for ONNX provider loading failure

* 增加 paddle ocr 的 onnx 模型

* feat: add PaddleOCR models for Chinese, English, and Latin recognition

* 使用cv的DNN生成Tensor,加速Yap文字识别

* feat: 尝试搓一个onnx的ocr

* clean up code

* chore: update OpenCvSharp4 package versions to 4.10.0.20241108

* 修复因格式化代码而丢的引用

* chore: update Microsoft.ML.OnnxRuntime.DirectML package to version 1.21.1 and improve logging for ONNX provider initialization

* chore: 等yolosharp更新再升级onnx

* chore: add Microsoft.ML.OnnxRuntime.Managed package and clean up logging in Det class

* fix: refactor output tensor handling in Det class for improved clarity

* 补充注释,修复DML的OCR问题

* 默认OCR推理使用CPU,整理配置

* fix error NETSDK1152: 找到了多个具有相同相对路径的发布输出文件

* fix(logging): enhance debug log for ONNX initialization with provider details

* 修复TensorRT模型缓存的加载问题

* fix(onnx): improve cached model retrieval and add file existence check

* fix(ocr): replace SrcGreyMat with SrcMat for region of interest processing

* fix(onnx): add file existence check for cached model and adjust session options for DirectML provider

* 增加硬件加速配置UI界面

* 移除旧的OCR模型

* 错别字

---------

Co-authored-by: 辉鸭蛋 <huiyadanli@gmail.com>
2025-05-11 01:08:37 +08:00
辉鸭蛋
d81d962dd3 5.6 dataset gen 2025-05-05 23:18:04 +08:00
辉鸭蛋
9e41808326 独立与分层地图支持 (#1503)
* 抽象基础类

* 修改定义

* 抽象出Feature2D相关能力

* 新增地图基类实现

* 临时提交

* 迁移坐标计算

* 加载分层特征数据

* 新增独立地图 层岩巨渊,渊下宫,旧日之海

* 支持不切分特征点匹配

* 添加远古圣山,修改地图参数

* 提瓦特大陆的大地图匹配

* 提瓦特大陆地图大地图位置获取使用256级别的地图

* 替换大地图匹配类 BigMap.cs

* 替换小地图匹配类 EntireMap

* 修改tp的入参方式,删除无用类

* 兼容新提交的内容

* 修复类方法覆盖不生效的问题

* 修复定位问题,迁移部分 MapCoordinate 的代码。MapCoordinate 标记为废弃

* 更多坐标方法的迁移

* 修复不正确的坐标转换

* 是用正确的特征匹配

* 体积较小的地图动态生成特征

* 路径追踪窗体支持多地图

* 传送时切换独立地图地区

* 更新传送点信息

* 修改独立地图相关命名,使用 Scene(场景) 命名,和原神内部命名保持一致

* 录制支持多独立地图

* 修复地区切换失败的问题
2025-05-03 21:59:37 +08:00
辉鸭蛋
02dfd67fa0 新的特征点转换 2025-04-26 20:17:44 +08:00
FishmanTheMurloc
fce70c0e96 分解5星圣遗物 (#1383)
* 分解圣遗物基础设施建设

* 分解圣遗物独立任务基本功能完成:单独的启动按钮,正则表达式逐一筛选;代码文件整理到单独的文件夹

* 自动分解5星圣遗物功能初步完成

* 修复上次修改快速分解产生的问题,主要点击分解按钮时的bug,还有与五星分解步骤衔接的问题

* 针对切换队伍时,多语言识别效果不佳的情况,将用户设定的队伍名作为正则表达式进行模糊匹配,并在LogInfo输出相关提示;传送任务对任务取消进行单独的异常处理

* 一个便于测试分解圣遗物OCR识别和正则匹配结果的弹窗
2025-04-05 19:53:52 +08:00
Takaranoao
cbaf1f6c36 更新OpenCvSharp4版本到4.10.0,PaddleOCR到2.7.0.3,尝试修复bitblt导致崩溃的问题 (#1381) 2025-04-01 14:47:13 +08:00
FishmanTheMurloc
8f8aad4130 分解圣遗物支持多语言,顺便修了一下5.5版本快速选择筛选星级逻辑 (#1369) 2025-03-30 16:23:08 +08:00
FishmanTheMurloc
40cd76fbdc Feat/multi lan (#1364)
* 多语言下拉框挪到其他设置下

* 使用正经的Fixture写法,杜绝并行测试时paddle崩溃的问题

* 适配不同主城的合成台的不同法语名

* 修正语言资源的正则表达式,好久没用了写错了好多;为AutoDomainTask新增的“地脉异常”、“点击任意位置关闭”添加多语言适配
2025-03-29 12:54:27 +08:00
辉鸭蛋
11f0a8528d Merge remote-tracking branch 'origin/main' 2025-03-28 21:23:21 +08:00
FishmanTheMurloc
6d4f8b80e8 Feat/multi lan (#1336)
* 记录一次对hutaofisher的访谈,帮助开发者理解其算法

* 本地化HelloWorld

* .csproj取消windows版本号,此处导致了IDE在新建代码文件和自动生成代码时,默认命名空间丢失的问题。已知VisualStudio和ReSharper存在这个问题。

* 优化扩展方法写法,改为从localizer扩展;Converter优化写法,避免冲突;新增两种语言,待测试ocr效果

* Revert ".csproj取消windows版本号,此处导致了IDE在新建代码文件和自动生成代码时,默认命名空间丢失的问题。已知VisualStudio和ReSharper存在这个问题。"

This reverts commit 8bd7ee74c5.

* localizer改为由构造函数传入以支持单元测试;一个英语上钩的单元测试

* 传送任务支持英语游戏界面;本地化参数挪至OtherConfig类下,但界面位置暂不挪动,待定

* 调整resx位置风格,放在直接使用字符串的类下;一条龙合成树脂及领取每日奖励支持游戏内中英双语

* 删除无用碎片文件

* 删去两个不必要的Sdcb包引用

* Paddle服务类去掉分类模型;检测和识别新增支持繁中和法语,配有单元测试;因小语种识别效果不理想,使用正则匹配替换多处识别文本相等或包含判断;钓鱼、一条龙合成树脂及领取每日奖励支持游戏内繁中和法语;

* 检查今日奖励任务的多语言化;右侧联机的P图标检测区域宽度缩减,避免英语角色名被误识别成P

* AutoDomainTask的游戏多语言化,由于我的游戏账号无法测试,仅配一些测试用例

* 修复有3个Mizuki导致异常的bug,临时用拼音代替新角色英文名,并为该数据初始化方法添加单元测试

* 瓦雷莎删去别名“牛牛”,因荒泷一斗已占用此别名;别名加载和读取优化

* 加个锁避免单元测试中多线程初始化paddle崩溃
2025-03-28 11:00:08 +08:00
辉鸭蛋
47ffbe9c89 5.5 avatar 2025-03-28 01:07:59 +08:00