gpt4 book ai didi

c++ - 创建 CvSVM vector 的 vector (数组)

转载 作者:行者123 更新时间:2023-11-28 06:00:58 24 4
gpt4 key购买 nike

我想知道如何创建“CvSVM”对象的 vector 。我试过使用:

vector<CvSVM> svm_bank;

但每当我使用:

new_model.train(training_inputs, targets, Mat(), Mat(), svm_params);
svm_bank.push_back(new_model);

我收到这个错误:

c:\program files (x86)\microsoft visual studio 12.0\vc\include\xmemory0(593): error C2248: 'CvSVM::CvSVM' : cannot access private member declared in class 'CvSVM'

我使用 Visual Studio 2013,OpenCV 版本 2.4.11。

最佳答案

我找到了解决方案。这是 Miki 的修改版本。由于 Miki 的代码正在编译,但在代码执行时给出了运行时错误。

这解决了问题。

#include <opencv2\opencv.hpp>
#include <vector>

using namespace std;
using namespace cv;

int main()
{
vector<Ptr<SVM>> svm_bank;

for (int i = 0; i < 3; ++i)
{
Mat trainData;
Mat responses;

/*Code for trainingData and
responses */

SVM *new_model;
new_model = new SVM;
new_model->train(trainData, responses);

svm_bank.push_back(new_model);
}

for (int i = 0; i < 3; ++i)
{
Mat samples;
Mat results;
svm_bank[i]->predict(samples, results);
}

return 0;
}

关于c++ - 创建 CvSVM vector 的 vector (数组),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33297729/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com