FusionCore对比测试表现亮眼:多数序列优于robot_localization,弥补ROS传感器融合空白!
导航菜单
登录
外观设置
平台
AI代码创作:GitHub Copilot可借助AI编写更优质代码,GitHub Spark能构建并部署智能应用,GitHub Models可管理并比较提示词,MCP Registry(新)可集成外部工具。
开发者工作流:Actions可自动化任何工作流,Codespaces是即时开发环境,Issues可规划并跟踪工作,Code Review可管理代码变更。
应用程序安全:GitHub Advanced Security可发现并修复漏洞,代码安全可在构建过程中保障代码安全,密钥保护可防患于未然,防止信息泄露。
探索:可了解为何选择GitHub,查看文档、博客、更新日志和市场。还可查看所有功能。
解决方案
按公司规模划分:有企业版、中小企业团队版、初创企业版、非营利组织版。
按用例划分:有应用现代化、DevSecOps、DevOps、CI/CD,还可查看所有用例。
按行业划分:有医疗保健、金融服务、制造业、政府部门,还可查看所有行业。也可查看所有解决方案。
资源
按主题探索:可探索AI、软件开发、DevOps、安全等主题,还能查看所有主题。
按类型探索:有客户案例、活动与网络研讨会、电子书与报告、商业洞察、GitHub Skills。
支持与服务:提供文档、客户支持、社区论坛、信任中心、合作伙伴相关内容。也可查看所有资源。
开源
社区:GitHub Sponsors可资助开源开发者。
项目:有Security Lab、Maintainer Community、Accelerator、GitHub Stars、Archive Program。
仓库:可查看主题、热门趋势、集合。
企业版
企业解决方案:企业平台是由AI驱动的开发者平台。
可用附加组件:GitHub Advanced Security有企业级安全功能,Copilot for Business有企业级AI功能,高级支持提供企业级24/7支持。
还有定价相关内容。
搜索或跳转...
可搜索代码、仓库、用户、问题、拉取请求等,还有搜索语法提示。
提供反馈
会阅读每一条反馈,并重视意见。可包含电子邮件地址以便联系,有取消和提交反馈选项。
保存的搜索
使用保存的搜索可更快筛选结果。若要查看所有可用限定符,可参阅文档。有取消和创建保存的搜索选项,还有登录和注册选项。
外观设置
若在其他标签页或窗口中登录、退出或切换了账户,需重新加载以刷新会话。还有manankharwar/fusioncore相关信息,如公开状态,有通知、Fork、Star等操作选项,以及代码、问题、拉取请求等导航选项。还有分支、标签相关内容。
文件夹和文件
有相关表格展示名称、最后提交消息、最后提交日期等信息,还可查看所有文件。
仓库文件导航
有README、贡献指南、Apache 2.0许可证相关内容,还有图片展示。
FusionCore
它是ROS 2传感器融合SDK,能将IMU、轮式编码器和GPS融合为一个可靠的位置估计,具备自调整噪声协方差功能,采用Apache 2.0许可证。
解决的问题
每个移动机器人都需知道自己的位置,通常通过IMU、轮式编码器和GPS获取,但这些传感器有局限性,如IMU会漂移,轮子可能打滑,GPS信号可能跳动。所以需要一款软件融合三种传感器数据以得到可靠位置估计。目前,ROS标准传感器融合包`robot_localization`缺乏原生ECEF GPS融合、IMU偏差估计和自适应噪声协方差功能,其替代包`fuse`在2026年初时GPS支持不完善,没有ECEF处理或RTK质量筛选功能,且无明确易用替代方案,FusionCore正是为填补此空白而开发的。
基准测试结果
在NCLT数据集(密歇根大学)上,FusionCore与`robot_localization`进行对比测试,使用相同的IMU、轮式里程计和GPS数据,无需手动调整参数,对六个序列采用相同处理流程。结果如下:2012 - 01 - 08序列中,FusionCore ATE RMSE为5.6 m,RL - EKF ATE RMSE为23.4 m,RL - UKF在t = 31 s时出现NaN发散;2012 - 02 - 04序列中,FusionCore ATE RMSE为9.7 m,RL - EKF ATE RMSE为20.6 m,RL - UKF在t = 22 s时出现NaN发散;2012 - 03 - 31序列中,FusionCore ATE RMSE为4.2 m,RL - EKF ATE RMSE为10.8 m,RL - UKF在t = 18 s时出现NaN发散;2012 - 08 - 20序列中,FusionCore ATE RMSE为7.5 m,RL - EKF ATE RMSE为9.4 m,RL - UKF出现NaN发散;2012 - 11 - 04序列中,FusionCore ATE RMSE为28.7 m,RL - EKF ATE RMSE为10.9 m,RL - UKF出现NaN发散;2013 - 02 - 23序列中,FusionCore ATE RMSE为4.1 m,RL - EKF ATE RMSE为5.8 m,RL - UKF出现NaN发散。FusionCore在六个序列中的五个表现更优。在2012 - 11 - 04序列中,因GPS信号长时间严重恶化,FusionCore虽采用马氏距离异常值筛选和惯性滑行模式,但累积漂移无法完全恢复,而RL - EKF无拒绝筛选机制,能立即自我修正,RL - UKF在所有六个序列中均出现NaN发散。完整的方法、配置和复现说明可在`benchmarks/`中查看。
选择FusionCore的原因
从功能对比来看,核心滤波器方面,`robot_localization`是EKF或UKF,Fuse是因子图,FusionCore是UKF(22D四元数状态);3D支持方面,三者都有,不过FusionCore是原生全3D支持;IMU偏差估计方面,`robot_localization`无内置状态,Fuse依赖插件,FusionCore有陀螺仪和加速度计偏差状态;GPS融合方面,`robot_localization`通过navsat_transform节点,Fuse是插件且无ECEF/RTK支持,FusionCore有原生ECEF支持且单节点实现;双天线航向方面,`robot_localization`和Fuse都没有相关内容。那么,在实际应用中,是否应该优先考虑FusionCore呢?
