cartographer源码分析(52)-mapping-trajectory_node.h
2017-07-30 22:48
579 查看
markdown文件可在https://github.com/learnmoreonce/SLAM 下载
本文发于:
* http://www.jianshu.com/u/9e38d2febec1
* https://zhuanlan.zhihu.com/learnmoreonce
* http://blog.csdn.net/learnmoreonce
4000
* slam源码分析微信公众号:slamcode
注释版源码:https://github.com/learnmoreonce/cartographer
文件:trajectory_node.h #ifndef CARTOGRAPHER_MAPPING_TRAJECTORY_NODE_H_ #define CARTOGRAPHER_MAPPING_TRAJECTORY_NODE_H_ #include <deque> #include <vector> #include "Eigen/Core" #include "cartographer/common/time.h" #include "cartographer/sensor/range_data.h" #include "cartographer/transform/rigid_transform.h" namespace cartographer { namespace mapping { class Submaps; /* 轨迹节点TrajectoryNode类,含有一个内部类ConstantData。 TrajectoryNode作用:在连续的轨迹上采样一些离散的点用于key frame,标识pose frame。 数据成员: 1), ConstantData* 2) 位姿,pose ConstantData类: 数据成员: 1,time :时间 2,range_data_2d和range_data_3d:测量数据 3,trajectory_id:本节点所属的轨迹 4,Rigid3d :tracking frame 到 pose frame的矩阵变换。 */ struct TrajectoryNode { struct ConstantData { common::Time time; // Range data in 'pose' frame. Only used in the 2D case. sensor::RangeData range_data_2d;//测量得到的2D range数据 // Range data in 'pose' frame. Only used in the 3D case. sensor::CompressedRangeData range_data_3d;//测量得到的3D range数据 // Trajectory this node belongs to. int trajectory_id; //节点所属id // Transform from the 3D 'tracking' frame to the 'pose' frame of the range // data, which contains roll, pitch and height for 2D. In 3D this is always // identity. transform::Rigid3d tracking_to_pose; //涉及的3D变换 }; common::Time time() const { return constant_data->time; } const ConstantData* constant_data; //常指针.指向某块内存,该内存块的数据不变,指针本身可以变。 transform::Rigid3d pose; }; } // namespace mapping } // namespace cartographer #endif // CARTOGRAPHER_MAPPING_TRAJECTORY_NODE_H_
本文发于:
* http://www.jianshu.com/u/9e38d2febec1
* https://zhuanlan.zhihu.com/learnmoreonce
* http://blog.csdn.net/learnmoreonce
4000
* slam源码分析微信公众号:slamcode
注释版源码:https://github.com/learnmoreonce/cartographer
相关文章推荐
- cartographer源码分析(53)-mapping-trajectory_connectivity.h
- cartographer源码分析(54)-mapping- trajectory_builder.h
- cartographer源码分析(55)-mapping-collated_trajectory_builder.h
- [置顶] 58-总结-【cartographer源码分析】系列的第六部分【 mapping 】
- cartographer源码分析(48)-mapping-imu_tracker.h
- cartographer源码分析(49)-mapping-odometry_state_tracker.h
- Hadoop源码分析之DataNode的启动与停止
- springMVC源码分析--SimpleUrlHandlerMapping(四)
- Hadoop2源码分析-HDFS datanode核心模块分析
- cartographer源码分析(8)-common-make_unique.h
- 思科VPP源码分析(node调度框架)
- 第二人生的源码分析(六十七)LLXMLNode使用Expat库打开文件
- cartographer源码分析(10)-common-thread_pool.h
- MyBatis-3.4.2-源码分析2:解析XML之settingsAsProperties(root.evalNode("settings"))
- cartographer源码分析(37)-io-pcd_writing_points_processor.h
- jQuery静态方法noop,camelCase,nodeName,trim使用和源码分析
- Spark SQL Catalyst源码分析之TreeNode Library
- springMVC源码分析--SimpleUrlHandlerMapping(四)
- NameNode生成DataNode的网络拓扑图的源码分析---NetworkTopology
- cartographer源码分析(38)-io-null_points_processor.h