我使用openCV。我已经训练了SVM,但是输出文件太大(在svm.save()之后)。我想在iPhone的应用程序中使用经过训练的SVM,但文件约为300 Mb。存档后文件大小约为6 Mb。
所以,我的问题是:
1)我可以在iPhone应用程序启动时使用bzip2提取存档,然后将此文件与SVM::load一起使用吗?
2)CvSVM的保存/加载方法可以使用二进制格式吗?
3)我需要输出文件中的所有信息来进行预测吗?
4)是否存在针对此问题的更好的解决方案?
先感谢您!
最佳答案
您可以尝试使用bzip库保存svm对象(如果可能的话,我不知道该库),然后尝试使用bzip将对象加载到内存中,例如使用指向它的指针。 CvSVM.load()
生成带有支持 vector 和一些其他数据的xml文件。我不知道它是否是可选的,但我对此表示怀疑。
https://stackoverflow.com/questions/8967267/