我已经在OpenCV中提取了SIFT特征描述符。下一步是训练一个SVM,但在训练之前,我认为我需要将提取的特征保存到文件中,以便进行训练…
所以我的问题是:1- 如何保存这些矩阵?2- 我想知道如何处理这些特征,我已经为一张图片提取了特征,但我需要为同一对象(例如可乐)的多张不同姿势的图片提取特征,并将它们保存到一个文件中…
你有任何关于如何在OpenCV中实现的想法吗?
谢谢…
回答:
-
如果你想将OpenCV的Mat保存到文件中,可以查看他们提供的FileStorage类。对于你的需求,可能会像这样:
FileStorage fs("features.yml", FileStorage::WRITE);Mat colaFeaturesXYZ;// 计算SIFT特征向量到colaFeaturesXYZ;fs << "cola_pose_xyz" << colaFeaturesXYZ;
-
如果你想将这些特征存储在数据库中以便后续搜索,你可以考虑查看OpenCV提供的bagofwords_classification.cpp示例。这可能包含你所需的所有功能。