• 改变历史commit注释-git

    现在对历史提交信息需要修改 1git log 目前的记录为 1234567891011commit bee8dd7a91683577a290ccdbc1da4142153b0713 (HEAD -> ros2)Author: chargerKo...
  • 坐标变换和点云滤波-cartographer

    之前说到雷达会经过时间同步,和畸变校准,并且最后来到了匹配 123456789101112 // 获取机器人当前姿态 const transform::Rigid3d gravity_alignment = transform::Rigid3...
  • 点云时间同步-cartographer

    对雷达的同步的函数文件位于cartographer/mapping/internal/range_data_collator.cc文件中 同步雷达时间的类为RangeDataCollator 首先查看一下头文件, 构造函数对expectedsens...
  • 点云匹配预备-cartographer

    上节说到,在global_traject_builder 中会进行AddSensorData 加入转化为点云的雷达扫描数据 第一步即,扫描匹配,in GlobalTrajectoryBuilder类的AddSensorData中 1234// 进行扫...
  • cartographer-数据分发小结

    在处理数据之前,cartographer需要进行数据分发器的创建,然后数据的处理 数据分发器的创建整一个数据分发器的建立就是AddTrajectory的过程,最后需要达到如下效果 针对每一个轨迹下的每一个topic, 即QueueKey, 绑定一个回...
  • std::tie 如何返回多个值

    假设有两个变量,需要赋值 12NodeOptions node_options;TrajectoryOptions trajectory_options; 我们可以一次性通过std::tie 进行赋值 12std::tie(node_options,...
  • global_trajectory_builder-cartographer

    处理排好序的数据,为什么是排好序?在数据分发dispatch的时候,通过寻找it->second.queue.Peek();来找到时间最老的一个数据,因此是排好序的。 global_trajectory_builder.h文件在global_t...
  • explicit 使用

    在构造函数前面加上explicit,可以防止隐式调用带来的非预期的类型转换下面的例子介绍了什么是隐式调用 12345678910111213141516171819202122232425262728#include <iostream>...
  • C++11 std::chrono库详解

    本文源:https://www.cnblogs.com/jwk000/p/3560086.html C++11 std::chrono库详解所谓的详解只不过是参考www.cplusplus.com的说明整理了一下,因为没发现别人有详细讲解。   ch...
  • OrderedMultiQueue(二)-cartographer

    OrderedMultiQueue 类,位于cartographer/sensor/internal/ordered_muti_queue.h 维护排序后的传感器数据的多个队列, 并按合并排序的顺序进行调度,它将等待为每个未完成的队列查看至少一个值,...