?? esthmm.c
字號:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <string.h>
#include "nrutil.h"
#include "hmm.h"
#include "backward.c"
#include "baum.c"
#include "forward.c"
#include "hmmutils.c"
#include "nrutil.c"
#include "sequence.c"
int main (int argc, char **argv)
{
int T;
HMM hmm;
int N;
int M;
double **alpha;
double **beta;
double **gamma;
int *O;
FILE *fp;
if (argc != 4) {
printf("Usage error. \n");
printf("Usage: %s N M file.seq\n", argv[0]);
printf(" N - number of states\n");
printf(" M - number of symbols\n");
printf(" file.seq - file containing the obs. seqence\n");
exit (1);
}
fp = fopen(argv[3], "r");
ReadSequence(fp, &T, &O);
fclose(fp);
N = atoi(argv[1]);
M = atoi(argv[2]);
InitHMM(&hmm, N, M);
alpha = dmatrix(1, T, 1, hmm.N);
beta = dmatrix(1, T, 1, hmm.N);
gamma = dmatrix(1, T, 1, hmm.N);
BaumWelch(&hmm, T, O, alpha, beta, gamma);
PrintHMM(stdout, &hmm);
free_ivector(O, 1, T);
free_dmatrix(alpha, 1, T, 1, hmm.N);
free_dmatrix(beta, 1, T, 1, hmm.N);
free_dmatrix(gamma, 1, T, 1, hmm.N);
FreeHMM(&hmm);
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -