c++下使用Open3d计算点云中每一个点的协方差
#include <string>
#include <Eigen>
#include <Open3D/Open3D.h>
using namespace open3d;
using namespace std;
int main(int argc, char* argv[]) {
//读取点云
std::shared_ptr<geometry::PointCloud> cloud(new geometry::PointCloud);
open3d::io::ReadPointCloud("C:/Users/a/Desktop/1.ply", *cloud);
std::vector<Eigen::Matrix3d> point_c = open3d::geometry::PointCloud::EstimatePerPointCovariances(*cloud,open3d::geometry::KDTreeSearchParamKNN(30));
for (int i = 0; i < point_c.size(); i++)
{
cout << point_c[i] << endl;
}
return 0;
}