本项目是一款轻量级的移动端半自动化交互工具。为了应对复杂多变的屏幕 UI 场景,本工具采用“视觉呈现+人工辅助定位+机器精准执行”的闭环模式。核心模块包括:利用 OpenCV 实时抓取并渲染设备屏幕画面;用户在可视化界面上点选起始与目标位置;借助 NumPy 进行矩阵运算,快速计算两点间的欧氏距离;最后通过内部映射公式转化为按压时长,由 ADB 协议向设备发送模拟触控指令。该项目广泛应用于移动端 UI 定点测试及特定坐标的自动化脚本开发。
整体架构:利用 Python 编写主控逻辑,通过 OpenCV(cv2)处理图像流的读取与坐标映射,结合 NumPy 完成高效的距离计算,底层调用 ADB 接口完成触控反馈。
我负责的模块:独立完成了可视化界面的搭建、基于 OpenCV 的屏幕画面捕获与坐标转换、以及基于 NumPy 的距离测算算法。
遇到的坑与解决方案:
1.全自动识别干扰问题:面对复杂背景,全自动图像识别(如边缘检测)容易产生误差。本项目巧妙地采用了“半自动化”设计,将图像呈现交由 OpenCV,核心坐标交由人工框选,用最低的算力完美解决了识别不准的问题。
2. 坐标映射与非线性物理反馈:按压时长与跳跃距离呈非线性关系。通过采集样本,结合 NumPy 进行数据拟合,建立了一套精准的映射公式,并在每次执行时加入毫秒级随机数,完美模拟真人操作特征。