论文阅读:Distributed Initialization for VVIRO with Position-Unknown UWB Network

前言

Distributed Initialization for Visual-Inertial-Ranging Odometry with Position-Unknown UWB Network这篇论文是发表在ICRA 2023上的一篇文章,本文提出了一种基于位置未知UWB网络的一致性视觉惯性紧耦合优化测距算法( DC-VIRO )的分布式初始化方法。

对于位置未知的UWB锚节点,我们通过求解一个机器人辅助的分布式定位算法( Robot-aided Distributed Localization,RaDL )来初始化它们的位置。

对于机器人状态估计,我们将初始化锚点的测距测量值和视觉惯性测量值融合在一个一致滤波器中。将RaDL建模为基于一致性的优化问题,并采用分布式交替方向乘子法( Distributed Alternating Direction Method of Multipliers,D-ADM )算法进行求解。

为了识别不可观测的条件,我们提出了一种基于自包含Fisher信息矩阵( Fisher Information Matrix,FIM )的准则,该准则可以由每个锚节点直接使用本地保留的测距测量值进行评估。

我们使用协方差交集( Covariance Intersection,CI )来估计初始化锚点位置的协方差,以进行一致性数据融合。

一、问题背景

问题可以分为两个阶段:

1 .机器人辅助的UWB传感器网络定位问题;

2 .带有机载视觉惯性传感器和外部初始化UWB锚点的机器人状态估计问题

主要问题:

由于缺乏全局信息,VIO方法在长轨迹上存在定位漂移问题。

当UWB锚节点众多时,集中式方法容易导致整个网络严重的通信拥塞和中心节点的高计算复杂度。

在机器人辅助分布式定位( Radl )中存在两个主要的挑战:

1 .以分布式的方式求解优化问题;

现有的方法[ 22 ] [ 23 ]使用锚点的位置来评估FIM,这需要在评估FIM之前解决计算密集型的优化问题。

2 .识别不可观测条件,避免求解器发散。

由于与测距测量相对应的历史姿态被保存在状态的长窗口中[ 5 ],状态向量及其协方差随着UWB锚点数量的增加而膨胀,导致在应用于大规模UWB网络时面临挑战。

二、主要假设

未知位置UWB网络

基于滤波器的估计器

三、理论流程

RaLD方法

UWB网络被设计成对等结构,其中UWB锚点在簇中充当节点( Opt。图2中的节点)。UWB网络中的每个节点利用其本地保存的测距测量值(图2中的局部测距)来估计Fisher信息矩阵( FIM )的行列式,然后决定是否准备初始化(图2中的FIM基判据)。我们使用集中式的Levenberg - Marquard算法进行单锚点初始化。

VIRO估计器

如图2所示,机器人平台在多状态约束卡尔曼滤波( MSCKF )框架(图2中FEJ - VIRO)中融合视觉惯性测距测量。算法2给出了机器人平台上运行的程序,可以看作是两部分:第2行9机器人状态估计,第10行13将初始化的UWB锚点增强为CI状态。如果对应的UWB锚点没有被增强到机器人状态(线3⋅7),则在机器人平台上放弃测距测量。

基于FIM的判据

Fisher信息是一种度量一组测量携带的关于未知状态的信息量的方法。

高斯假设下的Fisher定义:

如( 5 )所示,如果我们用Ha估计det ( F ),锚点的位置Gpa需要估计,这需要求解一个计算密集型的优化问题。因此,我们利用Cauchy - Binet公式对det ( F )进行了几何解释,它具有如下形式:

其中( rj1 × rj2) · rj3等于如图3所示的平行六面体的体积.然后我们计算了四面体的体积| VOABC |,如图3 ( b )所示,其中( rj1 × rj2) · rj3是它的六倍。逆着图3 ( b )中{ rj1,rj2,rj3 }的方向,A,B,C三点对应图3 ( a )中的{ GpIj1,GpIj2,GpIj3 } .因此我们可以利用Heron型公式和Cayley - Menger行列式计算| VOABC |:

考虑到det( [ uj1 uj2 uj3 ]⊤) = 6 | VOABC |如图3 ( b )所示,我们可以用( 6 )计算det ( F )。此外,det ( F )可以随着新接收到的测距测量值进行增量更新。假设锚节点在tk时刻接收到一个新的测距量dk,用Υ k - 1计算det ( Fk - 1 ),其中Υ k - 1包含所有收集到的测距量,直到tk - 1。将dk和测距对{ di,dj }∈Υ k - 1以及对应的机器人位姿结合起来,利用式( 8 )计算det( [ uk uj ui ]⊤)2。然后将结果与det ( Fk-1 )相加,得到当前的FIM估计值det ( Fk )。由于det ( F )量化了已有的n个测距测量值所携带的信息,当det ( F ) > τ F时,我们可以设置一个阈值τ F来初始化UWB锚点的位置。

分布式优化

我们通过求解一个非线性优化问题来初始化UWB锚节点的位置,该问题是在基于一致性的优化框架中重新制定的。求解器的初始值由文献[ 27 ]给出,如文献[ 5 ]。

我们假设一个UWB锚点在时间步长tk (见图1中的Ready UWB Anchor)满足基于FIM的准则,并且存在n - 1个初始化的UWB锚点(见初始化UWB锚点图1)。对于这些n个UWB锚点,我们有det ( Fi ) > τF ( i = 1,2 , · · · , n)。优化问题:

在[ 19 ]的基础上,我们用分布式交替方向乘子法( D-ADMM )求解( 10 ) .在D - ADMM算法中,我们将一个对偶变量λ ij与每个约束xci = xcj( i , j = 1 , · · · , n)相关联。每个Opt。图2中的节点保留一个局部决策估计xci和一个对偶变量的向量λ ji,其中j < i .每个Opt。图2中的节点交替更新本地状态和对偶变量:

节点由UWB锚节点的ID进行排序。在每次迭代中,选择.节点更新分两步进行。首先,他们用利文贝格-马夸德( LM )求解( 12 ),以更新局部决策估计,并进一步用( 13 )更新对偶变量。其次,他们将新的决策估计值xci,k + 1和新的对偶变量λ k + 1ji发送给他们的后继者进行下一次迭代.

一致性VIRO滤波器

在这一部分中详细描述了在机器人上运行的基于滤波器的第一估计雅克比视觉惯性测距( FEJVIRO ),它在MSCKF框架中融合了UWB、相机和IMU的测量。我们只介绍[ 5 ]中的不同部分,读者可以参考我们先前的工作[ 5 ]来获得更多的细节。

[5]S. Jia, Y. Jiao, Z. Zhang, R. Xiong, and Y. Wang, “Fej-viro: A consistent first-estimate jacobian visual-inertial-ranging odometry,” arXiv preprint arXiv:2207.08214, 2022.

向量情况:

距离测量及其雅可比:

带CI的协方差

尽管带CI的协方差恢复运行在新初始化的UWB锚点上,但我们在这个模块中描述它,因为它的目标是在机器人状态中增加初始化的锚点位置时保持VIRO滤波器的一致性。通过恢复锚点位置的协方差Paa的上界来保证一致性。

锚点协方差:

注意到Ω = { P1 · · · PM }是Pxx的6 × 6对角子矩阵。由( 24 )式,我们需要Pxx的上界来计算Paa的上界。根据协方差交集理论[ 25 ],Pxx的上界由下式给出

通过上述两式可以得到锚点协方差的上界。如果{ G ( pai,( Paa ) }在机器人状态中没有被增广,我们只将其增广到状态和协方差。如果状态已经包含了它的估计位置Gpai,s和协方差Paa,s,我们用CI融合现有的值和新的估计值:

四、实验方案

基于OpenVINS [ 1 ]实现了Consistent VIRO Filter它是目前最先进的基于滤波器的视觉惯性估计器。基于机器人操作系统( Robot Operating System,ROS )实现了分布式UWB初始化方法。

仿真实验

真实环境实验

五、创新总结

方法:

第一阶段:

对于第一个挑战,我们通过共识形成( [ 18 ] )来重新表述集中式问题,并使用一种流行的称为分布式ADMM [ 19 ] [ 20 ]的对偶方法来解决。

对于第二个挑战,传感器位置的可观测性通常由Fisher信息矩阵( Fisher Information Matrix,FIM )进行分析。通过利用几何解释,我们提出了一种增量方法,直接利用锚点的局部测量来评估FIM的行列式,从而产生基于FIM的在线准则启动优化。

第二阶段:

在这项工作中,我们用协方差交叉( CI )恢复优化锚点的协方差[ 24 ] [ 25 ],这是一致融合和协方差恢复的有用技术[ 26 ]。我们将机器人关键帧的位姿和小的边缘协方差广播到UWB网络中,然后用CI计算全协方差的上界。因此,每个锚点可以在优化后恢复其协方差,然后将位置和协方差传输给机器人以进行一致的状态增强。在机器人状态中增加一个锚点i后,机器人通过机器人与锚点i之间的距离测量来更新状态。

综上所述,本文的主要贡献如下:

·提出了一种基于位置未知UWB网络的视觉-惯性-测距一致性里程计分布式初始化方法DC - VIRO;

·将UWB初始化问题重新纳入一致性优化框架,并采用D - ADMM算法进行求解。我们还提出了一种基于FIM的准则来识别不可观测的情况,该准则是自容式的,并且只需要局部测距测量。

·我们使用CI技术有效地恢复了锚点位置的协方差。在机器人状态下,将恢复的协方差和优化的锚点位置进行增广,从而得到准确和一致的VIRO滤波器。

本文提出了一个分布式系统,它将来自相机、IMU和UWB的测量进行一致融合,以估计机器人的位姿和UWB锚点的位置。机器人平台和所有装有机载计算机的UWB锚点都是集群中的计算节点,它们之间只传输状态值和边缘协方差。机器人运行一个轻量级且一致的VIRO滤波器来估计机器人位姿。而UWB网络一旦满足基于FIM的准则,就用D - ADMM估计锚节点的位置。将估计的锚点位置发送给机器人,并与CI技术一致地增强到VIRO滤波器中。在未来的工作中,将尝试将DC - VIRO扩展到多机器人系统。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/182145.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

处理跨域问题

这里只讨论后端对跨域支持,前端的跨域支持一般都是在测试阶段用用的,跨域还是要后端解决 跨域问题的产生:浏览器的一种安全机制-->同源策略限制 同源策略:URL中包括协议&#xff0c;域名&#xff0c;IP&#xff0c;端口都要完全相同&#xff0c;如果有一项不同&#xff0c;浏…

《荒野大镖客》游戏提示emp.dll丢失怎么搞,总结五个修复教程分享

在玩荒野大镖客这款游戏时&#xff0c;有些玩家可能会遇到找不到emp.dll文件的问题。这个问题通常会导致游戏无法正常运行或出现错误提示。本文将介绍荒野大镖客找不到emp.dll丢失的6种解决方法&#xff0c;并解释emp.dll是什么以及导致其丢失的原因。 什么是emp.dll&#xff…

2021-07-31

单日3亿日志数据准实时存储和分析 –ClickHouse 在自如大前端研发中心的应用 第一章 架构设计 和 用户体系建设 文章目录 单日3亿日志数据准实时存储和分析前言一、pandas是什么&#xff1f;二、使用步骤1.引入库2.读入数据 总结 前言 用户行为数据的收集和分析&#xff0c;…

JavaScript 的初步学习下篇

函数 语法格式 创建函数/函数声明/函数定义 function 函数名(形参列表) {函数体return 返回值; }函数调用 函数名(实参列表) // 不考虑返回值 返回值 函数名(实参列表) // 考虑返回值 注: 函数定义并不会执行函数体内容, 必须要调用才会执行. 调用几次就会执行几次. js 中…

怎么样的软件测试工程师才算“大神”?

&#x1f4e2;专注于分享软件测试干货内容&#xff0c;欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1f4dd; 如有错误敬请指正&#xff01;&#x1f4e2;交流讨论&#xff1a;欢迎加入我们一起学习&#xff01;&#x1f4e2;资源分享&#xff1a;耗时200小时精选的「软件测试」资…

C#开发的OpenRA游戏之属性SelectionDecorations(13)

C#开发的OpenRA游戏之属性SelectionDecorations(13) 在前面分析SelectionDecorations属性类时,会发现它有下面这个属性: public class SelectionDecorations : SelectionDecorationsBase, IRender { readonly Interactable interactable; 它是定义了一个Interactabl…

【编写UI自动化测试集】Appium+Python+Unittest+HTMLRunner​

简介 获取AppPackage和AppActivity 定位UI控件的工具 脚本结构 PageObject分层管理 HTMLTestRunner生成测试报告 启动appium server服务 以python文件模式执行脚本生成测试报告 下载与安装 下载需要自动化测试的App并安装到手机 获取AppPackage和AppActivity 方法一 有源码…

大杀四方,华为组建智能车大联盟 | 百能云芯

最近&#xff0c;华为和一系列汽车公司合资的新公司迎来新的进展。除了与长安汽车的合作外&#xff0c;据传华为已经邀请奇瑞、赛力斯、北汽以及江淮汽车入股新公司&#xff0c;这将使华为成为中国智能汽车平台的重要主导者。 根据澎湃新闻的报道&#xff0c;知情人透露&#x…

Java EE 多线程

文章目录 1. 认识线程1.1 什么是进程1.2 什么是线程1.2.1. 线程是怎么做到的呢&#xff1f;1.2.2. 进程和线程的关系 1.3 多线程编程1.3.1. 第一个多线程程序1.3.2. 使用 jconsole 命令查看线程1.3.3. 实现 Runnable 接口&#xff0c;重写 run1.3.4. 继承 Thread 重写 run&…

配电网重构单时段+多时段(附带matlab代码)

配电网重构单时段多时段 对于《主动配电网最优潮流研究及其应用实例》的基本复现 简介&#xff1a;最优潮流研究在配电网规划运行中不可或缺&#xff0c;且在大量分布式能源接入的主动配电网环境下尤为重要。传统的启发式算法在全局最优解和求解速度上均无法满足主动配电网运行…

八股文-如何理解Java中的多态

什么是多态&#xff1f; 多态是面向对象编程的一个重要概念&#xff0c;它允许一个对象以不同的形式表现。也就是说&#xff0c;在父类中定义的属性和方法&#xff0c;在子类继承后&#xff0c;可以有不同的数据类型或表现出不同的行为。这可以使得同一个属性或方法&#xff0…

操作系统 day14(进程同步、进程互斥)

进程同步 概念 进程的异步性体现在&#xff0c;例如&#xff1a;当有I/O操作时&#xff0c;进程需要等待I/O操作&#xff0c;而每个I/O操作又是不同的&#xff0c;所以进程没有一个固定的顺序&#xff0c;固定的时间来执行&#xff0c;而这体现了进程的异步性。 进程互斥 …

freeRTOS异常处理函数分析(以RISC-V架构进行分析)

1、异常处理函数的注册 对RISC-V架构中断不熟悉&#xff0c;可参考博客&#xff1a;《RISC-V架构——中断处理和中断控制器介绍》&#xff1b; 2、异常处理函数分析 2.1、数调用关系 freertos_risc_v_trap_handler //异常处理函数入口portcontextSAVE_CONTEXT_INTERNAL //保存…

Python-pip配置国内镜像源,快速下载包

文章目录 国内镜像源临时使用永久配置添加环境变量Path测试关于Python技术储备一、Python所有方向的学习路线二、Python基础学习视频三、精品Python学习书籍四、Python工具包项目源码合集①Python工具包②Python实战案例③Python小游戏源码五、面试资料六、Python兼职渠道 国内…

零代码连接钉钉宜搭与用友U8,让业财数据管理简单高效

零代码连接钉钉宜搭与用友U8&#xff0c;让业财数据管理简单高效 如果把企业内部的业务系统比作一条条河流&#xff0c;那么它们的交汇点就像江河湖海。在这些交汇点上&#xff0c;数据的汇集、分析和共享离不开系统之间的集成。 钉钉宜搭和用友U8是两个在企业中非常重要的系统…

实现电商平台与营销系统无缝集成:雅座的无代码开发与API连接

无代码开发&#xff1a;营销的新引擎 在数字化转型的浪潮中&#xff0c;无代码开发已成为企业提升效率、减少成本的新引擎。这种开发方式允许非技术人员通过图形界面构建应用程序&#xff0c;无需编写代码即可实现复杂功能。这对于营销、广告推广以及用户运营等业务尤为重要&a…

wvp 视频监控平台抓包分析

抓包时机 下面的抓包时机是抓包文件最新&#xff0c;但是最有用的包 选择网卡开始抓包 如果之前已经选择网卡&#xff0c;直接开始抓包 停止抓包 重新抓包 sip播放过程分析 过滤条件 tcp.port 5060 and sip 可以看到有这些包 选择任何一个 &#xff0c;戍边右键--追踪流--…

JDK21下载+安装+环境配置教程(Windows系统)

前言&#xff1a;甲骨文公司与2023.9发布JDK21,JDK21将是一个长期支持&#xff08;LTS&#xff09;版本&#xff0c;JDK20目前可以从官网下载使用。 1&#xff0c;搜索Oracle官网找到JDK21 Java Downloads | Oracle 2&#xff0c;切换Windows系统&#xff0c;然后点击下载&am…

Mysql 不执行索引问题与优化

难以查找的隐藏问题 及 解决办法&#xff1a; 问题总结&#xff1a;

项目demo —— GPT 聊天机器人

本文介绍我的开源项目 TelegramChatBot&#xff0c;这是一个基于 OpenAI GPT API 开发的 telegram 机器人&#xff0c;具有多模态交互能力&#xff0c;求 star&#xff01;感谢大家&#xff01;在 telegram jokerController_bot 立即体验&#xff01;欢迎对 GPT 应用开发或对 t…