After many attempts, the final transformation matrix is the identity matrix
You can use pcl::registration::TransformationEstimationSVD, this is ok, and it is close to the target matrix after conversion
pcl::registration::TransformationEstimationSVD<pcl::PointXYZ, pcl::PointXYZ> trans_east;
Eigen::Matrix4f transformation_matrix;
trans_east.estimateRigidTransformation(*cloud_siftOutput1, *cloud_siftOutput2, *correspondences, transformation_matrix);
pcl::transformPointCloud(*cloud_sampled1, *cloud_in_filtered_Raw, transformation_matrix);