![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
激光雷达
文章平均质量分 60
Laney_Midory
欢迎来参观菜鸡的奋斗史
展开
-
SLAM精度评估常见问题——GPS时间戳与bag包时间戳如何对齐
在使用evo进行精度评估时,由于evo是通过时间戳来进行配准和比较的,为了使结果更准确,需要将GPS与bag包的时间戳进行转换对齐在这里更方便的方法是转换GPS时间戳到bag包首先查看GPS文件他的时间如何转换呢比如第一个时间9879这个是相对于24:00的秒数,为了算他是现在的几点首先9879除以3600算出小时,为2余2679,因此是2小时再用2679除以60,为44余39因此最后的结果为2小时44分钟39秒由于我国是东八区,因此结果+8小时因此GPS的时间是10时44分钟39秒原创 2022-04-18 14:21:24 · 2032 阅读 · 0 评论 -
查看bag文件基本数据信息——检查bag文件是否有误
1、.bag数据信息的查看rosbag info *.bag //*为你自己的数据包的名称详细解释查看这篇博文2、 解析.bag文件得到带时间戳的.pcd点云数据文件rosrun pcl_ros bag_to_pcd test.bag /points_raw ./pcd可以输出每一帧的pcd文件进行查看...原创 2022-02-21 18:18:37 · 3013 阅读 · 6 评论 -
SLAM评估工具-EVO从安装到使用
1、安装 evopip install evo --upgrade --no-binary evo --user即可直接安装成功如果说需要更新则更新即可/usr/local/bin/python3.7 -m pip install --upgrade pip2、测试evo_traj euroc 2.txt --plot报错:[ERROR] EuRoC format ground truth must have at least 8 entries per row and no trai原创 2022-02-21 18:15:58 · 7785 阅读 · 2 评论 -
基于pcl库的slam编程实现——以aloam为例
对每一帧进行滤波操作这里是函数://wtn:updatetemplate <typename PointT>bool scanner_filter(const pcl::PointCloud<PointT> &cloud_in, pcl::PointCloud<PointT> &cloud_temp, float self_radius, float ghost_radius, float z_min_thre_ghost, floa原创 2022-01-05 16:35:07 · 1845 阅读 · 2 评论 -
计算激光雷达各点的仰角并分析其线数——根据lidar文档垂直角公式计算自己的激光雷达参数/以aloam为例子
今日尝试大佬的激光slam代码时,向用自己的数据时,遇到了一点问题如代码所示将点云从ros的msg格式转换为pcl格式,并计算各点的仰角分析其线数,保存在laserCloudScans(N_SCANS)里,这部分使用的是16线的lidar以我并没有看过多少slam代码的平平无奇的大脑,我立马想到,这不就是aloam里面相似的计算仰角的代码么?大佬的代码://判定各点的线数,按线数保存 std::vector<pcl::PointCloud<PointType>> l原创 2021-12-10 17:49:51 · 4359 阅读 · 4 评论 -
Livox LiDAR点云数据类型的转化——livox_ros_driver/CustomMsg到sensor_msgs/PointCloud2
在做Lidar与IMU数据之间的标定时,出现了数据无法读取的问题主要是代码里读取lidar数据是需要下面的语句 // add lidar msg sensor_msgs::PointCloud2ConstPtr lidar_msg = m.instantiate<sensor_msgs::PointCloud2>();查看bag文件的数据类型rosbag info XXX.bag可以明显看出,用的是自带的sensor_msgs/PointCloud2类型的读取函数,原创 2021-09-01 15:18:29 · 11471 阅读 · 19 评论 -
Lidar与IMU标定——lidar_imu_calib
我是文章的搬运工详细介绍以及编译报错解决方法在这篇文章这里贴一下我遇到的问题:定义冲突问题error: conflicting declaration ‘typedef struct LZ4_stream_t LZ4_stream_t’ typedef struct { long long table[LZ4_STREAMSIZE_U64]; } LZ4_stream_t;这个原因是ROS版本下有两个头文件定义发生冲突,github的issue中给出了两种解决办法,之一是重命名头文件避免冲突:s原创 2021-08-31 11:24:31 · 4388 阅读 · 0 评论