Rigid transformation estimation using Levenberg Marquardt Method returns undefined rotation matrix

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

Rigid transformation estimation using Levenberg Marquardt Method returns undefined rotation matrix

ravijoshi
I am trying to estimate rigid transformation between two point sets using
Levenberg Marquardt Method. Unfortunately,  it returns undefined rotation
matrix. Please see the code snippet below-

Eigen::Matrix4f T_lm;
const pcl::registration::TransformationEstimationLM<pcl::PointXYZ,
pcl::PointXYZ> trans_est_lm;
trans_est_lm.estimateRigidTransformation(source_traj, target_traj, T_lm);
cout << T_lm << endl;

Below is the transformation matrix-
-nan      -nan      -nan -0.723583
-nan      -nan      -nan  0.521862
-nan      -nan      -nan  0.961459
   0         0         0         1

I am using PCL 1.8.1.99 in Ubuntu 14.04 LTS PC. I am wondering, why the
rotation matrix is undefined? Am I doing something wrong?



--
Sent from: http://www.pcl-users.org/
_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users
Reply | Threaded
Open this post in threaded view
|

Re: Rigid transformation estimation using Levenberg Marquardt Method returns undefined rotation matrix

Sérgio Agostinho
Its looks like the SVD decomposition exploded.

Do you have the correspondences between both point clouds or are you
using things in a Procrustes style fashion?

Cheers



_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users

signature.asc (836 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Rigid transformation estimation using Levenberg Marquardt Method returns undefined rotation matrix

ravijoshi
Hi Sérgio,

Yes, the point set belongs to a rigid object. In fact
TransformationEstimationSVD is working fine but not
TransformationEstimationLM

-
Thanks
Ravi



--
Sent from: http://www.pcl-users.org/
_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users
Reply | Threaded
Open this post in threaded view
|

Re: Rigid transformation estimation using Levenberg Marquardt Method returns undefined rotation matrix

Sérgio Agostinho

Have you tried seeing if the issue is happening with any cloud or just with the one you're currentlyworking on?

  1. Generate a point cloud with ten random points
  2. Apply a transformation to it and created a transformed copy of the original one

Run TELM again and report results please

Cheers



_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users

signature.asc (836 bytes) Download Attachment