Normalize line endings and whitespace

This commit is contained in:
OpenCV Buildbot
2012-10-17 03:18:30 +04:00
committed by Andrey Kamaev
parent 69020da607
commit 04384a71e4
1516 changed files with 258846 additions and 258162 deletions

View File

@@ -1900,7 +1900,7 @@ void CvBoost::write_params( CvFileStorage* fs ) const
else
cvWriteInt( fs, "splitting_criteria", params.split_criteria );
cvWriteInt( fs, "ntrees", weak->total );
cvWriteInt( fs, "ntrees", weak->total );
cvWriteReal( fs, "weight_trimming_rate", params.weight_trim_rate );
data->write_params( fs );

View File

@@ -263,10 +263,10 @@ static void icvTrainCNNetwork( CvCNNetwork* network,
{
image.data.fl = (float*)images[i];
cvTranspose( &image, X[0] );
for( k = 0, layer = first_layer; k < n_layers; k++, layer = layer->next_layer )
CV_CALL(layer->forward( layer, X[k], X[k+1] ));
cvTranspose( X[n_layers], dE_dX[n_layers] );
cvGetRow( etalons, &etalon, *right_etal_idx );
loss = (float)cvNorm( dE_dX[n_layers], &etalon );
@@ -466,8 +466,8 @@ static void icvCNNModelRelease( CvStatModel** cnn_model )
\****************************************************************************************/
ML_IMPL CvCNNetwork* cvCreateCNNetwork( CvCNNLayer* first_layer )
{
CvCNNetwork* network = 0;
CvCNNetwork* network = 0;
CV_FUNCNAME( "cvCreateCNNetwork" );
__BEGIN__;
@@ -669,7 +669,7 @@ ML_IMPL CvCNNLayer* cvCreateCNNConvolutionLayer(
CvRNG rng = cvRNG( 0xFFFFFFFF );
cvRandArr( &rng, layer->weights, CV_RAND_UNI, cvRealScalar(-1), cvRealScalar(1) );
}
if( connect_mask )
{
if( !ICV_IS_MAT_OF_TYPE( connect_mask, CV_8UC1 ) )
@@ -689,7 +689,7 @@ ML_IMPL CvCNNLayer* cvCreateCNNConvolutionLayer(
cvReleaseMat( &layer->connect_mask );
cvFree( &layer );
}
return (CvCNNLayer*)layer;
}
@@ -757,7 +757,7 @@ ML_IMPL CvCNNLayer* cvCreateCNNSubSamplingLayer(
}
/****************************************************************************************/
ML_IMPL CvCNNLayer* cvCreateCNNFullConnectLayer(
ML_IMPL CvCNNLayer* cvCreateCNNFullConnectLayer(
int n_inputs, int n_outputs, float a, float s,
float init_learn_rate, int learn_rate_decrease_type, CvMat* weights )
{
@@ -928,7 +928,7 @@ static void icvCNNSubSamplingForward( CvCNNLayer* _layer,
for( xx = 0; xx < Ywidth; xx++, sumX_data++ )
*sumX_data += Xplane[((yy+ky)*Xwidth+(xx+kx))];
}
}
}
w = layer->weights->data.fl;
cvGetRows( layer->sumX, &sumX_sub_col, 0, Ysize );
@@ -1256,7 +1256,7 @@ static void icvCNNFullConnectBackward( CvCNNLayer* _layer,
{
CvMat* dE_dY_activ_func_der = 0;
CvMat* dE_dW = 0;
CV_FUNCNAME( "icvCNNFullConnectBackward" );
if( !ICV_IS_CNN_FULLCONNECT_LAYER(_layer) )
@@ -1276,12 +1276,12 @@ static void icvCNNFullConnectBackward( CvCNNLayer* _layer,
CV_ASSERT(X->cols == 1 && X->rows == n_inputs);
CV_ASSERT(dE_dY->rows == 1 && dE_dY->cols == n_outputs );
CV_ASSERT(dE_dX->rows == 1 && dE_dX->cols == n_inputs );
// we violate the convetion about vector's orientation because
// here is more convenient to make this parameter a row-vector
// here is more convenient to make this parameter a row-vector
CV_CALL(dE_dY_activ_func_der = cvCreateMat( 1, n_outputs, CV_32FC1 ));
CV_CALL(dE_dW = cvCreateMat( 1, weights->rows*weights->cols, CV_32FC1 ));
// 1) compute gradients dE_dX and dE_dW
// activ_func_der == 4as*(layer->exp2ssumWX)/(layer->exp2ssumWX + 1)^2
CV_CALL(cvReshape( layer->exp2ssumWX, &exp2ssumWXrow, 0, layer->exp2ssumWX->cols ));
@@ -1359,7 +1359,7 @@ static void icvCNNSubSamplingRelease( CvCNNLayer** p_layer )
__BEGIN__;
CvCNNSubSamplingLayer* layer = 0;
if( !p_layer )
CV_ERROR( CV_StsNullPtr, "Null double pointer" );
@@ -1384,7 +1384,7 @@ static void icvCNNFullConnectRelease( CvCNNLayer** p_layer )
__BEGIN__;
CvCNNFullConnectLayer* layer = 0;
if( !p_layer )
CV_ERROR( CV_StsNullPtr, "Null double pointer" );
@@ -1467,7 +1467,7 @@ static CvCNNLayer* icvReadCNNLayer( CvFileStorage* fs, CvFileNode* node )
if( !connect_mask )
CV_ERROR( CV_StsParseError, "Missing <connect mask>" );
CV_CALL(layer = cvCreateCNNConvolutionLayer(
CV_CALL(layer = cvCreateCNNConvolutionLayer(
n_input_planes, input_height, input_width, n_output_planes, K,
init_learn_rate, learn_type, connect_mask, weights ));
}
@@ -1619,7 +1619,7 @@ static void* icvReadCNNModel( CvFileStorage* fs, CvFileNode* root_node )
static void
icvWriteCNNModel( CvFileStorage* fs, const char* name,
const void* struct_ptr, CvAttrList )
{
CV_FUNCNAME ("icvWriteCNNModel");
__BEGIN__;
@@ -1632,12 +1632,12 @@ icvWriteCNNModel( CvFileStorage* fs, const char* name,
CV_ERROR( CV_StsBadArg, "Invalid pointer" );
n_layers = cnn->network->n_layers;
CV_CALL( cvStartWriteStruct( fs, name, CV_NODE_MAP, CV_TYPE_NAME_ML_CNN ));
CV_CALL(cvWrite( fs, "etalons", cnn->etalons ));
CV_CALL(cvWrite( fs, "cls_labels", cnn->cls_labels ));
CV_CALL( cvStartWriteStruct( fs, "network", CV_NODE_SEQ ));
layer = cnn->network->layers;

View File

@@ -41,7 +41,7 @@
#include "precomp.hpp"
#include <ctype.h>
#define MISS_VAL FLT_MAX
#define MISS_VAL FLT_MAX
#define CV_VAR_MISS 0
CvTrainTestSplit::CvTrainTestSplit()
@@ -57,7 +57,7 @@ CvTrainTestSplit::CvTrainTestSplit( int _train_sample_count, bool _mix )
train_sample_part.count = _train_sample_count;
mix = _mix;
}
CvTrainTestSplit::CvTrainTestSplit( float _train_sample_portion, bool _mix )
{
train_sample_part_mode = CV_PORTION;
@@ -109,7 +109,7 @@ void CvMLData::clear()
cvReleaseMat( &var_types_out );
free_train_test_idx();
total_class_count = 0;
response_idx = -1;
@@ -119,17 +119,17 @@ void CvMLData::clear()
static char *fgets_chomp(char *str, int n, FILE *stream)
{
char *head = fgets(str, n, stream);
if( head )
{
for(char *tail = head + strlen(head) - 1; tail >= head; --tail)
{
if( *tail != '\r' && *tail != '\n' )
break;
*tail = '\0';
}
}
return head;
char *head = fgets(str, n, stream);
if( head )
{
for(char *tail = head + strlen(head) - 1; tail >= head; --tail)
{
if( *tail != '\r' && *tail != '\n' )
break;
*tail = '\0';
}
}
return head;
}
@@ -143,13 +143,13 @@ int CvMLData::read_csv(const char* filename)
char *ptr;
float* el_ptr;
CvSeqReader reader;
int cols_count = 0;
int cols_count = 0;
uchar *var_types_ptr = 0;
clear();
file = fopen( filename, "rt" );
if( !file )
return -1;
@@ -177,7 +177,7 @@ int CvMLData::read_csv(const char* filename)
ptr++;
}
cols_count++;
cols_count++;
if ( cols_count == 0)
{
@@ -199,7 +199,7 @@ int CvMLData::read_csv(const char* filename)
char *token = NULL;
int type;
token = strtok(buf, str_delimiter);
if (!token)
if (!token)
break;
for (int i = 0; i < cols_count-1; i++)
{
@@ -274,7 +274,7 @@ const std::map<std::string, int>& CvMLData::get_class_labels_map() const
void CvMLData::str_to_flt_elem( const char* token, float& flt_elem, int& type)
{
char* stopstring = NULL;
flt_elem = (float)strtod( token, &stopstring );
assert( stopstring );
@@ -308,7 +308,7 @@ void CvMLData::set_delimiter(char ch)
if (ch == miss_ch /*|| ch == flt_separator*/)
CV_ERROR(CV_StsBadArg, "delimited, miss_character and flt_separator must be different");
delimiter = ch;
__END__;
@@ -326,7 +326,7 @@ void CvMLData::set_miss_ch(char ch)
if (ch == delimiter/* || ch == flt_separator*/)
CV_ERROR(CV_StsBadArg, "delimited, miss_character and flt_separator must be different");
miss_ch = ch;
__END__;
@@ -354,7 +354,7 @@ void CvMLData::set_response_idx( int idx )
chahge_var_idx( idx, false );
response_idx = idx;
__END__;
__END__;
}
int CvMLData::get_response_idx() const
@@ -372,12 +372,12 @@ void CvMLData::change_var_type( int var_idx, int type )
{
CV_FUNCNAME( "CvMLData::change_var_type" );
__BEGIN__;
int var_count = 0;
if ( !values )
CV_ERROR( CV_StsInternal, "data is empty" );
var_count = values->cols;
if ( var_idx < 0 || var_idx >= var_count)
@@ -386,7 +386,7 @@ void CvMLData::change_var_type( int var_idx, int type )
if ( type != CV_VAR_ORDERED && type != CV_VAR_CATEGORICAL)
CV_ERROR( CV_StsBadArg, "type is not correct" );
assert( var_types );
assert( var_types );
if ( var_types->data.ptr[var_idx] == CV_VAR_CATEGORICAL && type == CV_VAR_ORDERED)
CV_ERROR( CV_StsBadArg, "it`s impossible to assign CV_VAR_ORDERED type to categorical variable" );
var_types->data.ptr[var_idx] = (uchar)type;
@@ -409,12 +409,12 @@ void CvMLData::set_var_types( const char* str )
var_count = values->cols;
assert( var_types );
ord = strstr( str, "ord" );
cat = strstr( str, "cat" );
cat = strstr( str, "cat" );
if ( !ord && !cat )
CV_ERROR( CV_StsBadArg, "types string is not correct" );
if ( !ord && strlen(cat) == 3 ) // str == "cat"
{
cvSet( var_types, cvScalarAll(CV_VAR_CATEGORICAL) );
@@ -429,10 +429,10 @@ void CvMLData::set_var_types( const char* str )
if ( ord ) // parse ord str
{
char* stopstring = NULL;
char* stopstring = NULL;
if ( ord[3] != '[')
CV_ERROR( CV_StsBadArg, "types string is not correct" );
ord += 4; // pass "ord["
do
{
@@ -447,18 +447,18 @@ void CvMLData::set_var_types( const char* str )
var_types->data.ptr[b1] = CV_VAR_ORDERED;
set_var_type_count++;
}
else
else
{
if ( stopstring[0] == '-')
if ( stopstring[0] == '-')
{
int b2 = (int)strtod( ord, &stopstring);
if ( (*stopstring == 0) || (*stopstring != ',' && *stopstring != ']') )
CV_ERROR( CV_StsBadArg, "types string is not correct" );
CV_ERROR( CV_StsBadArg, "types string is not correct" );
ord = stopstring + 1;
for (int i = b1; i <= b2; i++)
{
if ( var_types->data.ptr[i] == CV_VAR_CATEGORICAL)
CV_ERROR( CV_StsBadArg, "it`s impossible to assign CV_VAR_ORDERED type to categorical variable" );
CV_ERROR( CV_StsBadArg, "it`s impossible to assign CV_VAR_ORDERED type to categorical variable" );
var_types->data.ptr[i] = CV_VAR_ORDERED;
}
set_var_type_count += b2 - b1 + 1;
@@ -472,14 +472,14 @@ void CvMLData::set_var_types( const char* str )
if ( stopstring[1] != '\0' && stopstring[1] != ',')
CV_ERROR( CV_StsBadArg, "types string is not correct" );
}
}
if ( cat ) // parse cat str
{
char* stopstring = NULL;
char* stopstring = NULL;
if ( cat[3] != '[')
CV_ERROR( CV_StsBadArg, "types string is not correct" );
cat += 4; // pass "cat["
do
{
@@ -492,13 +492,13 @@ void CvMLData::set_var_types( const char* str )
var_types->data.ptr[b1] = CV_VAR_CATEGORICAL;
set_var_type_count++;
}
else
else
{
if ( stopstring[0] == '-')
if ( stopstring[0] == '-')
{
int b2 = (int)strtod( cat, &stopstring);
if ( (*stopstring == 0) || (*stopstring != ',' && *stopstring != ']') )
CV_ERROR( CV_StsBadArg, "types string is not correct" );
CV_ERROR( CV_StsBadArg, "types string is not correct" );
cat = stopstring + 1;
for (int i = b1; i <= b2; i++)
var_types->data.ptr[i] = CV_VAR_CATEGORICAL;
@@ -513,7 +513,7 @@ void CvMLData::set_var_types( const char* str )
if ( stopstring[1] != '\0' && stopstring[1] != ',')
CV_ERROR( CV_StsBadArg, "types string is not correct" );
}
}
if (set_var_type_count != var_count)
CV_ERROR( CV_StsBadArg, "types string is not correct" );
@@ -539,7 +539,7 @@ const CvMat* CvMLData::get_var_types()
if ( avcount == values->cols || (avcount == values->cols-1 && response_idx == values->cols-1) )
return var_types;
if ( !var_types_out || ( var_types_out && var_types_out->cols != vt_size ) )
if ( !var_types_out || ( var_types_out && var_types_out->cols != vt_size ) )
{
cvReleaseMat( &var_types_out );
var_types_out = cvCreateMat( 1, vt_size, CV_8UC1 );
@@ -575,7 +575,7 @@ const CvMat* CvMLData::get_responses()
if ( !values )
CV_ERROR( CV_StsInternal, "data is empty" );
var_count = values->cols;
if ( response_idx < 0 || response_idx >= var_count )
return 0;
if ( !response_out )
@@ -600,7 +600,7 @@ void CvMLData::set_train_test_split( const CvTrainTestSplit * spl)
CV_ERROR( CV_StsInternal, "data is empty" );
sample_count = values->rows;
float train_sample_portion;
if (spl->train_sample_part_mode == CV_COUNT)
@@ -615,7 +615,7 @@ void CvMLData::set_train_test_split( const CvTrainTestSplit * spl)
train_sample_portion = spl->train_sample_part.portion;
if ( train_sample_portion > 1)
CV_ERROR( CV_StsBadArg, "train samples count is not correct" );
train_sample_portion = train_sample_portion <= FLT_EPSILON ||
train_sample_portion = train_sample_portion <= FLT_EPSILON ||
1 - train_sample_portion <= FLT_EPSILON ? 1 : train_sample_portion;
train_sample_count = std::max(1, cvFloor( train_sample_portion * sample_count ));
}
@@ -642,11 +642,11 @@ void CvMLData::set_train_test_split( const CvTrainTestSplit * spl)
test_sample_idx = cvCreateMatHeader( 1, test_sample_count, CV_32SC1 );
*test_sample_idx = cvMat( 1, test_sample_count, CV_32SC1, &sample_idx[train_sample_count] );
}
mix = spl->mix;
if ( mix )
mix_train_and_test_idx();
__END__;
}
@@ -710,14 +710,14 @@ const CvMat* CvMLData::get_var_idx()
CV_ERROR( CV_StsInternal, "data is empty" );
assert( var_idx_mask );
avcount = cvFloor( cvNorm( var_idx_mask, 0, CV_L1 ) );
int* vidx;
if ( avcount == values->cols )
return 0;
if ( !var_idx_out || ( var_idx_out && var_idx_out->cols != avcount ) )
if ( !var_idx_out || ( var_idx_out && var_idx_out->cols != avcount ) )
{
cvReleaseMat( &var_idx_out );
var_idx_out = cvCreateMat( 1, avcount, CV_32SC1);
@@ -726,10 +726,10 @@ const CvMat* CvMLData::get_var_idx()
}
vidx = var_idx_out->data.i;
for(int i = 0; i < var_idx_mask->cols; i++)
if ( var_idx_mask->data.ptr[i] )
{
{
*vidx = i;
vidx++;
}
@@ -759,7 +759,7 @@ void CvMLData::change_var_idx( int vi, bool state )
if ( vi < 0 || vi >= var_count)
CV_ERROR( CV_StsBadArg, "variable index is not correct" );
assert( var_idx_mask );
assert( var_idx_mask );
var_idx_mask->data.ptr[vi] = state;
__END__;

View File

@@ -79,7 +79,7 @@ void EM::clear()
logWeightDivDet.release();
}
bool EM::train(InputArray samples,
OutputArray logLikelihoods,
OutputArray labels,
@@ -101,7 +101,7 @@ bool EM::trainE(InputArray samples,
Mat samplesMat = samples.getMat();
vector<Mat> covs0;
_covs0.getMatVector(covs0);
Mat means0 = _means0.getMat(), weights0 = _weights0.getMat();
setTrainData(START_E_STEP, samplesMat, 0, !_means0.empty() ? &means0 : 0,
@@ -117,12 +117,12 @@ bool EM::trainM(InputArray samples,
{
Mat samplesMat = samples.getMat();
Mat probs0 = _probs0.getMat();
setTrainData(START_M_STEP, samplesMat, !_probs0.empty() ? &probs0 : 0, 0, 0, 0);
return doTrain(START_M_STEP, logLikelihoods, labels, probs);
}
Vec2d EM::predict(InputArray _sample, OutputArray _probs) const
{
Mat sample = _sample.getMat();
@@ -456,14 +456,14 @@ bool EM::doTrain(int startStep, OutputArray logLikelihoods, OutputArray labels,
covs[clusterIndex] = Mat::diag(covsEigenValues[clusterIndex]);
}
}
if(labels.needed())
trainLabels.copyTo(labels);
if(probs.needed())
trainProbs.copyTo(probs);
if(logLikelihoods.needed())
trainLogLikelihoods.copyTo(logLikelihoods);
trainSamples.release();
trainProbs.release();
trainLabels.release();

View File

@@ -149,8 +149,8 @@ int cvCrossValNextStep (CvStatModel* estimateModel)
// Do checking part of loop of cross-validations metod.
ML_IMPL
void cvCrossValCheckClassifier (CvStatModel* estimateModel,
const CvStatModel* model,
const CvMat* trainData,
const CvStatModel* model,
const CvMat* trainData,
int sample_t_flag,
const CvMat* trainClasses)
{
@@ -194,7 +194,7 @@ void cvCrossValCheckClassifier (CvStatModel* estimateModel,
data = crVal->sampleIdxEval->data.i;
// Eval tested feature vectors.
CV_CALL (cvStatModelMultiPredict (model, trainData, sample_t_flag,
CV_CALL (cvStatModelMultiPredict (model, trainData, sample_t_flag,
crVal->predict_results, NULL, crVal->sampleIdxEval));
// Count number if correct results.
responses_result = crVal->predict_results->data.fl;
@@ -307,12 +307,12 @@ float cvCrossValGetResult (const CvStatModel* estimateModel,
result = ((float)crVal->sq_error) / crVal->all_results;
if (correlation)
{
te = crVal->all_results * crVal->sum_cp -
te = crVal->all_results * crVal->sum_cp -
crVal->sum_correct * crVal->sum_predict;
te *= te;
te1 = (crVal->all_results * crVal->sum_cc -
te1 = (crVal->all_results * crVal->sum_cc -
crVal->sum_correct * crVal->sum_correct) *
(crVal->all_results * crVal->sum_pp -
(crVal->all_results * crVal->sum_pp -
crVal->sum_predict * crVal->sum_predict);
*correlation = (float)(te / te1);
@@ -330,7 +330,7 @@ float cvCrossValGetResult (const CvStatModel* estimateModel,
}
/****************************************************************************************/
// Reset cross-validation EstimateModel to state the same as it was immidiatly after
// Reset cross-validation EstimateModel to state the same as it was immidiatly after
// its creating.
ML_IMPL
void cvCrossValReset (CvStatModel* estimateModel)
@@ -368,7 +368,7 @@ void cvReleaseCrossValidationModel (CvStatModel** model)
CV_FUNCNAME ("cvReleaseCrossValidationModel");
__BEGIN__
if (!model)
{
CV_ERROR (CV_StsNullPtr, "");
@@ -397,7 +397,7 @@ void cvReleaseCrossValidationModel (CvStatModel** model)
/****************************************************************************************/
// This function create cross-validation EstimateModel.
ML_IMPL CvStatModel*
ML_IMPL CvStatModel*
cvCreateCrossValidationEstimateModel(
int samples_all,
const CvStatModelParams* estimateParams,
@@ -413,7 +413,7 @@ cvCreateCrossValidationEstimateModel(
int i, j, k, s_len;
int samples_selected;
CvRNG rng;
CvRNG rng;
CvRNG* prng;
int* res_s_data;
int* te_s_data;
@@ -435,7 +435,7 @@ cvCreateCrossValidationEstimateModel(
// Alloc memory and fill standart StatModel's fields.
CV_CALL (crVal = (CvCrossValidationModel*)cvCreateStatModel (
CV_STAT_MODEL_MAGIC_VAL | CV_CROSSVAL_MAGIC_VAL,
CV_STAT_MODEL_MAGIC_VAL | CV_CROSSVAL_MAGIC_VAL,
sizeof(CvCrossValidationModel),
cvReleaseCrossValidationModel,
NULL, NULL));
@@ -443,7 +443,7 @@ cvCreateCrossValidationEstimateModel(
crVal->folds_all = k_fold;
if (estimateParams && ((CvCrossValidationParams*)estimateParams)->is_regression)
crVal->is_regression = 1;
else
else
crVal->is_regression = 0;
if (estimateParams && ((CvCrossValidationParams*)estimateParams)->rng)
prng = ((CvCrossValidationParams*)estimateParams)->rng;
@@ -455,7 +455,7 @@ cvCreateCrossValidationEstimateModel(
{
int s_step;
int s_type = 0;
if (!CV_IS_MAT (sampleIdx))
CV_ERROR (CV_StsBadArg, "Invalid sampleIdx array");
@@ -463,7 +463,7 @@ cvCreateCrossValidationEstimateModel(
CV_ERROR (CV_StsBadSize, "sampleIdx array must be 1-dimensional");
s_len = sampleIdx->rows + sampleIdx->cols - 1;
s_step = sampleIdx->rows == 1 ?
s_step = sampleIdx->rows == 1 ?
1 : sampleIdx->step / CV_ELEM_SIZE(sampleIdx->type);
s_type = CV_MAT_TYPE (sampleIdx->type);
@@ -474,13 +474,13 @@ cvCreateCrossValidationEstimateModel(
case CV_8SC1:
{
uchar* s_data = sampleIdx->data.ptr;
// sampleIdx is array of 1's and 0's -
// i.e. it is a mask of the selected samples
if( s_len != samples_all )
CV_ERROR (CV_StsUnmatchedSizes,
"Sample mask should contain as many elements as the total number of samples");
samples_selected = 0;
for (i = 0; i < s_len; i++)
samples_selected += s_data[i * s_step] != 0;
@@ -502,7 +502,7 @@ cvCreateCrossValidationEstimateModel(
}
// Alloc additional memory for internal Idx and fill it.
/*!!*/ CV_CALL (res_s_data = crVal->sampleIdxAll =
/*!!*/ CV_CALL (res_s_data = crVal->sampleIdxAll =
(int*)cvAlloc (2 * s_len * sizeof(int)));
if (s_type < CV_32SC1)
@@ -529,7 +529,7 @@ cvCreateCrossValidationEstimateModel(
if (out_of_order)
qsort (res_s_data, s_len, sizeof(res_s_data[0]), icvCmpIntegers);
if (res_s_data[0] < 0 ||
res_s_data[s_len - 1] >= samples_all)
CV_ERROR (CV_StsBadArg, "There are out-of-range sample indices");
@@ -548,7 +548,7 @@ cvCreateCrossValidationEstimateModel(
*res_s_data++ = i;
}
res_s_data = crVal->sampleIdxAll;
} // if (sampleIdx) ... else
} // if (sampleIdx) ... else
// Resort internal Idx.
te_s_data = res_s_data + s_len;
@@ -560,7 +560,7 @@ cvCreateCrossValidationEstimateModel(
res_s_data[j] = k;
}
// Duplicate resorted internal Idx.
// Duplicate resorted internal Idx.
// It will be used to simplify operation of getting trainIdx.
te_s_data = res_s_data + s_len;
for (i = 0; i < s_len; i++)
@@ -573,7 +573,7 @@ cvCreateCrossValidationEstimateModel(
{
if (k_fold > s_len)
{
CV_ERROR (CV_StsBadArg,
CV_ERROR (CV_StsBadArg,
"Error in parameters of cross-validation ('k_fold' > #samples)!");
}
folds = crVal->folds = (int*) cvAlloc ((k_fold + 1) * sizeof (int));
@@ -593,7 +593,7 @@ cvCreateCrossValidationEstimateModel(
crVal->max_fold_size = k;
if (k >= s_len)
{
CV_ERROR (CV_StsBadArg,
CV_ERROR (CV_StsBadArg,
"Error in parameters of cross-validation (-'k_fold' > #samples)!");
}
crVal->folds_all = k = (s_len - 1) / k + 1;
@@ -634,7 +634,7 @@ cvCreateCrossValidationEstimateModel(
return model;
} // End of cvCreateCrossValidationEstimateModel
/****************************************************************************************\
* Extended interface with backcalls for models *
@@ -643,13 +643,13 @@ ML_IMPL float
cvCrossValidation (const CvMat* trueData,
int tflag,
const CvMat* trueClasses,
CvStatModel* (*createClassifier) (const CvMat*,
int,
CvStatModel* (*createClassifier) (const CvMat*,
int,
const CvMat*,
const CvClassifierTrainParams*,
const CvMat*,
const CvMat*,
const CvMat*,
const CvMat*,
const CvMat*,
const CvMat*,
const CvMat*),
const CvClassifierTrainParams* estimateParams,
const CvClassifierTrainParams* trainParams,
@@ -676,7 +676,7 @@ cvCrossValidation (const CvMat* trueData,
}
if (pCrValModel && *pCrValModel && !CV_IS_CROSSVAL(*pCrValModel))
{
CV_ERROR (CV_StsBadArg,
CV_ERROR (CV_StsBadArg,
"<pCrValModel> point to not cross-validation model");
}
@@ -698,9 +698,9 @@ cvCrossValidation (const CvMat* trueData,
// operation loop
for (; crVal->nextStep((CvStatModel*)crVal) != 0; )
{
CV_CALL (pClassifier = createClassifier (trueData, tflag, trueClasses,
CV_CALL (pClassifier = createClassifier (trueData, tflag, trueClasses,
trainParams, compIdx, trainDataIdx, typeMask, missedMeasurementMask));
CV_CALL (crVal->check ((CvStatModel*)crVal, pClassifier,
CV_CALL (crVal->check ((CvStatModel*)crVal, pClassifier,
trueData, tflag, trueClasses));
pClassifier->release (&pClassifier);

File diff suppressed because it is too large Load Diff