您的位置:首页 > 编程语言 > MATLAB

Matlab中的数组保存为csv文件,在VC里面使用

2014-12-15 18:10 369 查看
由于图像处理用到Matlab的一些算法,得到一些数组数据(三维重构的深度数据)。

在VC中使用OpenGL画图,需要使用这些数据(深度数据)做显示用。

在Matlab下使用语句:csvwrite('depthMap',depthMap);
//后面的depthMap是数组变量,前面的depthMap是csv文件名。

函数ReadCsv是读取csv文件(二维数组)到指定变量depthMap。

变量的定义:

double depthMap[240][320] = {0}; //深度图

调用函数:

//读取csv文件:深度图depthMap.csv
ReadCsv(depthMap);
//调用函数读取CSV文件中的数据

void ReadCsv(double depthMap[][320])
{
FILE* fd;

errno_t err = fopen_s(&fd, "depthMap","r");
if( err )
printf_s( "The file depthMap.csv was not opened\n" );
else
{
// Set pointer to beginning of file:
//fseek( fd, 0L, SEEK_SET );

int i = 0;
while (i < 240)
{
int j = 0;
double a = 0;
while (j < 319)
{
fscanf(fd, "%lf,", &a);
depthMap[i][j] = a;
++ j;
}
fscanf(fd, "%lf\n", &a);
depthMap[i][j] = a;
++ i;
}
}
fclose(fd);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐