我正在使用OpenCV中机器学习库中的CvANN_MLP函数,并且要将受过训练的网络写到文件中。使用SIFT时,我已经可以使用cv::FileStorage来完成关键点和描述符的操作,但是当我尝试在此处执行操作时,它将无法正常工作。

机器学习的头文件始终使用CvFileStorage,但如果没有收到“CvFileStorage fs具有初始化程序但类型不完整”错误,则无法声明此对象,而传入cv::FileStorage根本没有帮助。

我认为这可能是因为我没有最新的OpenCV版本,但是我检查了SVN存储库,并且它的原型(prototype)中仍然包含CvFileStorage。

最佳答案

Will编写的解决方案,最初是其问题的一部分。
cv::FileStorage类中隐藏的内容如下:

// returns the underlying CvFileStorage*
CvFileStorage* operator *() { return fs; }
const CvFileStorage* operator *() const { return fs; }

07-24 09:37