matlab文件读写库(matio),了解一下?
一、引言
MATLAB是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。一言以蔽之——很牛很强大!
如果在项目中把数据保存为mat文件,这对于算法分析来说简直就是雪中送炭啊。matlab可是PC软件啊,在PC上借助matlab生成mat格式文件很好实现,那如何在嵌入式项目中生成matlab文件呢?
网上搜索资料发现一个matio(MAT File I/O Library),matio是一个基于C语言的对matlab格式文件读写操作的库。基于C语言的话,那可移植性自然是极好的。
二、下载,编译
那matlab文件格式到底长啥样子呢?
MAT-File FormatMathWorks公司官网有这个文件格式的说明。这篇文档描述了MAT-File的Level 4和Level 5的格式说明,我们就理解为MAT-File的版本4和版本5吧,上面说了版本4比较老,版本5算是比较新的,但是现在其文件版本已经7.3了,下面会说到这个事情。总之,说了这个matlab文件格式,是二进制格式,不是给人看的,看起来很不直观。
我们大概了解一下matlab文件格式就行了
matio 1.5.12下载。因为我们是在嵌入式产品上做,所以要交叉编译,首先配置好自己的环境变量。在编译之前,我们还是先看一下人家matio的帮助文档,会有助于我们编译哦。
文档中有编译指导,文档中也明确写出,支持mat文件的V4、V5、V7.3,都需要依赖zlib库,但是V7.3还需要依赖hdf5库。我们这里不需要v7.3版本,所以不用hdf5。
我们心里已经有个谱了,开始进行编译。
zlib库编译参看我之前文档交叉编译zlib
解压matio-1.5.12.tar.gz
tar zxvf matio-1.5.12.tar.gz cd matio-1.5.12/ ./configure --host=arm-none-linux-gnueabi --prefix=$PWD/install --with-default-file-ver=5 --with-zlib=/home/...</