#include <sent/stddefs.h>
#include <sent/htk_defs.h>
#include <sent/ptree.h>
#include <sent/htk_param.h>
htk_hmm.hのインクルード依存関係図
このグラフは、どのファイルから直接、間接的にインクルードされているかを示しています。
マクロ定義 | |
#define | currentis(A) (!strcasecmp(A, rdhmmdef_token)) |
Macro to check whether the next token is "A". | |
#define | NoTokErr(S) if (!rdhmmdef_token) rderr(S) |
Macro to jump to error if no token left. | |
#define | HMMDEF_DELM " \t\n<>" |
Delimiter string for parsing HMM definition file. | |
#define | MAX_STATE_NUM 65535 |
Possible maximum value of state ID (in unsigned short). | |
#define | HMM_RC_DLIM "+" |
Right context delimiter in string. | |
#define | HMM_LC_DLIM "-" |
Left context delimiter in string. | |
#define | HMM_RC_DLIM_C '+' |
Right context delimiter in character. | |
#define | HMM_LC_DLIM_C '-' |
Left context delimiter in character. | |
#define | SPMODEL_NAME_DEFAULT "sp" |
Default logical name of short pause model. | |
#define | MAX_HMMNAME_LEN 128 |
Length limit of HMM name (including ones generated in Julius). | |
型定義 | |
typedef _HTK_HMM_trans | HTK_HMM_Trans |
HMM transition table | |
typedef _HTK_HMM_variance | HTK_HMM_Var |
HMM variance data | |
typedef _HTK_HMM_dens | HTK_HMM_Dens |
HMM Gaussian density (or mixture) data | |
typedef _HTK_HMM_state | HTK_HMM_State |
HMM state data | |
typedef _HTK_HMM_data | HTK_HMM_Data |
Top HMM model, corresponds to "~h" macro in hmmdefs. | |
typedef _cd_set | CD_Set |
Context-dependent HMM set (called "pseudo") for a logical context. | |
typedef _HMM_logical | HMM_Logical |
Logical HMM to map logical names to physical/pseudo HMM. | |
列挙型 | |
enum | iwcd_type { IWCD_MAX, IWCD_AVG, IWCD_NBEST } |
Specify method of calculating approximated acoustic score at inter-word context pseudo phones on word edge. [詳細] | |
関数 | |
void | htk_hmm_set_pause_model (HTK_HMM_INFO *hmminfo, char *spmodel_name) |
void | rderr (char *str) |
char * | read_token (FILE *fp) |
void | init_hmm (HTK_HMM_INFO *) |
boolean | rdhmmdef (FILE *, HTK_HMM_INFO *) |
Main top routine to read in HTK HMM definition file. | |
void | set_global_opt (FILE *fp, HTK_HMM_INFO *hmm) |
char * | get_cov_str (short covtype) |
char * | get_dur_str (short durtype) |
void | trans_add (HTK_HMM_INFO *hmm, HTK_HMM_Trans *new) |
HTK_HMM_Trans * | get_trans_data (FILE *, HTK_HMM_INFO *) |
Return a pointer to the data located at the current point. | |
void | def_trans_macro (char *, FILE *, HTK_HMM_INFO *) |
HTK_HMM_State * | get_state_data (FILE *, HTK_HMM_INFO *) |
Return a pointer to the data located at the current point. | |
void | def_state_macro (char *, FILE *, HTK_HMM_INFO *) |
HTK_HMM_State * | state_lookup (HTK_HMM_INFO *hmm, char *keyname) |
void | state_add (HTK_HMM_INFO *hmm, HTK_HMM_State *new) |
HTK_HMM_Dens * | get_dens_data (FILE *, HTK_HMM_INFO *) |
Return a pointer to the data located at the current point. | |
void | def_dens_macro (char *, FILE *, HTK_HMM_INFO *) |
HTK_HMM_Dens * | dens_lookup (HTK_HMM_INFO *hmm, char *keyname) |
void | dens_add (HTK_HMM_INFO *hmm, HTK_HMM_Dens *new) |
HTK_HMM_Var * | get_var_data (FILE *, HTK_HMM_INFO *) |
Return a pointer to the data located at the current point. | |
void | def_var_macro (char *, FILE *, HTK_HMM_INFO *) |
void | var_add (HTK_HMM_INFO *hmm, HTK_HMM_Var *new) |
void | def_HMM (char *, FILE *, HTK_HMM_INFO *) |
HTK_HMM_Data * | htk_hmmdata_new () |
void | htk_hmmdata_add (HTK_HMM_INFO *hmm, HTK_HMM_Data *new) |
void | tmix_read (FILE *fp, HTK_HMM_State *state, HTK_HMM_INFO *hmm) |
Read a codebook name and weights, build the codebook structure on demand, and assigns them to the current state. | |
void | codebook_add (HTK_HMM_INFO *hmm, GCODEBOOK *new) |
void | def_regtree_macro (char *name, FILE *fp, HTK_HMM_INFO *hmm) |
boolean | rdhmmlist (FILE *fp, HTK_HMM_INFO *hmminfo) |
void | put_htk_trans (HTK_HMM_Trans *t) |
void | put_htk_var (HTK_HMM_Var *v) |
void | put_htk_dens (HTK_HMM_Dens *d) |
void | put_htk_state (HTK_HMM_State *s) |
void | put_htk_hmm (HTK_HMM_Data *h) |
void | put_logical_hmm (HMM_Logical *l) |
void | print_hmmdef_info (HTK_HMM_INFO *) |
HTK_HMM_INFO * | hmminfo_new () |
void | init_hmminfo (HTK_HMM_INFO *hmminfo, char *filename, char *mapfile) |
Load HTK HMM definition file and HMMList file, and setup phone HMM information. | |
HTK_HMM_Data * | htk_hmmdata_lookup_physical (HTK_HMM_INFO *, char *) |
HMM_Logical * | htk_hmmdata_lookup_logical (HTK_HMM_INFO *, char *) |
void | hmm_add_physical_to_logical (HTK_HMM_INFO *) |
Add all physical HMM to logical HMM. | |
void | hmm_add_pseudo_phones (HTK_HMM_INFO *hmminfo) |
void | make_hmm_basephone_list (HTK_HMM_INFO *hmminfo) |
boolean | check_hmm_limit (HTK_HMM_Data *dt) |
boolean | check_all_hmm_limit (HTK_HMM_INFO *hmm) |
boolean | check_hmm_options (HTK_HMM_INFO *hmm) |
boolean | guess_if_cd_hmm (HTK_HMM_INFO *hmm) |
HMM_Logical * | get_right_context_HMM (HMM_Logical *base, char *rc_name, HTK_HMM_INFO *hmminfo) |
Search for right context HMM in logical HMM. | |
HMM_Logical * | get_left_context_HMM (HMM_Logical *base, char *lc_name, HTK_HMM_INFO *hmminfo) |
Search for left context HMM in logical HMM. | |
void | add_right_context (char name[], char *rc) |
Generate context-dependent phone name from base phone name and its right context phone name. | |
void | add_left_context (char name[], char *lc) |
Generate context-dependent phone name from base phone name and its left context phone name. | |
char * | center_name (char *hmmname, char *buf) |
char * | leftcenter_name (char *hmmname, char *buf) |
char * | rightcenter_name (char *hmmname, char *buf) |
boolean | regist_cdset (APATNODE **root, HTK_HMM_Data *d, char *cdname) |
boolean | make_cdset (HTK_HMM_INFO *hmminfo) |
void | put_all_cdinfo (HTK_HMM_INFO *hmminfo) |
CD_Set * | cdset_lookup (HTK_HMM_INFO *hmminfo, char *cdstr) |
CD_Set * | lcdset_lookup_by_hmmname (HTK_HMM_INFO *hmminfo, char *hmmname) |
CD_Set * | rcdset_lookup_by_hmmname (HTK_HMM_INFO *hmminfo, char *hmmname) |
int | hmm_logical_state_num (HMM_Logical *lg) |
HTK_HMM_Trans * | hmm_logical_trans (HMM_Logical *lg) |
boolean | check_param_coherence (HTK_HMM_INFO *hmm, HTK_Param *pinfo) |
boolean | check_param_basetype (HTK_HMM_INFO *hmm, HTK_Param *pinfo) |
HTK_Param * | new_param_check_and_adjust (HTK_HMM_INFO *hmm, HTK_Param *pinfo, boolean vflag) |
Top function to adjust parameter. | |
boolean | write_binhmm (FILE *fp, HTK_HMM_INFO *hmm) |
boolean | read_binhmm (FILE *fp, HTK_HMM_INFO *hmm) |
htk_hmm.h で定義されています。
|
Set up pause model.
init_phmm.c の 133 行で定義されています。 参照元 initialize_HMM(). |
|
Output error message, with current reading status.
rdhmmdef.c の 60 行で定義されています。 参照元 codebook_add(), def_regtree_macro(), dens_add(), dens_read(), get_dens_data(), get_opttype_str(), get_state_data(), get_trans_data(), get_var_data(), htk_hmmdata_add(), htk_hmmdata_read(), rdhmmdef(), read_global_opt(), state_add(), tmix_read(), trans_add(), trans_read(), var_add(), と var_read(). |
|
Read next token and ste it to rdhmmdef_token.
rdhmmdef.c の 77 行で定義されています。 参照元 dens_read(), get_dens_data(), get_state_data(), get_trans_data(), get_var_data(), htk_hmmdata_read(), rdhmmdef(), read_global_opt(), regtree_read(), state_read(), tmix_read(), trans_read(), と var_read(). |
|
Initialize the HMM definition data by setting default values.
rdhmmdef.c の 129 行で定義されています。 参照元 rdhmmdef(). |
|
Main top routine to read in HTK HMM definition file. A HTK HMM definition file will be read from fp. After reading, the parameter type is checked and calculate some statistics.
rdhmmdef.c の 174 行で定義されています。 参照元 init_hmminfo(). |
|
Set global options starting at the current token to HMM definition data.
rdhmmdef_options.c の 133 行で定義されています。 参照元 rdhmmdef(). |
|
Get covariance option name string from its type code.
rdhmmdef_options.c の 168 行で定義されています。 参照元 print_hmmdef_info(). |
|
Get duration option name string from its type code.
rdhmmdef_options.c の 181 行で定義されています。 参照元 print_hmmdef_info(). |
|
Add a new data to the global structure.
rdhmmdef_trans.c の 60 行で定義されています。 参照元 def_trans_macro(), get_trans_data(), と rd_trans(). |
|
Return a pointer to the data located at the current point. If the current point is a macro reference, the pointer to the already defined data will be searched and returned. Otherwise, the definition of the data will be read from the current point and pointer to the newly allocated data will be returned.
rdhmmdef_trans.c の 171 行で定義されています。 参照元 htk_hmmdata_read(). |
|
Read a new data and store it as a macro.
rdhmmdef_trans.c の 206 行で定義されています。 参照元 rdhmmdef(). |
|
Return a pointer to the data located at the current point. If the current point is a macro reference, the pointer to the already defined data will be searched and returned. Otherwise, the definition of the data will be read from the current point and pointer to the newly allocated data will be returned.
rdhmmdef_state.c の 200 行で定義されています。 参照元 htk_hmmdata_read(). |
|
Read a new data and store it as a macro.
rdhmmdef_state.c の 237 行で定義されています。 参照元 rdhmmdef(). |
|
Look up a data macro by the name.
rdhmmdef_state.c の 92 行で定義されています。 参照元 build_state2gs(), と get_state_data(). |
|
Add a new data to the global structure.
rdhmmdef_state.c の 58 行で定義されています。 参照元 def_state_macro(), get_state_data(), と rd_state(). |
|
Return a pointer to the data located at the current point. If the current point is a macro reference, the pointer to the already defined data will be searched and returned. Otherwise, the definition of the data will be read from the current point and pointer to the newly allocated data will be returned.
rdhmmdef_dens.c の 199 行で定義されています。 参照元 state_read(). |
|
Read a new data and store it as a macro.
rdhmmdef_dens.c の 233 行で定義されています。 参照元 rdhmmdef(). |
|
Look up a data macro by the name.
rdhmmdef_dens.c の 112 行で定義されています。 |
|
Add a new data to the global structure.
rdhmmdef_dens.c の 79 行で定義されています。 参照元 def_dens_macro(), get_dens_data(), と rd_dens(). |
|
Return a pointer to the data located at the current point. If the current point is a macro reference, the pointer to the already defined data will be searched and returned. Otherwise, the definition of the data will be read from the current point and pointer to the newly allocated data will be returned.
rdhmmdef_var.c の 161 行で定義されています。 参照元 dens_read(). |
|
Read a new data and store it as a macro.
rdhmmdef_var.c の 196 行で定義されています。 参照元 rdhmmdef(). |
|
Add a new data to the global structure.
rdhmmdef_var.c の 58 行で定義されています。 参照元 def_var_macro(), get_var_data(), と rd_var(). |
|
Read a new data and store it as a macro.
rdhmmdef_data.c の 159 行で定義されています。 参照元 rdhmmdef(). |
|
Allocate a new data and return it.
rdhmmdef_data.c の 35 行で定義されています。 参照元 htk_hmmdata_read(). |
|
Add a new data to the global structure.
rdhmmdef_data.c の 57 行で定義されています。 |
|
Read a codebook name and weights, build the codebook structure on demand, and assigns them to the current state. The required codebook on the current token will be assigned to this state. If the corresponding codebook structure is not built yet, it will be constructed here on demand by gathering corresponding mixture density definitions. Then this state will store the pointer to the codebook, together with its own mixture weights in the following tokens.
rdhmmdef_tiedmix.c の 136 行で定義されています。 参照元 state_read(). |
|
Add a new data to the global structure.
rdhmmdef_tiedmix.c の 58 行で定義されています。 参照元 rd_tmix(), と tmix_read(). |
|
Skip a regression tree data or its macro reference.
rdhmmdef_regtree.c の 71 行で定義されています。 参照元 rdhmmdef(). |
|
Read a HMMList file and build initial logical triphone list.
rdhmmlist.c の 68 行で定義されています。 参照元 init_hmminfo(). |
|
Output transition matrix.
put_htkdata_info.c の 38 行で定義されています。 参照元 check_hmm_limit(), と put_htk_hmm(). |
|
Output variance vector (diagonal).
put_htkdata_info.c の 60 行で定義されています。 参照元 put_htk_dens(). |
|
Output a density information, mean and variance.
put_htkdata_info.c の 81 行で定義されています。 参照元 put_htk_state(). |
|
Output mixture component of a state.
put_htkdata_info.c の 104 行で定義されています。 参照元 put_hmm_outprob(), と put_htk_hmm(). |
|
Output HMM model, number of states and information for each state.
put_htkdata_info.c の 125 行で定義されています。 |
|
Output logical HMM data and its mapping status.
put_htkdata_info.c の 144 行で定義されています。 参照元 print_hmminfo(). |
|
Output total statistic informations of the HMM definition data.
put_htkdata_info.c の 300 行で定義されています。 参照元 print_info(). |
|
Allocate memory for a new HMM definition data.
init_phmm.c の 34 行で定義されています。 参照元 initialize_GMM(), initialize_GSHMM(), と initialize_HMM(). |
|
Load HTK HMM definition file and HMMList file, and setup phone HMM information. First try ascii format, then try binary format.
init_phmm.c の 53 行で定義されています。 参照元 initialize_GMM(), initialize_GSHMM(), と initialize_HMM(). |
|
Look up physical (defined in HTK HMM definition file) HMM by its name.
hmm_lookup.c の 62 行で定義されています。 参照元 rdhmmlist(). |
|
Look up logical HMM by its name.
hmm_lookup.c の 82 行で定義されています。 参照元 get_left_context_HMM(), get_right_context_HMM(), htk_hmm_set_pause_model(), new_str2phseq(), print_hmminfo(), triphone_callback_normal(), triphone_callback_right(), voca_load_htkdict_line(), と voca_mono2tri(). |
|
Add all physical HMM to logical HMM. This function should be called only if HMMList is not specified. Julius assumes all the triphones should be explicitly mapped using HMMList file.
hmm_lookup.c の 119 行で定義されています。 参照元 init_hmminfo(). |
|
Update logical HMM list by adding all the possible pseudo monophone and biphone to the list.
hmm_lookup.c の 209 行で定義されています。 参照元 make_cdset(). |
|
Build a list of base phones by gathering center phones of the defined HMM.
chkhmmlist.c の 47 行で定義されています。 参照元 init_hmminfo(). |
|
Check if the transition matrix conforms the ristrictions of Julius.
check_hmm_restriction.c の 209 行で定義されています。 |
|
Check all the HMM definitions in a HTK HMM definition data.
check_hmm_restriction.c の 242 行で定義されています。 参照元 rdhmmdef(). |
|
Check if the required parameter type in this HMM can be handled by Julius.
check_hmmtype.c の 37 行で定義されています。 参照元 rdhmmdef(). |
|
Guess whether the given HMM definition contains context-dependent modeling, just by the naming rule.
guess_cdHMM.c の 41 行で定義されています。 参照元 init_hmminfo(). |
|
Search for right context HMM in logical HMM. The name of a new right context HMM, given base phone HMM and a right context phone string, will be generated, and search it in the list of logical HMM. If found, return the pointer to the logical HMM.
参照元 lcdset_register_with_category(), make_phseq(), next_word(), と scan_word(). |
|
Search for left context HMM in logical HMM. The name of a new left context HMM, given base phone HMM and a left context phone string, will be generated, and search it in the list of logical HMM. If found, return the pointer to the logical HMM.
参照元 lcdset_register_with_category_all(), make_phseq(), outprob_style(), と scan_word(). |
|
Generate context-dependent phone name from base phone name and its right context phone name. The center phone name of the right context name will be appended to the base phone name. If the phone name already has right context, it will be renamed to the new one.
参照元 error_missing_right_triphone(), get_right_context_HMM(), triphone_callback_normal(), と triphone_callback_right(). |
|
Generate context-dependent phone name from base phone name and its left context phone name. The center phone name of the left context name will be appended to the base phone name. If the phone name already has left context, it will be renamed to the new one.
参照元 error_missing_left_triphone(), get_left_context_HMM(), outprob_style(), triphone_callback_left(), と triphone_callback_normal(). |
|
Extract the center phone name and copy to the specified buffer.
参照元 add_left_context(), add_right_context(), build_state2gs(), hmm_add_pseudo_phones(), make_cdset(), make_hmm_basephone_list(), mark_word_edge(), msock_word_out1(), msock_word_out2(), new_str2phseq(), put_hypo_phoneme(), と ttyout_pass1_final(). |
|
Return "left - center" phone name, modifying buf.
参照元 hmm_add_pseudo_phones(), lcdset_lookup_by_hmmname(), lcdset_lookup_with_category(), lcdset_register_with_category(), make_cdset(), と new_str2phseq(). |
|
Return "center + right" phone name, modifying buf.
参照元 hmm_add_pseudo_phones(), make_cdset(), new_str2phseq(), と rcdset_lookup_by_hmmname(). |
|
Register a physical HMM as a member of a pseudo phone set.
|
|
Construct the whole pseudo HMM information, and also add them to the logical Triphone tree.
参照元 initialize_HMM(). |
|
Output all pseudo phone set information to stdout
|
|
Look up for a pseudo phone with the name, and return the content.
参照元 hmm_add_pseudo_phones_sub(), lcdset_lookup_by_hmmname(), と rcdset_lookup_by_hmmname(). |
|
Look up for a pseudo phone by the "left - center" name of the given phone name.
参照元 outprob_style(), と wchmm_add_word(). |
|
Look up for a pseudo phone by the "center + right" name of the given phone name.
|
|
Generic function to get the number of states in a logical HMM.
hmm_lookup.c の 245 行で定義されています。 参照元 do_align(), new_make_word_hmm_with_lm(), next_word(), print_voca_info(), scan_word(), totalstatelen(), wchmm_add_word(), wchmm_duplicate_leafnode(), wchmm_duplicate_state(), と wchmm_link_subword(). |
|
Generic function to get transition matrix of a logical HMM.
hmm_lookup.c の 261 行で定義されています。 参照元 new_make_word_hmm_with_lm(), next_word(), wchmm_add_word(), wchmm_calc_wordend_arc(), wchmm_duplicate_leafnode(), と wchmm_link_subword(). |
|
Check if an input parameter type exactly matches that of HMM.
check_hmmtype.c の 66 行で定義されています。 参照元 new_param_check_and_adjust(), と RealTimePipeLinePrepare(). |
|
Check if the base type of input parameter matches that of HMM.
check_hmmtype.c の 104 行で定義されています。 |
|
Top function to adjust parameter. It compares the types for the given parameter param and HMM definition hmminfo. If type is not the same, adjustment will be tried. If adjustment is performed, the input param will be freed and the newly allocated adjusted parameter will be returned. Otherwise, the original param will be returned.
paramselect.c の 429 行で定義されています。 |
|
Top function to write HMM definition data to a binary file.
write_binhmm.c の 665 行で定義されています。 |
|
Top function to read a binary HMM file from fp.
read_binhmm.c の 454 行で定義されています。 参照元 init_hmminfo(). |