Comments (11)
It hurts the performance a bit but can run in real-time. However, I didn't test that configuration on a large-scale dataset, which will produce a large graph.
The accuracy heavily depends on the parameters - all the noise settings. Depend on your settings, the optimization may trust IMU pre-integration or lidar odometry more. So the system becomes quite sensitive. By separating them into two different files, the system becomes much more stable.
from lio-sam.
Won't the iterative optimization slowly converge to a satisfied precision, which relies not that much on the initial value? Will they finally get diverged result?
Imagine you give an initial guess that is completely upside down, optimization will converge to a local optimal pose rather than a global one.
And imu data will provide a better initial than consecutive odometry used before, right?
If the IMU is very good with low bias and noise, the initial should be similar or better than the consecutive odometry. The consecutive odometry is still an optimization process. So its performance is effected by initial guess, number of itertation, and number of features.
from lio-sam.
Q1. Right
Q2. I removed those constraints for faster optimization.
Q3. Your statement is correct.
from lio-sam.
@TixiaoShan Thank you for your answer. I want to have a further discussion about Q2 ~
If you joint optimize imu preintegration factor can the system run in real time? and how accuarcy of the system will improve?
from lio-sam.
@TixiaoShan Sounds cool ! From my point of view ,this "loose coupling" system may be more robust and reliable.
And compared with LOAM or LEGO-LOAM, a good initial estimate of odometry provided by imu preintegration make the map optimization more accuracy. So is the intital estimate play very important role in this system base on LOAM?
from lio-sam.
Yes, initial guess is the key to scan-matching.
from lio-sam.
So, @TixiaoShan
what exactly do The nosie settings rely on? Any experience or advice on this? Thank you very much!
from lio-sam.
@YangSiri
Depending on the IMU, I hand-tuned those parameters to get the best performance. If the parameter is very off, you may see the robot path becomes choppy.
from lio-sam.
Thank you, @TixiaoShan
I guess it is a tricky problem like in DL. I notice you mention that the initial guess provided for scan-to-map matching is very important. Won't the iterative optimization slowly converge to a satisfied precision, which relies not that much on the initial value? Will they finally get diverged result? And imu data will provide a better initial than consecutive odometry used before, right?
from lio-sam.
Yes, I get that. Thank you for your generous reply.
from lio-sam.
Thanks for your detailed description. It looks like the covariances of the IMU factors and scan matching are very important in the factor graph optimization.
from lio-sam.
Related Issues (20)
- Run LIO-SAM with Carla and ROS2 HOT 2
- I want to use LeiShen 128 line solid-state LiDAR to run LiO-SAM. How should I modify the code?
- [ WARN] [1706283012.687423712]: MSG to TF: Quaternion Not Properly Normalized HOT 1
- I want to use VLP16 and bno055 Bosch imu HOT 2
- Error starting lio_sam with default settings HOT 3
- Standing ego vehicle moves in rviz HOT 2
- [ERROR]: Static assertion failed: Error: GTSAM was built against a different version of Eigen HOT 1
- ROS2 foxy, colcon build error HOT 2
- Slam using LIO-SLAM
- Issue with running build script due to EIGEN HOT 1
- ERROR: cannot launch node of type [lio_sam/lio_sam_imuPreintegration]: Cannot locate node of type [lio_sam_imuPreintegration] in package [lio_sam]. Make sure file exists in package path and permission is set to executable (chmod +x) HOT 1
- I don't find the topic sub for GPS HOT 2
- Rooftop rosbag not working in ROS2 HOT 9
- Could not find a connection between 'lidar_link' and 'base_link' because they are not part of the same tree.Tf has two or more unconnected trees. HOT 2
- mid-70 can do it?
- catkin_make的问题
- [lio_sam_imuPreintegration-1] process has died [pid 12068, exit code -6 HOT 1
- 'gtsam::ValuesKeyDoesNotExist'
- cloudExtraction() of imageProjection.cpp typo?
- Point cloud timestamp not available, deskew function disabled, system will drift significantly! HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from lio-sam.