Skip to content

Feature: JointIterativeClosestPoint - #344

Merged
rbrusu merged 3 commits into
PointCloudLibrary:masterfrom
sdmiller:adding_joint_icp
Dec 14, 2013
Merged

Feature: JointIterativeClosestPoint#344
rbrusu merged 3 commits into
PointCloudLibrary:masterfrom
sdmiller:adding_joint_icp

Conversation

@sdmiller

@sdmiller sdmiller commented Nov 2, 2013

Copy link
Copy Markdown
Contributor

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.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Copy link
Copy Markdown
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