Re: Hesai QT128 with Zed2i and external fused Odometry
Posted by
matlabbe on
Sep 17, 2023; 8:23pm
URL: http://official-rtab-map-forum.206.s1.nabble.com/Hesai-QT128-with-Zed2i-and-external-fused-Odometry-tp9512p9697.html
point timestamp = (current_frame_firing_time_stamp - header.stamp.timestamp[0] ?
OR if I use the SDK actual timestamp, can I make it work somehow on Rtabmap by altering code in a tightly coupled way ?
Or do you have a velodyne ros2 bag in archive which I can use for reference purposes as that should be close to float64 and should answer my questions and clear my doubts on this pointstamp ?
I don't have bag on hand to share, but the time set in the channel "t" or "time" or "stamps" of the point cloud is assumed to be the elapsed time since the timestamp in header of the msg. To get the actual timestamp of one point, you have to sum its "t" with the timestamp of the header. For example, you could have timestamp in header like "1694981342.142" (epoch time in sec) and for one point its "t" channel is 0.01, meaning it has been fired 10 ms after the timestamp of first point in the cloud. Its timestamp would be "1694981342.152". If your lidar is sending full timestamp for each point in a "timestamp" channel in 64Float, the code could use it directly instead of summing with the header stamp. Feel free to share a rosbag of the output point cloud you get from QT128. I could make the change on rtabmap_ros side to support "timestamp" channel format (
float64bits)
Also, is it better to start with ICP odometry from 128 beam LIDAR or use Zed2i with VINS-Fusion or ORB-SLAM3 and feed it to slam for accuracy purposes, if you have tested them prior or have any datasets ?
It really depends on the kind of environment you are. Not that deskewing is optional if the lidar is not doing fast rotation motions.
Also, this will be for mapping launch file, giving grid map and 3d point cloud, for final localization, do I just need to add localization = true, in the same launch file by adding Nav2 bt navigator tree ?
Well, it depends what "localization" argument does in your launch file. If it sets "Mem/IncrementalMemory" to false, then yes.