strawlab / python-pcl

Python bindings to the pointcloud library (pcl)
http://strawlab.github.com/python-pcl/
Other
2.01k stars 700 forks source link

Point cloud Registration problem! Missing functions!? #236

Open radhen opened 6 years ago

radhen commented 6 years ago

I have installed python-PCL 1.8 on my Linux machine running Ubuntu 16.04. I am trying to register two point clouds using feature matching technique. I am referring to the official examples in this repository. This one in particular.

First issue I got was that my installed PCL package could not find make_NormalEstimationOMP() function. After some fiddling around I figured make_NormalEstimation() function does exists, which is a slower version of make_NormalEstimationOMP() but it works for me so I continued. Next problem that I ran into was the missing make_FeatureEstimation() function. I searched a whole lot on the internet but could not find anyone else running into the same issue. PFH descriptors are other similar keypoints that can be extracted for registration purpose but the python-PCL library does not have that either. There are plenty other functions that have been used in the official examples present in the repository but the the version that I installed does not have them.

Am I using an out-dated version of the library or the maintainers have decided not to include any feature matching registration technique? Can someone who is familiar with this issue please assist me?

martinakos commented 6 years ago

I wonder about the same. I try to run the examples in this repository and I find that many of the funtions used in examples don't exits. For example, the simple_visualize.py example. I can load a point cloud but then the function copyPointCloud() is called. there is no such a function, or anything like sounding in the cloud object. I wonder if this has to do with what version of PCL you use when you build python-pcl. I use PCL 1.7.

radhen commented 6 years ago

Thank you for your comment. I feel relieved that I am not the only one struggling with this issue. My conclusion is that the developers haven't yet transferred all the functionality from C++ PCL to Python and so I switched to using the C++ implementation of the library a few days back. I suggest you to do the same ;) Good luck!