[lio_sam_6axis_mapOptmization-5] process has died, whenever I play the rosbag
Closed this issue · 6 comments
I appreciate for you job!
Using #70 I can build the package with noetic.
But, when I play the rosbag, it prints some error like following:
[lio_sam_6axis_mapOptmization-5] process has died [pid 1468503, exit code -11, cmd /home/ubuntu/catkin_ws/devel/lib/lio_sam_6axis/lio_sam_6axis_mapOptmization __name:=lio_sam_6axis_mapOptmization __log:=/home/ubuntu/.ros/log/a8830fe6-184d-11ef-b4f1-87907ca5256a/lio_sam_6axis_mapOptmization-5.log].
I'm using ouster OS-1 64 and internal IMU(6 axis) as well.
Here is my yaml config. There are few changes of param.
io_sam_6axis:
# velodyne16 and stim300(6 axis)
# Topics
pointCloudTopic: "/ouster/points" # Point cloud data
imuTopic: "/ouster/imu" # IMU data
odomTopic: "odometry/imu" # IMU pre-preintegration odometry, same frequency as IMU
gpsTopic: "gps_odom" # GPS odometry topic from navsat, see module_navsat.launch file
# Frames
lidarFrame: "base_link"
baselinkFrame: "base_link"
odometryFrame: "odom"
mapFrame: "map"
# GPS Settings
useGPS: false
gpsFrequence: 10 # set proper gps frequence to align gps and lidar timestamp
useImuHeadingInitialization: false # if using GPS data, set to "false"
useGpsElevation: true # if GPS elevation is bad, set to "false"
gpsCovThreshold: 2.0 # m^2, threshold for using GPS data
poseCovThreshold: 25.0 # m^2, threshold for using GPS data
# debug setting
debugLidarTimestamp: false
debugImu: false
debugGps: false
# Export settings
savePCD: false # https://github.com/TixiaoShan/LIO-SAM/issues/3
savePCDDirectory: "/Downloads/LOAM/" # actually we do not use the floder to save maps
# depends on your own lidar!!!!
sensor: ouster # lidar sensor type, 'velodyne' or 'ouster' or 'livox' or 'hesai'
N_SCAN: 64 # number of lidar channel (i.e., Velodyne/Ouster: 16, 32, 64, 128, Livox Horizon: 6)
Horizon_SCAN: 1024 # lidar horizontal resolution (Velodyne:1800, Ouster:512,1024,2048, Livox Horizon: 4000)
downsampleRate: 1 # default: 1. Downsample your data if too many points. i.e., 16 = 64 / 4, 16 = 16 / 1
lidarMinRange: 1.5 # default: 1.0, minimum lidar range to be used
lidarMaxRange: 1000.0
# IMU Settings
imuFrequence: 100
imuAccNoise: 0.0011501915187049582
imuGyrNoise: 5.084312924828687e-05
imuAccBiasN: 3.729854069064516e-05
imuGyrBiasN: 6.509823412408377e-07
imuGravity: 9.80511
imuRPYWeight: 0.01
Additionally, When I play FusionPortable DATASET which located in readme,
even though I just used default test_ouster128.launch
, it gets stuck like #59
Here's my full yaml file.
lio_sam_6axis:
# velodyne16 and stim300(6 axis)
# Topics
pointCloudTopic: "/ouster/points" # Point cloud data
imuTopic: "/ouster/imu" # IMU data
odomTopic: "odometry/imu" # IMU pre-preintegration odometry, same frequency as IMU
gpsTopic: "gps_odom" # GPS odometry topic from navsat, see module_navsat.launch file
# Frames
lidarFrame: "base_link"
baselinkFrame: "base_link"
odometryFrame: "odom"
mapFrame: "map"
# GPS Settings
useGPS: false
gpsFrequence: 10 # set proper gps frequence to align gps and lidar timestamp
useImuHeadingInitialization: false # if using GPS data, set to "false"
useGpsElevation: true # if GPS elevation is bad, set to "false"
gpsCovThreshold: 2.0 # m^2, threshold for using GPS data
poseCovThreshold: 25.0 # m^2, threshold for using GPS data
# debug setting
debugLidarTimestamp: false
debugImu: false
debugGps: false
# Export settings
savePCD: false # https://github.com/TixiaoShan/LIO-SAM/issues/3
savePCDDirectory: "/Downloads/LOAM/" # actually we do not use the floder to save maps
# depends on your own lidar!!!!
sensor: ouster # lidar sensor type, 'velodyne' or 'ouster' or 'livox' or 'hesai'
N_SCAN: 64 # number of lidar channel (i.e., Velodyne/Ouster: 16, 32, 64, 128, Livox Horizon: 6)
Horizon_SCAN: 1024 # lidar horizontal resolution (Velodyne:1800, Ouster:512,1024,2048, Livox Horizon: 4000)
downsampleRate: 1 # default: 1. Downsample your data if too many points. i.e., 16 = 64 / 4, 16 = 16 / 1
lidarMinRange: 1.5 # default: 1.0, minimum lidar range to be used
lidarMaxRange: 1000.0
# IMU Settings
imuFrequence: 100
imuAccNoise: 0.0011501915187049582
imuGyrNoise: 5.084312924828687e-05
imuAccBiasN: 3.729854069064516e-05
imuGyrBiasN: 6.509823412408377e-07
imuGravity: 9.80511
imuRPYWeight: 0.01
# stim300 lidar->imu
imu_type: 0 # 0: 6axis, 1:9 axis
extrinsicTrans: [ -0.047781, 0.007303, -0.026583 ]
extrinsicRot: [ 0.9999872, -0.0010636, -0.0049547,
0.0010324, 0.9999796, -0.0062985,
0.0049613, 0.0062933, 0.9999679 ]
extrinsicRPY: [ 0.9999872, -0.0010636, -0.0049547,
0.0010324, 0.9999796, -0.0062985,
0.0049613, 0.0062933, 0.9999679 ]
# LOAM feature threshold
edgeThreshold: 1.0
surfThreshold: 0.1
edgeFeatureMinValidNum: 10
surfFeatureMinValidNum: 100
# voxel filter paprams
odometrySurfLeafSize: 0.4 # default: 0.4 - outdoor, 0.2 - indoor
mappingCornerLeafSize: 0.2 # default: 0.2 - outdoor, 0.1 - indoor
mappingSurfLeafSize: 0.4 # default: 0.4 - outdoor, 0.2 - indoor
# robot motion constraint (in case you are using a 2D robot)
z_tollerance: 1000 # meters
rotation_tollerance: 1000 # radians
# CPU Params
numberOfCores: 8 # number of cores for mapping optimization
mappingProcessInterval: 0.15 # seconds, regulate mapping frequency
# Surrounding map
surroundingkeyframeAddingDistThreshold: 0.5 # meters, regulate keyframe adding threshold
surroundingkeyframeAddingAngleThreshold: 0.2 # radians, regulate keyframe adding threshold
surroundingKeyframeDensity: 2.0 # meters, downsample surrounding keyframe poses
surroundingKeyframeSearchRadius: 50.0 # meters, within n meters scan-to-map optimization (when loop closure disabled)
# Loop closure
loopClosureEnableFlag: true
loopClosureFrequency: 1.0 # Hz, regulate loop closure constraint add frequency
surroundingKeyframeSize: 30 # submap size (when loop closure enabled)
historyKeyframeSearchRadius: 40.0 # meters, key frame that is within n meters from current pose will be considerd for loop closure
historyKeyframeSearchTimeDiff: 25.0 # seconds, key frame that is n seconds older will be considered for loop closure
historyKeyframeSearchNum: 25 # number of hostory key frames will be fused into a submap for loop closure
historyKeyframeFitnessScore: 0.9 # icp threshold, the smaller the better alignment
# Visualization
globalMapVisualizationSearchRadius: 1000.0 # meters, global map visualization radius
globalMapVisualizationPoseDensity: 10.0 # meters, global map visualization keyframe density
globalMapVisualizationLeafSize: 0.5 # meters, global map visualization cloud density
# mapping
globalMapLeafSize: 0.2 # saved map voxgrid size
I am encountering the same issue as you did. Have you managed to resolve it?
I have found that the node crashes when attempting to add elements to surroundingKeyPosesDS (during the operation surroundingKeyPosesDS->push_back) or when destructing surroundingKeyPosesDS.
I resolved the issue by following the approach provided in the link TixiaoShan/LIO-SAM#191.
congrats!