Skip to content

Xiangqi syncing tool based on Yolov5 / 基于Yolov5的中国象棋连线工具

License

Notifications You must be signed in to change notification settings

Vincentzyx/VinXiangQi

Folders and files

NameName
Last commit message
Last commit date
Feb 20, 2024
Jul 11, 2022
Jul 9, 2022
Jul 1, 2022
Jul 6, 2022
Jul 1, 2022
Jul 11, 2022
Jul 11, 2022
Jul 11, 2022
Jul 1, 2022
Jul 11, 2022

Repository files navigation

VinXiangQi

一款基于深度学习(YOLOv5)的中国象棋连线工具

该程序当前阶段还缺少许多功能,希望有人能加入一起完善

软件/技术交流群:755655813

软件简介

0、界面介绍

image-20220711145322503

1、识别画面

image-20220711145437807

显示Yolo模型对画面的识别情况

2、识别结果

image-20220711145528668

显示目前局面的稳定识别结果以及引擎的走法,注意:该部分棋子可以点击,点击时会自动把对棋子的点击转发到被连线的游戏和软件中,方便对游戏中点击位置进行调试

3、引擎设置

image-20220711145715450

4、识别设置

image-20220711145734293

5、引擎思考输出

image-20220711145912807

6、引擎设置

image-20220711145946599

通过UCI或者UCCI协议获取到的关于引擎的设置选项

7、开局库设置

image-20220711150033775

选择是否使用云库和开局库

8、自动点击管理

image-20220711150109702

当连线设置中的自动点击被勾选时,软件会自动点击画面中保存模板的位置,可以实现自动续盘等功能。

使用方式:在右侧的画面中,点击需要框选的区域的左上和右下的点,确认无误后点击保存,即可保存自动点击的模板。

9、保存方案

image-20220711150256531

当使用 “寻找窗口句柄” 功能创建方案后,确定方案可用后,点击 “保存当前方案” 即可将当前方案保存下来下次使用。

需要注意的是,如果截图标题中包含有关当前对局或者网址的信息,可以将截图标题删去,保留截图类,可能方案会更通用。

1、创建方案或使用内置方案

方案是TXT格式的文件,储存在 程序根目录/Solutions 文件夹内,内容为:

  1. 用于截图的窗口类名或者标题

  2. 用于点击的子窗口类名或者标题(可留空,则截图和点击的为同一窗体)

    内置方案示例如下

    ./Solutions/JJ象棋_棋力评测/window.txt

    截图标题=中国象棋棋力评测
    截图类=
    点击标题=TKMCGame
    点击类=
    

    ./Solutions/天天象棋/window.txt

    截图标题=
    截图类=QQChess
    点击标题=
    点击类=
    
  3. 也可以点击寻找窗口句柄按钮,在点击按钮2秒内把鼠标移至目标窗口上方,来获取窗口句柄。

2、确认窗体缩放比

  1. 选中你想要使用的方案
  2. image-20220711143552442
  3. 根据左上角截图情况调整缩放比:如果截图显示不全,则增大缩放比;如果截图存在黑边,就减小缩放比,直到窗口完美覆盖图片。
  4. 关闭调试状态

3、前台与后台

image-20220711143729937

截图模式

后台截图:仅对窗口,而不是整个桌面进行截屏,在该模式下,连线的目标窗体可以被遮挡,不影响截图。

但需要注意的是,该模式并非通用方法,有的游戏和软件因为渲染方式的不同,并不能使用该方式截到图,这时调试状态显示的画面为黑色的。如果遇到这类软件,就需要勾选前台截图,使用截取屏幕的方式进行截图。

前台截图:通用模式,所有游戏和软件都可以使用,但是要求窗口不能被遮挡。

鼠标模式

后台鼠标:通过给目标窗口发送系统消息的方式进行鼠标操作,不是所有软件和游戏都能用。

该方式允许你在进行连线的时候鼠标同时操作别的事务,请优先选择该模式,如果遇到点击失败,则勾选前台鼠标模式。

前台鼠标:通用模式,所有游戏和软件都可以用,但是会占用鼠标,如果在连线点击下棋的过程中移动了鼠标,就有可能导致点击失败。

3、开始下棋

​ 1.打开游戏中的对局

​ 2.根据当前轮到我方或者对方,选择我方开始或是对方开始

​ 3.这时连线应该已经自动开始了,如没有开始,则点击重新检测棋盘来刷新

image-20220711145322503

4、自动续盘

因为用户存在不同分辨率和不同缩放比,自动续盘需要点击的按钮需要用户自行截取

1. 点击 “自动点击管理”

image-20220705023407649

管理界面如下

image-20220705023516915

2. 在右侧图片上点击

第一次确定左上坐标,第二次确定右下坐标

image-20220705023551019

框好后有绿色框框指示

请注意:请务必在识别的范围内尽量减小框选范围,不要选择整个按钮,这样可以提升检测效率。

3. 保存图片

点击保存即可保存该自动点击图片

image-20220705023617339

4. 勾选自动点击

image-20220711150802910

启用自动点击后,即可自动点击保存截图中的按钮,进行自动续盘

异常情况

对于后台截图出现黑屏的窗体(如浏览器)可勾选前台截图,前台截图方式要求目标窗体前不能有遮挡。

对于不能点击的情况,可以勾选前台鼠标,该方式占用鼠标进行点击,为通用方法。

如使用过程中出现停止分析(持续识别模式时有概率出现),则点击重新检测棋盘来检测。

如果更多问题或者发现Bug,请加入软件/技术交流群:755655813,来反馈!