You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I run the VOXELMAP program with kitti No.0, No.6, No.7 dataset. But I didn't get the same ATE results in the paper. I'm wondering if my configuration file is not correct.
My velodyne.yaml is written as follows:
common:
lid_topic: "/kitti/velo/pointcloud"
imu_topic: "/no_imu"
preprocess:
lidar_type: 2 #1 for Livox serials LiDAR, 2 for Velodyne LiDAR, 3 for L515 LiDAR
scan_line: 64
blind: 1
point_filter_num: 1
calib_laser: true # true for KITTI Odometry dataset
I run the VOXELMAP program with kitti No.0, No.6, No.7 dataset. But I didn't get the same ATE results in the paper. I'm wondering if my configuration file is not correct.
My velodyne.yaml is written as follows:
common:
lid_topic: "/kitti/velo/pointcloud"
imu_topic: "/no_imu"
preprocess:
lidar_type: 2 #1 for Livox serials LiDAR, 2 for Velodyne LiDAR, 3 for L515 LiDAR
scan_line: 64
blind: 1
point_filter_num: 1
calib_laser: true # true for KITTI Odometry dataset
mapping:
down_sample_size: 0.5
max_iteration: 3
voxel_size: 3.0
max_layer: 4 # 4 layer, 0, 1, 2, 3
layer_point_size: [5, 5, 5, 5, 5]
plannar_threshold: 0.01
max_points_size: 1000
max_cov_points_size: 1000
noise_model:
ranging_cov: 0.04
angle_cov: 0.1
acc_cov_scale: 1.0
gyr_cov_scale: 0.5
imu:
imu_en: false
extrinsic_T: [ 0, 0, 0]
extrinsic_R: [ 1, 0, 0,
0, 1, 0,
0, 0, 1]
visualization:
pub_voxel_map: false
publish_max_voxel_layer: 1 # only publish 0,1,2 layer's plane
pub_point_cloud: false
dense_map_enable: false
pub_point_cloud_skip: 5 # publish one points per five points
Result:
write_kitti_log: true
result_path: "/home/trajectory.txt"
//////////////////////////////////////////////////////////
I extract the lidar pose with
inline void kitti_log(FILE *fp) {
Eigen::Matrix4d T_lidar_to_cam;
T_lidar_to_cam << 0.00042768, -0.999967, -0.0080845, -0.01198, -0.00721062,
0.0080811998, -0.99994131, -0.0540398, 0.999973864, 0.00048594,
-0.0072069, -0.292196, 0, 0, 0, 1.0;
V3D rot_ang(Log(state.rot_end));
MD(4, 4) T;
T.block<3, 3>(0, 0) = state.rot_end;
T.block<3, 1>(0, 3) = state.pos_end;
T(3, 0) = 0;
T(3, 1) = 0;
T(3, 2) = 0;
T(3, 3) = 1;
//output camera pose not lidar pose
T = T_lidar_to_cam * T * T_lidar_to_cam.inverse();
//output TUM format result
Eigen::Quaterniond q(state.rot_end);
fprintf(fp, "%lf %lf %lf %lf %lf %lf %lf %lf\r\n", Measures.lidar_beg_time - first_lidar_time,
state.pos_end[0], state.pos_end[1], state.pos_end[2], q.x(), q.y(), q.z(), q.w());
/* fprintf(fp, "%lf %lf %lf %lf %lf %lf %lf %lf \r\n", Measures.lidar_beg_time - first_lidar_time,
state.pos_end[0], state.pos_end[1], state.pos_end[2], q.w(), q.x(), q.y(), q.z());*/
fflush(fp);
}
//////////////////////////////////////////
kitti_00_change.txt
///////////////
And I compared it with the real data kitti_00_change.txt using evo_ape function.
I got about 6 meters ATE in average.
I'm wondering if I have made some mistakes in the comparing steps.
The text was updated successfully, but these errors were encountered: