Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pure ROS implementation ? #21

Open
YoanSallami opened this issue Jul 4, 2018 · 11 comments
Open

Pure ROS implementation ? #21

YoanSallami opened this issue Jul 4, 2018 · 11 comments

Comments

@YoanSallami
Copy link
Contributor

It could be useful to provide a pure ROS implementation of the Underworlds protocol as a Nodelet

@severin-lemaignan
Copy link
Collaborator

In principle, yes. It would require creating many new ROS messages (possibly directly from the protobuf definition?) and the performances might (or might not...) be impacted.

@YoanSallami
Copy link
Contributor Author

I will have a look into that... with a pure ROS implementation as a Nodelet we could benefit from zero copy pointer passing.

@YoanSallami
Copy link
Contributor Author

So... after some investigation, it is possible to implement the protocol with ROS(with minor modifications) by using the subscriber/publisher mechanism to benefit from zero copy. I started to implement it by modifying the code you made in C++. I will continue until having something usable in the next weeks... :)

@YoanSallami
Copy link
Contributor Author

I plan to use ROS packages to handle uncertainty in the protocol... And provide some clients that handle point clouds in order to combine multiple approach (model based and zero model based). I think I will have some results in the next weeks, so.. we could see this in details soon :)

@severin-lemaignan
Copy link
Collaborator

severin-lemaignan commented Jul 9, 2018 via email

@YoanSallami
Copy link
Contributor Author

YoanSallami commented Oct 1, 2018

uwds_first_test

Two first cpp clients an 'env_provider' and a 'scene_viewer' :) the distribution of the scene/timeline/meshes is done, I am actually working on the python clients then I will create a topology viewer and after that I want to play with keras in order to use neural networks in Underworlds :) I'll keep you posted

@YoanSallami
Copy link
Contributor Author

(In parallel I will work on the bullet simulation engine, and the octomap integration which is not that easy as I thought)

@severin-lemaignan
Copy link
Collaborator

Woohoo! Impressive! How did you get the mesh distribution to work?

@severin-lemaignan
Copy link
Collaborator

Btw the way, it would be great if you could open a PR here, that you (we) keep updating along the way.

@YoanSallami
Copy link
Contributor Author

YoanSallami commented Oct 3, 2018

For the mesh distribution I use ROS services, but I'm thinking about using topics and zero-copy pointer passing to allow the distribution of dynamic meshes (which could be generated from the point cloud of a kinect for example) to compute visibility whiteout having a model in the old fashion way (opengl rendering)

@YoanSallami
Copy link
Contributor Author

For the PR it will be difficult because it's not a fork, but a completely new ROS meta-package

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants