【OpenREALM学习笔记:13】pose_estimation.cpp和pose_estimation.h

UML Class Diagram

图中红色框为头文件中所涉及到的函数、变量和结构体

核心函数

PoseEstimation::process()

其核心作用为执行位姿估计的处理流程,并返回是否在此循环中进行了任何处理。

在这个函数中判断并完成地理坐标的初始化或这地理坐标的更新。

这里需要注意的是在该函数下,涉及到Frame类和GeometricReferencer类,两个类中都有一个同名的变量

Plain 复制代码
m_transformation_w2g

但是,该变量在不同的命名空间,所以所存储数据的地址是不一样的。两者通过process函数中的applyGeoreferenceToBuffer函数联系起来,如下图:

PoseEstimation::applyGeoreferenceToBuffer()

继续分析这个函数

其中,GeometricReferencer类的m_transformation_w2g变量,通过m_T_w2g变量传给Framelei的m_transformation_w2g,涉及到的函数为initGeoreference,如下图

但initGeoreference并不是真正操作的函数,如下图:

在这里可以看到Frame类中的m_transformation_w2g首先初始化为单位阵,之后通过updateGeoreference函数进行复制,并在这个函数中将稀疏点云的视觉坐标系也变成地理坐标系,updateGeoreference函数的内容如下图:

相关推荐
蒸蒸yyyyzwd1 小时前
cpp选手秋招准备 学习笔记day7 webserver
笔记·学习
lifallen1 小时前
DeepSeek Harness:把 Agent 做成可替换的运行时插件树
人工智能·学习·ai·开源软件·ai编程
自学机械人的小白ing1 小时前
深度学习系统学习
人工智能·深度学习·学习
nmjkhome2 小时前
22 梁单元和谱分析进一步讲解(第47课)-solid works simulation
学习
明快de玄米612 小时前
Electron学习文档
学习·electron·vim
小小de风呀2 小时前
de风——【从零开始学习C++】(十八):AVL树——让二叉搜索树自己“站起来“的自平衡黑科技
c++·科技·学习
MartinYeung53 小时前
[论文学习]MCPTox:面向真实世界MCP服务器的工具投毒攻击基准测试
运维·服务器·学习
Chen—LSN3 小时前
C语言——数据在内存中的存储
c语言·开发语言·经验分享·笔记
math_hongfan3 小时前
事务下单与状态流转:ArkTS 的 JOIN 联表在鸿蒙订单里实战
android·学习·华为·harmonyos
weixin_431600443 小时前
NestJS 入门(9):连上数据库,SQL 写在哪?
数据库·后端·sql·学习·nest.js