-
Notifications
You must be signed in to change notification settings - Fork 7
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
Port point_cloud_transport to ROS2 #1
Conversation
|
Hi @john-maidbot, I'm also interested in contributing to this port. You have done a very nice initial work. Where do you plan to centralize this work ? Is this the main meta-ticket ? Let me know how I can help and how we can distribute tasks and reviews |
Hello @ahcorde , Thanks for your interest! Yes, my plan was to start making PR's into the I have not yet given a lot of thought to how I could distribute tasks and reviews (if you have ideas please lmk 🙂 ). But in the meantime, we could update the above TODO list to reflect what is being worked on and by whom? These were the next things I wanted to make progress on. If you have interest in one of these (or any of the other TODO's above), please let me know and I can mark them appropriately above (we could probably break these up):
Also, are you familiar with type adaptation by any chance? |
I read long time ago about the type adaptation but I'm not familiar. I need to read documentation as well ;) Let me know if you are already working in some of these two things, otherwise, I will start with the first bullet point |
awesome! I will take the second bullet point then. I have updated the TODO list above to reflect this. |
Signed-off-by: Alejandro Hernández Cordero <[email protected]>
@ahcorde just wanted to say thank you so much for all your recent PR's! 🚀 I sadly havent had much time to put into this project the past two weeks, but I should have a lot of time this week to put into this. |
Signed-off-by: Alejandro Hernández Cordero <[email protected]>
Hi. I'm also subscribed to this PR, so if you have any questions to me, just ask. But I won't be able to help with much ROS 2 specifics... |
Signed-off-by: Alejandro Hernández Cordero <[email protected]>
Signed-off-by: Alejandro Hernández Cordero <[email protected]>
Thank for your support @peci1 I started to migrate |
Draft PR to include point_cloud_transport in Rviz2 ros2/rviz#1008 |
Awesome, I wanted to do that for ROS 1 too, but haven't found the time for it yet :) Thanks! |
@peci1 I have a question for you, When I start the [ERROR] [1689244703.737228226] [point_cloud_transport]: Error encoding message by transport draco: Draco encoder returned code -1: Failed to encode point attributes... |
At least in ROS 1, the flag defaults to True: https://github.com/ctu-vras/point_cloud_transport_plugins/blob/2751d9a7fbcdceaa97673b9577d8d02746a459a0/draco_point_cloud_transport/cfg/DracoPublisher.cfg#L31 . Do I understand correctly that this error shows when you set the param to false before starting the publisher? |
This is the most recent code with the default parameters: The error appears with the default parameters, to get rid of the error I need to unset |
Hmm, can you get the stacktrace when the error is written? |
it's inside the draco::Status status = encoder.EncodePointCloudToBuffer(*pc, &encode_buffer); |
Maybe it needs the calls to If that doesn't help, I think you have to start debugging Draco. The problem should be discoverable in this function: https://github.com/google/draco/blob/9f856abaafb4b39f1f013763ff061522e0261c6f/src/draco/compression/point_cloud/point_cloud_encoder.cc#L101 . |
Signed-off-by: Alejandro Hernández Cordero <[email protected]>
Signed-off-by: Alejandro Hernández Cordero <[email protected]>
Signed-off-by: Alejandro Hernández Cordero <[email protected]>
Signed-off-by: Alejandro Hernandez Cordero <[email protected]>
@ahcorde are you seeing this error when you build by any chance? Or do you have any ideas about what the issue might be?
I wonder if its related to the FetchContent command? |
I finally have the pointcloud codec PR ready for review! 😃 (sorry it took so long, finding non-work time at my computer has been challenging this month) @ahcorde there is no rush, but could you please review that PR when you have time? It is a lot of changes, so if you would prefer, I can try to break it up into separate PR's? Just lmk 🙂 In the meantime, I will look into that build error either later today or later this week. |
ok found a seemingly related issue on ament_cmake: ament/ament_cmake#471 And it seems that just building without --symlink-install resolves the problem. |
PR in rosdistro to add |
* Update topic / transport name introspection * Fix some build errors * Replacing shapeshifter with rclcpp::serializedmessage * remove c_api * consolidate bindable code into codec * Update tests * Get pybind working * remove stale comments * Fix python nodes * doc update * Add pybind11_vendor * Update include/point_cloud_transport/point_cloud_codec.hpp * Add license to pybind_codec * param docs + standardize \param * remove references to ros wiki * make flake8 happy * cpplint --------- Signed-off-by: Alejandro Hernández Cordero <[email protected]> Co-authored-by: Alejandro Hernández Cordero <[email protected]>
#12) * Update package to support building offline * Exclude thirdparty folder from ament_lint * Suggestions to #12 - Fixed linters (#14) * Suyggestions to #12 - Fixed linters Signed-off-by: Alejandro Hernández Cordero <[email protected]> * missing dependency Signed-off-by: Alejandro Hernández Cordero <[email protected]> --------- Signed-off-by: Alejandro Hernández Cordero <[email protected]> --------- Signed-off-by: Alejandro Hernández Cordero <[email protected]> Co-authored-by: Alejandro Hernández Cordero <[email protected]>
Signed-off-by: Alejandro Hernández Cordero <[email protected]>
* Use whitelist instead of blacklist Signed-off-by: Alejandro Hernández Cordero <[email protected]> * Feedback Signed-off-by: Alejandro Hernández Cordero <[email protected]> * feedback Signed-off-by: Alejandro Hernández Cordero <[email protected]> * Updates to param namespacing (#16) --------- Signed-off-by: Alejandro Hernández Cordero <[email protected]> Co-authored-by: john-maidbot <[email protected]>
* Define declareParameters for raw pub/sub * Add queue_size version of advertise * Fix copyright linting
* Add gitignore * Test coverage for message filter subscriber * Remove cras expected.hpp * Standardize docstrings * Fix typo
I will merge this PR and I will open issue for the remaining open tasks |
Does this mean you're about to release the package in the current state? |
I would love to release the package at some point (at least in rolling) |
Good. I wanted to go through the code and have a look at the points where it diverges from the ROS 1 version, and probably discuss some of the points. I think I might have time for it this weekend ;) |
This is a VERY rough draft of my attempts to port point_cloud_transport from ROS to ROS2. Comments/feedback are very welcome but just be aware that it is a very early port and is not yet reflective of the final form I have in mind.
Some key notes on the current status of the port:
TODO (Not necessarily in sequential order):
Ideas that should be their own PR's: