我正在使用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; }