ZikangYuan / SDV-LOAM

[TPAMI 2023] A cascaded vision-LiDAR odometry and mapping system

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

关于数据集

leslieburke opened this issue · comments

您好,请问您的代码目前是只支持kitti的数据集吗?是否在自采数据集上做过验证测试呢?

目前开源出的部分是支持kitti,kitti-360,kitti-carla数据集的,自己采集的数据集也验证过,但是需要做相应的修改,因为自己采集的数据集激光雷达数据和图像的时间戳并未严格对齐。

@ZikangYuan
方便上传一下您针对自采数据集修改的代码吗?另外自采数据集您是否有去lidar的畸变呢,我看您的代码中没有涉及imu的部分,想请教一下这部分是怎么处理的

您好,由于时间过于久远,加上实验室电脑更新换代,以及当时自己还没有好的代码存储习惯,针对自采数据集的代码我需要时间去找一找。

我先和您说一下针对自采数据集需要做哪些修改:

  1. 时间戳同步。

自采数据集不像KITTI,雷达和相机的时间戳并不是严格同步的,因此在以下两处地方:

main.cpp中,process函数,第473行:

if(fabs(fullSystem->qTimeImg.front() - fullSystem->qTimeLidarCloud.front()) > 0.01)

FullSystem.cpp中,makeNewTraces函数,第1285行:

if(fabs(newFrame->shell->timestamp - qTimeLidarCloud.front()) < 0.01)

如果您的相机和激光雷达时间戳没有硬同步对齐,只需要将0.01的阈值放宽即可。

  1. 自采数据集并不像KITTI,激光雷达和相机拥有相同的采集频率(都是10 Hz),因此,需要根据该图像帧是否有对应的激光雷达点云与之对应,将其分为深度帧非深度帧,只有深度帧才能被选为视觉模块中的关键帧。

如果您的自采数据集激光雷达和相机的采集频率是相同的,可以忽略第2点。

另外,我们并没有在视觉模块中加雷达点云的畸变补偿部分。因为和在KITTI-360的测试结果一样,我们曾尝试过用匀速模型补偿运动畸变,但效果反而变差了。

您好,由于时间过于久远,加上实验室电脑更新换代,以及当时自己还没有好的代码存储习惯,针对自采数据集的代码我需要时间去找一找。

我先和您说一下针对自采数据集需要做哪些修改:

1. 时间戳同步。

自采数据集不像KITTI,雷达和相机的时间戳并不是严格同步的,因此在以下两处地方:

main.cpp中,process函数,第473行:

if(fabs(fullSystem->qTimeImg.front() - fullSystem->qTimeLidarCloud.front()) > 0.01)

FullSystem.cpp中,makeNewTraces函数,第1285行:

if(fabs(newFrame->shell->timestamp - qTimeLidarCloud.front()) < 0.01)

如果您的相机和激光雷达时间戳没有硬同步对齐,只需要将0.01的阈值放宽即可。

2. 自采数据集并不像KITTI,激光雷达和相机拥有相同的采集频率(都是10 Hz),因此,需要根据该图像帧是否有对应的激光雷达点云与之对应,将其分为**深度帧**和**非深度帧**,只有**深度帧**才能被选为视觉模块中的关键帧。

如果您的自采数据集激光雷达和相机的采集频率是相同的,可以忽略第2点。

另外,我们并没有在视觉模块中加雷达点云的畸变补偿部分。因为和在KITTI-360的测试结果一样,我们曾尝试过用匀速模型补偿运动畸变,但效果反而变差了。

感谢您的回答