zhixy / multical

Multiple targets for multiple IMUs, cameras and LiDARs (Lasers) spatiotemporal calibration
Other
157 stars 31 forks source link

when I try example , I met a problem descrbed as follows,how to address this problem? #2

Open znzouxiaqu opened 2 years ago

znzouxiaqu commented 2 years ago

Initializing IMUs: Model: calibrated T_here_imu0 Update rate: 200.0 Accelerometer: Noise density: 0.0101387794307 Noise density (discrete): 0.143383993768 Random walk: 0.0062768460716 Gyroscope: Noise density: 0.000133668670023 Noise density (discrete): 0.00189036046012 Random walk: 0.00052621002386 Initializing imu rosbag dataset reader: Dataset: multical_calibration_example_data.bag Topic: /xsens_imu/data Number of messages: 15200 Reading IMU data (/xsens_imu/data) Read 15200 imu readings over 76.0 seconds
Initializing calibration target: Type: aprilgrid Tags: Rows: 6 Cols: 6 Size: 0.08 [m] Spacing 0.024 [m] Initializing LiDAR rosbag dataset reader: Dataset: multical_calibration_example_data.bag Topic: /right_velodyne/velodyne_points Number of messages: 753 Reading LiDAR data (/right_velodyne/velodyne_points) Progress 10 / 753 Time remaining: 56s
Traceback (most recent call last): File "/home/xiaobobai/multical_workspace/devel/bin/multical_calibrate_sensors", line 15, in exec(compile(fh.read(), python_script, 'exec'), context) File "/home/xiaobobai/multical_workspace/src/multical/aslam_offline_calibration/kalibr/python/multical_calibrate_sensors", line 361, in main() File "/home/xiaobobai/multical_workspace/src/multical/aslam_offline_calibration/kalibr/python/multical_calibrate_sensors", line 265, in main lidar = sens.LiDAR(config, parsed, targets) File "/home/xiaobobai/multical_workspace/src/multical/aslam_offline_calibration/kalibr/python/kalibr_sensor_calibration/sensors_and_targets.py", line 153, in init self.loadLiDARDataAndFindTarget(config.getReservedPointsPerFrame()) File "/home/xiaobobai/multical_workspace/src/multical/aslam_offline_calibration/kalibr/python/kalibr_sensor_calibration/sensors_and_targets.py", line 178, in loadLiDARDataAndFindTarget targetPose = find_target_pose(cloud, self.showPointCloud) File "/home/xiaobobai/multical_workspace/src/multical/aslam_offline_calibration/kalibr/python/kalibr_sensor_calibration/FindTargetFromPointCloud.py", line 105, in find_target_pose position = estimate_intersection(tape1_params, tape2_params) File "/home/xiaobobai/multical_workspace/src/multical/aslam_offline_calibration/kalibr/python/kalibr_sensor_calibration/FindTargetFromPointCloud.py", line 69, in estimate_intersection estimated_intersection = np.linalg.lstsq(a, b, rcond=None)[0] File "/usr/lib/python2.7/dist-packages/numpy/linalg/linalg.py", line 1953, in lstsq 0, work, -1, iwork, 0) TypeError: a float is required

znzouxiaqu commented 2 years ago

I has overcame this problem, the reason is that the version of numpy is wrong .the right version is 1.15.0 thanks for your work, it is hugely convenient for my study,I desrie your paper about this project,can you give a download link?thanks.

znzouxiaqu commented 2 years ago

"T_here_cam0:" means what in lidar.yaml showed as follows:

    lidar0:
      rostopic: /right_velodyne/velodyne_points
      T_here_cam0:
      - [0.0, 0.0, 1.0, 0.15]
      - [-1.0, 0.0, 0.0, 0.21]
      - [0.0, -1.0, 0.0, -0.1]
      - [0.0, 0.0, 0.0, 1.0]
zhixy commented 2 years ago

Thank you for your appreciation, the paper will come very soon

znzouxiaqu commented 2 years ago

Thank you for your appreciation, the paper will come very soon thanks,i met a question as follows,how to understand this four formulas: d = plane_normal.dot(t_p) theta = plane_normal.dot(C_p_l dir_l) predictedMeasurement = d / theta -1.0 error = ket.ScalarError(distance, self.invR,predictedMeasurement)

znzouxiaqu commented 2 years ago

i met a problem:

Estimating initial extrinsic parameters between primary camera and all other sensors time interval threshold 0.36 The data gathering will break because of too large time interval (0.465955495834s) Time span of gathered data is 11.2898950577s

File "/home/xixihaha/multical_workspace/src/multical-master/aslam_offline_calibration/kalibr/python/kalibr_sensor_calibration/sensors_and_targets.py", line 227, in _onPlane p = np.dot(C_p_w, points) + t_p_w.reshape((3, 1)) ValueError: shapes (3,3) and (0,) not aligned: 3 (dim 1) != 0 (dim 0)

whats wrong? Looking forward to your reply,thanks very much.