
转发文章最多的朋友可以免费进入价值99元的《湾区AI精英会》海归圈子
经由前两期的介绍,对于「跳一跳」自动化的实现,基本差不多了。
本期就来完整的跑一遍,快乐学习。
1. OpenCV:模板匹配。 获得小跳棋中心位置
2. OpenCV:边缘检测。 获得下一方块中心位置

Python+ADB+OpenCv,实现「跳一跳」自动化。
/ 01 / ADB
ADB工具即Android Debug Bridge(安卓调试桥) tools。
ADB是一个命令行窗口,用于通过电脑端与模拟器或者真实设备交互。
与之前小F接触过的Appium有点相似。
ADB的安装很简单,就是将安装包解压后,将路径添加到系统的环境变量中即可。
然后使用Python的os模块执行ADB命令。
本次涉及到的ADB命令,就只有三个,不多。
一个截屏,一个推送手机截图到电脑上,最后模拟长按手机屏幕。
/ 02 / 跳动实现
先检测游戏结束画面。
判断是否需要结束游戏程序。
模板匹配原理图如下。

当返回的最大矩阵值大于0.95时,则认为原始图像中肯定出现了再玩一局字样。
则游戏结束,程序也随之结束。
小跳棋的模板匹配代码如下。
主要是获取小跳棋的位置,即「跳一跳」起点位置参数。
得到结果如下。

下面通过OpenCV的边缘检测获取「跳一跳」的终点位置。
边缘检测原理图如下。

最后便是主程序啦。
下面就来看一下「跳一跳」自动跳跃的视频。
轻轻松松得分,毫无问题。
/ 03 / 总结
相关工具及代码已上传网盘,公众号回复「跳一跳」即可获取。
安装好ADB工具,然后通过数据线将安卓手机和电脑连接。
最后运行代码,亲测有效。
当然代码还是有待优化的,如下图~

一方面是得分不高,另一方面就是会被检测到作弊...
所以还有待改进呢!!!
【免费】某机构最新3980元机器学习/大数据课程高速下载,限量200份

长按扫码撩海归


推荐阅读
··· END ···

支持小F原创 ☟
本文介绍如何使用Python结合ADB和OpenCV实现'跳一跳'游戏的自动化操作,包括模板匹配获取小跳棋位置,边缘检测确定目标方块位置,以及自动化跳跃流程。




857

被折叠的 条评论
为什么被折叠?



