30 int main(
int argc, 
char *argv[]) {
    32     using namespace kaldi;
    34     typedef kaldi::int64 int64;
    35     using fst::SymbolTable;
    40       "Minimize lattices, in CompactLattice format.  Should be applied to\n"    41       "determinized lattices (e.g. produced with --determinize-lattice=true)\n"    42       "Note: by default this program\n"    43       "pushes the strings and weights prior to minimization."    44       "Usage: lattice-minimize [options] lattice-rspecifier lattice-wspecifier\n"    45         " e.g.: lattice-minimize ark:1.lats ark:2.lats\n";
    49     bool push_strings = 
true;
    50     bool push_weights = 
true;
    52     po.
Register(
"push-strings", &push_strings, 
"If true, push the strings in the "    53                 "lattice to the start.");
    54     po.
Register(
"push-weights", &push_weights, 
"If true, push the weights in the "    55                 "lattice to the start.");
    64     std::string lats_rspecifier = po.
GetArg(1),
    65         lats_wspecifier = po.
GetArg(2);
    71     int32 n_done = 0, n_err = 0;
    74     for (; !clat_reader.
Done(); clat_reader.
Next()) {
    75       std::string key = clat_reader.
Key();
    77       KALDI_VLOG(1) << 
"Processing lattice for utterance " << key;
    79         KALDI_WARN << 
"Failure in pushing lattice strings (bad lattice?), "    85         KALDI_WARN << 
"Failure in pushing lattice weights (bad lattice?),"    86                    << 
"for key " << key ;           
    91         KALDI_WARN << 
"Failure in minimizing lattice (bad lattice?),"    92                    << 
"for key " << key ;           
    96       if (clat.NumStates() == 0) {
   101       clat_writer.
Write(key, clat);
   104     KALDI_LOG << 
"Minimized " << n_done << 
" lattices, errors on " << n_err;
   105     return (n_done != 0 ? 0 : 1);
   106   } 
catch(
const std::exception &e) {
   107     std::cerr << e.what();
 
This code computes Goodness of Pronunciation (GOP) and extracts phone-level pronunciation feature for...
 
void PrintUsage(bool print_command_line=false)
Prints the usage documentation [provided in the constructor]. 
 
bool PushCompactLatticeStrings(MutableFst< ArcTpl< CompactLatticeWeightTpl< Weight, IntType > > > *clat)
This function pushes the transition-ids as far towards the start as they will go. ...
 
A templated class for writing objects to an archive or script file; see The Table concept...
 
void Write(const std::string &key, const T &value) const
 
void Register(const std::string &name, bool *ptr, const std::string &doc)
 
bool PushCompactLatticeWeights(MutableFst< ArcTpl< CompactLatticeWeightTpl< Weight, IntType > > > *clat)
This function pushes the weights in the CompactLattice so that all states except possibly the start s...
 
The class ParseOptions is for parsing command-line options; see Parsing command-line options for more...
 
bool MinimizeCompactLattice(MutableFst< ArcTpl< CompactLatticeWeightTpl< Weight, IntType > > > *clat, float delta)
This function minimizes the compact lattice. 
 
A templated class for reading objects sequentially from an archive or script file; see The Table conc...
 
int Read(int argc, const char *const *argv)
Parses the command line options and fills the ParseOptions-registered variables. 
 
std::string GetArg(int param) const
Returns one of the positional parameters; 1-based indexing for argc/argv compatibility. 
 
fst::VectorFst< CompactLatticeArc > CompactLattice
 
int NumArgs() const
Number of positional parameters (c.f. argc-1). 
 
int main(int argc, char *argv[])