OpenCV机器学习函数需要CvFileStorage*而不是cv :: FileStorage*

Wil*_*ill 13 c++ opencv machine-learning computer-vision neural-network

我正在使用OpenCV中的机器学习库中的CvANN_MLP函数,我想将训练好的网络写入文件.在使用SIFT时,我已经能够使用cv :: FileStorage为关键点和描述符做得很好,但是当我尝试在这里做它时它不起作用.

机器学习的标题始终使用CvFileStorage,但是我不能在没有得到"CvFileStorage fs has initializer但是类型不完整"错误的情况下声明这个对象,并且传入cv :: FileStorage根本没有帮助.

我想也许这是因为我没有OpenCV的最新版本,但我检查了SVN存储库,它的原型中仍然有CvFileStorage.

Roo*_*ook 1

Will编写的解决方案,最初作为问题的一部分发布。

隐藏在cv::FileStorage类中的内容如下:

// returns the underlying CvFileStorage*
CvFileStorage* operator *() { return fs; }
const CvFileStorage* operator *() const { return fs; }
Run Code Online (Sandbox Code Playgroud)