让 OBS AI 视觉自瞄外挂锁不死人 — 在角色纹理上做手脚,蒙住 AI 的眼睛。
一个高中生做的 3D 对抗纹理攻击实验,四次独立复现,YOLOv8n 检测置信度降 81%。
在 3D 角色模型的纹理贴图上叠加微小扰动(每像素 ≤ 10/255,人眼不可见),使得 CNN 检测器的特征提取被破坏,无法稳定识别人物。
不是”让 AI 瞎”,是”让 AI 不可靠”。
外挂只要连续几帧检测不到人,自瞄就废了。
在 Mixamo Quantum Soldier(战术士兵角色)上进行了 4 次独立实验,结果一致:
| 模型 | 外挂社区使用率 | 原始置信度 | 对抗后置信度 | 下降幅度 |
|---|---|---|---|---|
| YOLOv8n | ~15% | 0.79 | 0.15 | -81% |
| YOLOv5s | ~15% | 0.22 | 0.13 | -39% |
三篇核心论文支撑:FGSM (Goodfellow 2015) · Texture Bias (Geirhos 2019) · EOT (Athalye 2018)
| 文件 | 说明 |
|---|---|
projgrad_attack.py |
梯度投影攻击框架(v13 验证成功版) |
joint_combined.py |
联合优化攻击脚本(当前最强版本) |
generator_train.py |
种子→对抗纹理 Generator 训练框架 |
docs/ |
完整项目文档(提案/技术设计/审计/商业计划) |
src/generator/ |
Generator 网络定义 + 损失函数 |
src/server/ |
服务端 Seed 管理组件 |
src/runtime/ |
UE5/Unity 插件骨架(未完成) |
11 种方法,200+ 次 GPU 实验,最终定位到一条稳定可复现的攻击链路。
详细记录见 docs/STAGE_SUMMARY.md 和 docs/HONEST_STATUS.md。
权重依赖:目前全部实验基于 YOLO 官方预训练权重。外挂作者可能使用自训权重或非 YOLO 的检测器(Transformer-based 等),当前方案未在这些场景下验证。拿到客户真实检测器后,需针对该模型重跑优化——不同模型间的扰动迁移性是本方案最大的不确定因素。
脆弱性:对抗纹理在换 backbone 或被攻击者对检测器做针对性微调后可能失效。单套纹理不能吃一辈子。这正是设计多生成器轮换(每局不同 seed)的原因:提高攻击方持续适应的成本,不是声称一套纹理永久有效。
渲染迁移:实验在离线渲染器 nvdiffrast 上完成。真实游戏引擎(UE4/UE5)的光照、后处理、OBS 编码压缩对对抗纹理的影响尚未验证。
CNN 偏向假设:方案依赖于 CNN 对中高频纹理的结构性偏向。如果外挂转向 ViT 等 Transformer 架构或光流追踪等非纹理依赖的检测方法,本方案的覆盖范围会缩小。
Resize 与图像预处理:YOLO 默认输入为 640×640,模型获取画面后会经历缩放和归一化预处理。当前训练管线已在渲染分辨率和检测输入尺寸之间做了适配(EOT 包含随机相机距离,天然覆盖轻微分辨率浮动),但未针对极端缩放(如 4K→640px 或 720p→640px)和不同归一化策略做系统测试。纹理扰动在这些预处理步骤中是否会退化,需要补充实验验证。
DLSS / 超分重建:DLSS 使用神经网络进行上采样重建,可能在重建过程中抹平或扭曲纹理空间的对抗扰动。本方案未在任何超分环境下验证。理论上有理由认为部分高频扰动可能被 DLSS 的 CNN 内核保留(DLSS 本身对纹理敏感),但缺乏实验支撑。当前只能如实标注为未验证。
如果你在游戏公司做反作弊、技术美术或安全,对这个方向感兴趣:
给一个角色模型,72 小时出适配数据。或单纯聊一聊也行。
Email:2182212637@qq.com
GitHub:https://github.com/fringe-karma/AntiVision-SDK
AntiVision — 让 AI 视觉外挂在这款游戏里用不了。