神经网络视觉AI“后时代”自瞄实现与对抗

news2024/11/18 23:48:45

    通俗一点来说,自瞄是在FPS射击游戏中最为常见的作弊手段之一,当下最火爆的CSGO也深受其扰,在此我说些我自己的看法,欢迎大家在下方留言讨论;

(1)软件层面

    在神经网络方面的视觉AI应用流行之前,WG作者只能使用应用层或驱动层标准的Windows API来实现,例如keybd_event、mouse_event、SendInput、NtSendInput等接口,而游戏中的人物坐标数据通常需要注入或远程读取来获取,而在AI后时代这些将逐渐远离,让反作弊系统直接失明......

    在写这篇文章时,与很多硬件和软件大佬做过一些深入交流,本文标题所指的“后时代”并不是说#ChatGPT的时代,而是在那些神经网络AI出现之后,在这个AI出现之前,一些作弊器都需要在应用层或驱动层实现模拟键鼠操作,这里是有极大概率被当下的检测封杀的。

    通常一些自瞄都非常依赖Windows API来模拟键盘鼠标操作,我这里说一种新型更隐蔽的手段 —— STM32伪造键鼠,这种方法在目前TB上面也有大量模块化的售卖。它的原理其实也非常简单,利用STM32单片机在系统模拟出一个罗技鼠标(VID、PID全部伪造),再开放一个其他USB或串口等提供给应用层远程模拟,这种键鼠模拟会相当于隐蔽,反作弊系统会非常难捕获。

    之前在B站看到过一个神经网络方面的大佬林亦LYi用Python+神经网络算法写了一个通杀所有FPS游戏自瞄的效果,大致原理是利用试时的游戏截屏+神经网络视觉AI再去分析出来人物肢体部位,最后再模拟键鼠射击,效果如下图:

【亦】警惕AI外挂!我写了一个枪枪爆头的视觉AI,又亲手“杀死”了它_CSGO

(2)硬件层面

    不禁想起在2018年阿莫电子论坛一位大佬利用FPGA+Python+OpenCV+STM32做出来一个硬件级的纯物理自瞄WG,他在2018年就有这样的思路已经是非常超前了!

    因为他的整套系统完全不在Windows上运行,也不需要截取游戏画面,也不需要读写游戏数据,甚至连一个多余的进程、文件都不需要;他的原理是彻底不接触物理游戏主机,而是直接从HDMI读取画面数据用FPGA开发板上的Python+OpenCV来识别出游戏人物位置,如果当前他了解神经网络方面的视觉AI,也许他会打开新世界的大门!咦,不过当时好像并没有流行这方面技术;

    如果我要在这位硬件大佬的基础改进的话,首先在Python中不要只是单纯的用OpenCV,而使用目前比较火爆易用的YOLO V8目标检测算法,先不断强化训练学习从而做到更精准,如果训练得足够强悍,这将对所有FPS射击游戏来说是噩梦。

    这个在开发板中有现成的YOLO算法完整例程代码:

GitHub - fpgadeveloper/pynq-ncs-yolo: YOLO object detector for Movidius Neural Compute Stick (NCS)

    整体思路原理框架如下:

    如果这篇文章看到现在,还有小伙伴蠢蠢欲动的话,我建议你三思,毕竟如果你只懂PC软件工程的话,硬件这一块会够呛的。

    借用我司硬件总工跟我讲过的一个地狱笑话:“那些当年在某宝卖开发板的人,如果看到收货地址是学校的,人家直接劝你退货......

    为啥?因为他们大多啥基础水平没有反而问题一大堆,这哪有空给他讲?就相当于卖给你一个数码相机和PS软件,你得教会如何P出一个赵丽颖?再通俗一点,相当于我卖你一套xxx代码,你自己消化不了它,还天天来问我C语言语法函数问题这换谁能受得了?人家卖块板子赚个几十块,得教你几千块的知识,这也不太实际,大家还是要讲良心!所以现实是即使你在某宝买了人家的开发板,也许人家哪怕收到差评也根本不会鸟你任何非质量的问题....

    即使你买了开发板,整个架构对软件、硬件、神经网络等综合水平要求有点高,另外还有一个劝退点:

    看到这个美刀的价格如果你还有购买的冲动,那当我上面的没说过......

(3)对抗硬件自瞄G的思路

    在说了这么多之后,我大致总结了一下它的对抗思路:

    1、检测非法的键鼠VID、PID设备批量拉黑;

    2、检测玩家某个时间段内的键鼠记录,比如W按下10毫秒|W松开10毫秒|S按下1毫秒|S按开1毫秒等等,再用AI分析出异常的

    3、检测键鼠视野抖动范围,这些也是在正常情况下非常人能达到的;

    最后,相信不久的将来,这种硬件WG将会成为“主流”。在这个WG肆意横行的时代,为此我们唯一能做的是回归游戏初心,坚决抵制任何游戏WG,同时希望平台也要不断完善反作弊机制!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/569459.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

面试官:工作三年,还来面初级软件测试?恐怕你的软件测试工程师的头衔要加双引号...

相信身为测试工程师的你可能经历过这些: 已经工作三年了,每个项目都会加班加点全力以赴去完成,薪资增长幅度却不如人意。 听说年后离职的老同事,金三刚拿下高薪offer,年薪直奔50万了。 由于现在的公司接触不到新技术&…

docker(一)安装部署卸载以及基础命令使用

文章目录 1、安装1.1、安装插件1.2、设置源:1.3、安装docker卸载docker:1.4、配置国内源 2、基础命令3、提交某个镜像为新的镜像4、docker 存档 1、安装 机器配置: 1.1、安装插件 [rootdophin ~]# yum -y install yum-utils1.2、设置源: …

Spring相关面试题(Spring核心)

Spring相关面试题 谁定义了bean的生命周期IOC初始化 IOC启动阶段 (Spring容器的启动流程)Spring-IOC是什么IOC是什么DI是什么 依赖注入 DI的三种方式Spring-AOP是什么OOPAOPAOP实现方式动JDK动态代理和CGLIB动态代理 JDK动态代理和CGLIB动态代理IOC 和 AOP 的联系和区别 BeanFa…

【2023 · CANN训练营第一季】应用开发(初级)第五章——媒体数据处理

1.媒体数据处理 受网络结构和训练方式等因素的影响,绝大多数神经网络模型对输入数据都有格式上的限制。在计算机视觉领域,这个限制大多体现在图像的尺寸、色域、归一化参数等。如果源图或视频的尺寸、格式等与网络模型的要求不一致时,我们需…

LLMs开源模型们和数据集简介

本篇文章整理下目前常用的LLMs模型们和数据集简介。 BackBones ​https://github.com/FreedomIntelligence/LLMZoo 可以看到目前被广泛用来作为LLMs的backbone的模型有以下特点: Backbone:基于某个开源backbone,如GLM、LLaMA、BLOOMZ&#…

Android 文本识别:MLKIT + PreviewView

随着移动设备的普及和摄像头的高像素化,利用相机进行文本识别成为了一种流行的方式。MLKit 是 Google 提供的一款机器学习工具包,其中包含了丰富的图像和语言处理功能,包括文本识别。PreviewView 是 Android Jetpack 的一部分,它提…

2 files found with path ‘lib/arm64-v8a/libwechatbacktrace.so‘ from inputs

2 files found with path lib/arm64-v8a/libwechatbacktrace.so from inputs 解决方案,在app module的build.gradle里面的 android { } 块里面添加: packagingOptions {exclude lib/arm64-v8a/libwechatbacktrace.so} 如果有多个,就再增加行…

“宝石与石头”:一道简单却巧妙的力扣算法题

本篇博客会讲解力扣“771. 宝石与石头”的解题思路,这是题目链接。 先来审题: 以下是输出示例: 以下是提示: 本题可以使用数组模拟哈希表来实现。先把宝石字符串中的字符标识到数组的对应位置,每次拿石头字符串中的…

ChatGpt免费的镜像网站

目录 1.ChatGpt 简介 2.ChatGpt 免费网站合集 2.1 https://chat21.zhulei.xyz/ 2.2 Vega AI 创作平台 2.3 AI文本工具站 2.4 FancyPig (jqrai.one) 2.5 AiDuTu 1.ChatGpt 简介 ChatGPT是美国人工智能研究实验室OpenAI新推出的一种人工智能技术驱动的自然语言处理工具&…

geotools简介

geotools简介 官网 https://docs.geotools.org/latest/userguide/index.html 架构图 特性 1. 主要特性 Geotools主要提供各种GIS算法,实现各种数据格式的读写和显示。在显示方面要差一些,只是用Swing实现了地图的简单查看和操作。用户可以根据Geoto…

运营-17.留存

如何定义留存 某段时间内的新增用户,经过一段时间后,又继续使用应用的被认作是留存 用户,这部分用户占当时新增用户的比例即是留存率,即用户没有流失; 例如: 5月份新增用户200,这200人在6月份启…

Abaqus——悬臂梁问题之工字梁实例

参考 有限元基础-第7课(悬臂梁问题)-2022年_哔哩哔哩_bilibili 实例 软件 Abaqus 2022 方法 通过线形式建模 具体操作 建模 1.打开部件的模块,创建一个零件。Name:自定义命名;Modeling Space:梁的空…

认识Vue中组件利器-插槽Slot-案例介绍

一. 插槽的使用 1.1. 认识插槽slot 在开发中,我们会经常封装一个个可复用的组件: 前面我们会通过props传递给组件一些数据,让组件来进行展示; 但是为了让这个组件具备更强的通用性,我们不能将组件中的内容限制为固定…

项目总结:YOLOv8 人体姿态估计 跌倒检测

细节贴: YOLOv8 人体姿态估计 跌倒检测_爱钓鱼的歪猴的博客-CSDN博客 yolov8-pose的输出中有17个人体关键点 在胸膛处计算出一个中心点,腰部计算出一个中心点,连线,做一个直角三角形,求角的大小。 当角大于60度&…

基础篇009.1 STM32驱动RC522 RFID模块之一:基础知识

目录 1. RFID概述 1.1 RFID工作原理 1.2 RFID分类 1.3 RFID模块 1.4 RFID卡片 1.5 IC卡和ID卡介绍 1.6 IC卡和ID的区分 2. Mifare卡结构原理 2.1 Mifare卡概述 2.2 Mifare非接触式 IC 卡性能简介(M1) 2.2.1 Mifare S50与Mifare S70 2.2.2 S5…

蓝牙spp协议

一.定义 Serial Port Profile,串口通讯协议,是完成蓝牙设备之间创建串口进行数据传输的一种协议。 串口通讯协议(SPP)定义了使用蓝牙进行RS232(或类似)串行电缆仿真的设备应使用的协议和过程。 此协议涵盖的方案通过虚拟串行端口抽象&#…

自己编写小程序背日语50音图

自己编写小程序来背日语50音图 这是个啥直接上代码测试效果图 这是个啥 简而言之呢就是最近心血来潮打算自学日语,学日语自然就要先从50音图开始,就是下面这个: 可以看出来50音图横向是按照a i u e o这5个元音顺序,纵向按照a ka…

企业门户网站有用吗?如何解决搭建难题?

随着智能化时代的逐渐成熟,信息产业如火朝天,越来越多的人对门户网站开始感兴趣,不少企业家也开始对门户网站的开发与建设跃跃欲试。门户网站,也就是一个应用框架,把各类应用系统、互联网资源、数据资源集合到一个信息…

80.确定和规划项目(步骤1和2)

你的第一个现实世界的项目 ● 你的第一份“工作”!、 ● 你受雇为一家名为Omnifood的虚构公司设计并建立一个网站。 ● Omnifood是一家使用人工智能来创建和提供定制健康膳食计划的初创公司。 ● 他们为我们提供了网站的所有内容(content.md&#xff09…

Redis 的 Rdb 或 Aof 持久化详解

文章结构 Redis 的持久化方案Rdb(Redis Database) 方式设置持久化快照的条件持久化文件的存储目录Rdb 的优点Rdb 的缺点 Aof(Append Only File) 方式aop 的优点aop 的缺点 Redis 的持久化方案 Rdb(Redis Database) 方式 Redis 默…