Home | History | Annotate | Download | only in src

Lines Matching refs:nclusters

47  * params.nclusters    - number of clusters to cluster samples to.
106 for( i = 0; i < params.nclusters; i++ )
151 if( params.nclusters < 1 )
161 p->cols != params.nclusters )
163 "floating-point matrix (CvMat) of 'nsamples' x 'nclusters' size" );
172 m->rows != params.nclusters ||
185 w->rows + w->cols - 1 != params.nclusters )
187 "1d floating-point vector (CvMat) of 'nclusters' elements" );
191 for( k = 0; k < params.nclusters; k++ )
220 int nclusters;
227 nclusters = params.nclusters;
229 CV_CALL( cvPreparePredictData( _sample, dims, 0, params.nclusters, _probs, &sample_data ));
232 size = sizeof(double) * (nclusters + dims);
240 expo = cvMat( 1, nclusters, CV_64FC1, buffer );
241 diff = cvMat( 1, dims, CV_64FC1, (double*)buffer + nclusters );
244 for( k = 0; k < nclusters; k++ )
287 CV_CALL( cvReshape( &expo, &expo, 0, nclusters ));
317 int i, nsamples, nclusters, dims;
329 nclusters = params.nclusters;
337 if( nsamples <= nclusters )
341 CV_CALL( log_weight_div_det = cvCreateMat( 1, nclusters, CV_64FC1 ));
342 CV_CALL( probs = cvCreateMat( nsamples, nclusters, CV_64FC1 ));
343 CV_CALL( means = cvCreateMat( nclusters, dims, CV_64FC1 ));
344 CV_CALL( weights = cvCreateMat( 1, nclusters, CV_64FC1 ));
345 CV_CALL( inv_eigen_values = cvCreateMat( nclusters,
347 CV_CALL( covs = (CvMat**)cvAlloc( nclusters * sizeof(*covs) ));
348 CV_CALL( cov_rotate_mats = (CvMat**)cvAlloc( nclusters * sizeof(cov_rotate_mats[0]) ));
350 for( i = 0; i < nclusters; i++ )
364 if( nclusters == 1 )
369 CvMat prob = cvMat( 1, nclusters, CV_64F );
406 int nclusters = params.nclusters, nsamples = train_data.count, dims = train_data.dims;
408 if( params.start_step == START_AUTO_STEP || nclusters == 1 || nclusters == nsamples )
419 cvSet( &prob, cvScalar(1./nclusters) );
438 cvSet( &weights, cvScalar(1./nclusters) );
440 for( i = 0; i < nclusters; i++ )
453 for( i = 0; i < nclusters; i++ )
494 int nclusters = params.nclusters, nsamples = train_data.count, dims = train_data.dims;
497 if( nclusters == nsamples )
510 cvSet( weights, cvScalar(1./nclusters) );
516 CV_CALL( class_ranges = cvCreateMat( 1, nclusters+1, CV_32SC1 ));
517 if( nclusters > 1 )
520 kmeans( train_data, nclusters, labels, cvTermCriteria( CV_TERMCRIT_ITER,
531 for( i = 0; i < nclusters; i++ )
545 for( i = 0; i < nclusters; i++ )
573 void CvEM::kmeans( const CvVectors& train_data, int nclusters, CvMat* labels,
593 nclusters = MIN( nclusters, nsamples );
595 CV_CALL( centers = cvCreateMat( nclusters, dims, CV_64FC1 ));
596 CV_CALL( old_centers = cvCreateMat( nclusters, dims, CV_64FC1 ));
597 CV_CALL( counters = cvCreateMat( 1, nclusters, CV_32SC1 ));
607 labels->data.i[i] = i*nclusters/nsamples;
623 for( k = 0; k < nclusters; k++ )
691 for( k = 0; k < nclusters; k++ )
737 for( k = 0; k < nclusters; k++ )
789 int nsamples = train_data.count, dims = train_data.dims, nclusters = params.nclusters;
802 if( nclusters == 1 )
846 CV_CALL( log_det = cvCreateMat( 1, nclusters, CV_64FC1 ));
847 CV_CALL( log_weights = cvCreateMat( 1, nclusters, CV_64FC1 ));
852 CV_CALL( sum_probs = cvCreateMat( 1, nclusters, CV_64FC1 ));
867 for( k = 0; k < nclusters; k++ )
916 for( k = 0; k < nclusters; k++ )
940 if( k == nclusters - 1 )
943 for( j = 0; j < nclusters; j++ )
945 for( j = 0; j < nclusters; j++ )
959 for( j = 0; j < nclusters; j++ )
962 for( j = 0; j < nclusters; j++ )
979 for( k = 0; k < nclusters; k++ )
1001 double p = probs->data.db[i*nclusters + k]*inv_sum;
1058 for( k = 0; k < nclusters; k++ )
1063 for( k = 0; k < nclusters; k++ )
1087 return params.nclusters;