Skip to content

feat(decisive): 决战模式EX-1支持及节点识别优化#403

Merged
huan-yp merged 5 commits intoOpenWSGR:mainfrom
syokounya:cursor/decisive-ex1-and-rounds
Apr 9, 2026
Merged

feat(decisive): 决战模式EX-1支持及节点识别优化#403
huan-yp merged 5 commits intoOpenWSGR:mainfrom
syokounya:cursor/decisive-ex1-and-rounds

Conversation

@syokounya
Copy link
Copy Markdown
Contributor

主要改进

1. EX-1决战支持

  • 添加决战EX-1地图的节点识别和配置
  • 支持EX-1特有的流程处理

2. 小关识别配置优化

  • 统一第1章和第6章的小关识别为参数化配置
  • 支持递进式判定逻辑(通过前2关推断第3关)

3. 节点OCR识别优化

  • 添加图像增强预处理(CLAHE对比度增强+锐化滤波)
  • 使用_MAP_END动态确定OCR字符集范围(A-F/A-H/A-J)
  • 放宽裁剪范围,依赖图像增强而非严格颜色过滤

4. 流程稳定性修复

  • 修复节点识别超前导致的流程错误
  • 优化页面跳转稳定性
  • 修复跳过舰船购买的问题

技术细节

ecognize_node() 添加chapter/stage参数

  • 使用cv2.createCLAHE()提升局部对比度
  • 使用Otsu自动阈值替代固定阈值
  • 使用增强后的灰度图而非二值图进行OCR

测试

  • 已在第6章决战地图测试通过
  • 节点识别准确率显著提升

- 将分散的检测点、颜色、容差配置合并为统一的 _STAGES_CHECK 字典
- 所有章节使用相同的检测逻辑,仅参数不同
- 第6章使用黄色标记(249,232,94),容差40.0
- 简化 recognize_stage 方法,移除第1章特殊处理
- 删除冗余的 _recognize_ex1_stage_by_pixel 方法
- 使用递进式判定逻辑:检测前2个小关推断当前进度
主要修复:
1. 将节点识别从Rust DLL迁移至OCR,避免panic崩溃
2. 修复暂离后重进被误判为首进的问题
3. 优化节点推进逻辑,战斗后使用字母递进而非OCR识别
4. 修复第1章夜战点配置错误

技术细节:
- recognize_node() 使用OCREngine替代DLL调用
- _handle_node_result() 使用逻辑递进(ABC)替代图像识别
- _handle_waiting_for_map() 增加node=='U'判断区分暂离重进
- 添加allowlist限制OCR只识别大写字母提高准确率
主要改进:
1. 添加图像增强预处理(CLAHE对比度增强+锐化滤波)
2. 使用_MAP_END动态确定OCR字符集范围(A-F/A-H/A-J)
3. 放宽裁剪范围,依赖图像增强而非严格颜色过滤
4. 更新调用点传入chapter和stage参数

技术细节:
- recognize_node() 添加chapter/stage参数
- 使用cv2.createCLAHE()提升局部对比度
- 使用Otsu自动阈值替代固定阈值
- 使用增强后的灰度图而非二值图进行OCR
@huan-yp
Copy link
Copy Markdown
Contributor

huan-yp commented Apr 9, 2026

请上传测试案例用于回归,在这里发 link,不要进 repo

@huan-yp huan-yp merged commit 6c266c6 into OpenWSGR:main Apr 9, 2026
0 of 2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants