【C++&OpenCV】实现微信跳一跳完整项目代码
前提精要: 本程序参考了大量的大佬佬的代码,在此基础之上,改编而成。而且其实代码写的奇差无比,很容易就挂了。然后呢,这里只是稍微提供一些思路,作为参考,就酱。 本程序依赖adb.exe和opencv425库。 本程序还有待优化,很渣很糟糕~ 仅供学习交流使用,切勿使用在违规违法的环境之中。
实机演示Gif:
思路:
获取小黑人的位置,获得目标方块的位置,计算两者的距离,从而计算粗按压屏幕的时间是多少。
具体实现2:使用adb工具模拟按压
当计算完距离和时间之后,考虑使用模拟按压屏幕的方法,控制小人的移动。
具体实现3:按压的位置刚好在“再来一次”的按钮上
这样就算跳失败了,只要用户不停下,那么小程序就会一直的进行跳跃。
获取小黑人的位置:
很简单,只是使用OpenCV的matchTemplate就可以啦,注意使用“TM_CCORR_NORMED”方法。
获取终点的位置:
您需要自定义的:
一个文件夹,将图片,从mumu模拟器,保存到本地的目录文件夹。和Debug的缓存目录。 您还可以自定义,程序运行的循环次数:
//最大执行次数 #define MaxRound 100
修改后面的100即可。
还有您的匹配模式图片位置: character3.png
完整项目:
项目配置:DebugX64,包含头文件opencv头文件,lib选择为opencv_world425d.dll(好像是这个名字),这个lib一定要有d,因为我们是Debug模式,所以使用这个库。然后链接器的附加输入,也填入这个选项。 项目依赖:adb、opencv425 下面是完整的项目参考。
项目结构
pch.h
#pragma once #include <opencv2/opencv.hpp> #include <iostream> #include <opencv.hpp> #include <windows.h>
main.cpp
写的实在不太好
{ { {(>_<)}}}
喜欢的话,就点一个赞趴!
圣诞节快乐OHHHHHHH
上一篇:
通过多线程提高代码的执行效率例子
下一篇:
初级程序员闲暇之余,应该如何提升自我?