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

📄 plist_prune_0.cc

📁 这是处理语音信号的程序
💻 CC
字号:
// file: plist_prune_0.cc//// isip include files//#include "path_list.h"#include "path_list_constants.h"#include <decoder_constants.h>#include <word.h>#include <nbest_node.h>// method: prune_cc//// arguments://  float_8 beam: (input) beam for pruning//  int_4 max_paths: (input) maximum number of histories allowed//// return: a logical_1 indicating status//// this method performs beam pruning on the partial paths in this list// and also keeps the stack depth to a fixed number//logical_1 Path_list::prune_cc(float_8 beam_a, int_4 max_paths_a) {    // define local variables  //  float_8 beam_threshold = (float_8)DEC_DEFAULT_SCORE;  Nbest_node* nnode = (Nbest_node*)NULL;  Link_node* lnd = (Link_node*)NULL;  Link_node* node = (Link_node*)NULL;    // get best path from the head of the list  //  node = paths_d->get_head_cc();  // get the next path  //  lnd = node->get_next_cc();  // get the nbest node in the node  //  nnode = (Nbest_node*)(node->get_item_cc());  beam_threshold = max_score_d - beam_a;    // process the list  //  if (paths_d != (Link_list*)NULL) {    for (node = lnd; node != (Link_node*)NULL;	 node = lnd) {            // get next node      //      lnd = node->get_next_cc();            // get the nbest node      //      nnode = (Nbest_node*)(node->get_item_cc());      // if this node falls below threshold, prune it      //      if (nnode->get_score_cc() < beam_threshold) {	// prune the nbest node	//	delete nnode;    	// remove link node from the current list	//	paths_d->remove_cc(node);	// decrement history count	//	num_paths_d--;	      }          }  }  // prune to limit the maximum number of paths in the list  //  while (num_paths_d > max_paths_a) {        // get the last node in the history node list    //    lnd = paths_d->get_curr_cc();        // get the item in this node and remove it    //    nnode = (Nbest_node*)(lnd->get_item_cc());    delete nnode;        // remove link node from the current list    //    paths_d->remove_cc(lnd);    // decrement history count    //    num_paths_d--;    // if there are no more histories remaining release list memory    //    if (num_paths_d == (int_4)0) {      delete paths_d;      paths_d = (Link_list*)NULL;    }  }    // exit gracefully  //  return ISIP_TRUE;}

⌨️ 快捷键说明

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