HKUST-Aerial-Robotics / grad_traj_optimization

Gradient-Based Online Safe Trajectory Generator
GNU General Public License v3.0
361 stars 111 forks source link

Integration with octomap #5

Closed Changliu52 closed 6 years ago

Changliu52 commented 6 years ago

Hi, Thanks for sharing the nice code. I wonder do you have any suggestion how to integrate it with octomap?

Many thanks.

Kind Regards, Chang

AlexisTM commented 6 years ago

@Changliu52 Hey, isn't it octomap that's used here? (promotional video of this repo) https://www.bilibili.com/video/av16979476/

USTfgaoaa commented 6 years ago

@AlexisTM No there is no Octo-map used in that paper. Actually, there are just voxels visualized in the video.

USTfgaoaa commented 6 years ago

@Changliu52 Integration with Octo-map just requires a different way to query the distance value in a cost field. You may consider to additionally maintain a local distance field for optimizing the trajectory.

Changliu52 commented 6 years ago

Thank you very much for the reply. Ok. In this case, it doesn't have to be an octomap.

I assume it has its own built-in mapping engine. If I have pose information from VINSMONO and depth pointcloud from stereo camera, is there a way to update it's internal map just using this information?

If yes, maybe you could point out some example code to do that?

Ideally, I also want to be able to delete points in the map, to maintain constant local map.

Thank you in advance.

Chang

USTfgaoaa commented 6 years ago

@Changliu52 Yes we have an isolated mapping module. You can check this repo : https://github.com/HKUST-Aerial-Robotics/VI-MEAN as well as related publications. In our system, the mapping module maintains a global hashed voxel map, and in planning module I maintain a constant local map, just by filtering the voxels and keeping only voxels in a local range.

Changliu52 commented 6 years ago

Great to know. Thanks Fei. How do you suggest to interface the map generated by VI-MEAN with the grad_traj_optimization? I couldn't find any information on this.

Also, I noticed that VI-MEAN has its own self_calibration_estimator builtin. How is it compare against vinsmono? It doesn't seem to allow people to raise issue in the VI-MEAN repo.

Thanks again.

USTfgaoaa commented 6 years ago

@Changliu52 For the first question. grad_traj_optimization just provides a planning core, you have to write a map maintainer/interface for engineering usage. Basically, you'd better receive the voxels published by VI-MEAN and insert them into a local/global map.

For the second question, I think they are almost equivalent. The author of VI-MEAN also owns the authorship of a VI system which is the predecessor of vinmono and is used by our group.

Changliu52 commented 6 years ago

OK. Cool! Thank you very much for the information.