在OpenCV中保存并加载浮点值

时间:2012-07-25 16:41:15

标签: c++ opencv

我正在对图像应用滤镜,这会导致滤镜响应不在[0 255]范围内。我将它们存储在IPL_DEPTH_64F类型的CvMat中。我试图用以下方法保存它:

FileStorage fs(outFile, FileStorage::WRITE);
fs.open(outFile, FileStorage::WRITE);       
fs << "filter" << filter_mat;    
fs.release();

不幸的是,这会导致文件的值介于0到255之间。显然这不能正确加载! 所以问题是:如何保存这样的矩阵呢?怎样才能再次使用OpenCV加载?似乎几乎没有任何文件可用!

提前致谢

干杯, 迈克尔

1 个答案:

答案 0 :(得分:0)

好的,我发现了错误!我使用 IPL_DEPTH_64F 类型创建了矩阵。当我将其更改为 CV_64FC1 时,它可以正常工作。 感谢Martin的帮助:))