c@243
|
1 #ifndef _CLUSTER_SEGMENTER_H
|
c@243
|
2 #define _CLUSTER_SEGMENTER_H
|
c@243
|
3
|
c@243
|
4 /*
|
c@243
|
5 * cluster_segmenter.h
|
c@243
|
6 * soundbite
|
c@243
|
7 *
|
c@243
|
8 * Created by Mark Levy on 06/04/2006.
|
c@243
|
9 * Copyright 2006 Centre for Digital Music, Queen Mary, University of London. All rights reserved.
|
c@243
|
10 *
|
c@243
|
11 */
|
c@243
|
12
|
c@243
|
13 #include <stdio.h>
|
c@243
|
14 #include <stdlib.h>
|
c@243
|
15 #include <math.h>
|
c@243
|
16 #include <float.h>
|
c@243
|
17
|
c@243
|
18 #include "segment.h"
|
c@243
|
19 #include "cluster_melt.h"
|
c@243
|
20 #include "hmm.h"
|
c@243
|
21 #include "pca.h"
|
c@243
|
22
|
c@243
|
23 /* applies MPEG-7 normalisation to constant-Q features, storing normalised envelope (norm) in last feature dimension */
|
c@243
|
24 void mpeg7_constq(double** features, int nframes, int ncoeff);
|
c@243
|
25
|
c@243
|
26 /* converts constant-Q features to normalised chroma */
|
c@243
|
27 void cq2chroma(double** cq, int nframes, int ncoeff, int bins, double** chroma);
|
c@243
|
28
|
c@243
|
29 void create_histograms(int* x, int nx, int m, int hlen, double* h);
|
c@243
|
30
|
c@243
|
31 void cluster_segment(int* q, double** features, int frames_read, int feature_length, int nHMM_states,
|
c@243
|
32 int histogram_length, int nclusters, int neighbour_limit);
|
c@243
|
33
|
c@243
|
34 void constq_segment(int* q, double** features, int frames_read, int bins, int ncoeff, int feature_type,
|
c@243
|
35 int nHMM_states, int histogram_length, int nclusters, int neighbour_limit);
|
c@243
|
36
|
c@243
|
37
|
c@243
|
38 #endif |