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

📄 lat_update_0.cc

📁 这是处理语音信号的程序
💻 CC
字号:
// file: lat_update_0.cc//// isip include files//#include "lattice.h"#include "lattice_constants.h"// method: update_scores_cc//// arguments://  Ngram* ngram: (input) the n-gram language model//  int_4 order: (input) the order of the ngram LM//  // return: a logical_1 flag indicating status//// this method updates the scores at each lattice node using the given// ngram LM (currently works only for bigram lms)//logical_1 Lattice::update_scores_cc(Ngram* ngram_a, int_4 order_a) {  // dummy variables  //  Word** words = new Word*[order_a];  int_4 num = (int_4)0;  Lattice_node* latn = (Lattice_node*)NULL;  Lattice_node* latnext = (Lattice_node*)NULL;    Link_list* nextlist = (Link_list*)NULL;  float_4* lmscore = (float_4*)NULL;     Hash_cell** lcells = lnode_d->get_cells_cc();  int_4 hsize = lnode_d->get_size_cc();  // loop over all hash cells  //  for (int_4 i = 0; i < hsize; i++) {    for (Hash_cell* cell = lcells[i]; cell != (Hash_cell*)NULL;         cell = cell->get_next_cc()) {      // reset the word array      //      num = (int_4)0;      for (int_4 j = 0; j < order_a; j++) {	words[j] = (Word*)NULL;      }            // get the lattice node here      //      latn = (Lattice_node*)(cell->get_item_cc());      // get the word here      //      words[num] = latn->get_word_cc();      if (words[num] != (Word*)NULL) {	num++;      }            // get the next nodes and lm score      //      lmscore = latn->get_lm_scores_cc();      nextlist = latn->get_next_nodes_cc();      // loop over all descendent nodes for the depth of the ngram      // order      //      if (nextlist != (Link_list*)NULL) {	int_4 ww = (int_4)0;	for (Link_node* nd = nextlist->get_head_cc();	     nd != (Link_node*)NULL; nd = nd->get_next_cc()) {	  // get the lattice node here	  //	  latnext = (Lattice_node*)(nd->get_item_cc());	  	  // get the word here	  //	  words[num] = latnext->get_word_cc();	  num++;	  // get the lm score from the ngram lm	  //	  lmscore[ww] = ngram_a->get_score_cc(num, words);	  num--;	  ww++;	}      } // end if next list is not null    } // end loop over all hash cells  } // end loop over hash table    // free memory  //  delete [] words;  words = (Word**)NULL;    // exit gracefully  //  return ISIP_TRUE;}

⌨️ 快捷键说明

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