Advertisement

C++ 读取和写入Matlab mat文件时的注意点

阅读量:

基于Max文件的导入与操作流程中, 我们能够通过Matlab平台调用C语言函数进行相应的数值计算与图形绘制. 在实际的数据处理过程中, 希望将通过Matlab分析得到的数据以MAT格式保存. 随后可以通过C++语言读取该MAT文件并进行后续的可视化处理. 为了方便后续的操作, 我们通常会将这个MAT数据文件作为模型文件使用. 在OpenCV框架中, 模型文件默认会将模型保存为.xml格式.

首先我们必须配置VS工程,请参考<>中的详细说明。

在实际操作中有一些注意事项可以帮助初学者缩短调试时间。首先建议掌握一个基本概念:Matlab存储数据采用列优先的方式(Contrastingly, in C++, data is stored in row-major order)。例如一张尺寸为10×10的图片,在Matlab中索引I(10)对应左下角的位置,在C++中则对应右上角的位置

首先先看一个读取Mat文件的例子:

MATFile *pmatFile;

mxArray *pMxArray;

int A_N, A_M;

float *A;

Path += "A.mat";

pmatFile = matOpen(Path.data(),"r");

pMxArray = matGetVariable(pmatFile, "A");

A_M = mx

全部评论 (0)

还没有任何评论哟~