MATLAB mat文件转TXT文件
因为本菜鸟之前一直使用MATLAB做点云处理,所以数据都是mat文件,为了使用PCL库,需要先转化为TXT文件,在使用C++PCL将TXT文件转化为PCD文件。。。。。下面是MATLAB代码,不需要的同学请自动忽略。
fid=fopen('pipline.txt','wt');
fprintf(fid,'%12.8f %12.8f %12.8f\n',pipline);%读取是按列进行读取
fclose(fid);
注意:第二行代码中的“pipline”就是待转化的mat文件,是一个3*n的矩阵,n表示点云的个数,一定要是3* n的形式,因为fprintf函数是按列读取。
C++ TXT转PCD文件
进入正题,直接上代码:
#include
#include
#include
#include
#include
#include
using namespace std;
int main(int argc, char** argv)
{
//定义一种类型表示TXT中xyz
typedef struct TXT_Point_XYZ
{
double x;
double y;
double z;
}TOPOINT_XYZ;
//读取txt文件
int num_txt;
FILE *fp_txt;
T