apollo icon indicating copy to clipboard operation
apollo copied to clipboard

Unstable fusion in MSF localization

Open alexbuyval opened this issue 6 years ago • 9 comments

System information

  • OS Platform and Distribution (e.g., Linux Ubuntu 18.04):
  • Apollo installed from (source):
  • Apollo version (5.0):

Hi All,

I am trying to test the MSF localization by LG simulation. I have created a piece of the map and run successfully the MSF localization module according to this tutorial. It works very well during straightforward moving, however, when the car turns the fusion position moves away from the car. You can see such behavior on (1:15 min) of this video As I understand, this issue links with GNSS and IMU fusion, because from 1:45 there is no map, so the LIDAR localization does work (only GNSS and IMU) and during the right turn (2:15 min) you can see that the fusion position deviates from GNSS position.

How can I fix the issue? Or maybe somebody knows where should I seek the problem?

Thank you in advance for any ideas.

regards, Alex

alexbuyval avatar Sep 30 '19 09:09 alexbuyval

In addition, I found some messages in screen output which I don't understand, but maybe they will be helpful:

[localization]  the chi is large: 7.815000 840.963410
[localization]  the chi: 0 3.841000 86.559590
[localization]  the chi: 1 3.841000 553.056467

What does 'the chi' and 'the chi is large' mean?

Also I noticed the following:

[localization]  the wheelspeed data list is empty!
[localization]  the wheelspeed data buffer is not ok!
[localization]  get forecastpose from imu and wheelspeed fail and begin get from imu

It is like the localization uses the wheel odometry. However, I didn't find any subscription on 'canbus' or so on in the modules/localization/msf/msf_localization.cc

alexbuyval avatar Sep 30 '19 11:09 alexbuyval

System information

  • OS Platform and Distribution (e.g., Linux Ubuntu 18.04):
  • Apollo installed from (source):
  • Apollo version (5.0):

Hi All,

I am trying to test the MSF localization by LG simulation. I have created a piece of the map and run successfully the MSF localization module according to this tutorial. It works very well during straightforward moving, however, when the car turns the fusion position moves away from the car. You can see such behavior on (1:15 min) of this video As I understand, this issue links with GNSS and IMU fusion, because from 1:45 there is no map, so the LIDAR localization does work (only GNSS and IMU) and during the right turn (2:15 min) you can see that the fusion position deviates from GNSS position.

How can I fix the issue? Or maybe somebody knows where should I seek the problem?

Thank you in advance for any ideas.

regards, Alex

Hello Alexandr!
Please help me!
Tell me how you creat a map for MSF localization.

I don’t understand how to run the script according to this doc create_msf_map

AlexandrZabolotny avatar Jun 30 '20 14:06 AlexandrZabolotny

I don’t understand how to run the script according to this doc create_msf_map

Hi @AlexandrZabolotny,

First of all, you need to generate a dataset (record files) with localization and lidar topics. You can do it by Lg simulator, for instance. Then you need to run the following script in the docker: /apollo/scripts/msf_simple_map_creator.sh DATA_PATH/records/ DATA_PATH/params/velodyne_params/velodyne128_novatel_extrinsics.yaml 10 OUT_FOLDER_PATH

Regards, Alex

alexbuyval avatar Jun 30 '20 15:06 alexbuyval

First of all, you need to generate a dataset (record files) with localization and lidar topics. You can do it by Lg simulator, for instance. Then you need to run the following script in the docker: /apollo/scripts/msf_simple_map_creator.sh DATA_PATH/records/ DATA_PATH/params/velodyne_params/velodyne128_novatel_extrinsics.yaml 10 OUT_FOLDER_PATH

1.I generate record file using LGsimulator. But when i run this script i get this error.

Do you have your record file?

AlexandrZabolotny avatar Jun 30 '20 15:06 AlexandrZabolotny

I cannot find the record file, however I found the folder with data extracted from the record file Here is link.

To use these data comment out cyber_record_parser command in msf_simple_map_creator.sh and check path to pcd folder.

alexbuyval avatar Jun 30 '20 15:06 alexbuyval

Thank. With this data, I managed to build a map

AlexandrZabolotny avatar Jul 02 '20 07:07 AlexandrZabolotny

Hello @alexbuyval
Can you share your experience? How did you manage to run multisensory localization on the lgsvl_simulator?

I was able to build a local map using the simulator data.
But, when I run the command
cyber_launch start /apollo/modules/localization/launch/msf_localization.launch

I get this error
Screenshot from 2020-08-05 09-38-25

As I understand it is a problem of simulation timing.
A similar problem is described here
But on your video all work. How did you solve this problem?

Thanks for your time!

AlexandrZabolotny avatar Aug 05 '20 11:08 AlexandrZabolotny

Hi @alexbuyval @AlexandrZabolotny Have you guys successfully run the MSF localization module on Apollo and LGSVL yet?

zhang-junqi avatar Jul 30 '23 14:07 zhang-junqi

I tested my data with msf localization modules, and encountered the same problem as yours. Could you offer some solutions? thanks!

freexiaofan avatar Jul 04 '25 08:07 freexiaofan