我正在尝试从.yaml文件加载矩阵,但OpenCV给出了以下错误:
OpenCV错误:icvYMLParseValue中的解析错误(vocabularytraindata.yml(132841098):缺少元素之间)。
这是写入存储文件,它工作正常:
UITabBar
这是从存储文件中读取的代码:
//save the training data
cv::FileStorage fs;
fs.open(vocabTrainDataPath, cv::FileStorage::WRITE);
fs << "VocabTrainData" << vocabTrainData;
fs.release();
我确信已生成yaml文件,并且我已正确设置文件路径。
答案 0 :(得分:0)
我已经解决了这个问题。我之前使用的vocabTrainDataPath只是vocabularytraindata.yml。因为我认为它与可执行文件放置了相同的路径。但是当写入存储文件时,它成功了。但是从存储文件中读取,我需要设置来自\ home的total vocabularytraindata.yml路径。然后它奏效了。
答案 1 :(得分:0)
这对我的情况没有帮助。似乎OpenCV 3.4.1中的源代码有问题。解决方法是使用.JSON文件扩展名。