如何将opencv Mat矩阵保存到可以在Matlab中加载的文件中

Posted

技术标签:

【中文标题】如何将opencv Mat矩阵保存到可以在Matlab中加载的文件中【英文标题】:How to save opencv Mat matrix to a file that can be loaded in Matlab 【发布时间】:2019-04-27 22:13:18 【问题描述】:

我想在我的OpenCV 代码(Qt 内)中检查一些 Mat 矩阵的详细信息。据我所知,检查数据矩阵的一种简单方法是将其加载到Matlab。所以,我想将这些数据保存到一个可以在Matlab 中加载的文件中。任何人都有这样做的经验吗?一个具体的例子会很有帮助!!

【问题讨论】:

【参考方案1】:

OpenCV 使用 imwrite 提供了一个简单的example here。然后Matlab可以用imread打开jpg文件。

【讨论】:

使用 imwrite 可能无法按原样保存数据。由于图像类型的范围,一些负值被重置为零或截断更大的值? 您可以随时根据需要normalize。 但是我需要检查运行opencv代码期间生成的原始数据吗?有更好的方法吗? 签出this post。【参考方案2】:

opencv Mat 文件可以使用cv::format() (writeCSV) 保存到 csv 文件中,可以在 Matlab 中使用csvread.m 读取。

【讨论】:

以上是关于如何将opencv Mat矩阵保存到可以在Matlab中加载的文件中的主要内容,如果未能解决你的问题,请参考以下文章

opencv编程中cvMat到Mat如何进行数据转换?

opencv中如何将两个类型为Mat的矩阵合为一个矩阵?

在 opencv 中使用 Mat 类型时出错

如何读写Matlab的mat文件?

Mat的单通道作为矩阵Opencv

OpenCV基础---图像存储器(Mat类)