Comments (5)
Those messages are particular for informing, so if you keep seeing them then that means something out of this codebase may be wrong, as you said the extrinsic parameters (including the temporal offset). While the title of your issue @jeffcyu may confuse the other users because actually this is caused by your transplant attempt, not an issue about the R-VIO itself.
from r-vio.
Thanks for the very quick reply!
I apologize for the title, hopefully this new title is more reasonable.
So just to confirm what you're saying: the error messages that are showing are probably due to some incorrect parameter like the extrinsics or the temporal offset, or from some bug introduced when transplanting the code; is this correct?
Additionally, would you happen to have some intuition on which parameters tend to be the most sensitive? For example, do you find that the extrinsics and temporal offset the greatest culprits in most cases, or is it difficult to generalize?
Lastly, I was curious if extrinsics play a role in the feature tracking? I noticed that there is a rotation matrix that is created with them and then used for ransac. Does this mean that bad extrinsics would also result in a lot of features being tossed during ransac, meaning a symptom of bad extrinsics could be the need to constantly supplement the feature list?
Thanks again for your time,
~Jeff
from r-vio.
Thanks @jeffcyu, I saw it. The importance of extrinsic parameters is that they connect the visual and inertial information in both front end (tracking) and back end (update). As you got negative depth estimate of feature, I may think this was caused by extrinsic calibration because the information for doing this feature recovery includes the relative IMU poses, feature tracking results, and extrinsic parameters. You need good extrinsic parameters to convert relative IMU poses to relative camera poses, or it would not be surprise to get a landmark being initialized behind the camera and to have those messages come out. Also, my 2-point ransac needs relative camera rotation information, while I can first get relative IMU rotation and then convert it to the camera frame using extrinsic parameters. So if those parameters are not reasonable enough, it may cause big problem, e.g., rejecting good tracks instead. Kalibr is the tool I used for calibration, which can give you both spatial and temporal parameters, while you need to know something about your sensor, such as IMU noise parameters, in order to get good calibration result. Also, please note that it is better to start R-VIO from stationary in order to avoid possible drift caused by my current initialization method.
from r-vio.
Hi @huaizheng, thanks for your good suggestions!
I ran my system through Kalibr and generated the intrinsics for the camera as well as the spatial and temporal extrinsics. Now, I'm noticing that the results of the tracking are quite good, but the feature depth parameter (rho) is still frequently becoming negative after the LM solve when performing updates.
I've also noticed that the timestamps from my camera are a bit inconsistent, and images aren't necessarily coming in at a fixed rate; could this be the root of the issue?
Lastly, regarding the Mahalanobis test, what would be the effects of relaxing the chi-squared threshold to something lower?
Thanks again for your time,
~Jeff
from r-vio.
@jeffcyu, it is normal to have a triangulation result with negative depth. For example, a feature may be tracked from an edge, but this could be either the closest or the farthest edge of a plane depending on the view point, so the depth ambiguity would cause the above result, but it is not used by estimator.
Unless you use some very cheap camera which has very low frame rate, the inconsistency of timestamps may not become a big issue.
The mahalanobis test plays a role in outlier rejection, in addition to the ransac in tracker. Its value reflects the consistency of feature measurements as I show in the paper, and this is why the current value is the degrees of freedom of all the measurements of a single feature.
from r-vio.
Related Issues (20)
- About the algorithm‘s harmful and unbelievable drifting when it worked in several static situations below HOT 6
- Please excuse me. Some questions about algorithmic equation deducing and a certain experiment operation details. HOT 2
- Running R-VIO on the Kitti dataset HOT 9
- Are the urban dataset available?
- No visualization is seen in RVIZ HOT 3
- Question about the Ω(w) Matrix. HOT 1
- Question About the F matrix in code. HOT 4
- Some tips about the propagate euqation HOT 3
- Question about the Integration estimate HOT 5
- 关于初始化问题的了解 HOT 1
- run error ubuntu18.04 HOT 2
- Question about the update. HOT 2
- Question about the urban driving dataset
- PUBLISH RATE SLOW OF VIO(px4_realsense_bridge_node)
- Question about the trick R-VIO used in the real environment. HOT 2
- Question about the IMU Propagation using Robocentric formulation HOT 22
- No output
- How to save a .txt track
- How to get a dataset?
- How to install Eigen Lib?
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 r-vio.