-
-
Notifications
You must be signed in to change notification settings - Fork 4.6k
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
search::KdTree accepts different types of KdTree #81
Conversation
Hi, Was this discussed in any way on the mailing lists? I would completely say no to this as it brings tons of trouble with no advantages to 95% of the users. I agree that there is the use case of using something different than FLANN, but how many people will opt for that? Plus, we do not have a FLANN-alternative in PCL right now. Cheers, |
Hi @aichim, I'm working on a KdTree implementation based on https://code.google.com/p/nanoflann/ and I had to create my own pcl::search::KdTree class to use it in the segmentation algorithms. I didn't bring it up in the mailing lists because I had the code already and I thought it would be easier to discuss it here on GitHub. If the proper way to is to go to the mailing list first I think it would be nice to create a CONTRIBUTING.md file on the repository (https://github.com/blog/1184-contributing-guidelines). |
I agree, this patch might not be relevant to a lot of users. But PCL shouldn't be bound to FLANN. Since this patch only slightly extends the interface of the pcl::search::KdTree wrapper class without changing its behavior, I don't see lot's of trouble here. |
Hi, @fran6co That is very nice, thanks for the initiative! And thanks for the suggestion with the .md file. @both, check this out, I don't need to explain more - http://en.wikipedia.org/wiki/You_aren't_gonna_need_it . So I still vote for a no on this for now, as it is really not needed, and we should not add things just for the sake of it, especially when it comes to low-level functionality and very essential things. Cheers, |
I'm working on the benchmarking of the nanoFLANN port and if it's better than the current implementation I'll do a PR of it. (I made the PR anyways, It's better to get some reviews on it even if it's not faster) As much as I agree with YAGNI principle, I don't see how this PR is against that principle as it doesn't:
I think the pcl::search::kdtree should accept anything that is a kdtree, just to keep things modular. |
@jkammerl , is it a go from your side? |
Looks good to me, without any problems. I'll defer to Julius's judgement though if this should be included or not. He's more familiar with search methods in PCL than I am. |
What about this one? |
Sorry for losing track on this one. It would be nicer to avoid the additional template parameter by instantiating the search class with the desired kdtree instance (and use it as a class member). But since this would require a larger revision of the search interface, I am fine with this patch. |
search::KdTree accepts different types of KdTree
Now search::KdTree can be used with different KdTree implementations.