位置: IT常识 - 正文

GNSS算法相关开源代码(含多传感器融合相关项目)(简述gnss数据处理流程)

编辑:rootadmin
GNSS算法相关开源代码(含多传感器融合相关项目) 开源代码总览

推荐整理分享GNSS算法相关开源代码(含多传感器融合相关项目)(简述gnss数据处理流程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:简述gnss数据处理流程,gnss应用实例,gnss数据解算,gnss计算题,gnss关键技术,gnss数据解算,gnss数据解算,gnss数据解算,内容如对您有帮助,希望把文章链接给更多的朋友!

名称

传感器类型

组合类型

滤波方法

其余相关

RTKLIB

GNSS

-

卡尔曼滤波

GAMP/rtklibexplorer

GPSTK

GNSS

-

卡尔曼滤波

BNC

GNSS

-

卡尔曼滤波

ppp_wizard

ignav

GNSS/INS

紧组合

图优化

rtklib

GVINS

GNSS/INS/视觉

紧组合

图优化

InGVIO

GNSS/INS/视觉

紧组合

Invariant EKF

OB_GINS

GNSS/INS

松组合

图优化

KF_GINS

KF_GINS

GNSS/INS

松组合

卡尔曼滤波

OB_GINS

IC_GINS

GNSS/INS/视觉

松组合

图优化

表中组合类型是以GNSS为准,即使用GNSS原始数据,则为紧组合。

滤波方法中的图优化,其实就是最小二乘,但不仅仅是最小二乘。

直接使用名称在github上搜索,就可以找到相应的项目。

以下是各个项目的详细介绍。

RTKLIB

大部分同学对rtklib均已十分熟悉,从高须知二先生2006年发布第一个版本开始,至今已16年,该开源代码可以说造福了无数的GNSS相关的研究生同学和初创公司。至今为止,rtklib依然是GNSS领域最优秀的开源软件之一。将rtklib.com关于软件的介绍粘贴如下,以示敬意。

RTKLIB is an open source program package for standard and precise positioning with GNSS (global navigation satellite system). RTKLIB consists of a portable program library and several APs (application programs) utilizing the library.

基于rtklib二次开发的,也有许多优秀的开源项目。

比如Zhou Feng在GPS Solution期刊上发表了论文“GAMP: An open-source software of multi-GNSS precise point positioning using undifferenced and uncombined observations”,开源了基于 RTKLIB 二次开发的PPP软件GAMP。

比如大名鼎鼎的rtklibexplorer,其开发者Tim Everett在2022年的谷歌智能手机定位大赛中,基于rtklib优化的后处理模式(PPK)获得了第三名的好成绩。其在个人博客网站上也一直更新大量的关于消费级观测数据的处理经验,将开源精神贯彻到底。

GPSTK

GPSTK是笔者在做研究生时就曾用过的一款GNSS开源软件,多次惊叹于其面向对象的开发架构,但也在初学阶段被绕的晕头转向,对新手不太友好。但是,工作后基本都是使用C++面向对象开发,而且基本大厂面试都会考编程,所以提前使用优势明显。

在2021年09月,GPSTK已更名为GNSSTK,并在github分为两个项目,分别为GNSSTK (libraries)和GNSSTK-APPS (applications)。GPSTK历史版本中的定位处理相关的example在新的GNSSTK (libraries)中笔者没有找到,在GNSSTK-APPS (applications)中core/apps/positioning/文件夹下,有定位相关的说明文档和程序入口。

The GPS Toolkit (GPSTk) is an open-source (LGPL) project sponsored by the Space and Geophysics Laboratory (SGL), part of the Applied Research Laboratories (ARL) at The University of Texas at Austin.

The primary goals of the GPSTk project are to:

GNSS算法相关开源代码(含多传感器融合相关项目)(简述gnss数据处理流程)

provide applications for use by the GNSS and satellite navigation community.

provide a core library to facilitate the development of GNSS applications.

BKG Ntrip Client (BNC)

BNC是专门为实时定位而生的软件。大量的同学使用其作为实时精密单点定位的基础软件进行二次开发。RTKLIB理论上也支持实时PPP,具体情况笔者未做验证。

PPP-Wizard则是法国CNES分析中心基于BNC修改的一款实时PPP定位软件,功能更加强大。

The BKG Ntrip Client (BNC) is an Open Source multi-stream client program designed for a variety of real-time GNSS applications. It was primarily designed for receiving data streams from any Ntrip supporting Broadcaster. The program handles the HTTP communication and transfers received GNSS data to a serial or IP port feeding networking software or a DGPS/RTK application. It can compute a real-time Precise Point Positioning (PPP) solution from RTCM streams or RINEX files. During the last years BNC has been enriched with RINEX quality and editing functions. You can run BNC with GUI as well as in batch processing mode.

ignav

ignav是基于rtklib二次开发的GNSS/INS紧组合算法。对于熟悉rtklib的同学,如果想扩展自己的技术路线,学习GNSS/INS组合导航相关算法,ignav是一个不错的选择。

ignav基本将现有的一些组合算法均已实现,包括但不限于与RTK的紧组合/里程计辅助/非完整性约束等。而且ignav的编码风格与rtklib一脉相承,注释以及文档一应俱全,对初学者十分友好。

ignav为四年前作者苏景岚提交到github上,从i2nav团队网站上了解到苏同学2019年硕士毕业,毕业论文:《车载视觉/INS/GNSS多传感器融合定位定姿算法研究》。如果ignav是苏个人硕士期间完成,只能感叹一句,大佬!

附上github简介:

IGNAV基于RTKLIB开发的INS/GNSS组合导航算法库,采用C语言编写;IGNAV适用于车载场景,目前正进行INS/GNSS融合视觉信息、激光雷达的算法编写,后续会逐步更新。 IGNAV主要功能包括:

松耦合算法;

SPP、PPP、DGPS、RTK紧耦合算法;

里程计辅助;

磁力计辅助;

NHC、ZUPT、ZARU等运动约束;

Doppler辅助INS/GNSS;

双天线航向辅助;

静对准、动对准初始化;

INS正向和反向机械编排;

INS/GNSS正向和反向组合滤波;

初步支持视觉信息辅助定位定姿;

RTS/前后向滤波平滑;

车载轨迹动态显示等。

GVINS

是香港科技大学空中机器人组发布的最新的使用GNSS原始观测量的多传感器(GNSS/INS/camera)融合开源项目。其使用伪距和多普勒观测值,与INS以及视觉同时进行图优化,可以在全场景提供连续的平滑的6-Dof位姿。

笔者没有去深入研究该代码,不过想来应该可以仅进行GNSS+IMU的组合导航运算。对于想基于图优化进行GNSS+IMU紧组合研究的同学,该套代码是一个不错的选择。

不过对GNSSer有点不友好的地方,就是需要在ROS环境下运行。ROS是机器人操作系统(Robot Operating System)的英文缩写,主要在linux系统下运行,所以需要多学习一些ROS的概念、模块以及通信等。

GVINS is a non-linear optimization based system that tightly fuses GNSS raw measurements with visual and inertial information for real-time and drift-free state estimation. By incorporating GNSS pseudorange and Doppler shift measurements, GVINS is capable to provide smooth and consistent 6-DoF global localization in complex environment. The system framework and VIO part are adapted from VINS-Mono. Our system contains the following features:

global 6-DoF estimation in ECEF frame;

multi-constellation support (GPS, GLONASS, Galileo, BeiDou);

online local-ENU frame alignment;

global pose recovery in GNSS-unfriendly or even GNSS-denied area.

InGVIO

InGVIO是清华大学近期开源的一套多传感器数据融合项目,是基于invariant-EKF,紧融合GNSS伪距和多普勒,以及惯性传感器和单/双目视觉数据。从其论文来看,与当前基于图优化和基于EKF的算法相比, invariant-EKF在准确性和计算负载方面提供了极具竞争力的结果。

与代码同时开源的,还有一组固定翼机载数据,下载地址请参考项目github。

因为涉及到了视觉,所以ROS系统必不可少。好消息是InGVIO与GVINS使用相同的GNSS数据结构体gnss_comm,只需熟悉一次。

InGVIO is an invariant filter approach for fusion of monocular/stereo camera, IMU and raw GNSS measurements including pseudo ranges and Doppler shifts. InGVIO is intrinsically consistent under conditional infinitesimal invariance of the GNSS-Visual-Inertial system. InGVIO has the following key features: (a) fast due to decoupled IMU propagation, key-frame marginalization strategy and no SLAM-features; (b) accurate due to intrinsic consistency maintenance; (c) better convergence properties than 'naive' EKF-based filters.

KF_GINS OB_GINS IC_GINS

三个项目均是武汉大学多源智能导航实验室(i2Nav)今年开源的多传感器融合的项目代码。不过遗憾的是,均是以松组合的形式融合GNSS数据。

其中KF_GINS、OB_GINS分别为基于EKF和图优化的数据处理方法,其输入和输出相同,两套开源代码可以同时阅读,相互印证。

IC_GINS则因为视觉的加入,同样需要基于ROS系统,但其代码与OB_GINS也有很多相通之处。

除了开源代码,i2Nav团队还在bilibili视频网站上传了《惯性导航与GNSS/INS组合导航原理》课程视频以及在其i2Nav官网提供课程讲义下载,真真的是广大同学的福音。最新的视频还有一节辜声峰老师讲的“GNSS/INS紧组合算法”。bilibili还有西工大严恭敏老师惯性导航相关视频,搭配严老师的书籍,方便快速入门。

We open-source OB_GINS, an optimization-based GNSS/INS integrated navigation system. The main features of OB_GINS are as follows:

- A sliding-window optimizer for GNSS/INS integration;

- Abstract IMU-preintegration implementation, including:

- The normal IMU preintegration without the Earth's rotation consideration;

- The normal IMU/ODO preintegration;

- The refined IMU preintegration with the Earth's rotation consideration;

- The refined IMU/ODO preintegration;

- Implementation of the marginalization;

- Tools for attitude parameterization and coordinate frames;

- Tools for file IO;

总结

开源项目可以很大程度上让我们免于大量重复的底层的工作,仅仅是给我们提供了一个可以快速开始的平台。不管是做科研,还是进行工程落地,还需要我们进一步的去优化。况且一些开源代码的协议不允许免费商用。

以上开源代码基于图优化的GNSS紧组合,仅使用伪距和多普勒,有些遗憾。github上也有一些基于图优化的RTK相关代码,可自行搜索。

公众号

有时会将代码 或者资源放在个人公众号上,有问题,在公众号后台回复,也回答的比较快一些,欢迎关注 GNSS和自动驾驶

参考:

rtklibexplorer – Exploring precision GPS/GNSS with RTKLIB open source software and low-cost GNSS receivers

GNSS相关开源项目整理_路痴导航员的博客-CSDN博客_gnss开源软件

科学网—[转载]开源全球导航卫星系统(GNSS)软件和资源社区清单 - 陈超的博文

PPP阶段小结[2019-03]:GNSS、MGEX、精密改正数现状,开源软件和论文研究动态 - 知乎

【开源代码、数据集】InGVIO: GNSS + 相机 + IMU - 知乎

武汉大学多源智能导航实验室

GitHub - HKUST-Aerial-Robotics/GVINS: Tightly coupled GNSS-Visual-Inertial system for locally smooth and globally consistent state estimation in complex environment.

GitHub - Erensu/ignav: integrated navigation for ins and gnss

https://github.com/i2Nav-WHU/OB_GINS

GitHub - HKUST-Aerial-Robotics/GVINS: Tightly coupled GNSS-Visual-Inertial system for locally smooth and globally consistent state estimation in complex environment.

https://github.com/i2Nav-WHU/IC-GVINS

本文链接地址:https://www.jiuchutong.com/zhishi/292312.html 转载请保留说明!

上一篇:【React-Hooks进阶】useState回调函数的参数 / useEffect发送网络请求/ useRef / useContext(react hook详解)

下一篇:前端vue3项目中百度地图的使用api及实例(vue3微前端)

  • oppo手机关机有几种方法(oppo手机关机有定位追踪功能吗)

    oppo手机关机有几种方法(oppo手机关机有定位追踪功能吗)

  • vivox50pro是多少倍变焦的(vivox50pro是多少w闪充)

    vivox50pro是多少倍变焦的(vivox50pro是多少w闪充)

  • 微信聊天记录删除之后的恢复方法是什么(微信聊天记录删除了还能找回来吗)

    微信聊天记录删除之后的恢复方法是什么(微信聊天记录删除了还能找回来吗)

  • 淘宝什么情况下会禁言(淘宝什么情况下要交保证金)

    淘宝什么情况下会禁言(淘宝什么情况下要交保证金)

  • 中国大学mooc如何绑定微信(中国大学mooc如何进行互评)

    中国大学mooc如何绑定微信(中国大学mooc如何进行互评)

  • 换过屏幕前摄像头很雾(换过屏幕前摄像头模糊)

    换过屏幕前摄像头很雾(换过屏幕前摄像头模糊)

  • 笔记本电脑用几年(笔记本电脑用几年后变卡)

    笔记本电脑用几年(笔记本电脑用几年后变卡)

  • 安卓8.1.0是什么版本(安卓8.0版本是什么意思)

    安卓8.1.0是什么版本(安卓8.0版本是什么意思)

  • 3dmax怎么一渲染就崩溃(3d max 怎么渲染)

    3dmax怎么一渲染就崩溃(3d max 怎么渲染)

  • 苹果锁不了屏怎么回事(苹果屏幕锁不了)

    苹果锁不了屏怎么回事(苹果屏幕锁不了)

  • 滴滴打车和滴滴出行有什么区别(滴滴打车和滴滴出行是一个软件吗)

    滴滴打车和滴滴出行有什么区别(滴滴打车和滴滴出行是一个软件吗)

  • 智伴机器人连不上WiFi(智伴机器人连不上wifi)

    智伴机器人连不上WiFi(智伴机器人连不上wifi)

  • 别人的微博相册那一栏没了(别人微博相册显示没有内容怎么回事)

    别人的微博相册那一栏没了(别人微博相册显示没有内容怎么回事)

  • 手机邮箱闪退怎么回事(手机qq邮箱闪退是怎么回事)

    手机邮箱闪退怎么回事(手机qq邮箱闪退是怎么回事)

  • 抖音年纪计算怎么做(抖音年龄计算)

    抖音年纪计算怎么做(抖音年龄计算)

  • 为什么打开库乐队闪退(为什么打开库乐队没反应)

    为什么打开库乐队闪退(为什么打开库乐队没反应)

  • word中有几种视图(word中几种视图什么样子)

    word中有几种视图(word中几种视图什么样子)

  • 华为9x可以人脸识别吗(华为能不能人脸解锁)

    华为9x可以人脸识别吗(华为能不能人脸解锁)

  • 去哪儿网优惠券如何取消(去哪儿网优惠券回收)

    去哪儿网优惠券如何取消(去哪儿网优惠券回收)

  • apple pencil和普通电容笔区别(普通的pencil和apple pencil)

    apple pencil和普通电容笔区别(普通的pencil和apple pencil)

  • 2600x用什么散热器(2600x用什么散热器好)

    2600x用什么散热器(2600x用什么散热器好)

  • iphone6换屏发烫严重(苹果6s换屏后发热严重)

    iphone6换屏发烫严重(苹果6s换屏后发热严重)

  • 微信语音通话能被监听吗(微信语音通话能查到吗)

    微信语音通话能被监听吗(微信语音通话能查到吗)

  • 护眼模式省电吗(护眼模式是省电模式吗)

    护眼模式省电吗(护眼模式是省电模式吗)

  • BIOS设置USB启动方法使用教程(u盘bios设置usb启动)

    BIOS设置USB启动方法使用教程(u盘bios设置usb启动)

  • win10商店下载位置更改后还是下载在C盘解决教程(window10自带商店下载位置)

    win10商店下载位置更改后还是下载在C盘解决教程(window10自带商店下载位置)

  • 蝴蝶兰的养殖方法和注意事项(蝴蝶兰的养殖方法和注意事项视频)

    蝴蝶兰的养殖方法和注意事项(蝴蝶兰的养殖方法和注意事项视频)

  • Web 攻防之业务安全:密码找回安全案例总结.(web攻防之业务安全实战指南在线阅读)

    Web 攻防之业务安全:密码找回安全案例总结.(web攻防之业务安全实战指南在线阅读)

  • 出口退税退的是进项税还是销项税
  • 企业个人所得税税率表2023
  • 金税财务是干什么的
  • 老板故意拖欠税款怎么办
  • 错账更正方法有哪几种
  • 应付账款暂估款的会计分录
  • 汇算清缴补交税款,怎么调整报表教程
  • 土地转让合同也叫什么
  • 财政拨付的研发费用
  • 银行存款一直没动会怎样
  • 应收票据质押会计处理
  • 当月未收到进项票怎么处理
  • 签订几年合同每年都要缴纳印花税吗?
  • 货到票未到的会计账务处理
  • 实收资本印花税最新规定
  • 小型微利企业能开多少发票
  • 会员卡系统多少钱一套
  • 增值税税率为6%的是什么服务
  • 增值税普票当月开错了怎么办
  • 税务发票原件
  • 劳务费和服务费一样吗
  • 如何修复windows11无法的注册表值
  • 旅游公司开具的考察费怎么入账
  • win11任务栏白色卡死
  • 栈定义代码
  • 用银行存款支付明年的财产保险费
  • 爱奇艺以图搜剧不见了
  • 补缴社保操作流程
  • 分公司 股东
  • .ico是什么文件
  • 开发间接费用会计分录
  • 应交增值税视频讲解
  • 外资企业注册资本认缴制期限
  • 弥补以前年度亏损后缴纳所得税
  • anaconda虚拟机
  • yolov5使用
  • 前端axios请求怎么中断
  • 增值税怎么算出来的
  • 投资收益主要包括两大类收益
  • 以前年度收入少计如何做帐
  • 家具入账固定资产怎么算
  • 个体工商户税务登记需要哪些资料
  • 发票过了认证时间期限还可以红冲么
  • 小企业一年需要缴纳多少税
  • 企业管理费会计怎么做账
  • 更改增值税申报表退税在哪里退钱
  • 金税盘电子发票下载失败
  • 使用银行汇票的结算方式
  • 关于工程施工的法律法规
  • 2020年申报期截止时间
  • 公司购买床垫如何做账
  • 报销单会计分录怎么写
  • 退回以前年度所得税账务处理
  • 长期待摊费用包括增值税吗
  • 食堂没发票如何记账
  • grub2引导win10
  • freebsd 网卡驱动
  • win10预览版和正式版区别
  • Win10系统中怎么将文件夹进行压缩
  • 3种不用重装的手机
  • freebsd服务器搭建
  • 手动GHOST安装系统方法教程图解
  • 如何查看电脑型号及配置
  • linux 用处
  • qqpcrtp.exe是什么进程 如何删除qqpcrtp进程
  • mac怎么使用islide
  • win7提示内部版本7601副本不是正版
  • Leap Motion Using Unity3D——环岛跑车篇
  • android集成chromiumview
  • android基础教程
  • nodejs+ts
  • android开发最全教程
  • 怎么看物理内存
  • 如何获取android实体类保存的数据
  • easyui toolbar布局
  • 泰兴市税务局办税服务厅
  • 2022年各大省份录取分数线
  • 个人社保缴纳年限怎么算
  • 如何连续打印单据
  • 盘锦税务局招聘信息
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设