【发布时间】:2011-10-18 03:05:01
【问题描述】:
如何将 CV_32FC1 类型的 cv::Mat 转换为 CV_64FC1 类型(相当于从 float 更改为 double)?
我正在打开一个保存为 XML (cvSave) 但作为浮点数的矩阵。这意味着字段<dt> 在文件中具有值f。我需要将其更改为d 才能打开它。但我宁愿不这样做,而是想直接将它作为具有 double 类型元素的 Matrix 打开,或者稍后将其从 float 转换为 double。
以下是我打开文件的代码。
/** Load cv::Mat from XML file.
*/
cv::Mat loadMat(const std::string filename)
{
cv::Mat result;
cv::FileStorage fs(filename, cv::FileStorage::READ);
fs.getFirstTopLevelNode() >> result;
return result;
}
【问题讨论】: