在无人机避障的讨论中,"算法指标"常常占据绝大部分注意力,但真正决定一架飞机能否在撞上之前停下来的,是整条硬件链路的时序与几何。相机把三维世界投影到像面,稳定机构保证这份投影在振动中依然可用,机载算力把像素差还原成距离与障碍轮廓,飞控再结合当前速度判断"绕过去"还是"停下来"。这条链路上任何一环的帧率、时延、视场角、基线、振动与功耗发生变化,都会改变"是否来得及"这个结论。本文按感知、稳定、算力、决策、适配五层拆解这条链路,只讨论量纲关系与定性趋势,不涉及具体型号与实测数据。

一、把避障当成链路:五层结构
把避障拆成链路,每一层都有明确的输入输出,可以单独核算、定位瓶颈。只盯算法,容易出现"模型很好、飞机照撞"的情况:问题往往出在成像端没有足够有效像素,或者时延累加后决策已经晚于几何约束。
| 层级 | 核心器件 | 决定量 | 失效时的典型表现 |
|---|---|---|---|
| 感知层 | 双目/多目相机、红外、激光测距 | 视场角、基线、点云密度 | 障碍不在视场内、远处目标不成像 |
| 稳定层 | 云台、减振支架、结构件 | 成像清晰度、视差可用性 | 画面拖影、标定外参漂移 |
| 算力层 | 机载边缘计算模块 | 帧率、处理时延、功耗 | 帧率不足、延迟不可预测 |
| 决策层 | 飞控与制动逻辑 | 制动距离、动作触发时机 | 命令下达但制动力不足 |
| 适配层 | 安装结构、图传、防护 | 长期一致性、环境耐受 | 温漂、进尘、带宽挤占 |
由此得到一个工程结论:避障能力是五层的最小值,而不是平均值。任何一层成为短板,其余四层的余量都无法补偿,因此设计顺序是先定几何需求,再定稳定与算力,最后用适配层兜住长期一致性。
二、感知层:双目、多目、红外与激光测距的分工
2.1 双目与多目可见光
可见光双目的核心是三角测量:同一点在左右像面上的视差,与基线、焦距共同决定距离。
距离 Z ≈ 焦距 f · 基线 B / 视差 d
由此可得三条趋势:基线越长,同样视差误差对应的距离误差越小,但近端盲区与整机体积同时变大;焦距越长,远处目标成像尺寸与角分辨率越高,但视场角变窄;视差精度越高,距离精度越好,且误差随距离平方放大。
多目方案的动机不只是"看得更远",更是覆盖:把多个有限视场拼成接近半球的前向覆盖,减少障碍落在拼缝里的情况,代价是标定工作量与算力需求上升。
2.2 红外与激光测距
可见光依赖纹理与光照,暗光、逆光、低纹理表面都会削弱匹配质量,红外与激光测距提供互补信息:红外 低照度下响应更稳定,适合补夜间短板,但空间分辨率低,多用于存在性判断;激光测距给出单点精确距离,量程与精度表现好,但覆盖仅一个小锥角,需靠扫描或阵列扩展。
| 感知手段 | 强项 | 弱项 | 主要约束 |
|---|---|---|---|
| 双目可见光 | 稠密视差、轮廓信息 | 依赖光照与纹理 | 基线、标定、算力 |
| 多目可见光 | 大视场覆盖 | 体积、标定复杂度 | 相机数量与同步 |
| 红外 | 低照度可用 | 空间分辨率低 | 视场与响应一致性 |
| 激光测距 | 单点距离准 | 覆盖范围小 | 扫描机构、帧率 |
2.3 视场角与基线的耦合
视场角与基线不能独立选取。基线增大改善远距精度,却使共同可见区域在近处收缩;视场角增大改善近距覆盖,却降低角分辨率并加重畸变与标定残差。合理做法是先由任务确定"必须覆盖的角度范围"和"必须发现障碍的距离",再在两者之间寻找基线取值。
三、稳定层:振动如何吃掉视差
3.1 振动的两条传导路径
无人机上的振动有两条路径:电机与螺旋桨通过机身结构传到相机安装点,属于结构传导,让画面产生高频模糊;气流扰动造成的整机姿态高频抖动,属于运动传导,让两台相机的外参在短时间内发生相对变化。
对双目系统来说,第二条路径危害更大:极线校正依赖固定的外参,若两次曝光之间基线方向发生明显变化,校正后的同名点不再落在同一行,搜索窗口偏移,视差开始出错,于是出现"静态标定全达标、装机后深度图明显变差"的现象。
3.2 云台与减振支架的取舍
- 减振支架:用柔性材料隔离高频结构振动,结构简单、重量低、无功耗,但只能衰减特定频段,柔性件本身会引入低频摆动,需与结构固有频率错开设计;
- 云台:主动补偿姿态变化,能稳定视场并减小运动模糊,但增加重量、功耗与一套控制回路。
实际方案常是"减振支架打底 + 云台做姿态补偿"的组合。稳定层解决的不仅是画面观感,而是让视差在两帧之间保持可用。
3.3 同步:最容易漏掉的一环
双目与多目系统必须做到曝光同步。若各相机曝光时刻不同而飞机在运动,同一时刻的场景在不同相机上被不同位置采样,视差中混入运动分量,被错误解释为距离。硬件触发优于软件时间戳对齐,后者受传输抖动与调度影响,因此需确认统一触发源、走线延迟一致性与统一时钟域。
四、算力层:把算力功耗放进载重预算
4.1 边缘模块要输出什么
机载算力的职责不是"跑一个神经网络",而是把感知数据转换成飞控可用的结构化信息:障碍的相对方位、最近距离、置信度与时间戳。输出越简洁,后段越容易满足时延要求,但过度简化会丢掉绕行所需的轮廓信息。
4.2 时延预算的拆解
链路时延必须逐段核算,而不是只测算法耗时:
总时延 ≈ 曝光 + 读出 + 同步等待 + 深度计算 + 障碍提取 + 传输 + 飞控周期
# 概念示意:可行性由"速度 × 时延"折算的距离余量决定(非真实参数)
reach = v * t_total
if reach < d_obstacle - d_brake_margin:
动作 = "绕行"
elif reach < d_obstacle:
动作 = "悬停/减速"
else:
动作 = "紧急制动"
这段伪代码说明:帧率与时延不是独立指标,它们通过"速度 × 时间"折算成距离余量。提高帧率未必有用,如果瓶颈在传输或飞控周期;降低单帧耗时也未必有用,如果曝光时间已被暗光锁死。
4.3 功耗与散热
机载算力受载重与功耗双重约束:算力模块的功耗直接换算成航时损失;无人机多采用无风扇或小风扇设计,散热余量小,高温下模块降频,处理时延随之上升。因此算力选型要看"最坏热工况下的持续性能",而不是常温峰值。
| 时延环节 | 主要影响因素 | 缩短方向 |
|---|---|---|
| 曝光 | 环境照度、光圈、运动模糊上限 | 更大光圈、更短曝光 |
| 读出与同步 | 传感器接口、触发一致性 | 硬件触发、统一时基 |
| 深度计算 | 分辨率、视差搜索范围、算力 | 降采样、缩小搜索范围 |
| 障碍提取 | 算法复杂度、输出粒度 | 简化输出、区域裁剪 |
| 传输 | 接口带宽、协议开销 | 直连、压缩结构化输出 |
五、决策层:飞控如何把距离换算成动作
5.1 制动距离的概念关系
飞控收到障碍信息后,要判断的不是"现在有多远",而是"停下来需要多远":
制动距离 ≈ 反应距离 + 减速距离 + 安全余量
反应距离 ≈ 当前速度 × 链路与执行时延
减速距离 ≈ 速度² / (2 × 可用减速度)
由此得到两个结论:速度对减速距离是平方关系,高速飞行时避障难度上升更快;链路时延线性加到反应距离上,越早优化越划算。
5.2 绕行与悬停的边界
绕行与悬停不是二选一,而是按余量分档:余量充足时绕行,保留前进效率;余量有限时先减速再看能否绕;进入制动边界后只能悬停或紧急制动。分档的意义在于避免"感知到了但动作来不及"------感知层最后一帧有效数据必须早于制动边界才有价值。
六、适配层:安装、图传与防护
相机安装位置决定实际视场:安装点靠前、靠下、带下倾角,都会改变近距盲区与远距覆盖。安装后必须重新标定外参,因为图纸位置与实物装配之间总有偏差;同一套相机装在不同机型上表现可能完全不同。
温度变化与风沙雨水会引起外参缓慢漂移与光学窗口污染,防护设计需同时考虑密封、窗口清洁与温度补偿,并在长航时任务中安排周期性校验。图传带宽是共享资源,避障应在机上闭环完成,下传只传结构化结果而非原始帧。
七、工程检查清单
- 视场是否覆盖任务要求的所有方向?拼缝处是否存在盲区?
- 基线是否与最远发现距离、近端盲区要求共同确定?
- 链路时延是否逐段核算?最大占比出现在哪一段?
- 算力模块是否按最坏热工况评估持续性能?
- 装机后是否重新标定外参?是否有温漂复核机制?
八、常见误区
- 把避障当成纯算法问题,忽略成像端有效像素与时延;
- 只看帧率不看时延构成,优化了占比最小的一段;
- 装机后沿用出厂标定外参,忽略装配偏差与温漂。
九、小结
机载视觉避障是一条从成像到制动的硬件链路:感知层决定"看得见什么",稳定层决定"视差能不能用",算力层决定"多快得出结论",决策层决定"来不来得及停",适配层决定"能不能长期稳定地重复"。把各层的量纲关系与时延占比放在同一张表上核算,避障能力才是可设计、可验证的工程指标。
** One More Thing... **
朗锐创新专注于工业智能视觉、深度相机、空间智能、具身智能技术应用。提供专业硬件定制化服务,帮助客户项目快速实现快速盈利。
【备选标题】
- 无人机避障为什么要按硬件链路设计:五层结构与时延预算
- 机载视觉避障:感知、稳定、算力、决策与适配怎么配合
- 从看见到刹住:无人机视觉避障链路的工程拆解