我知道如何将cv::Mat
实例加载/保存到XML文件中(参见this question)。
但我真正需要的是解析包含XML的std::string
(或char *
),然后获取cv::Mat
。假设我从数据库中获取XML,而不是从文件中获取XML。
这可能吗?
答案 0 :(得分:18)
你可以从OpenCV 2.4.1开始。
以下是release notes的代码示例:
//==== storing data ====
FileStorage fs(".xml", FileStorage::WRITE + FileStorage::MEMORY);
fs << "date" << date_string << "mymatrix" << mymatrix;
string buf = fs.releaseAndGetString();
//==== reading it back ====
FileStorage fs(buf, FileStorage::READ + FileStorage::MEMORY);
fs["date"] >> date_string;
fs["mymatrix"] >> mymatrix;