3d-icp-cov | New Approach to 3D ICP Covariance Estimation
kandi X-RAY | 3d-icp-cov Summary
kandi X-RAY | 3d-icp-cov Summary
3d-icp-cov is a Python library typically used in Manufacturing, Utilities, Machinery, Process applications. 3d-icp-cov has no bugs, it has no vulnerabilities, it has a Permissive License and it has low support. However 3d-icp-cov build file is not available. You can download it from GitHub.
In mobile robotics, scan matching of point clouds using Iterative Closest Point (ICP) allows estimating sensor displacements. It may prove important to assess the associated uncertainty about the obtained rigid transformation, especially for sensor fusion purposes. We propose a novel approach to 3D ICP covariance computation that accounts for all the sources of errors as listed in Censi's pioneering work, namely wrong convergence, underconstrained situations, and sensor noise. Our approach builds on two facts. First, ICP is not a standard sensor: owing to wrong convergence the concept of ICP covariance per se is actually meaningless, as the dispersion in the ICP outputs may largely depend on the accuracy of the initialization, and is thus inherently related to the prior uncertainty on the displacement. We capture this using the unscented transform, which also reflects correlations between initial and final uncertainties. Then, assuming white sensor noise leads to overoptimism: ICP is biased, owing to e.g. calibration biases, which we account for. Our solution is tested on publicly available real data ranging from structured to unstructured environments, where our algorithm predicts consistent results with actual uncertainty, and compares very favorably to previous methods. We finally demonstrate the benefits of our method for pose-graph localization, where our approach improves accuracy and robustness of the estimates.
In mobile robotics, scan matching of point clouds using Iterative Closest Point (ICP) allows estimating sensor displacements. It may prove important to assess the associated uncertainty about the obtained rigid transformation, especially for sensor fusion purposes. We propose a novel approach to 3D ICP covariance computation that accounts for all the sources of errors as listed in Censi's pioneering work, namely wrong convergence, underconstrained situations, and sensor noise. Our approach builds on two facts. First, ICP is not a standard sensor: owing to wrong convergence the concept of ICP covariance per se is actually meaningless, as the dispersion in the ICP outputs may largely depend on the accuracy of the initialization, and is thus inherently related to the prior uncertainty on the displacement. We capture this using the unscented transform, which also reflects correlations between initial and final uncertainties. Then, assuming white sensor noise leads to overoptimism: ICP is biased, owing to e.g. calibration biases, which we account for. Our solution is tested on publicly available real data ranging from structured to unstructured environments, where our algorithm predicts consistent results with actual uncertainty, and compares very favorably to previous methods. We finally demonstrate the benefits of our method for pose-graph localization, where our approach improves accuracy and robustness of the estimates.
Support
Quality
Security
License
Reuse
Support
3d-icp-cov has a low active ecosystem.
It has 72 star(s) with 12 fork(s). There are 6 watchers for this library.
It had no major release in the last 6 months.
There are 2 open issues and 1 have been closed. On average issues are closed in 3 days. There are no pull requests.
It has a neutral sentiment in the developer community.
The latest version of 3d-icp-cov is current.
Quality
3d-icp-cov has 0 bugs and 0 code smells.
Security
3d-icp-cov has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
3d-icp-cov code analysis shows 0 unresolved vulnerabilities.
There are 0 security hotspots that need review.
License
3d-icp-cov is licensed under the MIT License. This license is Permissive.
Permissive licenses have the least restrictions, and you can use them in most projects.
Reuse
3d-icp-cov releases are not available. You will need to build from source code and install.
3d-icp-cov has no build file. You will be need to create the build yourself to build the component from source.
Installation instructions, examples and code snippets are available.
It has 1645 lines of code, 101 functions and 7 files.
It has high code complexity. Code complexity directly impacts maintainability of the code.
Top functions reviewed by kandi - BETA
kandi has reviewed 3d-icp-cov and discovered the below as its top functions. This is intended to give you an instant insight into 3d-icp-cov implemented functionality, and help decide if they suit your requirements.
- Summarize the results of a GPS sensor
- Return the T_gt for a given sequence
- Return a pickled object
- Dump a dict to a pickle file
- Compute coverage metrics for a given scan
- Get the MCMC results for a scan
- Gets T_ut and T_init_ut
- Scented transform
- Compute the coverage plot for a given sequence
- Contour contour of ellipses
- Export results to latex
- Plot the results of the GP regression
- Compute the pose graph
- Perform pgp conversion
- Calculate coverage for a given sequence
- Calculate Monte - carlo
- Calculate the uncented transform
- Compute the Jacobian of the Jacobian
- Calculate the censors for a given sequence
- Generate the Jacobian of the Jacobian
- Convert rotation matrix to polar coordinates
- Convert a rotation matrix into a rotation matrix
- R Calculate the AD matrix for a given T
- Exponential exp
- Generate a wedge
- Compute the vee
- Compute the logarithm of the log transform
Get all kandi verified functions for this library.
3d-icp-cov Key Features
No Key Features are available at this moment for 3d-icp-cov.
3d-icp-cov Examples and Code Snippets
No Code Snippets are available at this moment for 3d-icp-cov.
Community Discussions
No Community Discussions are available at this moment for 3d-icp-cov.Refer to stack overflow page for discussions.
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install 3d-icp-cov
Clone this repo
Install the following required Python packages, matplotlib, numpy, scipy, alphashape, e.g. with the pip command
Clone our fork of the libpointmatcher library and build them the library
Download the Challenging data sets for point cloud registration algorithms. Extract the zip file of each sequence corresponding to the point clouds in base frame in the data folder
Modify paths and parameters in the class Param at the end of python/utils.py. Launch the main file. Be patient, it will reproduce the results of the paper.
Modify paths and parameters in the class Param at the end of python/utils.py
Launch the main file cd python python3 main.py Be patient, it will reproduce the results of the paper.
Install the following required Python packages, matplotlib, numpy, scipy, alphashape, e.g. with the pip command
Clone our fork of the libpointmatcher library and build them the library
Download the Challenging data sets for point cloud registration algorithms. Extract the zip file of each sequence corresponding to the point clouds in base frame in the data folder
Modify paths and parameters in the class Param at the end of python/utils.py. Launch the main file. Be patient, it will reproduce the results of the paper.
Modify paths and parameters in the class Param at the end of python/utils.py
Launch the main file cd python python3 main.py Be patient, it will reproduce the results of the paper.
Support
For any new features, suggestions and bugs create an issue on GitHub.
If you have any questions check and ask questions on community page Stack Overflow .
Find more information at:
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page