【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函数的内容如下图:

相关推荐
水云桐程序员4 小时前
从零开发软件的步骤,软件开发从零到完成应该怎么做?
笔记·学习·软件构建·个人开发
David猪大卫4 小时前
【Linux修炼】环境变量、进程地址空间
linux·c语言·经验分享·笔记·学习·ubuntu·centos
叼烟扛炮6 小时前
Linux 学习笔记(五十六):IO 多路复用初探——select 的“三宗罪”
linux·服务器·数据库·笔记·学习·php
叼烟扛炮12 小时前
Linux 学习笔记(五十八):IO 多路复用封神——epoll 底层原理揭秘
linux·运维·服务器·网络·笔记·学习·php
陈布衣13 小时前
MySQL(1)_MySQL 5.7.21 Linux 安装笔记
linux·笔记·mysql
缘来是你远去是我17 小时前
本地个人笔记exe
笔记
FakeOccupational17 小时前
【电路笔记 STM32】RTC配置:晶振选择+闹钟Configuration+中断设置
笔记·stm32·实时音视频
迪康coolmu17 小时前
企业U盘管控落地实战:基于迪康端点安全一体化管理系统的移动存储安全实践
运维·人工智能·经验分享·笔记·安全·电脑
Z21-X20 小时前
云原生运维学习笔记:容器技术的演进、底层原理与 Docker 全生命周期管理
运维·笔记·学习·云原生
Rabitebla1 天前
【Linux 底层原理】进程(十):进程等待详解---从僵尸进程到 wait、waitpid 与 status
linux·c++·笔记·学习·visual studio