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
Using PCL and LibPointMatcher together #176
Comments
Not a silly question at all. There is no bidding directly implemented in libpointmacher. You can have a look here for ROS conversion: libpointmatcher_ros If you want to send a patch, we would welcome it. We handle external communications by two ways:
|
Yeah I had given a look at this code: https://github.com/ethz-asl/ethzasl_icp_mapping/blob/master/libpointmatcher_ros/src/point_cloud.cpp it seems to make a conversion, so I would probably have to use that to make a conversion. But my question is, how do everyone who use that to build a map while moving ( I have seen that your library is very used to do that kind of stuff) capture the pointcloud from their sensor? There is no sense in saving and loading each pointcloud, they must captured them in libpointmatcher format directly or something. |
Libpointmatcher is only the library containing registration algorithms. Mapping of live point cloud are often done with ROS. An example application is the ethzasl_icp_mapper node, which is available for all to use or get inspired, but not supported as a stable release (by lack of time). |
Yeah yeah, I know that, but your registration algorithms only work with your specific point cloud data type, right? |
I'm not sure what is your question. Yes, our registration library only work with our specific point cloud data type (for obvious reasons). You need to convert other formats to I personally use directly |
Hi all, this is to build off what has been discussed here and construct a quick solution to use PCL and LibPointMatcher. Install [ libnabo ]Follow instructions to install libnabo.
Install [ libpointmatcher ]Follow instructions to install libpointmatcher.
Set Up [ libpointmatcher_ros ]Follow the instructions below to download and set up the Pseudo-PCL Wrapper library [ libpointmatcher_ros ]. Ensure that you have installed ROS1 on your workstation. Tested on ROS1 Melodic.
Modify Your Application ROS1 package to use libpointmatcher_ros
For use as a PointCloud Data, you can use ROS1 Library to convert sensor_msgs::PointCloud2 to pcl::PointCloud. |
That's great @cardboardcode! I'll add a link to your post in our tutorial section. |
This is super cool. I'd also add that when you convert between PCL and Libpointmatcher that can result in data loss, as pcl point types are usually limited to some fields known a-priori. It can be useful if you want to use a certain algorithm from PCL, but the representation is not as flexible as libpointmatcher's. |
Hi, this may looks like a silly question, I am starting to use the LibPointMatcher functions, but I would like to work both with them and the PCL functions. I mean, I have 2 pointclouds,and want to use both functions in those. Is there any way I can convert from one format (PointCloud) to the other (PointMatcher) directly? Or is it impossible to work with both of them at the same time? Because everything I have seen until now consists in loading the clouds from a file.
Thanks a lot for your help!
The text was updated successfully, but these errors were encountered: