G-MAD:面向多视角 RGB-热红外航拍目标检测的基于游戏的数据生成框架 G-MAD: A Game-Based Data Generation Framework for Multi-View RGB-T Aerial Object Detection
用 Arma3 引擎自动生成多视角 RGB-热红外航拍目标检测合成数据集
前置知识
RGB-热红外(RGB-T)多模态检测
把可见光(RGB)图像与热红外(Thermal/IR)图像配对输入检测器,让模型同时利用两种模态的互补线索:RGB 提供丰富纹理与颜色,热红外在夜间、雾天或低对比度下凸显发热目标。难点在于两路图像必须空间对齐(像素级配准),且融合策略要平衡两模态的贡献。
本文的核心交付物是像素级对齐的 RGB-T 配对航拍数据,理解 RGB-T 才能明白这套数据为何有价值、以及它支持什么样的融合学习研究。
水平框(HBB)与旋转框(OBB)
HBB(Horizontal Bounding Box)是与图像坐标轴平行的矩形框,用左上右下两点表示;OBB(Oriented Bounding Box)是可旋转的最小外接矩形,额外带一个角度。航拍中目标朝向任意,OBB 能更紧致地包住细长目标(如飞机、舰船),减少背景干扰,但训练与评估更复杂。
G-MAD 同时输出 HBB 和 OBB 两种标注,AMOD 基准也以 OBB 为主,理解两者区别才能看懂后续的 Oriented R-CNN 评估。
合成数据与仿真到真实迁移(Sim-to-Real / Domain Gap)
用仿真器或游戏生成带完美标注的数据来训练模型,再把模型迁移到真实世界。问题在于合成图像与真实图像存在域差距(domain gap):颜色、纹理、光照、背景复杂度都不同,导致直接迁移性能下降。常见缓解手段是图像到图像翻译(如 UNIT、CycleGAN、扩散模型)和域随机化增强。
本文用 UNIT 做风格迁移并提出随机边界平滑(SBS)来缩小域差距,这是 AMOD 能在真实数据集 DIOR-R/HIT-UAV 上取得增益的关键。
多视角航拍与 off-nadir 观测
nadir(天底)指相机垂直向下;off-nadir(偏天底)指相机倾斜观测,用观测角 $\theta$ 衡量倾斜程度。同一目标在不同 $\theta$ 下外观、透视畸变、遮挡差别很大,是航拍检测泛化的主要难点。多视角学习指用同一场景的多个同步角度做监督,学习视角不变特征。
AMOD 的核心卖点是 0°–50° 六个同步视角,论文主实验就是验证多视角训练如何提升跨角度鲁棒性。
三维包围盒到二维的投影几何
把一个 3D 物体的包围盒画到图像上,需要先把模型坐标系的角点变换到世界坐标系(刚体变换),再用相机内外参投影到屏幕像素坐标。对投影后的点取 $x/y$ 极值得 HBB;先求凸包(Graham Scan)再求最小外接矩形(Rotating Calipers)得 OBB。
这正是 G-MAD 自动标注的技术内核——直接从引擎几何真值投影出标注,取代了过去靠图像差分间接推断的做法。
研究动机
航拍目标检测在遥感、监视、灾害响应和自动驾驶等领域应用广泛。相比于地面视角,航拍图像涉及巨大的视角变化、显著的尺度变化和复杂背景,导致鲁棒目标检测极具挑战。在 RGB-热红外(RGB-T)设定下这些困难进一步放大,因为模型既要利用可见光与热红外的互补线索,又必须保持跨模态的精确对应。然而,构建真实世界的航拍 RGB-T 数据集极其昂贵且困难——它要求同步的多传感器采集、在受控条件下的反复飞行,以及耗资巨大的人工标注。结果是现有数据集(如 DroneVehicle 的 56,878 帧、FLIR_ADAS_v2 的 26,442 帧、SMOD 的 17,352 帧,详见表 2)普遍只能提供有限的视角控制、环境因素和模态对齐,且几乎都是单视角、单次观测,缺乏对同一场景的多角度同步覆盖。即便 GTA V 等游戏已被用于可见光域数据生成,它原生并不提供热红外观测;而 Arma3 虽天然支持 RGB-T 配对,却从未被作为结构化的多视角数据生成平台加以系统利用。
本文的目标是本文的目标是把 Arma3 战术模拟游戏改造成一套结构化、端到端、开源的航拍 RGB-T 数据生成流水线,让研究者能够用一组紧凑的高层约束(资产类别、目标数量范围、天气、时间、地图、相机配置、场景数等)自动批量产出带精确标注的多视角、多模态数据。具体量化目标包括:支持多目标同时放置、可配置相机视角采样、同时输出水平框(HBB)和旋转框(OBB)、像素级对齐的 RGB-T 配对图像,并能脱离 GUI 自动化运行。在此基础上,作者进一步构造并发布 AMOD——一个 73,920 张图像、383.2k 实例、12 类、1920×1440 分辨率、覆盖 0°–50° 六个同步观测角度的多视角 RGB-T 航拍军事目标检测基准,用以支持视角鲁棒性、跨模态融合以及合成到真实迁移三类研究。
与已有工作不同的是,本文的独特切入点在于"游戏引擎原生几何信息直接驱动标注"这一被忽视的角度。已有的 Arma3 数据生成框架(参考文献 [2]、[3])只能处理单目标、依赖点击式 GUI 自动化,并用"渲染带对象与不带对象两幅图再相减"的图像差分间接推断目标位置——这种方式在多目标场景下笨拙且易错,也难以扩展到跟踪等视频级任务。G-MAD 看到的是:Arma3 引擎内部本来就持有每个对象的精确 3D 几何与相机投影,完全可以绕开图像差分,直接把引擎级几何元数据投影到图像平面,得到无噪声的 HBB/OBB 标注。这种"用引擎真值取代视觉推断"的思路,加上把数据生成形式化为两阶段采样 $s\sim P(\mathcal{S}\mid\text{constraints})$、$v\sim P(\mathcal{V}\mid s)$,使其既能解耦场景级与视角级变量,又能保证同一场景跨视角/跨模态的标注一致性。
核心方法
可以把 G-MAD 想象成一个"虚拟航拍摄影师工作台":用户只需填好一张参数清单(要拍哪类装备、大概放几个、什么天气、几点、哪张地图、相机怎么摆、要 RGB 还是热红外、生成多少个场景),框架就会自动在 Arma3 的虚拟世界里摆好对象、调好相机、按下快门,并把每个对象的精确位置直接从引擎里"抄"出来当标注,最后导出标准检测数据集。技术路线分三阶段:阶段一场景规格化(scenario specification),把用户的高层约束编译成可采样的场景空间 $\mathcal{S}$;阶段二场景采样与同步多视角多模态采集,按两阶段概率采样 $s\sim P(\mathcal{S}\mid\text{constraints})$、$v\sim P(\mathcal{V}\mid s)$ 生成 $|S|\times|V|$ 个场景,每个场景同时产出 RGB 与热红外以及多个同步视角;阶段三自动标注与导出,查询引擎级 3D 包围盒并投影成 HBB/OBB。整套流水线用 Arma3 原生脚本语言 SQF 实现,可直接过程化控制场景构成、环境、传感器与数据导出。
核心创新点是用"引擎原生几何投影"彻底取代"前后图像差分"做标注。对每个对象,框架先调用 Arma3 的 boundingBoxReal 取得模型坐标系下的三维包围盒上角 $(x_m,y_m,z_m)$,枚举八种符号组合得到八个角点 $\{p_i^m\}_{i=1}^{8}$;再用 modelToWorldVisual 变换到世界坐标系 $\{p_i^w\}$,用 worldToScreen 投影到屏幕坐标系并做 safe-zone 补偿:$p_i[x]=\frac{q_i[x]-\text{SafeZoneX}}{\text{SafeZoneW}}\times W_{\text{img}}$。HBB 取投影点的 $x/y$ 极值;OBB 先用 Graham Scan 求凸包、再用 Rotating Calipers 求最小外接矩形。因为标注完全来自引擎真值变换与相机投影,所以天然几何一致、无差分噪声,还能通过视线相交检测自动过滤被完全遮挡的"鬼框"。这种"用引擎真值取代视觉推断"加两阶段解耦采样、多目标与 GUI 无关执行,构成了相对参考文献 [2]、[3] 的代际差异。
方法步骤详情
完整流程按三步推进。第一步场景规格化:用户指定 ①资产类别、②目标数量范围、③天气、④时间、⑤地图、⑥相机参数(海拔、FOV、RGB/热红外模态、图像宽高、视角采样策略)、⑦场景总数;框架据此定义有效场景空间 $\mathcal{S}$ 与视角空间 $\mathcal{V}$。第二步采样与采集:对每个场景,框架随机选定类别集合与对象数(类别数 $k\in[1,8]$、每区域对象数 $e\in[8,14]$),从 513 个 Arma3 资产里挑对象,强制陆上资产只在陆地、海上资产只在海上且互不重叠,并为每个对象赋随机朝向;接着按可配置的视角采样模型(默认"air-to-air"水平扫视与"air-to-land"抛物线下视)绕目标区域采样多组相机位姿,同时产出 RGB 与热红外图像(默认 1920×1440,可超采样),并用视线相交检测剔除完全遮挡对象。第三步自动标注与导出:按补充材料 §A 流程提取每个对象的 HBB/OBB,给同一兴趣区域内跨视角的同一对象分配一致 object ID,最后清理临时缓存、导出数据集。
技术新颖性
新颖性体现在三点工程与算法差异。其一,标注方式从"事后图像差分"升级为"事中引擎几何投影":前者需要渲染带/不带对象两幅图再相减,多目标时笨拙易错且无法支持跟踪;后者直接读取 3D 包围盒并投影,天然支持多目标、HBB/OBB 与未来视频扩展。其二,执行控制从"GUI 点击自动化"升级为"GUI 无关的过程化脚本(SQF)"启动,避免 UI 状态变化导致的脆弱性,可批量无人值守运行。其三,能力扩展:相对 [2]、[3] 仅支持单目标、单地图、固定分辨率,G-MAD 支持约束感知的多目标放置、多地图背景、可配置分辨率(含超采样)与自动缓存清理,并首次把 Arma3 的 RGB-T 配对能力系统化。此外,针对热红外域适应,作者还提出随机边界平滑(Stochastic Boundary Smoothing, SBS)这一轻量增强,用公式 $f(X)=X\odot(1-C)+G_\sigma(X)\odot C$(其中 $C=\bigvee_i \Gamma(M_i;\tau_i)$ 为轮廓带掩码)模拟真实热传感器的边缘衰减。
实验结果
用 Oriented R-CNN + Swin-S(MMRotate)做三类实验。第一,多视角学习(表 3):单角度模型在未见角度上明显退化(0° 模型在 50° 测试时 AP50:95 从 51.16 跌到 26.60);用全部六个角度(0°–50°)训练的模型 mean AP50:95 达 50.96,优于最佳单视角(20° 的 44.57)共 +6.39。补充实验(图 S-4)显示角度多样性在等数据量下仍提升 mAP。第二,合成到真实迁移(表 4):可见光 DIOR-R 上 AMOD 预训练把 mean AP50 从 ImageNet 的 63.14 提到 69.83(+6.69,Vehicle 涨幅最大 42.59→53.21);热红外 HIT-UAV 从 74.57 提到 77.08(+2.51,Others 类 57.12→61.40)。第三,未见真实推断(图 5):仅 RGB 训练的检测器在俄乌战争公开卫星照片上仍能识别合理军事目标。类间差异显著(表 S-1):LCU、Plane 达 78.30/79.30 AP75,RADAR、SAM 仅 25.70/30.60,因高类内方差所致。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| AMOD 跨角度多视角航拍检测 | mean AP50:95 | 50.96(全角度训练) | 44.57(最佳单视角 20°) | +6.39 |
| DIOR-R 可见光航拍检测(AMOD 预训练→微调) | mean AP50 | 69.83 | 63.14(ImageNet 预训练) | +6.69 |
| HIT-UAV 热红外航拍检测(AMOD+SBS 预训练→微调) | mean AP50 | 77.08 | 74.57(ImageNet 预训练) | +2.51 |
| HIT-UAV 热红外(无 SBS 消融) | mean AP50 | 75.70 | 74.57(ImageNet) | +1.13,SBS 单独贡献约 +1.38 |
局限与改进
作者坦承 AMOD 主要面向军事目标(源于 Arma3 内置资产与地形的军事属性),尽管用户可导入民用资产扩展,但默认形态偏向军用;热红外使用 Arma3 TI 引擎生成白热图像,若需要 MWIR 等特定波段须借助图像到图像翻译。作者还指出类别不均衡难以完全消除(各类可用 3D 资产数量差异大,需后处理归一化,见图 3(c))。我额外观察到几点:其一,夜间 RGB 在 Arma3 里渲染为全黑而不可用,导致数据集实际上没有真正的夜间 RGB-T 对,削弱了"全天候"价值;其二,相机海拔被限制在 120 m 以内($z>120$ m 时阴影消失会丢失细节),约束了可探索的高度范围;其三,所有定量"真实世界"结果都依赖一次 UNIT 风格迁移 + 25 epoch 微调,未与更强的现代扩散翻译方法对比,迁移增益的稳健性有待验证;其四,未见真实推断(图 5)仅为定性结果,缺少定量精度/召回指标。
独立分析的弱点
弱点一:生态单一性强绑定。整套方法强依赖 Arma3(SQF 脚本、boundingBoxReal、worldToScreen 等专有 API),迁移到 Unity/Unreal 或 VBS4 需重写几何与标注层。改进方向是抽象出"引擎无关的几何查询接口",把投影、凸包、Rotating Calipers 这类通用部分做成独立库,仅把引擎专有函数适配成插件。弱点二:热红外保真度不足。Arma3 TI 是白热渲染,真实 MWIR/LWIR 的辐射物理未被建模,靠事后翻译弥补。改进方向是引入基于热辐射物理的可微仿真或更现代的条件扩散翻译(如 Schrödinger Bridge),并把 SBS 扩展为波段感知的边界衰减模型。弱点三:评估系统性不足。真实世界迁移仅验证 DIOR-R 与 HIT-UAV 两个下游集,未见真实推断只有定性图。改进方向是建立标准化的合成预训练基准协议,在更多下游(DroneVehicle、ESCVehicle)上报告零样本/少样本指标。弱点四:夜间与天气覆盖有限,夜间 RGB 不可用削弱全天候能力。
未来方向
作者明确提到把随机边界平滑(SBS)扩展为通用增强模块是未来工作(图 S-8 已验证其在 DIOR-R 上的可迁移性),并把 SBS 的更系统研究留待后续。基于本文成果可延伸的方向有:第一,把两阶段采样框架从图像级扩展到视频级,利用引擎级 object ID 与同步多视角天然支持多目标跟踪与 3D 检测的监督,这正是图像差分法无法做到而引擎真值法天然擅长的;第二,真正落地 RGB-T 多模态融合训练(本文实验主要验证了多视角与单模态迁移,RGB-T 融合仅作为"应用设定"提及),用配对数据训练跨模态注意力融合检测器;第三,把视角采样模型从两种默认轨迹扩展为学习式采样——让框架根据当前检测器的弱点自适应选择下一组视角;第四,引入更细粒度的军事/民用资产并研究细粒度旋转目标检测,缓解 RADAR/SAM 等高类内方差类别的低性能问题。
复现评估
复现门槛中等偏高但有官方支持。代码与 AMOD 数据集已在 https://unique-chan.github.io/G-MAD-Project 开源,仅以非商业学术用途发布(CC BY-NC-ND 4.0)。关键约束是用户必须自备合法的 Arma3 游戏安装——框架不重分发 Bohemia 的可执行文件、资产包或游戏副本,使用须遵守 Arma3 EULA;这是商业游戏相比 Unity/Unreal 的天然门槛。数据生成本身只需 Python + SQF(无 MATLAB 依赖),可 GUI 无关地批量运行,但渲染 73,920 张 1920×1440 的 RGB-T 图像仍需可观的单机渲染时间。检测训练用 Oriented R-CNN + Swin-S(MMRotate),预训练 5 epoch、微调 25 epoch,需 GPU(致谢提及 A100);域适应还需训练 UNIT 翻译模型并用 SAM 提掩码做 SBS(参数 $p=0.5$、$\sigma=11$、$\tau_{\min}=2$、$\tau_{\max}=5$)。有 Arma3 许可和 GPU 的团队能较完整复现。
论文图表
展示带旋转框标注的 RGB-T 配对样例,覆盖 Armored、Plane、Tank 等类别,以及同一区域(如 0456/10°)在不同观测角下的成对 RGB 与热红外图像。
直观展示标注质量、模态对齐与跨视角一致性,是判断数据集能否直接拿来训练的第一手证据。
在 HIT-UAV 上对比 ImageNet(74.57)、AMOD 不加 SBS(75.70,+1.13)、AMOD 加 SBS(77.08,+2.51),证明 SBS 这一热红外专用增强单独贡献约 +1.38。
它支撑了方法部分提出的随机边界平滑(SBS)这一新颖增强,是方法新颖性而非仅数据集贡献的定量证据。