
导读:
---------------------------------------------------------------------------------------------------------------------------------
无人机自主导航面临一个两难困境:板载浅层DNN感知能力有限,遇到复杂环境容易碰撞;将计算卸载到边缘服务器又受网络波动影响,延迟不可控;而VLM虽然具备语义理解能力,但推理延迟通常超过200ms,无法满足实时飞行要求。能否让三者各取所长、协同工作?
中山大学陈旭教授团队提出CoDrone,将端侧灰度图轻量导航、边缘深度估计辅助和云端VLM语义干预整合为统一的三层协同框架。系统通过一个仅需1.0×10^4 FLOPs的DRL神经调度器实时协调三层资源,并让云端Qwen-VL-Max通过函数调用(function calling)直接输出飞行控制指令,绕过自然语言解析的开销。实验结果显示,CoDrone的平均飞行距离提升40%,导航质量(QoN)提升5%,相比此前方法AdaDrone最多延长飞行距离86米。
论文信息
**标题:**CoDrone: Autonomous Drone Navigation Assisted by Edge and Cloud Foundation Models
**作者:**Pengyu Chen, Tao Ouyang, Ke Luo, Weijie Hong, Xu Chen
**机构:**中山大学计算机科学与工程学院
**发表:**IEEE Internet of Things Journal(已录用),特刊 "Augmented Edge Sensing Intelligence for Low-Altitude IoT Systems"
一、无人机自主导航面临的三重瓶颈
---------------------------------------------------------------------------------------------------------------------------------
无人机自主导航依赖板载DNN处理前置摄像头图像,输出转向角和碰撞概率来控制飞行。但现有方案存在三个核心矛盾:
- **板载DNN感知不足:**受功率和算力限制,无人机只能部署浅层CNN。当视野被严重遮挡(如墙壁、密集灌木),浅层模型的推理可靠性急剧下降,无法及时做出正确避障决策。
- 边缘卸载受网络波动制约:将计算任务卸载到边缘服务器可以使用更大的模型,但实际飞行中网络带宽频繁波动。带宽骤降时,边缘推理的延迟反而会拖累导航甚至导致碰撞。此前的AdaDrone框架通过DRL调度器在板载和边缘之间切换,但仅依赖RGB图像推理,缺乏深度感知。
- **VLM推理延迟与实时要求冲突:**VLM具备语义级环境理解能力,但即使7B参数的模型也需要约20GB GPU内存,推理延迟通常超过200ms,直接部署到边缘不现实,部署到云端又引入额外通信开销。
CoDrone的设计思路是:不试图用单一层级解决所有问题,而是让端、边、云三层各自承担最合适的任务,并通过智能调度实现实时协同。

二、三层协同架构:端侧轻量导航、边缘深度辅助、云端语义干预
---------------------------------------------------------------------------------------------------------------------------------
CoDrone的架构分为三层,每层解决一个特定问题。
端侧:灰度图轻量导航
论文对板载导航DNN做了一个关键优化:将RGB输入替换为灰度图。输入通道从3减少到1,通道维度减少66%。在224×224分辨率下,灰度图内存占用仅48KB,而RGB为120KB。最终的导航模型输入为(1, 200, 200, 1)的灰度图像,FLOPs为4.3×10^7,模型输出转向角θ∈[-1,1]和碰撞概率p∈[0,1]。
灰度图不仅降低了推理开销,还减小了向边缘传输时的数据量,进一步压缩通信延迟。
边缘:Depth Anything V2 + DEGAGE一维占用栅格
当环境复杂度升高时,边缘服务器启动Depth Anything V2深度估计模型,将单目RGB图像转换为像素级深度图,替代昂贵的RGB-D相机或LiDAR传感器。
论文提出了DEGAGE算法(Depth Estimation Map Generation Algorithm),将二维深度图压缩为一维占用栅格。算法对深度图进行垂直离散化,提取与无人机水平飞行轨迹对齐的信息,将每个方向区域分类为三类:
| 区域类型 | 含义 | 后续处理 |
|---|---|---|
| 可行驶区域(Drivable) | 无碰撞的空旷路面 | 正常飞行 |
| 低碰撞风险区域 | 远距离障碍物 | 速度衰减,v'←α·v' |
| 高碰撞风险区域 | 即刻碰撞危险 | 速度置零,v'←0 |
在此基础上,**控制调整算法(CAA)**通过低通滤波平滑飞行指令。速度更新公式为:v't = α·v'{t-1} + (1-α)·(1-p)·V_max,其中平滑系数α=0.5,在响应性和稳定性之间取得平衡。
论文还从理论上证明了E[P_D] < E[P_R],即深度辅助的碰撞概率严格低于仅RGB推理的碰撞概率。
云端:Qwen-VL-Max通过函数调用直接控制飞行
对于极端场景(如误入灌木丛、遇到从未见过的环境),CoDrone调用云端Qwen-VL-Max进行语义推理。这里的关键设计是**函数调用(function calling)**机制:系统预定义了一组底层飞行原语------如move_forward、turn_left、turn_right、move_right、get_current_position等,VLM直接输出结构化的函数调用命令,而非自然语言描述。这样避免了对自然语言输出的后处理解析,减少了执行延迟。
VLM触发条件有两个:(1)碰撞概率突然增加,同时转向角出现显著偏差,表示遇到意外障碍物;(2)DRL调度器连续两次选择深度估计模型,且占用栅格持续显示高碰撞风险,表明当前环境过于复杂,仅几何信息不足以应对。
Prompt设计包含5个组件:Tool Description (定义可调用的控制函数)、Task Description (规定VLM角色为无人机飞行员)、Example (需干预的具体场景示例)、End (不匹配示例时不使用工具)、History(最近的视觉数据和调用记录,防止重复或矛盾命令)。
论文给出了一个典型案例:无人机误入路边灌木丛后,VLM依次调用turn_right(120)(顺时针旋转120度)→move_right(2)(向右移动2米)→turn_left(10)(逆时针修正10度居中对齐),确认无人机恢复正确位置后停止发出调用。

三、DRL神经调度器:用1万FLOPs协调三层资源
---------------------------------------------------------------------------------------------------------------------------------
三层架构的核心调度由一个基于**A2C算法(Asynchronous Advantage Actor-Critic)**的DRL神经调度器完成。
调度器将问题建模为马尔可夫决策过程(MDP):
状态空间为四维向量⟨θ_t, p_t, ap_t, w_t⟩,分别表示当前转向角、碰撞概率、过去5步平均碰撞概率和当前带宽。
动作空间为三维向量⟨l, o, c⟩:
-
l∈{0,1}:执行位置(0=板载,1=边缘)
-
o∈{0,1}:是否激活深度估计(0=使用,1=跳过)
-
c∈{95%, 80%, 60%}:图像压缩率
奖励函数通过QoN(导航质量)指标驱动。QoN定义为时间窗口τ内满足深度安全阈值的决策比例。
调度器的计算开销极低:输入张量仅为(1, 4),FLOPs为1.0×10^4,相比导航模型的4.3×10^7低了三个数量级。
| 模型 | 输入张量 | FLOPs |
|---|---|---|
| 导航模型 | (1, 200, 200, 1) | 4.3×10^7 |
| 调度器 | (1, 4) | 1.0×10^4 |
论文展示了一个300秒的飞行案例来说明调度器的自适应行为:0-30秒碰撞率高时启用深度估计;80-120秒带宽下降时切换到本地推理或提高压缩率;180-250秒带宽恢复且环境简单时切回边缘推理;250-300秒带宽再次下降时回到板载处理。整个过程无需人工干预。

四、消融实验:深度估计和VLM分别贡献了多少?
---------------------------------------------------------------------------------------------------------------------------------
实验在AirSim仿真平台的Coastline环境中进行,板载使用Jetson Nano,边缘使用RTX 4090,测试4种来自HSDPA数据集的带宽场景,每组实验重复5次取平均。
与基线方法的整体对比
论文设置了5个基线进行对比:AdaDrone (DRL调度+RGB推理)、CoDrone w/o VLM (去掉云端VLM)、Local (强制板载执行,1/3概率用深度估计)、Offload (始终卸载到边缘)、Offload w/o Depth Map(边缘执行但不用深度估计)。
核心对比结果:
| 对比维度 | 指标 | 数值 |
|---|---|---|
| CoDrone vs AdaDrone | 平均飞行距离延长 | 最多+86米 |
| CoDrone vs AdaDrone | 最大飞行距离延长 | 最多+173米 |
| 深度估计贡献(Offload vs Offload w/o Depth) | 飞行距离延长 | 最多+80米 |
| CoDrone vs 所有基线 | QoN提升 | 最高+7% |
| 总体提升 | 平均飞行距离 | +40% |
| 总体提升 | 平均QoN | +5% |
VLM模块的单独贡献
通过CoDrone完整版与CoDrone w/o VLM的消融对比:
-
在不同带宽场景、相同最大速度1.5 m/s下:最大平均飞行距离差62米,QoN差最高3%
-
在不同最大速度下:最大平均飞行距离差53米,QoN提升最高3%
VLM的贡献主要体现在极端场景的恢复能力上------当无人机陷入常规方法无法处理的困境时,VLM的语义理解和函数调用机制能有效帮助无人机脱困。
五、总结与思考
---------------------------------------------------------------------------------------------------------------------------------
CoDrone提出了一个云-边-端三层协同的无人机自主导航框架。端侧通过灰度图轻量导航降低66%的输入通道开销;边缘通过Depth Anything V2深度估计和DEGAGE一维占用栅格算法提供几何感知辅助;云端通过Qwen-VL-Max的函数调用机制处理极端场景。DRL神经调度器以仅1.0×10^4 FLOPs的开销实时协调三层资源分配。实验结果显示飞行距离提升40%,QoN提升5%。
在此基础上,有几点值得进一步思考:
VLM通过函数调用而非自然语言控制飞行,保证了输出格式的确定性并减少后处理开销。这种"让VLM输出结构化动作"的模式,对其他需要VLM参与实时控制的Agent系统有参考价值。
端→边→云的分层调度思路具有迁移性,DRL调度器动态平衡计算成本和感知质量的方式,可以推广到其他资源受限的移动机器人场景(如无人车、巡检机器人等)。