int MakeFeature( char* fileName ){ char srcpath[FLEN], srcfile[FLEN]; //read image strcpy(srcpath, fileName); strcpy(srcfile, srcpath); strcat(srcfile, IMG_EXT); IplImage* image = cvLoadImage(srcfile, CV_LOAD_IMAGE_COLOR); //read depth image strcpy(srcfile, srcpath); strcat(srcfile, DEPTH_EXT); IplImage* depth = cvLoadImage(srcfile, CV_LOAD_IMAGE_GRAYSCALE); //read mask image strcpy(srcfile, srcpath); strcat(srcfile, MASK_EXT); IplImage* mask = cvLoadImage(srcfile, CV_LOAD_IMAGE_GRAYSCALE); // calc features FEATURE feature; int retCode = MakeFeatureInMem(image, depth, mask, &feature); if (retCode){ return retCode; } // save features strcpy(srcfile, srcpath); strcat(srcfile, FTR_EXT); SaveFeature(&feature, srcfile); ReleaseFeature(&feature); return retCode; }
/** *0.Initialize feature vectors as zero vectors\n *1.Extract intra-syllable features\n *2.Extract cross-syllable features\n *3.Save features */ void SRIPitchFeXor::Extract(Utterance* u, vector< vector<double> >& features, bool extractDelta) { DUMP(__PRETTY_FUNCTION__); vector<double> backupPitchContour = u->GetPitchContour(); stylizer->Stylize(u); InitializeFeature(u->GetNumberOfSyllables()); GetFeature(u); SaveFeature(features, u->GetNumberOfSyllables()); if (extractDelta) { InitializeDeltaFeature(u->GetNumberOfSyllables()); GetDeltaFeature(u->GetNumberOfSyllables()); SaveDeltaFeature(features, u->GetNumberOfSyllables()); ResetDeltaFeature(u->GetNumberOfSyllables()); } ResetFeature(u->GetNumberOfSyllables()); u->SetPitchContour(backupPitchContour); }