qm-dsp 1.8
ClusterMeltSegmenter Class Reference

#include <ClusterMeltSegmenter.h>

Inheritance diagram for ClusterMeltSegmenter:

Public Member Functions

 ClusterMeltSegmenter (ClusterMeltSegmenterParams params)
virtual ~ClusterMeltSegmenter ()
virtual void initialise (int samplerate)
virtual int getWindowsize ()
virtual int getHopsize ()
virtual void extractFeatures (const double *samples, int nsamples)
void setFeatures (const vector< vector< double > > &f)
virtual void segment ()
void segment (int m)
int getNSegmentTypes ()
virtual void clear ()
const SegmentationgetSegmentation () const

Protected Member Functions

void makeSegmentation (int *q, int len)
void extractFeaturesConstQ (const double *, int)
void extractFeaturesMFCC (const double *, int)

Protected Attributes

Window< double > * window
FFTRealfft
ConstantQconstq
MFCCmfcc
model_t * model
int * q
vector< vector< double > > histograms
feature_types featureType
double hopSize
double windowSize
int fmin
int fmax
int nbins
int ncoeff
int ncomponents
int nHMMStates
int nclusters
int histogramLength
int neighbourhoodLimit
Decimatordecimator
vector< vector< double > > features
Segmentation segmentation
int samplerate

Detailed Description

Definition at line 59 of file ClusterMeltSegmenter.h.

Constructor & Destructor Documentation

◆ ClusterMeltSegmenter()

ClusterMeltSegmenter::ClusterMeltSegmenter ( ClusterMeltSegmenterParams params)

◆ ~ClusterMeltSegmenter()

ClusterMeltSegmenter::~ClusterMeltSegmenter ( )
virtual

Definition at line 113 of file ClusterMeltSegmenter.cpp.

References constq, decimator, fft, and window.

Member Function Documentation

◆ initialise()

◆ getWindowsize()

int ClusterMeltSegmenter::getWindowsize ( )
virtual

Implements Segmenter.

Definition at line 122 of file ClusterMeltSegmenter.cpp.

References Segmenter::samplerate, and windowSize.

Referenced by extractFeaturesConstQ(), extractFeaturesMFCC(), and initialise().

◆ getHopsize()

int ClusterMeltSegmenter::getHopsize ( )
virtual

Implements Segmenter.

Definition at line 128 of file ClusterMeltSegmenter.cpp.

References hopSize, and Segmenter::samplerate.

Referenced by makeSegmentation().

◆ extractFeatures()

void ClusterMeltSegmenter::extractFeatures ( const double * samples,
int nsamples )
virtual

◆ setFeatures()

void ClusterMeltSegmenter::setFeatures ( const vector< vector< double > > & f)

Definition at line 317 of file ClusterMeltSegmenter.cpp.

References FEATURE_TYPE_UNKNOWN, Segmenter::features, and featureType.

◆ segment() [1/2]

◆ segment() [2/2]

void ClusterMeltSegmenter::segment ( int m)
virtual

Implements Segmenter.

Definition at line 311 of file ClusterMeltSegmenter.cpp.

References nclusters, and segment().

◆ getNSegmentTypes()

int ClusterMeltSegmenter::getNSegmentTypes ( )
inline

Definition at line 71 of file ClusterMeltSegmenter.h.

References nclusters.

◆ makeSegmentation()

void ClusterMeltSegmenter::makeSegmentation ( int * q,
int len )
protected

Definition at line 375 of file ClusterMeltSegmenter.cpp.

References getHopsize(), nclusters, q, Segmenter::samplerate, segment(), and Segmenter::segmentation.

Referenced by segment().

◆ extractFeaturesConstQ()

void ClusterMeltSegmenter::extractFeaturesConstQ ( const double * samples,
int nsamples )
protected

◆ extractFeaturesMFCC()

void ClusterMeltSegmenter::extractFeaturesMFCC ( const double * samples,
int nsamples )
protected

Definition at line 239 of file ClusterMeltSegmenter.cpp.

References decimator, Segmenter::features, getWindowsize(), mfcc, and ncoeff.

Referenced by extractFeatures().

◆ clear()

virtual void Segmenter::clear ( )
inlinevirtualinherited

Definition at line 54 of file Segmenter.h.

References features.

Referenced by ClusterMeltSegmenter::segment().

◆ getSegmentation()

const Segmentation & Segmenter::getSegmentation ( ) const
inlineinherited

Definition at line 55 of file Segmenter.h.

References segmentation.

Member Data Documentation

◆ window

Window<double>* ClusterMeltSegmenter::window
protected

◆ fft

FFTReal* ClusterMeltSegmenter::fft
protected

◆ constq

ConstantQ* ClusterMeltSegmenter::constq
protected

◆ mfcc

MFCC* ClusterMeltSegmenter::mfcc
protected

◆ model

model_t* ClusterMeltSegmenter::model
protected

Definition at line 83 of file ClusterMeltSegmenter.h.

◆ q

int* ClusterMeltSegmenter::q
protected

Definition at line 84 of file ClusterMeltSegmenter.h.

Referenced by makeSegmentation(), and segment().

◆ histograms

vector<vector<double> > ClusterMeltSegmenter::histograms
protected

Definition at line 85 of file ClusterMeltSegmenter.h.

◆ featureType

feature_types ClusterMeltSegmenter::featureType
protected

◆ hopSize

double ClusterMeltSegmenter::hopSize
protected

Definition at line 88 of file ClusterMeltSegmenter.h.

Referenced by ClusterMeltSegmenter(), and getHopsize().

◆ windowSize

double ClusterMeltSegmenter::windowSize
protected

Definition at line 89 of file ClusterMeltSegmenter.h.

Referenced by ClusterMeltSegmenter(), and getWindowsize().

◆ fmin

int ClusterMeltSegmenter::fmin
protected

Definition at line 92 of file ClusterMeltSegmenter.h.

Referenced by ClusterMeltSegmenter(), and initialise().

◆ fmax

int ClusterMeltSegmenter::fmax
protected

Definition at line 93 of file ClusterMeltSegmenter.h.

Referenced by ClusterMeltSegmenter(), and initialise().

◆ nbins

int ClusterMeltSegmenter::nbins
protected

Definition at line 94 of file ClusterMeltSegmenter.h.

Referenced by ClusterMeltSegmenter(), initialise(), and segment().

◆ ncoeff

int ClusterMeltSegmenter::ncoeff
protected

◆ ncomponents

int ClusterMeltSegmenter::ncomponents
protected

Definition at line 98 of file ClusterMeltSegmenter.h.

Referenced by ClusterMeltSegmenter().

◆ nHMMStates

int ClusterMeltSegmenter::nHMMStates
protected

Definition at line 101 of file ClusterMeltSegmenter.h.

Referenced by ClusterMeltSegmenter(), and segment().

◆ nclusters

int ClusterMeltSegmenter::nclusters
protected

◆ histogramLength

int ClusterMeltSegmenter::histogramLength
protected

Definition at line 105 of file ClusterMeltSegmenter.h.

Referenced by ClusterMeltSegmenter(), and segment().

◆ neighbourhoodLimit

int ClusterMeltSegmenter::neighbourhoodLimit
protected

Definition at line 106 of file ClusterMeltSegmenter.h.

Referenced by ClusterMeltSegmenter(), and segment().

◆ decimator

Decimator* ClusterMeltSegmenter::decimator
protected

◆ features

vector<vector<double> > Segmenter::features
protectedinherited

◆ segmentation

Segmentation Segmenter::segmentation
protectedinherited

Definition at line 58 of file Segmenter.h.

Referenced by getSegmentation(), and ClusterMeltSegmenter::makeSegmentation().

◆ samplerate


The documentation for this class was generated from the following files: