一、OBJ与PCD相互转换
OBJ(Wavefront OBJ)和PCD(Point Cloud Data)是两种不同的文件格式,用于存储不同类型的3D数据。OBJ文件通常用于表示3D模型的几何形状和纹理信息,而PCD文件通常用于表示点云数据,例如激光扫描数据或3D传感器捕获的点云。
1.converter.h
#ifndef CONVERTER_H
#define CONVERTER_H
#include <string>
class Converter
{
public:
static void pcd2obj(const std::string& inputFilename, const std::string& outputFilename = "output.obj");
static void obj2pcd(const std::string& inputFilename, const std::string& outputFilename = "output.pcd");
};
#endif // CONVERTER_H
2. converter.cpp
#include "converter.h"
#include <pcl/point_types.h>
#include <pcl/io/pcd_io.h>
#include <fstream>
void Converter::pcd2obj(const std::string& inputFilename, const std::string& outputFilename)
{
pcl::PointCloud<pcl::PointXYZ> cloud;