libsent/src/hmminfo/chkhmmlist.c

HMMList に全ての可能なトライフォンが含まれているかチェックする. [詳細]

#include <sent/htk_hmm.h>
#include <sent/vocabulary.h>
chkhmmlist.cのインクルード依存関係図

ソースコードを見る。

関数

void make_hmm_basephone_list (HTK_HMM_INFO *hmminfo)
static void print_callback_detail (void *x)
static void print_callback_name (void *x)
void print_all_basephone_detail (HMM_basephone *base)
void print_all_basephone_name (HMM_basephone *base)
static void count_callback (void *x)
static void count_all_phone (HMM_basephone *base)
static void mark_word_edge (WORD_INFO *winfo, HMM_basephone *base)
static void add_to_error (char *lostname, HTK_HMM_INFO *hmminfo)
static void print_error_callback (void *x)
static void triphone_callback_normal (void *x)
static void triphone_callback_right (void *x)
static void triphone_callback_left (void *x)
void test_interword_triphone (HTK_HMM_INFO *hmminfo, WORD_INFO *winfo)
void make_base_phone (HTK_HMM_INFO *hmminfo, WORD_INFO *winfo)
 Build basephone information.
void print_phone_info (HTK_HMM_INFO *hmminfo)

変数

static int bncnt
 Count of basephone that can appear at the beginning of sentence.
static int edcnt
 Count of basephone that can appear at the end of sentence.
static HTK_HMM_INFOlocal_hmminfo
 Local work area to hold HTK HMM data.
static WORD_INFOlocal_winfo
 Local work area to hold word dictionary.
static APATNODElocal_root
 Local work area to hold basephone index root.
static WORD_ID current_w
 Local work area to hold current word ID.
static char gbuf [MAX_HMMNAME_LEN]
 Local work area for phone name handling.
static APATNODEerror_root
 Error phone list.
static int error_num
 Number of encountered error phone.

説明

HMMList に全ての可能なトライフォンが含まれているかチェックする.

作者:
Akinobu LEE
日付:
Tue Feb 15 19:17:51 2005

与えられた音響モデルにおいて,認識時に登場しうる全てのトライフォンが HMM定義あるいはHMMListで定義されているかどうかをチェックします.

チェック時には辞書の語彙が考慮されます.すなわち,与えられた語彙の単語内 および単語間で生じうるトライフォンについてのみチェックされます.

Revision
1.5

chkhmmlist.c で定義されています。


関数

void make_hmm_basephone_list ( HTK_HMM_INFO hmminfo  ) 

Build a list of base phones by gathering center phones of the defined HMM.

引数:
hmminfo [i/o] HMM definition data

chkhmmlist.c47 行で定義されています。

参照元 init_hmminfo().

static void print_callback_detail ( void *  x  )  [static]

Traverse function callback to output detailed information of a basephone in text to stdout.

引数:
x [in] pointer to a basephone data.

chkhmmlist.c82 行で定義されています。

参照元 print_all_basephone_detail().

static void print_callback_name ( void *  x  )  [static]

Traverse function callback to output name of a basephone in text to stdout.

引数:
x [in] pointer to a basephone data.

chkhmmlist.c94 行で定義されています。

参照元 print_all_basephone_name().

void print_all_basephone_detail ( HMM_basephone base  ) 

Output all basephone informations to stdout.

引数:
base [in] pointer to the top basephone data holder.

chkhmmlist.c105 行で定義されています。

参照元 hmm_check().

void print_all_basephone_name ( HMM_basephone base  ) 

Output all basephone names to stdout

引数:
base [in] pointer to the top basephone data holder.

chkhmmlist.c115 行で定義されています。

参照元 hmm_check().

static void count_callback ( void *  x  )  [static]

Traverse callback function to increment the number of base phones that can appear at beginning of word and end of word.

引数:
x [in] pointer

chkhmmlist.c130 行で定義されています。

参照元 count_all_phone().

static void count_all_phone ( HMM_basephone base  )  [static]

Count the total number of base phones that can appear at beginning of word and end of word.

引数:
base 

chkhmmlist.c144 行で定義されています。

参照元 make_base_phone().

static void mark_word_edge ( WORD_INFO winfo,
HMM_basephone base 
) [static]

Mark each basephone if it can appear at beginning or end of a word.

引数:
winfo [in] word dictinary
base [in] top basephone data holder

chkhmmlist.c159 行で定義されています。

参照元 make_base_phone().

static void add_to_error ( char *  lostname,
HTK_HMM_INFO hmminfo 
) [static]

Add unknown (error) triphone to error list.

引数:
lostname [in] name of error triphone.
hmminfo [i/o] HMM definition data

chkhmmlist.c211 行で定義されています。

参照元 triphone_callback_normal(), と triphone_callback_right().

static void print_error_callback ( void *  x  )  [static]

Traverse callback function to output error phone name.

引数:
x [in] pointer to error phone name

chkhmmlist.c232 行で定義されています。

参照元 test_interword_triphone().

static void triphone_callback_normal ( void *  x  )  [static]

Traverse callback function to check if the cross-word triphones "basephone x - word[current_w]" and "word[current_w] + basephone x" exist, according to the basephone mark.

引数:
x [in] a basephone

chkhmmlist.c246 行で定義されています。

参照元 test_interword_triphone().

static void triphone_callback_right ( void *  x  )  [static]

Traverse callback function to check if the cross-word triphone "basephone x - word[current_w] + basephone x" exist, for words with only one phone: right part.

引数:
x [in] a basephone

chkhmmlist.c288 行で定義されています。

参照元 triphone_callback_left().

static void triphone_callback_left ( void *  x  )  [static]

Traverse callback function to check if the cross-word triphone "basephone x - word[current_w] + basephone x" exist, for words with only one phone: left part.

引数:
x [in] a basephone

chkhmmlist.c317 行で定義されています。

参照元 test_interword_triphone().

void test_interword_triphone ( HTK_HMM_INFO hmminfo,
WORD_INFO winfo 
)

Top function to check if all the possible triphones on given word dictionary actually exist in the logical HMM.

引数:
hmminfo [in] HMM definition information, with basephone list.
winfo [in] word dictionary information

chkhmmlist.c340 行で定義されています。

参照元 hmm_check().

void make_base_phone ( HTK_HMM_INFO hmminfo,
WORD_INFO winfo 
)

Build basephone information.

Extract base phones from HMM definition, mark them whether they appear on word head or word tail, and count the number.

引数:
hmminfo [i/o] HMM definition information, basephone list will be added.
winfo [in] word dictionary information

chkhmmlist.c381 行で定義されています。

参照元 hmm_check().

void print_phone_info ( HTK_HMM_INFO hmminfo  ) 

Output general information concerning phone mapping in HMM definition.

引数:
hmminfo [in] HMM definition data.

chkhmmlist.c395 行で定義されています。

参照元 hmm_check().


Juliusに対してTue Sep 22 00:15:12 2009に生成されました。  doxygen 1.6.0