Fix missing format when writing Algorithm-based objects
Added a writeFormat() method to Algorithm which must be called by the write() method of derived classes.
This commit is contained in:
@@ -1151,6 +1151,7 @@ public:
|
||||
return;
|
||||
int i, l_count = layer_count();
|
||||
|
||||
writeFormat(fs);
|
||||
fs << "layer_sizes" << layer_sizes;
|
||||
|
||||
write_params( fs );
|
||||
|
||||
@@ -387,6 +387,7 @@ public:
|
||||
if( roots.empty() )
|
||||
CV_Error( CV_StsBadArg, "RTrees have not been trained" );
|
||||
|
||||
writeFormat(fs);
|
||||
writeParams(fs);
|
||||
|
||||
int k, ntrees = (int)roots.size();
|
||||
|
||||
@@ -770,6 +770,7 @@ public:
|
||||
|
||||
void write(FileStorage& fs) const
|
||||
{
|
||||
writeFormat(fs);
|
||||
fs << "training_params" << "{";
|
||||
write_params(fs);
|
||||
fs << "}";
|
||||
|
||||
@@ -466,6 +466,7 @@ public:
|
||||
|
||||
void write( FileStorage& fs ) const
|
||||
{
|
||||
writeFormat(fs);
|
||||
impl->write(fs);
|
||||
}
|
||||
|
||||
|
||||
@@ -547,6 +547,7 @@ void LogisticRegressionImpl::write(FileStorage& fs) const
|
||||
{
|
||||
CV_Error(CV_StsBadArg,"file can't open. Check file path");
|
||||
}
|
||||
writeFormat(fs);
|
||||
string desc = "Logisitic Regression Classifier";
|
||||
fs<<"classifier"<<desc.c_str();
|
||||
fs<<"alpha"<<this->params.alpha;
|
||||
|
||||
@@ -342,6 +342,7 @@ public:
|
||||
{
|
||||
int nclasses = (int)cls_labels.total(), i;
|
||||
|
||||
writeFormat(fs);
|
||||
fs << "var_count" << (var_idx.empty() ? nallvars : (int)var_idx.total());
|
||||
fs << "var_all" << nallvars;
|
||||
|
||||
|
||||
@@ -296,6 +296,7 @@ public:
|
||||
if( roots.empty() )
|
||||
CV_Error( CV_StsBadArg, "RTrees have not been trained" );
|
||||
|
||||
writeFormat(fs);
|
||||
writeParams(fs);
|
||||
|
||||
fs << "oob_error" << oobError;
|
||||
|
||||
@@ -2037,6 +2037,7 @@ public:
|
||||
if( !isTrained() )
|
||||
CV_Error( CV_StsParseError, "SVM model data is invalid, check sv_count, var_* and class_count tags" );
|
||||
|
||||
writeFormat(fs);
|
||||
write_params( fs );
|
||||
|
||||
fs << "var_count" << var_count;
|
||||
|
||||
@@ -364,6 +364,7 @@ void SVMSGDImpl::write(FileStorage& fs) const
|
||||
if( !isTrained() )
|
||||
CV_Error( CV_StsParseError, "SVMSGD model data is invalid, it hasn't been trained" );
|
||||
|
||||
writeFormat(fs);
|
||||
writeParams( fs );
|
||||
|
||||
fs << "weights" << weights_;
|
||||
|
||||
@@ -1681,6 +1681,7 @@ void DTreesImpl::writeTree( FileStorage& fs, int root ) const
|
||||
|
||||
void DTreesImpl::write( FileStorage& fs ) const
|
||||
{
|
||||
writeFormat(fs);
|
||||
writeParams(fs);
|
||||
writeTree(fs, roots[0]);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user