基于计算机视觉的UC小游戏外挂
今天偷懒,直接把在内部分享的PPT,拿出来分享。同时去掉了敏感信息。
主要分这3部分来讲。
右边就是UC小游戏的首页,可能有些朋友没有玩过,直接下载UC浏览器,在搜索UC小游戏就可以进入了,也可以通过其他各种隐藏的入口进入。不过很遗憾,目前只有Android 可以玩,iOS 端的小游戏已经下线了。
这个就是UC小游戏其中一款游戏: 翻翻乐。这次的分享,也是围绕这个游戏来得。
大家如果没有装UC小游戏,或者是iOS手机,可以直接用微信扫描这个小游戏码也可以体验。这个也是我模仿UC翻翻乐,借助于微信小游戏平台开发的一款游戏,建议大家在看这篇文章前,可以先行体验一番,更有助于对这篇文章的理解。
另外虽然这是一个简单的小游戏,但麻雀虽小,五脏俱全。后端的游戏服、匹配服、机器人都是完善的,可以跟真人匹配,也可以匹配到机器人。
后端采用的是阿里云服务器,最近阿里云也在打折: https://www.aliyun.com/1111/2019/home?userCode=ip5vy4ju ,最便宜可以花200+ 就拥有自己的服务器,还是3年的。对于我们学习来说,也是完全够用了。
讲完简介,接下来讲最重要的算法部分。
ROI: region of interest ,就是我们感兴趣的部分。在这个UC小游戏中,我们感兴趣的,就是可以点击的24个icon图片。
这次的算法,还是主要用到了OpenCV。
OpenCV支持非常多的平台、领域,这里就不详细介绍了,只做简单的介绍。
最简单的拿来做图片大小变换,在工作中,其实偶尔也会用得上的,可以很有效的帮助工作。
哈哈,也可以用来改图片背景,能剩下不少$呢~ 我在平时也用过几次这个功能,帮自己、帮别人PS 图片。
也可以用来处理视频,在我另一篇文章中有提到: https://blog.csdn.net/weixin_42527719/article/details/85694544
也可以用来做边缘检测,而我们这次的内容,就是需要用到边缘检测。
这个就是经过边缘检测的效果,基本过滤出了我们想要的部分(ROI)
边缘检测的原理: 第一幅图,很明显,从左到右的变化是非常平滑的,可以认为是图像内部是没有边缘的。取其中间横向的一排像素点的灰度值,画在坐标系上,也是一条缓慢下降的直线。 而第二幅图,从图中我们可以看到中间明显的分界线,同样取其中间横向的一排像素点的灰度值,画在坐标系上,我们可以看到中间明显的断层,而这个断层,就是图像内部的边缘。
我们再对上个PPT中的数据进行求导,可以看到第一幅图的像素点求导后,是一条直线,而第二幅图中求导后,在x=127的位置上,导数的值明显比其他位置的大,我们回想一下高中数学,导数绝对值越大,说明斜率越大,即代表这个位置发生了剧烈、断崖式的变化。
所以在边缘检测中,通过求导,如果导数大于某个阈值,我们就可以认为这里是边缘。
当然,OpenCV已经帮我们封装好了,一个函数搞定。100,200 两个参数,就是我们上边说道的阈值。通过调节,我们可以看到,PPT中两幅图的边缘是有点不一样的。在实际应用中,可能也需要我们通过调参来得到一个比较好的效果。
得到左图的边缘之后,我们还需要得到我们感兴趣的区域,24个icon坐标。
通过点击、截图,并取感兴趣的icon,我们得到的就是右图。相当于,我们已经知道答案了。
但对于计算机来说,我们还需要计算他们的相似度,才知道哪两个icon图是一样的。
通过3步骤,我们就可以计算24个icon中两两的相似度,得到相似情况。
这里我们采用minitouch、minicap来提升几年前传统的点击、截图方式。
最终,我们基本能在24s 完成比赛。 如果你体验了开头的小程序,可以在24s 完成游戏吗?
基于计算机视觉的UC小游戏外挂相关推荐
- 基于Unity3D的AR小游戏开发【100011412】
本科毕业设计(论文) GRADUATION DESIGN(THESIS) 基于 Unity3D 的增强现实游戏程序 摘要 增强现实(AR)作为一项新兴技术近年来被越来越多的人群所获知,AR 也渐渐走进 ...
- 基于pygame的射击小游戏制作(一)让飞船动起来
基于pygame的射击小游戏制作(一)让飞船动起来 一.文件结构 alien_invasion.py 是整个系统的主文件,用来创建游戏中的一系列对象,ai_settings存储设置.screen存储显 ...
- 基于 Blazor 开发五子棋小游戏
今天是农历五月初五,端午节.在此,祝大家端午安康! 端午节是中华民族古老的传统节日之一.端午也称端五,端阳.此外,端午节还有许多别称,如:午日节.重五节.五月节.浴兰节.女儿节.天中节.地腊.诗人节. ...
- c语言五子棋学年论文,基于c语言五子棋小游戏生本科论文.doc
基于c语言五子棋小游戏生本科论文 五子棋小游戏 需求分析 现在有越来越多的人使用电脑,而且五子棋的受众广泛但实体棋操作较为繁琐且平时较难实现,所以电脑版的五子棋游戏应运而生.大家对于这个小游戏的需求如 ...
- 基于控制台的五子棋小游戏(简易)
基于控制台的五子棋小游戏(简易) 展示 源码: 使用: GoBang类: 展示 话不多说上代码 Don't talk much, say the code! 源码: 使用: new完直接运行 publ ...
- 基于Unity的2D小游戏 SpeedDown 开发笔记(学习bilibili@[M_Studio]的教学视频
基于Unity的2D小游戏 SpeedDown 开发笔记(学习bilibili@M_Studio的教学视频) 主要内容:在Sunnyland游戏的设计基础上,新增了物理组件Joint系列.DrawGi ...
- 全志V853开发板移植基于 LVGL 的 2048 小游戏
LVGL 开发实战 移植基于 LVGL 的 2048 小游戏 这一节将以一个已经编写好的 lvgl 小游戏 2048 描述如何将已经编写完成的 lvgl 程序移植到开发板上. 这里使用的 2048 小 ...
- **挖金子小游戏外挂开发教程**
挖金子小游戏外挂开发教程 第一步:进入游戏窗口 第二步:打开Spy4win V2.0 分析得到数据如图: 第三步:打开CE
- 基于flask的五子棋小游戏
基于flask的五子棋小游戏 前言 首先说明一下,本人方向是java后端,只因老师布置了一个作业,要用flask来做一个五子棋,没办法被逼上梁山,程序不太美观,但是应付作业还是够了的. 废话不 ...
最新文章
- Microsoft Surface Toolkit Beta 版发布
- mac 苹果多版本jdk自由切换
- Python中sort与sorted函数
- Python编程专属骚技巧9
- StereoRectify()函数定义及用法畸变矫正与立体校正
- Graph(2014辽宁ACM省赛)
- python设置字体_Python实现文字特效的方法
- 服务器编译linux内核时间,Firefly-RK3399 Linux内核编译
- Oracle存储过程介绍
- mysql 从后往前截取指定个数字符串_「截取字符串」substring从指定字符串开始截取 - seo实验室...
- 内部排序算法(Golang版本)
- html5总结2000字,建筑识图实训总结2000字6篇范文
- 通达信版弘历软件指标_通达信仿弘历软件的六彩神龙指标免费源码公式_通达信指标公式_指标公式网...
- 图数据和知识图谱,数字化转型的新引擎星环科技星环科技
- 网页编程入门应该首先学些什么
- 快手挂小黄车和快手小店有什么区别?如何开通快手小店?
- 《Maven官方文档》Maven 开发
- mysqldump 使用总结
- java注解与APT技术
- 暑期強檔 飯店業者與樂團結盟系列優惠