gmm.h

来自「利用gmm模型进行特征分析的程序」· C头文件 代码 · 共 40 行

H
40
字号
#ifndef  GMM_H
#define  GMM_H

#include "stdlib.h"
#include "math.h"

#define F_DIMENSION 50
#define GS_NUM  8

typedef struct {
    int targetid;
    int buoyid;
    int gsmnum;
    float wg_vector[GS_NUM];
    float mean_vector[GS_NUM][F_DIMENSION];
    float variance_vector[GS_NUM][F_DIMENSION];
}SENDBACK;


void modelmain();
void gmmtrain();
void caculateboundpoint(int fftsize,int samplingrate, int numberoffilter,int* pbounds,float fl,float fk);
float boundf(float f);
float inverseboundf(float b);
void mel_div(float* a,float* b);
double gsprob(float* f_vector,double* ppi);
void gsiter();
void gsadapt();
void LBG(float** fvector,int fnum,float** pmean,float** pvariance,float* pw);
bool findfirstcenters(float** fvector,int fnum,int* classnumoframes,float** newcenter,int repeat,int index);
void reclass(float** fvector,int fnum,int* classnumoframes,float** newcenter,float* newmaxdistance);
bool findcenter(float** fvector,int fnum,int* classnumoframes,float* thecenter,int indexofclass);
float caculatedistance(float* v1,float* v2);
int finddemotevector(float** fvector,int fnum,int* classnumoframes,float* thecenter,float* thedemote,int index);
void calcweight(int* classnumoframes,int fnum,float* pw);
void calcvariance(float** fvector,int fnum,int* classnumoframes,float** pmean,float** pvariance);
void decideclass(float** newcenter,int* classnumoframes,int fnum);

#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?