FeaturePool Class Reference
FeaturePool objects contain a feature vector file in memory. More...
Public Member Functions | |
FeaturePool (int nrStreams, FeaturePool_Multistream_file *files, double *iw, bool onlyPrepare) | |
FeaturePool (char *featureFileName, FILE_TYPE fileType=FILE_TYPE_SHOUT, bool noBuffering=false, double vtln=1.0, bool doOffset=false, bool onlyPrepare=false) | |
FeaturePool (int poolS, int vectorS) | |
~FeaturePool () | |
void | setStreamWeights (double *w, bool forEver) |
void | resetStreamWeights () |
void | storeFeatureVectors (FILE *file) |
void | setOnlyMEL () |
void | createNewMultiStreamPool (FeaturePool_Multistream_file *files, int segID) |
int | mergeSegmentations (int *seg, int nrSeg, int outSeg) |
void | retrieveEnergy (char *featureFileName, int channelNr) |
void | removeLowEnergy (int segID, int channelNr, bool doShort=false) |
double | getAverageEnergy (int segID, int channelNr, double varianceFactor) |
double | getCurSegmentEnergy (SegmentationAdmin *admin, int t) |
void | splitOnEnergy (int segNr, int sourceLabel, int silLabel, int soundLabel, int nrSamplesSil, int nrSamplesSound, int comp) |
void | createNewPool (char *featureFileName, char *histNormName, char *histNormSpkName, bool noBuffering=false, bool onlyPrepare=false, int vtlnSegID=-1, double globalVtln=-1.0) |
void | addFeatureFile (char *featureFileName, FILE_TYPE fileType, int ignoreFrames, int trainFrames, double vtln=1.0) |
void | setFilter (char *featureFileName, int dimension, double threshold) |
void | enableFilter (bool enable) |
void | filterToSegmentation (int segNr, FeaturePool *feaPool=NULL) |
void | setFeatureNormalization (FEATURENORM_TYPE m) |
int | getNumberOfSpeakers (int segNr) |
int | getNumberOfSegments (int segNr, int spkrNr) |
int | getSpeakerID (int segNr, int spkrNr) |
bool | createUEMSegmentation (int segID, int channelNumber, char *label, char *UEM) |
int | claimSegmentationID () |
void | freeSegmentationID (int segNr) |
void | resetSegmentation (int segNr) |
void | addSegment (int segNr, int firstFrame, int lastFrame, int ID, int cKey=0, int cLeft=0, int cRight=0) |
void | addSegmentToFront (int segNr, int firstFrame, int lastFrame, int ID, int cKey=0, int cLeft=0, int cRight=0) |
void | setCurSegmentVectors (int segNr, FILE *inFile, bool inputIsFloat=false) |
void | setCurSegmentVector (int segNr, int offset, Vector *vector) |
int | getPoolLength () |
int | getClusterLength (int segNr, int label) |
bool | doSegmentsExist (int segNr, int ID) |
Vector ** | getVectorList (SegmentationAdmin *admin, int time) |
Vector ** | getFirstVectorFirstSegmentList (SegmentationAdmin *admin, int segNr, int ID, bool dontCareID=false, bool *isLastFromSegment=NULL, bool *inFilter=NULL) |
Vector ** | getFirstVectorNextSegmentList (SegmentationAdmin *admin, bool dontCareID=false, bool *isLastFromSegment=NULL, bool *inFilter=NULL) |
Vector ** | getCurSegmentVectorList (SegmentationAdmin *admin, int offset) |
Vector ** | getNextVectorList (SegmentationAdmin *admin, bool *isLastFromSegment=NULL, bool *inFilter=NULL) |
void | segmentationCreateOverlap (int segNr, int label) |
void | segmentationAddLabel (int sourceSegNr, int destSegNr, int sourceLabel, int destLabel) |
void | segmentationSubset (int sourceSegNr, int destSegNr, int label, PhoneModel *model, int nrSamples) |
void | segmentationCopy (int sourceSegNr, int destSegNr) |
void | segmentationIntersection (int sourceSegNr, int filterSegNr, int filterLabel, int destSegNr) |
void | segmentationFillGaps (int segNr, int fillLabel) |
void | segmentationSubstract (int sourceSegNr, int filterSegNr, int destSegNr, int filterLabel=-1) |
void | segmentationSplit (int sourceSegNr, int destSegNr1, int destSegNr2) |
void | segmentationWiden (int segNr, int soundNr, int maxNrFrames, int onlyWidenLabel=-1) |
int | filterLongSegments (int segID, int labelNr, int newLabel, int minLength) |
void | filterShortSegments (int segID, int labelNr, int labelSelf, int minNeighbours) |
void | maxSegmentLength (int segNr, int labelNr, int size, int minRemainder) |
void | concatSegmentation (int destSeg, int copySeg) |
void | restrictPool (int start, int end) |
void | mergeLabels (int segNr, int label1, int label2) |
void | readRTTM (int segNr, char *mapCluster, int mapNr, int strLen, int prefixLength, FILE *inFile, int fillerID=-1, int ignoreFrames=0, int trainFrames=0, char *labelName=NULL) |
void | writeRTTM (int segNr, const char *label, const char *prefix, FILE *outFile=NULL, int nrPr=0, int overwriteVTLN=-1) |
Vector * | getFirstVectorFirstSegment (SegmentationAdmin *admin, int segNr, int ID, bool dontCareID=false, bool *isLastFromSegment=NULL, bool *inFilter=NULL) |
Vector * | getVector (SegmentationAdmin *admin, int time) |
Vector * | getFirstVectorNextSegment (SegmentationAdmin *admin, bool dontCareID=false, bool *isLastFromSegment=NULL, bool *inFilter=NULL) |
Vector * | getCurSegmentVector (SegmentationAdmin *admin, int offset) |
Vector * | getNextVector (SegmentationAdmin *admin, bool *isLastFromSegment=NULL, bool *inFilter=NULL) |
double | getStreamWeight (int i) const |
int | getVectorSize () const |
int | getSegmentID (int idNr, SegmentationAdmin *admin) const |
void | setSegmentID (int idNr, int val, SegmentationAdmin *admin) const |
int | startTimeStamp () const |
int | getCurSegmentLen (SegmentationAdmin *admin) const |
int | getCurSegmentStart (SegmentationAdmin *admin) const |
char * | getCurInfoString (SegmentationAdmin *admin) const |
FeaturePoolInfo * | getStreamInfo () |
Protected Member Functions | |
void | createNewFeatureExtraction (char *featureFileName, double vtln, bool doOffset, bool onlyPrepare) |
int | readHeader_ShoutFormat () |
void | fillBuffer_ShoutFormat (int length, int ignoreFrames=0) |
int | readHeader_TextFormat () |
void | fillBuffer_TextFormat (int length, int ignoreFrames=0) |
void | fillBuffer_fromFeatureExtraction (int length, int ignoreFrames=0) |
Protected Attributes | |
bool | onlyMEL |
FILE * | featureFile |
FeatureExtraction * | feaExtract |
FeatureEnergy | feaEnergy [2] |
FILE_TYPE | fileType |
Vector ** | buffer |
int | poolLength |
int | fileOffset |
int | poolFilled |
bool * | filter |
bool | filterEnabled |
int | restrictStart |
int | restrictEnd |
int | vectorSize |
int | numberOfSpkIDs [MAX_NR_SEGMENTATIONS] |
int | spkID [MAX_NR_SEGMENTATIONS][MAX_NR_SPKIDS] |
bool | freeID [MAX_NR_SEGMENTATIONS] |
FEATURENORM_TYPE | featureNorm |
SegmentationList * | segList [MAX_NR_SEGMENTATIONS] |
SegmentationList * | fillPool_curSeg [MAX_NR_SEGMENTATIONS] |
FeaturePoolInfo | infoBlock |
Gaussian * | textFeatureDistribution |
FeaturePool_Multistream_file * | multiStream |
Detailed Description
FeaturePool objects contain a feature vector file in memory.It is also possible to read out one vector at a time so that it is not needed to keep the file in memory (for decoding large files). If you want this, set 'noBuffering' in the constructor to true.
For phone training or adaptation, it is often not known how big the entire pool with phone data is going to be. For this case it is possible to initialise the pool with a maximum length and add phone data while making the segmentation.
Constructor & Destructor Documentation
FeaturePool::FeaturePool | ( | int | nrStreams, | |
FeaturePool_Multistream_file * | files, | |||
double * | initWeight, | |||
bool | onlyPrepare | |||
) |
This constructor will populate the vector pool by reading an input file.
References buffer, FeatureEnergy::buffer, createNewMultiStreamPool(), FeaturePoolInfo::distrG, feaEnergy, FeatureEnergy::feaExtract, featureFile, featureNorm, FEATURENORM_CLUSTER, FeaturePool_Multistream_file::featurePool, FILE_TYPE_SHOUT, fileOffset, fileType, fillPool_curSeg, filter, filterEnabled, freeID, getPoolLength(), getVectorSize(), infoBlock, FeaturePoolInfo::lastComponent, multiStream, FeaturePoolInfo::numberOfChannels, onlyMEL, poolFilled, poolLength, restrictEnd, restrictStart, segList, setStreamWeights(), textFeatureDistribution, vectorSize, FeaturePoolInfo::weight, and FeaturePoolInfo::weightBackup.

FeaturePool::FeaturePool | ( | char * | featureFileName, | |
FILE_TYPE | fType = FILE_TYPE_SHOUT , |
|||
bool | noBuffering = false , |
|||
double | vtln = 1.0 , |
|||
bool | doOffset = false , |
|||
bool | onlyPrepare = false | |||
) |
This constructor will populate the vector pool by reading an input file.
References buffer, FeatureEnergy::buffer, createNewFeatureExtraction(), createNewPool(), FeaturePoolInfo::distrG, feaEnergy, FeatureEnergy::feaExtract, featureFile, featureNorm, FEATURENORM_SEGMENT, fileType, fillPool_curSeg, filter, filterEnabled, freeID, infoBlock, multiStream, FeaturePoolInfo::numberOfChannels, onlyMEL, segList, textFeatureDistribution, FeaturePoolInfo::weight, and FeaturePoolInfo::weightBackup.

FeaturePool::FeaturePool | ( | int | poolS, | |
int | vectorS | |||
) |
This constructor initializes the pool, but it does not fill it with data. This can be done later with the addFeatures() method. This way of populating the pool is typically done when the size of the pool is not known beforhand (for example when collecting adaptation data).
References FeatureEnergy::buffer, buffer, FeaturePoolInfo::distrG, feaEnergy, FeatureEnergy::feaExtract, feaExtract, featureFile, fileOffset, fillPool_curSeg, filter, filterEnabled, freeID, infoBlock, FeaturePoolInfo::lastComponent, multiStream, FeaturePoolInfo::numberOfChannels, onlyMEL, poolFilled, poolLength, restrictEnd, restrictStart, segList, textFeatureDistribution, vectorSize, FeaturePoolInfo::weight, and FeaturePoolInfo::weightBackup.
FeaturePool::~FeaturePool | ( | ) |
The destructor cleans up administration
References buffer, FeaturePoolInfo::distrG, feaEnergy, FeatureEnergy::feaExtract, feaExtract, featureFile, FILE_TYPE_SHOUT, FILE_TYPE_TEXT, fileType, filter, infoBlock, SegmentationList::infoString, SegmentationList::next, poolLength, segList, and textFeatureDistribution.
Member Function Documentation
void FeaturePool::addFeatureFile | ( | char * | featureFileName, | |
FILE_TYPE | fType, | |||
int | ignoreFrames, | |||
int | trainFrames, | |||
double | vtln = 1.0 | |||
) |
Add a new feature file to the pool. The fileOffset will be updated so that new read RTTM files will point to the correct position in time...
References createNewFeatureExtraction(), feaExtract, featureFile, FILE_TYPE_RAW_DECODING, FILE_TYPE_RAW_DIARIZATION, FILE_TYPE_RAW_HISTOGRAM_NORM, FILE_TYPE_RAW_SAD, FILE_TYPE_RAW_SPKREC, FILE_TYPE_RAW_VTLN, FILE_TYPE_SHOUT, FILE_TYPE_TEXT, fileOffset, fileType, fillBuffer_fromFeatureExtraction(), fillBuffer_ShoutFormat(), fillBuffer_TextFormat(), FeatureExtraction::getPoolSize(), FeatureExtraction::getVectorSize(), poolFilled, poolLength, readHeader_ShoutFormat(), readHeader_TextFormat(), and vectorSize.
Referenced by ShoutPrepareAdapt::ShoutPrepareAdapt().

void FeaturePool::addSegment | ( | int | segNr, | |
int | firstFrame, | |||
int | lastFrame, | |||
int | ID, | |||
int | cKey = 0 , |
|||
int | cLeft = 0 , |
|||
int | cRight = 0 | |||
) |
Adds a segment in the current segmentation linked-list.
References fillPool_curSeg, SegmentationList::firstFrame, SegmentationList::ID, SegmentationList::infoString, SegmentationList::lastFrame, SegmentationList::next, poolLength, and segList.
Referenced by Adapt_AM::Adapt_AM(), Segmenter::createSegments(), createUEMSegmentation(), filterToSegmentation(), Train_Segmenter::getOverlap(), mergeSegmentations(), removeLowEnergy(), segmentationCopy(), segmentationIntersection(), segmentationSplit(), segmentationSubset(), segmentationSubstract(), ShoutPrepareAdapt::ShoutPrepareAdapt(), ShoutSegment::ShoutSegment(), ShoutTrainModel::ShoutTrainModel(), Train_Segmenter::train(), and TrainPhoneModel::viterbi().
void FeaturePool::addSegmentToFront | ( | int | segNr, | |
int | firstFrame, | |||
int | lastFrame, | |||
int | ID, | |||
int | cKey = 0 , |
|||
int | cLeft = 0 , |
|||
int | cRight = 0 | |||
) |
Adds a segment in the current segmentation linked-list at the very first slot.
References SegmentationList::firstFrame, SegmentationList::ID, SegmentationList::infoString, SegmentationList::lastFrame, SegmentationList::next, poolLength, and segList.
Referenced by Segmenter::createSegments().
int FeaturePool::claimSegmentationID | ( | ) |
In order to make it possible to share a feature pool between objects, a user may claim a free segmentation ID. This ID will be freed using freeSegmentationID().
References freeID, and resetSegmentation().
Referenced by AvgEnergy::AvgEnergy(), Train_Segmenter::getOverlap(), Train_Segmenter::loadClusters(), Train_Segmenter::mergeModels(), NormalizeAM::NormalizeAM(), Adapt_Segmenter::proceedMerge(), removeLowEnergy(), SpeakerRecognition::runTrials(), Segmenter::segmentFeaturePool(), Shout_Cluster::Shout_Cluster(), Shout_MakeTrainSet::Shout_MakeTrainSet(), Shout_Preprocess::Shout_Preprocess(), Shout_VTLN::Shout_VTLN(), ShoutPrepareAdapt::ShoutPrepareAdapt(), ShoutSegment::ShoutSegment(), SpkrecStats::SpkrecStats(), Train_Segmenter::storeClusters(), Train_Segmenter::train(), Train_Segmenter::Train_Segmenter(), Train_Segmenter::trainIteration(), and Whisper::Whisper().

void FeaturePool::concatSegmentation | ( | int | destSeg, | |
int | copySeg | |||
) |
- Todo:
- Docs
References fillPool_curSeg, SegmentationList::firstFrame, SegmentationList::ID, SegmentationList::lastFrame, SegmentationList::next, and segList.
Referenced by ShoutSegment::ShoutSegment().
void FeaturePool::createNewFeatureExtraction | ( | char * | featureFileName, | |
double | vtln, | |||
bool | doOffset, | |||
bool | onlyPrepare | |||
) | [protected] |
/
- Todo:
- Docs
References feaExtract, featureNorm, FILE_TYPE_RAW_DECODING, FILE_TYPE_RAW_DIARIZATION, FILE_TYPE_RAW_HISTOGRAM_NORM, FILE_TYPE_RAW_SAD, FILE_TYPE_RAW_SPKREC, FILE_TYPE_RAW_VTLN, FILE_TYPE_SHOUT, FILE_TYPE_TEXT, and fileType.
Referenced by addFeatureFile(), and FeaturePool().
void FeaturePool::createNewMultiStreamPool | ( | FeaturePool_Multistream_file * | files, | |
int | segID | |||
) |
- Todo:
- Docs
- Todo:
- generalize this code to N channels!
References buffer, createNewPool(), FeaturePool_Multistream_file::featurePool, getVector(), infoBlock, FeaturePoolInfo::numberOfChannels, and poolLength.
Referenced by FeaturePool(), and Shout_Cluster::Shout_Cluster().

void FeaturePool::createNewPool | ( | char * | featureFileName, | |
char * | histNormName, | |||
char * | histNormSpkName, | |||
bool | noBuffering = false , |
|||
bool | onlyPrepare = false , |
|||
int | vtlnSegID = -1 , |
|||
double | globalVtln = -1.0 | |||
) |
/
- Todo:
- Docs
References buffer, FeatureExtraction::createFeaturesUntilFrame(), SegmentationAdmin::curSeg, FeatureExtraction::doFeatureExtraction(), feaExtract, featureFile, featureNorm, FEATURENORM_CLUSTER, FILE_TYPE_RAW_DECODING, FILE_TYPE_RAW_DIARIZATION, FILE_TYPE_RAW_HISTOGRAM_NORM, FILE_TYPE_RAW_SAD, FILE_TYPE_RAW_SPKREC, FILE_TYPE_RAW_VTLN, FILE_TYPE_SHOUT, FILE_TYPE_TEXT, fileOffset, fileType, fillBuffer_ShoutFormat(), fillBuffer_TextFormat(), FeatureExtraction::finishClusterCMVN(), FeatureExtraction::finishExtraction(), SegmentationList::firstFrame, WriteFileLittleBigEndian::freadEndianSafe(), FeatureExtraction::getPool(), FeatureExtraction::getPoolSize(), getSegmentID(), PhoneModel::getSilSumHist(), Vector::getValue(), Gaussian::getVariance(), FeatureExtraction::getVectorSize(), infoBlock, FeaturePoolInfo::lastComponent, SegmentationList::lastFrame, SegmentationList::next, FeaturePoolInfo::numberOfChannels, numberOfSpkIDs, onlyMEL, FeatureExtraction::performClusterCMVNUntilFrame(), FeatureExtraction::performPCA(), poolFilled, poolLength, Vector::printVector(), readHeader_ShoutFormat(), readHeader_TextFormat(), restrictEnd, restrictStart, segList, FeatureExtraction::setNormalization(), FeatureExtraction::setVTLN(), spkID, Vector::sqrtElements(), textFeatureDistribution, SegmentationAdmin::timeStamp, Gaussian::train(), Gaussian::trainFinish(), vectorSize, and FeaturePoolInfo::weight.
Referenced by createNewMultiStreamPool(), FeaturePool(), NormalizeAM::NormalizeAM(), SpeakerRecognition::runTrials(), Shout_Cluster::Shout_Cluster(), Shout_MakeTrainSet::Shout_MakeTrainSet(), Shout_Preprocess::Shout_Preprocess(), Shout_VTLN::Shout_VTLN(), SpkrecStats::SpkrecStats(), and Whisper::Whisper().

bool FeaturePool::createUEMSegmentation | ( | int | segID, | |
int | channelNumber, | |||
char * | label, | |||
char * | UEM | |||
) |
- Todo:
- Docs
References addSegment(), filter, and resetSegmentation().
Referenced by ShoutSegment::ShoutSegment().

bool FeaturePool::doSegmentsExist | ( | int | segmentationNr, | |
int | ID | |||
) |
Checks if there are any segments with ID in segmentation segNr
References SegmentationList::ID, SegmentationList::next, poolLength, and segList.
Referenced by Train_Segmenter::trainModel().
void FeaturePool::enableFilter | ( | bool | enable | ) |
Enables or disables the filter
References filterEnabled.
Referenced by Shout_Cluster::Shout_Cluster().
void FeaturePool::fillBuffer_fromFeatureExtraction | ( | int | length, | |
int | ignoreFrames = 0 | |||
) | [protected] |
- Todo:
- Docs
References buffer, Vector::copyVector(), feaExtract, FeatureExtraction::getPool(), and poolFilled.
Referenced by addFeatureFile().

void FeaturePool::fillBuffer_ShoutFormat | ( | int | length, | |
int | ignoreFrames = 0 | |||
) | [protected] |
Creates a vector buffer and fills it with the vectors of the shout-formatted file.
References buffer, featureFile, poolFilled, and vectorSize.
Referenced by addFeatureFile(), and createNewPool().
void FeaturePool::fillBuffer_TextFormat | ( | int | length, | |
int | ignoreFrames = 0 | |||
) | [protected] |
Creates a vector buffer and fills it with the vectors of the text-formatted file.
todo BUGFIX THIS!!!!
References buffer, Vector::divideElements(), featureFile, Gaussian::getMean(), Gaussian::getVariance(), poolFilled, Vector::setValue(), StringFunctions::splitList(), Vector::substractElements(), textFeatureDistribution, and vectorSize.
Referenced by addFeatureFile(), and createNewPool().

int FeaturePool::filterLongSegments | ( | int | segID, | |
int | labelNr, | |||
int | newLabel, | |||
int | minLength | |||
) |
- Todo:
- docs
References SegmentationList::firstFrame, SegmentationList::ID, SegmentationList::lastFrame, SegmentationList::next, and segList.
void FeaturePool::filterShortSegments | ( | int | segID, | |
int | labelNr, | |||
int | labelSelf, | |||
int | minNeighbours | |||
) |
Filter a label-seq in a segmentation so that short segments of maximum duration maxSelf neighbouring (identical) long segments of minimum duration minNeighbours are merged into the neighbouring label.
References SegmentationList::firstFrame, SegmentationList::ID, SegmentationList::lastFrame, SegmentationList::next, and segList.
Referenced by ShoutSegment::ShoutSegment().
void FeaturePool::filterToSegmentation | ( | int | segNr, | |
FeaturePool * | feaPool = NULL | |||
) |
All filtered frames are SPK01, the remaining frames SPK02..
References addSegment(), filter, poolLength, and resetSegmentation().

void FeaturePool::freeSegmentationID | ( | int | segNr | ) |
This method will free an ID claimed by claimSegmentationID().
References freeID, and resetSegmentation().
Referenced by Train_Segmenter::getOverlap(), Train_Segmenter::loadClusters(), Train_Segmenter::mergeModels(), Segmenter::segmentFeaturePool(), Train_Segmenter::train(), Train_Segmenter::trainIteration(), and Train_Segmenter::~Train_Segmenter().

double FeaturePool::getAverageEnergy | ( | int | segNr, | |
int | channelNr, | |||
double | varianceFactor | |||
) |
- Todo:
- docs
References buffer, feaEnergy, feaExtract, SegmentationList::firstFrame, Gaussian::getMean(), Vector::getValue(), Gaussian::getVariance(), SegmentationList::next, segList, Gaussian::train(), and Gaussian::trainFinish().
Referenced by AvgEnergy::AvgEnergy(), and removeLowEnergy().

int FeaturePool::getClusterLength | ( | int | segNr, | |
int | label | |||
) |
Returns the length of all labels of segmentation segNr (the number of vectors)
References SegmentationList::firstFrame, SegmentationList::ID, SegmentationList::lastFrame, SegmentationList::next, poolLength, restrictEnd, restrictStart, and segList.
Referenced by Train_Segmenter::createInitialModels(), ShoutSegment::doSAD_noGarbage(), Train_Segmenter::getOverlap(), Train_Segmenter::mergeClusters(), Adapt_Segmenter::proceedMerge(), ShoutSegment::ShoutSegment(), Train_Segmenter::storeClusters(), Train_Segmenter::train(), and Train_Segmenter::Train_Segmenter().
char* FeaturePool::getCurInfoString | ( | SegmentationAdmin * | admin | ) | const [inline] |
References SegmentationAdmin::curSeg, and SegmentationList::infoString.
Referenced by Whisper::Whisper().
double FeaturePool::getCurSegmentEnergy | ( | SegmentationAdmin * | admin, | |
int | offset | |||
) |
- Todo:
- docs
References FeatureEnergy::buffer, buffer, SegmentationAdmin::curSeg, feaEnergy, SegmentationList::firstFrame, Vector::getValue(), SegmentationList::lastFrame, and SegmentationAdmin::timeStamp.

int FeaturePool::getCurSegmentLen | ( | SegmentationAdmin * | admin | ) | const [inline] |
References SegmentationAdmin::curSeg, SegmentationList::firstFrame, SegmentationList::lastFrame, restrictEnd, and restrictStart.
Referenced by TrainPhoneModel::baumWelch(), Segmenter::createSegments(), Train_Segmenter::getOverlap(), SpeakerRecognition::runTrials(), Shout_VTLN::Shout_VTLN(), ShoutSegment::ShoutSegment(), TrainPhoneModel::train(), Train_Segmenter::train(), TrainPhoneModel::viterbi(), and Whisper::Whisper().
int FeaturePool::getCurSegmentStart | ( | SegmentationAdmin * | admin | ) | const [inline] |
References SegmentationAdmin::curSeg, SegmentationList::firstFrame, and restrictStart.
Referenced by Train_Segmenter::getOverlap(), removeLowEnergy(), SpeakerRecognition::runTrials(), Segmenter::segmentFeaturePool(), Shout_VTLN::Shout_VTLN(), ShoutSegment::ShoutSegment(), TrainPhoneModel::train(), Train_Segmenter::train(), TrainPhoneModel::viterbi(), and Whisper::Whisper().
Vector* FeaturePool::getCurSegmentVector | ( | SegmentationAdmin * | admin, | |
int | offset | |||
) | [inline] |
References getCurSegmentVectorList().
Referenced by TrainPhoneModel::baumWelch(), and TrainPhoneModel::viterbi().

Vector ** FeaturePool::getCurSegmentVectorList | ( | SegmentationAdmin * | admin, | |
int | offset | |||
) |
Within the current active segment, it returns the vector with offset 'offset'.
References buffer, SegmentationAdmin::curSeg, SegmentationList::firstFrame, SegmentationList::lastFrame, and SegmentationAdmin::timeStamp.
Referenced by getCurSegmentVector().
Vector* FeaturePool::getFirstVectorFirstSegment | ( | SegmentationAdmin * | admin, | |
int | segNr, | |||
int | ID, | |||
bool | dontCareID = false , |
|||
bool * | isLastFromSegment = NULL , |
|||
bool * | inFilter = NULL | |||
) | [inline] |
References getFirstVectorFirstSegmentList().
Referenced by PhoneModel::adapt_setAcumulators(), TrainPhoneModel::baumWelch(), getNumberOfSegments(), Train_Segmenter::getOverlap(), TrainPhoneModel::getSilP(), removeLowEnergy(), SpeakerRecognition::runTrials(), segmentationSubset(), Shout_VTLN::Shout_VTLN(), ShoutSegment::ShoutSegment(), TrainPhoneModel::train(), Train_Segmenter::train(), Train_Segmenter::trainIteration(), TrainPhoneModel::viterbi(), and Whisper::Whisper().

Vector ** FeaturePool::getFirstVectorFirstSegmentList | ( | SegmentationAdmin * | admin, | |
int | segmentationNr, | |||
int | ID, | |||
bool | dontCareID = false , |
|||
bool * | isLastFromSegment = NULL , |
|||
bool * | inFilter = NULL | |||
) |
Searches for the first segment with ID[0] = ID and if it finds it, it will return the first Vector of that segment. If no Vector is found, NULL is returned.
References SegmentationAdmin::curSeg, filter, filterEnabled, SegmentationList::firstFrame, getVectorList(), SegmentationList::ID, SegmentationList::lastFrame, SegmentationList::next, poolLength, SegmentationAdmin::prevSeg, restrictEnd, restrictStart, and segList.
Referenced by getFirstVectorFirstSegment(), and Segmenter::segmentFeaturePool().

Vector* FeaturePool::getFirstVectorNextSegment | ( | SegmentationAdmin * | admin, | |
bool | dontCareID = false , |
|||
bool * | isLastFromSegment = NULL , |
|||
bool * | inFilter = NULL | |||
) | [inline] |
References getFirstVectorNextSegmentList().
Referenced by PhoneModel::adapt_setAcumulators(), TrainPhoneModel::baumWelch(), getNumberOfSegments(), Train_Segmenter::getOverlap(), TrainPhoneModel::getSilP(), removeLowEnergy(), SpeakerRecognition::runTrials(), segmentationSubset(), Shout_VTLN::Shout_VTLN(), ShoutSegment::ShoutSegment(), TrainPhoneModel::train(), Train_Segmenter::train(), Train_Segmenter::trainIteration(), TrainPhoneModel::viterbi(), and Whisper::Whisper().

Vector ** FeaturePool::getFirstVectorNextSegmentList | ( | SegmentationAdmin * | admin, | |
bool | dontCareID = false , |
|||
bool * | isLastFromSegment = NULL , |
|||
bool * | inFilter = NULL | |||
) |
The next segment with the same ID[0] as the current segment will be set active and the first Vector of this segment will be returned. If no Vector is found, NULL is returned.
References SegmentationAdmin::curSeg, filter, filterEnabled, SegmentationList::firstFrame, getVectorList(), SegmentationList::ID, SegmentationList::lastFrame, SegmentationList::next, poolLength, SegmentationAdmin::prevSeg, and restrictEnd.
Referenced by getFirstVectorNextSegment(), and Segmenter::segmentFeaturePool().

Vector* FeaturePool::getNextVector | ( | SegmentationAdmin * | admin, | |
bool * | isLastFromSegment = NULL , |
|||
bool * | inFilter = NULL | |||
) | [inline] |
References getNextVectorList().
Referenced by PhoneModel::adapt_setAcumulators(), Whisper::getClusterID(), Train_Segmenter::getOverlap(), TrainPhoneModel::getSilP(), removeLowEnergy(), segmentationSubset(), and TrainPhoneModel::train().

Vector ** FeaturePool::getNextVectorList | ( | SegmentationAdmin * | admin, | |
bool * | isLastFromSegment = NULL , |
|||
bool * | inFilter = NULL | |||
) |
Returns a pointer to the vector that follows the last queried vector. If no one follows, it returns NULL.
References buffer, SegmentationAdmin::curSeg, featureFile, filter, filterEnabled, SegmentationList::lastFrame, poolLength, restrictEnd, SegmentationAdmin::timeStamp, and vectorSize.
Referenced by getNextVector(), and Segmenter::segmentFeaturePool().
int FeaturePool::getNumberOfSegments | ( | int | segNr, | |
int | ID | |||
) |
- Todo:
- Docs
References getFirstVectorFirstSegment(), and getFirstVectorNextSegment().

int FeaturePool::getNumberOfSpeakers | ( | int | segNr | ) |
- Todo:
- Docs
References numberOfSpkIDs.
Referenced by Shout_VTLN::Shout_VTLN(), SpkrecStats::SpkrecStats(), and Train_Segmenter::storeClusters().
int FeaturePool::getPoolLength | ( | ) |
Returns the total length of the pool (the number of vectors)
References poolFilled.
Referenced by FeaturePool(), Shout_Cluster::Shout_Cluster(), Shout_Preprocess::Shout_Preprocess(), ShoutPrepareAdapt::ShoutPrepareAdapt(), ShoutSegment::ShoutSegment(), and Train_Segmenter::writePosteriors().
int FeaturePool::getSegmentID | ( | int | idNr, | |
SegmentationAdmin * | admin | |||
) | const [inline] |
References SegmentationAdmin::curSeg, and SegmentationList::ID.
Referenced by PhoneModel::adapt_setAcumulators(), TrainPhoneModel::baumWelch(), createNewPool(), Train_Segmenter::getOverlap(), TrainPhoneModel::getSilP(), segmentationSubset(), ShoutSegment::ShoutSegment(), TrainPhoneModel::train(), Train_Segmenter::trainIteration(), TrainPhoneModel::viterbi(), and Whisper::Whisper().
int FeaturePool::getSpeakerID | ( | int | segNr, | |
int | spkrNr | |||
) |
- Todo:
- Docs
References spkID.
Referenced by Shout_VTLN::Shout_VTLN(), SpkrecStats::SpkrecStats(), and Train_Segmenter::storeClusters().
FeaturePoolInfo* FeaturePool::getStreamInfo | ( | ) | [inline] |
double FeaturePool::getStreamWeight | ( | int | i | ) | const [inline] |
Vector* FeaturePool::getVector | ( | SegmentationAdmin * | admin, | |
int | time | |||
) | [inline] |
References getVectorList().
Referenced by createNewMultiStreamPool(), Whisper::getClusterID(), ShoutPrepareAdapt::ShoutPrepareAdapt(), Shout_MakeTrainSet::storePhone(), ArticulatoryStream::testStream(), Whisper::Whisper(), and Train_Segmenter::writePosteriors().

Vector ** FeaturePool::getVectorList | ( | SegmentationAdmin * | admin, | |
int | time | |||
) |
Returns a pointer to the vector stored at timestamp 'time'.It will assert when time is bigger than the poolLength. If 'noBuffering' was true the poolLength is one. getVector(0) will then return the pointer to the last queried vector.
References buffer, poolLength, and SegmentationAdmin::timeStamp.
Referenced by getFirstVectorFirstSegmentList(), getFirstVectorNextSegmentList(), getVector(), SpeakerRecognition::runTrials(), Segmenter::segmentFeaturePool(), and Whisper::Whisper().
int FeaturePool::getVectorSize | ( | ) | const [inline] |
References vectorSize.
Referenced by ShoutSegment::doSAD_noGarbage(), FeaturePool(), Train_Segmenter::getOverlap(), Train_Segmenter::loadClusters(), SpeakerRecognition::runTrials(), Shout_MakeTrainSet::Shout_MakeTrainSet(), ShoutSegment::ShoutSegment(), SpkrecStats::SpkrecStats(), Train_Segmenter::storeClusters(), and Train_Segmenter::Train_Segmenter().
void FeaturePool::maxSegmentLength | ( | int | segNr, | |
int | labelNr, | |||
int | size, | |||
int | minRemainder | |||
) |
- Todo:
- docs
References SegmentationList::firstFrame, SegmentationList::ID, SegmentationList::infoString, SegmentationList::lastFrame, SegmentationList::next, and segList.
Referenced by ShoutSegment::ShoutSegment().
void FeaturePool::mergeLabels | ( | int | segNr, | |
int | label1, | |||
int | label2 | |||
) |
Merge the labels label1 and label2 in the segmentation segNr (to label1).
References SegmentationList::ID, SegmentationList::next, and segList.
Referenced by Train_Segmenter::mergeModels(), and ShoutSegment::ShoutSegment().
int FeaturePool::mergeSegmentations | ( | int * | seg, | |
int | nrSeg, | |||
int | outSeg | |||
) |
- Todo:
- Docs
References addSegment(), SegmentationList::ID, SegmentationList::next, poolLength, resetSegmentation(), and segList.

int FeaturePool::readHeader_ShoutFormat | ( | ) | [protected] |
Reads the header information of a shout feature vector file. Actually, this file type doesn't have the length of the file in its header, so the length is calculated by just reading trough the file...
References featureFile, WriteFileLittleBigEndian::freadEndianSafe(), Vector::readFloatData(), and vectorSize.
Referenced by addFeatureFile(), and createNewPool().

int FeaturePool::readHeader_TextFormat | ( | ) | [protected] |
- Todo:
- docs
todo BUGFIX THIS!!!!
References featureFile, StringFunctions::splitList(), and vectorSize.
Referenced by addFeatureFile(), and createNewPool().

void FeaturePool::readRTTM | ( | int | segmentationNr, | |
char * | mapCluster, | |||
int | mapNr, | |||
int | strLen, | |||
int | prefixLength, | |||
FILE * | inSegFile, | |||
int | fillerID = -1 , |
|||
int | ignoreFrames = 0 , |
|||
int | trainFrames = 0 , |
|||
char * | labelName = NULL | |||
) |
Reads a segmentation from file (RTTM format) and stores the segmentation in segment number segmentationNr. ID[0] will be determined using the mapCluster. This variable contains an array of strings. When one of the strings matches, the ID will be the index of the string + 1. If no string matches, the ID will be zero. (the number of strings is mapNr, the length of each string is strLen). When prefixLength > 0, the first prefixLength characters of the RTTM 'speaker ID' will not be used in the match. When mapNr < 0, instead of matching strings, the remaining string will be converted to a number. If fillerID > 0, all gaps in the segmentation are filled with segments of fillerID ID.
- Todo:
- add checking file format...
- Todo:
- This last -1 is a bug-fix: segments should not overlap...
- Todo:
- This is a bug-fix so we're able to use ICSI's feature files in combination with SRI's SAD input file...
References FeaturePool_Multistream_file::featurePool, fileOffset, SegmentationList::firstFrame, SegmentationList::ID, infoBlock, SegmentationList::infoString, SegmentationList::lastFrame, multiStream, SegmentationList::next, FeaturePoolInfo::numberOfChannels, numberOfSpkIDs, poolLength, readRTTM(), resetSegmentation(), segList, spkID, and StringFunctions::splitList().
Referenced by AvgEnergy::AvgEnergy(), NormalizeAM::NormalizeAM(), readRTTM(), SpeakerRecognition::runTrials(), Shout_Cluster::Shout_Cluster(), Shout_MakeTrainSet::Shout_MakeTrainSet(), Shout_Preprocess::Shout_Preprocess(), Shout_VTLN::Shout_VTLN(), SpkrecStats::SpkrecStats(), Train_Segmenter::storeClusters(), and Whisper::Whisper().

void FeaturePool::removeLowEnergy | ( | int | segID, | |
int | channelNr, | |||
bool | doShort = false | |||
) |
- Todo:
- docs
References addSegment(), FeatureEnergy::buffer, claimSegmentationID(), feaEnergy, fillPool_curSeg, freeID, getAverageEnergy(), getCurSegmentStart(), getFirstVectorFirstSegment(), getFirstVectorNextSegment(), getNextVector(), Vector::getValue(), resetSegmentation(), and segList.
Referenced by ShoutSegment::ShoutSegment().

void FeaturePool::resetSegmentation | ( | int | segNr | ) |
The pool can have multiple segmentations. In order to reset one of those segmentations, this method needs to be called.
References fillPool_curSeg, SegmentationList::infoString, SegmentationList::next, and segList.
Referenced by claimSegmentationID(), createUEMSegmentation(), ShoutSegment::doSAD_noGarbage(), filterToSegmentation(), freeSegmentationID(), mergeSegmentations(), readRTTM(), removeLowEnergy(), segmentationCopy(), segmentationIntersection(), segmentationSplit(), segmentationSubset(), segmentationSubstract(), Segmenter::segmentFeaturePool(), ShoutPrepareAdapt::ShoutPrepareAdapt(), ShoutSegment::ShoutSegment(), ShoutTrainModel::ShoutTrainModel(), Train_Segmenter::train(), and TrainPhoneModel::viterbi().
void FeaturePool::resetStreamWeights | ( | ) |
/
- Todo:
- Docs
References infoBlock, FeaturePoolInfo::numberOfChannels, FeaturePoolInfo::weight, and FeaturePoolInfo::weightBackup.
Referenced by Train_Segmenter::getMergeModelScore().
void FeaturePool::restrictPool | ( | int | start, | |
int | end | |||
) |
void FeaturePool::retrieveEnergy | ( | char * | featureFileName, | |
int | channelNr | |||
) |
- Todo:
- docs
References FeatureEnergy::buffer, FeatureExtraction::doFeatureExtraction(), feaEnergy, FeatureEnergy::feaExtract, feaExtract, and FeatureExtraction::getPool().
Referenced by AvgEnergy::AvgEnergy(), and ShoutSegment::ShoutSegment().

void FeaturePool::segmentationAddLabel | ( | int | sourceSegNr, | |
int | destSegNr, | |||
int | sourceLabel, | |||
int | destLabel | |||
) |
- Todo:
- Docs
References SegmentationList::firstFrame, SegmentationList::ID, SegmentationList::lastFrame, SegmentationList::next, and segList.
void FeaturePool::segmentationCopy | ( | int | sourceSegNr, | |
int | destSegNr | |||
) |
Copy a segmentation to another segmentation
References addSegment(), SegmentationList::firstFrame, SegmentationList::ID, SegmentationList::lastFrame, SegmentationList::next, resetSegmentation(), and segList.
Referenced by ShoutSegment::doSAD_noGarbage(), Adapt_Segmenter::proceedMerge(), and ShoutSegment::ShoutSegment().

void FeaturePool::segmentationCreateOverlap | ( | int | segNr, | |
int | label | |||
) |
- Todo:
- Docs
References SegmentationList::firstFrame, SegmentationList::ID, SegmentationList::infoString, SegmentationList::lastFrame, SegmentationList::next, and segList.
Referenced by Train_Segmenter::getOverlap(), and Train_Segmenter::train().
void FeaturePool::segmentationFillGaps | ( | int | segNr, | |
int | labelNr | |||
) |
Fill gaps in a segmentation with labels labelNr.
References SegmentationList::firstFrame, SegmentationList::infoString, SegmentationList::lastFrame, SegmentationList::next, and segList.
void FeaturePool::segmentationIntersection | ( | int | sourceSegNr, | |
int | filterSegNr, | |||
int | filterLabel, | |||
int | destSegNr | |||
) |
It will copy the source segmentation into the destination segmentation, but only the parts that are also in the filter segmentation with the filter labelNr (-1 means all labels). This algorithm only works when the segments are added sequencially!
References addSegment(), filter, SegmentationList::firstFrame, SegmentationList::ID, SegmentationList::lastFrame, SegmentationList::next, resetSegmentation(), and segList.
Referenced by Train_Segmenter::loadClusters(), Train_Segmenter::mergeModels(), Segmenter::segmentFeaturePool(), ShoutSegment::ShoutSegment(), and Train_Segmenter::trainIteration().

void FeaturePool::segmentationSplit | ( | int | sourceSegNr, | |
int | destSegNr1, | |||
int | destSegNr2 | |||
) |
All labels in the sourceSegNr are split in two. The first half is assigned to destSegNr1 and the second to destSegNr2..
References addSegment(), SegmentationList::firstFrame, SegmentationList::ID, SegmentationList::lastFrame, SegmentationList::next, resetSegmentation(), and segList.

void FeaturePool::segmentationSubset | ( | int | sourceSegNr, | |
int | destSegNr, | |||
int | useLabel, | |||
PhoneModel * | model, | |||
int | nrSamples | |||
) |
- Todo:
- docs
References addSegment(), SegmentationAdmin::curSeg, SegmentationList::firstFrame, getFirstVectorFirstSegment(), getFirstVectorNextSegment(), PhoneModel::getLogPDFProbability(), getNextVector(), getSegmentID(), SegmentationList::ID, SegmentationList::lastFrame, and resetSegmentation().
Referenced by ShoutSegment::doSAD_noGarbage().

void FeaturePool::segmentationSubstract | ( | int | sourceSegNr, | |
int | filterSegNr, | |||
int | destSegNr, | |||
int | filterLabel = -1 | |||
) |
- Todo:
- Docs
References addSegment(), filter, SegmentationList::firstFrame, SegmentationList::ID, SegmentationList::lastFrame, SegmentationList::next, poolLength, resetSegmentation(), and segList.

void FeaturePool::segmentationWiden | ( | int | segNr, | |
int | soundNr, | |||
int | maxNrFrames, | |||
int | onlyWidenLabel = -1 | |||
) |
Makes all labels this segmentation a bit wider (nrFrames) except for soundNr.
References SegmentationList::firstFrame, SegmentationList::ID, SegmentationList::lastFrame, SegmentationList::next, and segList.
Referenced by Train_Segmenter::train().
void FeaturePool::setCurSegmentVector | ( | int | segNr, | |
int | offset, | |||
Vector * | vector | |||
) |
Some users might want to fill the pool one Vector at a time. That's possible in combination with the FeaturePool(int poolS, int vectorS) constructor. Segments can be added with addSegment. Once a segment is added, this method can fill this segment with Vector objects.
The offset is the number of frames from the start of the segment.
This method will COPY the vector. The user still needs to delete its own Vector object.
References buffer, fillPool_curSeg, SegmentationList::firstFrame, Vector::setAllValues(), and vectorSize.

void FeaturePool::setCurSegmentVectors | ( | int | segNr, | |
FILE * | inFile, | |||
bool | inputIsFloat = false | |||
) |
Once a segment is initialized, it can be filled from file using this method.
References buffer, fillPool_curSeg, SegmentationList::lastFrame, and vectorSize.
Referenced by Adapt_AM::Adapt_AM(), and ShoutTrainModel::ShoutTrainModel().
void FeaturePool::setFeatureNormalization | ( | FEATURENORM_TYPE | m | ) |
void FeaturePool::setFilter | ( | char * | featureFileName, | |
int | dimension, | |||
double | threshold | |||
) |
Add a filter to the pool. All frames that are filtered out are never offered to the user. with enableFilter() it is possible to enable or disable the filter. Only shout-format feature files are processed. If no file is available (NULL), the pool itself is used.
References buffer, filter, filterEnabled, WriteFileLittleBigEndian::freadEndianSafe(), Gaussian::getMean(), Vector::getValue(), Gaussian::getVariance(), poolLength, Gaussian::train(), Gaussian::trainFinish(), and vectorSize.

void FeaturePool::setOnlyMEL | ( | ) |
/
- Todo:
- Docs
References feaExtract, onlyMEL, and FeatureExtraction::setOnlyMEL().
Referenced by Shout_Preprocess::Shout_Preprocess().

void FeaturePool::setSegmentID | ( | int | idNr, | |
int | val, | |||
SegmentationAdmin * | admin | |||
) | const [inline] |
References SegmentationAdmin::curSeg, and SegmentationList::ID.
Referenced by Shout_VTLN::Shout_VTLN().
void FeaturePool::setStreamWeights | ( | double * | w, | |
bool | forEver | |||
) |
/
- Todo:
- Docs
References infoBlock, FeaturePoolInfo::numberOfChannels, FeaturePoolInfo::weight, and FeaturePoolInfo::weightBackup.
Referenced by FeaturePool(), Train_Segmenter::getMergeModelScore(), and Train_Segmenter::mergeClusters().
void FeaturePool::splitOnEnergy | ( | int | segNr, | |
int | sourceLabel, | |||
int | silLabel, | |||
int | soundLabel, | |||
int | nrSamplesSil, | |||
int | nrSamplesSound, | |||
int | comp | |||
) |
- Todo:
- docs
References FeatureEnergy::buffer, feaEnergy, feaExtract, SegmentationList::firstFrame, Vector::getValue(), SegmentationList::ID, SegmentationList::next, and segList.
Referenced by ShoutSegment::ShoutSegment().

int FeaturePool::startTimeStamp | ( | ) | const [inline] |
void FeaturePool::storeFeatureVectors | ( | FILE * | file | ) |
/
- Todo:
- Docs
References feaExtract, and FeatureExtraction::storeFeatureVectors().
Referenced by Shout_Preprocess::Shout_Preprocess(), and SpkrecStats::SpkrecStats().

void FeaturePool::writeRTTM | ( | int | segmentationNr, | |
const char * | label, | |||
const char * | prefix, | |||
FILE * | outFile = NULL , |
|||
int | nrPr = 0 , |
|||
int | overwriteVTLN = -1 | |||
) |
Prints the current segmentation in RTTM format to the screen (outFile = NULL), or to a file. The label is placed as label in each line, the prefix is added to the segment ID. If nrPr is > 0, the prefix string contains all speaker labels, it is supposed to be nrSpeakers*nrPr long..
References SegmentationList::firstFrame, UniqueIDList::ID, SegmentationList::ID, SegmentationList::infoString, SegmentationList::lastFrame, SegmentationList::next, UniqueIDList::next, and segList.
Referenced by Train_Segmenter::getOverlap(), Shout_VTLN::Shout_VTLN(), ShoutSegment::ShoutSegment(), and Train_Segmenter::train().
Member Data Documentation
Vector** FeaturePool::buffer [protected] |
Referenced by createNewMultiStreamPool(), createNewPool(), FeaturePool(), fillBuffer_fromFeatureExtraction(), fillBuffer_ShoutFormat(), fillBuffer_TextFormat(), getAverageEnergy(), getCurSegmentEnergy(), getCurSegmentVectorList(), getNextVectorList(), getVectorList(), setCurSegmentVector(), setCurSegmentVectors(), setFilter(), and ~FeaturePool().
FeatureEnergy FeaturePool::feaEnergy[2] [protected] |
Referenced by FeaturePool(), getAverageEnergy(), getCurSegmentEnergy(), removeLowEnergy(), retrieveEnergy(), splitOnEnergy(), and ~FeaturePool().
FeatureExtraction* FeaturePool::feaExtract [protected] |
FILE* FeaturePool::featureFile [protected] |
FEATURENORM_TYPE FeaturePool::featureNorm [protected] |
Referenced by createNewFeatureExtraction(), createNewPool(), FeaturePool(), and setFeatureNormalization().
int FeaturePool::fileOffset [protected] |
Referenced by addFeatureFile(), createNewPool(), FeaturePool(), and readRTTM().
FILE_TYPE FeaturePool::fileType [protected] |
Referenced by addFeatureFile(), createNewFeatureExtraction(), createNewPool(), FeaturePool(), and ~FeaturePool().
SegmentationList* FeaturePool::fillPool_curSeg[MAX_NR_SEGMENTATIONS] [protected] |
Referenced by addSegment(), concatSegmentation(), FeaturePool(), removeLowEnergy(), resetSegmentation(), setCurSegmentVector(), and setCurSegmentVectors().
bool* FeaturePool::filter [protected] |
bool FeaturePool::filterEnabled [protected] |
bool FeaturePool::freeID[MAX_NR_SEGMENTATIONS] [protected] |
Referenced by claimSegmentationID(), FeaturePool(), freeSegmentationID(), and removeLowEnergy().
FeaturePoolInfo FeaturePool::infoBlock [protected] |
FeaturePool_Multistream_file* FeaturePool::multiStream [protected] |
Referenced by FeaturePool(), and readRTTM().
int FeaturePool::numberOfSpkIDs[MAX_NR_SEGMENTATIONS] [protected] |
Referenced by createNewPool(), getNumberOfSpeakers(), and readRTTM().
bool FeaturePool::onlyMEL [protected] |
Referenced by createNewPool(), FeaturePool(), and setOnlyMEL().
int FeaturePool::poolFilled [protected] |
int FeaturePool::poolLength [protected] |
Referenced by addFeatureFile(), addSegment(), addSegmentToFront(), createNewMultiStreamPool(), createNewPool(), doSegmentsExist(), FeaturePool(), filterToSegmentation(), getClusterLength(), getFirstVectorFirstSegmentList(), getFirstVectorNextSegmentList(), getNextVectorList(), getVectorList(), mergeSegmentations(), readRTTM(), restrictPool(), segmentationSubstract(), setFilter(), and ~FeaturePool().
int FeaturePool::restrictEnd [protected] |
int FeaturePool::restrictStart [protected] |
SegmentationList* FeaturePool::segList[MAX_NR_SEGMENTATIONS] [protected] |
Referenced by addSegment(), addSegmentToFront(), concatSegmentation(), createNewPool(), doSegmentsExist(), FeaturePool(), filterLongSegments(), filterShortSegments(), getAverageEnergy(), getClusterLength(), getFirstVectorFirstSegmentList(), maxSegmentLength(), mergeLabels(), mergeSegmentations(), readRTTM(), removeLowEnergy(), resetSegmentation(), segmentationAddLabel(), segmentationCopy(), segmentationCreateOverlap(), segmentationFillGaps(), segmentationIntersection(), segmentationSplit(), segmentationSubstract(), segmentationWiden(), splitOnEnergy(), writeRTTM(), and ~FeaturePool().
int FeaturePool::spkID[MAX_NR_SEGMENTATIONS][MAX_NR_SPKIDS] [protected] |
Referenced by createNewPool(), getSpeakerID(), and readRTTM().
Gaussian* FeaturePool::textFeatureDistribution [protected] |
Referenced by createNewPool(), FeaturePool(), fillBuffer_TextFormat(), and ~FeaturePool().
int FeaturePool::vectorSize [protected] |