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

Feature: JointIterativeClosestPoint #344

Merged
merged 3 commits into from
Dec 14, 2013

Conversation

sdmiller
Copy link
Contributor

@sdmiller sdmiller commented Nov 2, 2013

When doing, e.g., extrinsic calibration between two sensors, it's common to want to leverage multiple observations and solve for a single global transform. JointIterativeClosestPoint implements a very generic version of that. It uses the IterativeClosestPoint framework, but allows for multiple pairs of Source/Target clouds to be given. It then uses the given CorrespondenceEstimation methods to compute correspondences separately, but solves for a global transform.

A few things which would still be nice:

  • As referenced in other issues, our CorrespondenceRejector class doesn't currently expose any sort of virtual "addInputSource/Target" functionality. So there's no way to do that generically here. For any data-driven rejector (just about all of them?), this method probably won't work.
  • It'd be great to have generic cloning functionality for CorrespondenceEstimators. Then a user could simply set one, and I'd clone it for all pairs of clouds. Currently it either requires the user to manually set a separate one for each, or uses one default method.
  • To keep the API the same, I still have it return an output cloud (empty), and use aggregated versions of the source and target clouds for parent-level calls, like Registration::computeFitness. This could be handled more nicely.

*
* Point Cloud Library (PCL) - www.pointclouds.org
* Copyright (c) 2010-2011, Willow Garage, Inc.
* Copyright (c) 2012-, Open Perception, Inc
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No problem -- did you just mean adding a self-copyright (the "respective authors" section? I don't really care about that, but I can add if it's now required.) Otherwise they seem identical to me, modulo maybe some spacing issues. I just pushed a cut-and-pasted version to cover my bases

rbrusu added a commit that referenced this pull request Dec 14, 2013
Feature: JointIterativeClosestPoint
@rbrusu rbrusu merged commit 43e5ac5 into PointCloudLibrary:master Dec 14, 2013
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

Successfully merging this pull request may close these issues.

3 participants