用Python实现跳一跳自动跳跃。

系统 1573 0

用Python实现跳一跳自动跳跃。_第1张图片



转发文章最多的朋友可以免费进入价值99元的《湾区AI精英会》海归圈子

经由前两期的介绍,对于「 跳一跳 」自动化的实现,基本差不多了。


本期就来完整的跑一遍,快乐学习。


1.   OpenCV:模板匹配。    获得小跳棋中心位置

2.   OpenCV:边缘检测。    获得下一方块中心位置


用Python实现跳一跳自动跳跃。_第2张图片


Python+ADB+OpenCv,实现「 跳一跳 」自动化。



/ 01 / ADB


ADB工具即Android Debug Bridge(安卓调试桥) tools。


ADB 是一个命令行窗口,用于通过电脑端与模拟器或者真实设备交互。


与之前小F接触过的Appium有点相似。


ADB的安装很简单,就是将安装包解压后,将路径添加到系统的环境变量中即可。


然后使用Python的os模块执行ADB命令。


            


本次涉及到的ADB命令,就只有三个,不多。


一个截屏,一个推送手机截图到电脑上,最后模拟长按手机屏幕。



/ 02 / 跳动实现


先检测游戏结束画面。


判断是否需要结束游戏程序。


            


模板匹配原理图如下。


用Python实现跳一跳自动跳跃。_第3张图片

当返回的最大矩阵值大于0.95时,则认为原始图像中肯定出现了再玩一局字样。


则游戏结束,程序也随之结束。


小跳棋的模板匹配代码如下。


主要是获取小跳棋的位置,即「跳一跳」起点位置参数。


            


得到结果如下。


用Python实现跳一跳自动跳跃。_第4张图片


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


            


边缘检测原理图如下。


用Python实现跳一跳自动跳跃。_第5张图片


最后便是主程序啦。


              
            


下面就来看一下「跳一跳」自动跳跃的视频。



轻轻松松得分,毫无问题。



/ 03 / 总结


相关工具及代码已上传网盘,公众号回复 「跳一跳」 即可获取。


安装好ADB工具,然后通过数据线将安卓手机和电脑连接。


最后运行代码, 亲测有效。


当然代码还是有待优化的,如下图~


用Python实现跳一跳自动跳跃。_第6张图片


一方面是得分不高,另一方面就是会被检测到作弊...


所以还有待改进呢!!!



致转行AI的在校大学生的一封信


点进来,你就赢了全国90%的人|湾区人工智能


湾区人工智能私密圈|湾区AI精英汇


【AI自学】 完备的 AI 学习路线,最详细的资源整理!


转行AI需要看的一些文章


转行学AI,具体细分方向如何选,来自一线工程师的感悟


【中美之争】其实已经失去了悬念 (深度好文)|湾区人工智能


【送书PDF】Python编程从入门到实践


Python从入门到精通,深度学习与机器学习资料大礼包!


【免费】某机构最新3980元机器学习/大数据课程高速下载,限量200份


用Python实现跳一跳自动跳跃。_第7张图片

长按扫码撩海归


用Python实现跳一跳自动跳跃。_第8张图片



用Python实现跳一跳自动跳跃。_第9张图片


    觉得不错, 请随意转发,麻烦点个在看!






推荐阅读


用Python实现跳一跳自动跳跃。_第10张图片

用Python实现跳一跳自动跳跃。_第11张图片

用Python实现跳一跳自动跳跃。_第12张图片



···  END  ···


用Python实现跳一跳自动跳跃。_第13张图片



支持小F原创    


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论