Good alignment of two point clouds but false transformation_matrix return

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Good alignment of two point clouds but false transformation_matrix return

Cieutat
This post has NOT been accepted by the mailing list yet.
Hi,

I display three point clouds in red, green and blue colors.



red and  green are computed by the following instructions relating to the cloudIn1 and CloudOut1 point clouds:

        icp1.setInputSource(cloudIn1);
        icp1.setInputTarget(cloudIn2);
        icp1.align(*cloudOut1);

I thus compute the transformation by the following instructions relating to the cloudOut2 point cloud:

        transformation_matrix = icp1.getFinalTransformation().cast<double>();
        pcl::transformPointCloud(*cloudIn2, *cloudOut2, transformation_matrix);

But cloudOut2 is wrong. I remark bad translations information in the transformation matrix.

Viewer instructions:
        viewer->addPointCloud<pcl::PointXYZI>(cloudIn1, single_color1, "sample_cloud_1");
        viewer->addPointCloud<pcl::PointXYZI>(cloudOut1, single_color2, "sample_cloud_2");
        viewer->addPointCloud<pcl::PointXYZI>(cloudOut2, single_color3, "sample_cloud_3");


does someone know this problem?

Thank you very much for your answer.

Jean-Marc




Loading...