Exemplo n.º 1
0
void			Ftr::toViz( vecFtr &ftrs, const char *dirname )
{
	char fname[1024];
	Matrixu img;
	for( uint k=0; k<ftrs.size(); k++ ){
		sprintf_s(fname,"%s/ftr%05d.png",dirname,k);
		img = ftrs[k]->toViz();
		img.SaveImage(fname);
	}
}
Exemplo n.º 2
0
void			Ftr::compute( SampleSet &samples, const vecFtr &ftrs)
{
	int numftrs = ftrs.size();
	int numsamples = samples.size();
	if( numsamples==0 ) return;

	samples.resizeFtrs(numftrs);

	#pragma omp parallel for
	for( int ftr=0; ftr<numftrs; ftr++ ){
		//#pragma omp parallel for
		for( int k=0; k<numsamples; k++ ){
			samples.getFtrVal(k,ftr) = ftrs[ftr]->compute(samples[k]);
		}
	}

}
Exemplo n.º 3
0
/*
 * Compute filter values for all samples in SampleSet.
 * Directly modify _ftrVals in input SampleSet.
 */
void Ftr::computeAll(SampleSet &samples, const vecFtr &ftrs) {

	int numftrs = ftrs.size();
	int numsamples = samples.size();
	if (numsamples == 0)
		return;

	fprintf(stderr, "compute %d feature values for all %d samples \n", numftrs, numsamples);

	samples._ftrVals.zeros(numsamples, numftrs);
//	#pragma omp parallel for
	for (int j = 0; j < numftrs; j++) {
		for (int i = 0; i < numsamples; i++) {
			samples._ftrVals(i, j) = ftrs[j]->compute(samples[i]);
			;
		}
	}
}
Exemplo n.º 4
0
void			Ftr::deleteFtrs( vecFtr ftrs )
{
	for( uint k=0; k<ftrs.size(); k ++ )
		delete ftrs[k];
}