Skip to content

[registration] GICP alternates optimizing trans and rot part#5269

Open
keineahnung2345 wants to merge 5 commits into
PointCloudLibrary:masterfrom
keineahnung2345:gicp_alternating
Open

[registration] GICP alternates optimizing trans and rot part#5269
keineahnung2345 wants to merge 5 commits into
PointCloudLibrary:masterfrom
keineahnung2345:gicp_alternating

Conversation

@keineahnung2345
Copy link
Copy Markdown
Contributor

Ref: #5180

/// \brief optimization functor structure for translation part
struct OptimizationFunctorWithIndicesTranslation
: public BFGSDummyFunctor<double, 3> {
OptimizationFunctorWithIndicesTranslation(GeneralizedIterativeClosestPoint* gicp)
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.

Need to update gicp_->current_transformation_ so const from const GeneralizedIterativeClosestPoint* removed.

g.head<3>() *= 2.0 / m;
dCost_dR_T *= 2.0 / m;
gicp_->computeRDerivative(x, dCost_dR_T, g);
// gicp_->computeRDerivative(x, dCost_dR_T, g);
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.

Should I remove all rotation-related codes from OptimizationFunctorWithIndicesTranslation?

break;
}
nr_iterations_++;
is_translation_turn_ = !is_translation_turn_;
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.

If current iteration is optimizing translation part, next iteration will optimize rotation part. There may be a better way.

@keineahnung2345
Copy link
Copy Markdown
Contributor Author

@mvieth GeneralizedIterativeClosestPoint::estimateRigidTransformationBFGS is revised so GeneralizedIterativeClosestPoint6D is affected. How about adding a bool to turn on/off this alternating algorithm?

@themightyoarfish
Copy link
Copy Markdown
Contributor

Any chance to get this moved forward?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants