苏黎世大学T-RO发表HDVIO2.0,在强风和模型失配下稳住VIO
风一吹,VIO就“虚”?视觉–惯性里程(VIO)已经是微型无人机机载状态估计的标配,但在高速机动、气动效应明显、且长时间处于强风等持续外扰环境中时,仅依赖相机和IMU的传统方案往往会产生明显误差累积,定位精度快速下滑。
对此,苏黎世大学RPG团队提出了HDVIO2.0(Hybrid Dynamics VIO),并发表于”IEEE Transactions on Robotics(T-RO)”。提出了一套在强风和模型误差条件下依然稳定工作的VIO系统,并在多组公开无人机动力学数据集以及风速约25km/h的真实飞行实验中进行测试,相比现有方法显著提升了轨迹精度和风扰估计表现。
文末还附有论文与代码链接,方便您一键直达。
视频来源:https://www.youtube.com/watch?v=wUaEp0YGpDM
技术难点
近年来VIMO、VID、HDVIO都会在VIO里加入无人机的动力学约束,希望借助推力、扭矩等控制输入,区分“自身控制导致的运动”和“外界扰动导致的运动”,并估计风力等外力。
但在高速飞行、强风和模型不准确的场景下,传统方案存在几个关键短板:
动力学模型过于简化:通常只用刚体+线性阻力,复杂气动力、推力标定误差都被“打包”进外力或IMU偏置,持续侧风会被错误吸收,导致估计发散。
只约束平动,不约束转动:现有方法大多只在“位移和速度”上利用动力学,姿态仍依赖陀螺积分,长时间飞行或剧烈机动时容易姿态漂移。
高保真模型难以直接嵌入VIO:如 NeuroBEM这类模型需要真实的速度和姿态作为输入,若直接与VIO互相依赖,误差会不断放大。
研究思路
针对上述挑战,HDVIO2.0在传统视觉–惯性后端的基础上,引入一个混合动力学模型,让“物理模型与神经网络学习残差”共同约束状态估计和外力估计。

统一因子图框架
研究团队把整个问题放到一个滑动窗口优化框架里,用因子图把视觉、惯性和动力学残差统一起来求解。
系统采用滑动窗口优化VIO:窗口里同时维护关键帧位姿、无人机状态(位置、姿态、速度、IMU 偏置、外力)和路标点。
代价函数由四类残差组成:视觉重投影、IMU预积分、动力学残差以及边缘化残差,统一通过因子图形式一起优化。

连续时间转动建模
- 连续时间表示:
用B-spline表达机体系角速度轨迹,控制点均匀分布在时间轴上,采样和求导都可以用矩阵形式高效完成。
利用转矩测量拟合B-spline:通过扭矩测量模型,把 B-spline控制点作为优化变量,拟合满足刚体转动方程的角速度与角加速度,从而在后端对姿态引入额外物理约束。
在线优化:每来一帧新图像,就在固定长度(约 0.1 s)的 B-spline 上增删控制点并局部LM优化,使连续时间姿态模型随时间滚动更新。

无论阶数和控制点间距如何,表示角速度的VelBSpl都比表示姿态的RotBSpl收敛更快。
基于双TCN的残差动力学建模
动力学部分由“基础物理模型+学习残差”组成:物理模型负责推力、重力、惯性等显式项,残差力/残差力矩用于吸收气动拖曳、推力系数误差等复杂效应。
为此,HDVIO2.0使用两个TCN:一个根据推力指令 + 陀螺测量预测残差推力,另一个根据扭矩指令+陀螺测量预测残差力矩;输入只用“控制命令+IMU”,不需要速度、姿态真值。
训练时,网络通过最小化“动力学积分得到的位移 / 速度 / 姿态变化”和MoCap或离线SLAM轨迹之间的误差来学习残差,无需额外的力传感器。

实验测试
NeuroBEM
在NeuroBEM数据集上,只用推力/力矩 + IMU输入不同动力学模型,不跑VIO,只比较它们对力/力矩的估计精度。
对比结果
HDVIO2.0在力估计RMSE上明显优于简单多项式和 BEM 模型,整体接近依赖完整状态输入的 NeuroBEM,说明“刚体+ TCN 残差”这套混合动力学本身就足够精确。

NeuroBEM 测试集上,不同动力学模型在力/力矩 RMSE 上的对比。HDVIO2.0 仅依赖thrust/torque + IMU,就能接近需要完整状态输入的 NeuroBEM。
Blackbird & VID
在无外部扰动情况下,评估HDVIO2.0在高速飞行中的轨迹精度和泛化能力。
Blackbird
Blackbird数使用 0.5–9 m/s 的多条高速轨迹(含图像、IMU、转速),用部分轨迹训练动力学,其余轨迹作为测试,只比较轨迹精度(ATET/ATER)。
VID:
室内:在MoCap环境下做“弹性绳牵引”和“挂载重物”实验,通过力传感器或模型得到外力真值;
室外:在没有MoCap的场地,先用离 SLAM得到位姿,再用来监督训练动力学模块。
结果显示
- 在Blackbird中,HDVIO2.0 在多数轨迹上位置和姿态误差最低,在 Egg 8 m/s 等高速轨迹上,相比纯 VIO 和 HDVIO 误差明显降低;

- 在VID中,HDVIO2.0 在拉绳 / 挂载场景的z轴外力RMSE 最小;在只用SLAM监督的室外慢速轨迹上,也能显著降低姿态误差,说明“无 MoCap”场景下依然可用。

风场与闭环飞行
测试环境
在室内搭建由 3 台风机组成的侧风场,最大风速约25km/h;
无人机搭载T265 和Jetson TX2,只用T265左目图像 + IMU 运行HDVIO2.0,MoCap 作为真值;
设计圆形和“8字”轨迹,并加上“有/无阻力板”两种配置,测试外力估计;
进一步,将HDVIO2.0接入EKF和控制器,做闭环飞行,与 T265自带追踪对比。
结果显示
在风场实验中,HDVIO2.0对侧向风力的RMSE在多种配置下都最小,外力曲线能较好跟随真值峰值;
加速度计偏置估计保持稳定,不像部分基线方法在持续风下出现明显漂移;
在闭环飞行中,HDVIO2.0的轨迹误差小于T265,且 TX2 上可以以30 Hz实时运行。


资源速递
点击左下角阅读原文即可跳转论文链接
论文:
HDVIO2.0: Wind and Disturbance Estimation withHybrid Dynamics VIO
论文链接:
https://doi.org/10.1109/TRO.2025.3603551
代码链接:
https://github.com/uzh-rpg/hdvio2.0

如果您有感兴趣的技术话题,请在留言区告诉我们!关注阿木实验室,更多技术干货不断更新!
开发遇到棘手难题可以上阿木官方论坛:
bbs.amovlab.com
有工程师亲自解答
10000+无人机开发者和你共同进步!
