C++ EM算法,读取并保存XML文件
我想保存我的分类器,然后当我试图读回它时,它抛出分段错误。我试图弄明白,我认为这是opencv的一个错误 这是我的密码:C++ EM算法,读取并保存XML文件,c++,opencv,C++,Opencv,我想保存我的分类器,然后当我试图读回它时,它抛出分段错误。我试图弄明白,我认为这是opencv的一个错误 这是我的密码: bool result = model.train(samples,Mat(),ps,&lables); printf("Train Result %d\n",result); CvFileStorage *fs; fs = cvOpenFileStorage("skin_new.xml",NULL, CV_S
bool result = model.train(samples,Mat(),ps,&lables);
printf("Train Result %d\n",result);
CvFileStorage *fs;
fs = cvOpenFileStorage("skin_new.xml",NULL, CV_STORAGE_WRITE);
model.write_params(fs);
cvReleaseFileStorage( &fs );
CvFileStorage *fs1;
//Reading back XML file
fs1 = cvOpenFileStorage("skin_new.xml",NULL , CV_STORAGE_READ);
classifier.read_params(fs1,NULL);
cvReleaseFileStorage( &fs1 );
printf("XML reading done\n");
//the two dominating colors
Mat means = model.getMeans();//This step leads to segmentation error
我使用的是OpenCV 2.3.1。我认为您是在Linux操作系统中开发的。因此,我认为您没有对skin_new.xml文件的访问权限 你可以用
chmod 777 skin_new.xml
但这是暂时的。我也面临着同样的问题。您应该发布更多的代码,和/或检查前面的任何步骤是否在运行时失败(即确保对象正确初始化,文件成功打开,等等)。此外,为什么要混合C和C++ OpenCV API?