⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cmmf_write_2.cc

📁 这是处理语音信号的程序
💻 CC
字号:
// file: cmmf_write_2.cc// // isip include files//#include "convert_mmf.h"#include "convert_mmf_constants.h" // method: write_states_bin_cc//// arguments://  int_4 num_st : (input) number of states//  int_4 num_feat : (input) number of features in data vector//  char_1* st_file : (input) data file name//  State** state_list: (input) list of states//// return: a State** pointing to a list of States//// this method writes the State file --- each mixture// component in the States is assumed to have a diagonal covariance// matrix//logical_1 write_states_bin_cc(int_4 num_st_a, int_4 num_feat_a,			      char_1* st_file_a, Train_State** state_list_a) {    // open file for writing  //  FILE* fp = fopen((char*)st_file_a, "wb");  if (fp == (FILE*)NULL) {    fprintf(stdout, "cannot open file %s\n", st_file_a);    exit(ISIP_PROTO_ERROR);	  }	    // variables to read data  //  int_4 num_mix = (int_4)0;  // output the feature size and number of states  //  fwrite((void*)&num_feat_a, sizeof(int_4), 1, fp);  fwrite((void*)&num_st_a, sizeof(int_4), 1, fp);  // print the dummy 0'th state  //  fwrite((void*)&num_mix, sizeof(int_4), 1, fp);      // for each state print the contents  //  for (int_4 i = 1; i < num_st_a; i++) {    // get the state information     //    float_4* st_mix_wt = state_list_a[i]->get_weights_cc();    float_4** st_mix_mean = state_list_a[i]->get_mean_cc();    float_4** st_mix_covar = state_list_a[i]->get_covar_cc();    float_4* st_mix_scale = state_list_a[i]->get_scale_cc();        // print number of mixtures in the state    //    num_mix = state_list_a[i]->get_num_mixtures_cc();    fwrite((void*)&num_mix, sizeof(int_4), 1, fp);        // loop over all mixtures and print the mixture weight, mean and    // the variance    //    for (int_4 j = 0; j < num_mix; j++) {    fwrite((void*)&st_mix_wt[j], sizeof(float_4), 1, fp);      // print the mean vector      //      for (int_4 k = 0; k < num_feat_a; k++) {	fwrite((void*)&st_mix_mean[j][k], sizeof(float_4), 1, fp);	      }      // print the variance vector      //      for (int_4 k = 0; k < num_feat_a; k++) {	fwrite((void*)&st_mix_covar[j][k], sizeof(float_4), 1, fp);      }      // print the scale factor      //      fwrite((void*)&st_mix_scale[j], sizeof(float_4), 1, fp);    }  }    // close output file  //  fclose(fp);    // exit gracefully  //  return ISIP_TRUE;}

⌨️ 快捷键说明

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