diff options
Diffstat (limited to 'libs/qm-dsp/dsp/segmentation')
-rw-r--r-- | libs/qm-dsp/dsp/segmentation/ClusterMeltSegmenter.h | 16 | ||||
-rw-r--r-- | libs/qm-dsp/dsp/segmentation/Segmenter.h | 2 | ||||
-rw-r--r-- | libs/qm-dsp/dsp/segmentation/cluster_melt.c | 2 | ||||
-rw-r--r-- | libs/qm-dsp/dsp/segmentation/cluster_segmenter.c | 16 | ||||
-rw-r--r-- | libs/qm-dsp/dsp/segmentation/cluster_segmenter.h | 4 | ||||
-rw-r--r-- | libs/qm-dsp/dsp/segmentation/segment.h | 8 |
6 files changed, 24 insertions, 24 deletions
diff --git a/libs/qm-dsp/dsp/segmentation/ClusterMeltSegmenter.h b/libs/qm-dsp/dsp/segmentation/ClusterMeltSegmenter.h index 327a25f073..528c09cb55 100644 --- a/libs/qm-dsp/dsp/segmentation/ClusterMeltSegmenter.h +++ b/libs/qm-dsp/dsp/segmentation/ClusterMeltSegmenter.h @@ -31,12 +31,12 @@ class ClusterMeltSegmenterParams // defaults are sensible for 11025Hz with 0.2 second hopsize { public: - ClusterMeltSegmenterParams() : + ClusterMeltSegmenterParams() : featureType(FEATURE_TYPE_CONSTQ), hopSize(0.2), windowSize(0.6), fmin(62), - fmax(16000), + fmax(16000), nbins(8), ncomponents(20), nHMMStates(40), @@ -78,28 +78,28 @@ protected: Window<double> *window; FFTReal *fft; - ConstantQ* constq; + ConstantQ* constq; MFCC* mfcc; model_t* model; // the HMM int* q; // the decoded HMM state sequence vector<vector<double> > histograms; - + feature_types featureType; double hopSize; // in seconds double windowSize; // in seconds - + // constant-Q parameters int fmin; int fmax; int nbins; int ncoeff; - + // PCA parameters int ncomponents; - + // HMM parameters int nHMMStates; - + // clustering parameters int nclusters; int histogramLength; diff --git a/libs/qm-dsp/dsp/segmentation/Segmenter.h b/libs/qm-dsp/dsp/segmentation/Segmenter.h index 1ac0679b72..9a77d70372 100644 --- a/libs/qm-dsp/dsp/segmentation/Segmenter.h +++ b/libs/qm-dsp/dsp/segmentation/Segmenter.h @@ -52,7 +52,7 @@ public: virtual void segment() = 0; // call once all the features have been extracted virtual void segment(int m) = 0; // specify desired number of segment-types virtual void clear() { features.clear(); } - const Segmentation& getSegmentation() const { return segmentation; } + const Segmentation& getSegmentation() const { return segmentation; } protected: vector<vector<double> > features; Segmentation segmentation; diff --git a/libs/qm-dsp/dsp/segmentation/cluster_melt.c b/libs/qm-dsp/dsp/segmentation/cluster_melt.c index 1441b394c2..0509480807 100644 --- a/libs/qm-dsp/dsp/segmentation/cluster_melt.c +++ b/libs/qm-dsp/dsp/segmentation/cluster_melt.c @@ -160,7 +160,7 @@ void cluster_melt(double *h, int m, int n, double *Bsched, int t, int k, int l, for (j = 0; j < k; j++) mexPrintf("%d ", nc[i][j]); mexPrintf("\n"); - } + } */ diff --git a/libs/qm-dsp/dsp/segmentation/cluster_segmenter.c b/libs/qm-dsp/dsp/segmentation/cluster_segmenter.c index 2a6b196921..0d2762ee7f 100644 --- a/libs/qm-dsp/dsp/segmentation/cluster_segmenter.c +++ b/libs/qm-dsp/dsp/segmentation/cluster_segmenter.c @@ -80,7 +80,7 @@ void mpeg7_constq(double** features, int nframes, int ncoeff) features[i][ncoeff] = env; if (env > maxenv) maxenv = env; - } + } /* normalise the envelopes */ for (i = 0; i < nframes; i++) features[i][ncoeff] /= maxenv; @@ -94,7 +94,7 @@ void create_histograms(int* x, int nx, int m, int hlen, double* h) int i, j, t; double norm; - for (i = 0; i < nx*m; i++) + for (i = 0; i < nx*m; i++) h[i] = 0; for (i = hlen/2; i < nx-hlen/2; i++) @@ -120,7 +120,7 @@ void create_histograms(int* x, int nx, int m, int hlen, double* h) } /* segment using HMM and then histogram clustering */ -void cluster_segment(int* q, double** features, int frames_read, int feature_length, int nHMM_states, +void cluster_segment(int* q, double** features, int frames_read, int feature_length, int nHMM_states, int histogram_length, int nclusters, int neighbour_limit) { int i, j; @@ -137,7 +137,7 @@ void cluster_segment(int* q, double** features, int frames_read, int feature_len maxval = 0; for (j = 0; j < feature_length; j++) { - if (features[i][j] > maxval) + if (features[i][j] > maxval) { maxval = features[i][j]; maxbin = j; @@ -172,14 +172,14 @@ void cluster_segment(int* q, double** features, int frames_read, int feature_len hmm_print(model); */ /* decode the hidden state sequence */ - viterbi_decode(features, frames_read, model, q); + viterbi_decode(features, frames_read, model, q); hmm_close(model); /*****************************/ } /*****************************/ - + /* fprintf(stderr, "HMM state sequence:\n"); for (i = 0; i < frames_read; i++) @@ -203,12 +203,12 @@ void cluster_segment(int* q, double** features, int frames_read, int feature_len /* now q holds a sequence of cluster assignments */ - free(h); + free(h); free(bsched); } /* segment constant-Q or chroma features */ -void constq_segment(int* q, double** features, int frames_read, int bins, int ncoeff, int feature_type, +void constq_segment(int* q, double** features, int frames_read, int bins, int ncoeff, int feature_type, int nHMM_states, int histogram_length, int nclusters, int neighbour_limit) { int feature_length; diff --git a/libs/qm-dsp/dsp/segmentation/cluster_segmenter.h b/libs/qm-dsp/dsp/segmentation/cluster_segmenter.h index e7106d4f81..fad0585cf6 100644 --- a/libs/qm-dsp/dsp/segmentation/cluster_segmenter.h +++ b/libs/qm-dsp/dsp/segmentation/cluster_segmenter.h @@ -38,10 +38,10 @@ void cq2chroma(double** cq, int nframes, int ncoeff, int bins, double** chroma); void create_histograms(int* x, int nx, int m, int hlen, double* h); -void cluster_segment(int* q, double** features, int frames_read, int feature_length, int nHMM_states, +void cluster_segment(int* q, double** features, int frames_read, int feature_length, int nHMM_states, int histogram_length, int nclusters, int neighbour_limit); -void constq_segment(int* q, double** features, int frames_read, int bins, int ncoeff, int feature_type, +void constq_segment(int* q, double** features, int frames_read, int bins, int ncoeff, int feature_type, int nHMM_states, int histogram_length, int nclusters, int neighbour_limit); #ifdef __cplusplus diff --git a/libs/qm-dsp/dsp/segmentation/segment.h b/libs/qm-dsp/dsp/segmentation/segment.h index 7a4eb8b2b4..494317cf42 100644 --- a/libs/qm-dsp/dsp/segmentation/segment.h +++ b/libs/qm-dsp/dsp/segmentation/segment.h @@ -34,10 +34,10 @@ typedef struct segmentation_t segment_t* segments; } segmentation_t; -typedef enum -{ - FEATURE_TYPE_UNKNOWN = 0, - FEATURE_TYPE_CONSTQ = 1, +typedef enum +{ + FEATURE_TYPE_UNKNOWN = 0, + FEATURE_TYPE_CONSTQ = 1, FEATURE_TYPE_CHROMA = 2, FEATURE_TYPE_MFCC = 3 } feature_types; |