亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? lgcopy.c

?? 隱馬爾科夫模型工具箱
?? C
字號:
/* ----------------------------------------------------------- *//*                                                             *//*                          ___                                *//*                       |_| | |_/   SPEECH                    *//*                       | | | | \   RECOGNITION               *//*                       =========   SOFTWARE                  */ /*                                                             *//*                                                             *//* ----------------------------------------------------------- *//* developed at:                                               *//*                                                             *//*      Speech Vision and Robotics group                       *//*      Cambridge University Engineering Department            *//*      http://svr-www.eng.cam.ac.uk/                          *//*                                                             *//* main authors: Valtcho Valtchev, Steve Young,                *//*               Julian Odell, Gareth Moore                    *//* ----------------------------------------------------------- *//*         Copyright:                                          *//*                                                             *//*          1994-2002 Cambridge University                     *//*                    Engineering Department                   *//*                                                             *//*   Use of this software is governed by a License Agreement   *//*    ** See the file License for the Conditions of Use  **    *//*    **     This banner notice must not be removed      **    *//*                                                             *//* ----------------------------------------------------------- *//*   File: LGCopy - copy ngram files and optionally map OOVs   *//* ----------------------------------------------------------- */char *lgcopy_version = "!HVER!LGCopy:   3.2 [CUED 09/12/02]";char *lgcopy_vc_id = "$Id: LGCopy.c,v 1.1 2002/12/19 16:36:27 ge204 Exp $";#include "HShell.h"#include "HMem.h"#include "HMath.h"#include "HWave.h"#include "HLabel.h"#include "LWMap.h"#include "LCMap.h"#include "LGBase.h"/*    This tool reads one or more gram base files and stores them as a   sorted sequence of gram files.  If a word list is specified, each   word in each copied n-gram which is not in the list is mapped to   DefaultUnknown (see LWMap.h).  The default is to copy all n-grams   but an option is provided to only copy n-grams which have been   mapped.  Input files can be weighted by prepending with an   integer count.*//* -------------------------- Trace Flags ------------------------ */static int trace = 0;#define T_TOP  0001     /* Top Level tracing */#define T_SAV  0002     /* Monitor Buffer Saving *//* ---------------- Configuration Parameters --------------------- */static ConfParam *cParm[MAXGLOBS];static int nParm = 0;            /* total num params *//* ---------------------- Global Variables ----------------------- */static int nSize     = 0;           /* ngram size */static int ngbSize   = 2000000;     /* ngram buffer size */static int freeSlots = 100;         /* free class slots */static char *rootFN  = "data";      /* gbase root file name */static int dumpOfs   = 0;           /* initial numeric ext of gbase files */static char *dbsDir  = NULL;        /* directory to store gbase files */static char *mapFN   = NULL;        /* word map file name */static char *cmapFN  = NULL;        /* word list file name */static char *omapFN  = NULL;        /* output map filename */static Boolean outMapped = FALSE;   /* output mapped IDs only */static Boolean mapWords = FALSE;    /* map words to classes */static WordMap    *omap = NULL;     /* output buffer map */static WordMap    wmap;             /* word map for this corpus */static ClassMap   cmap;             /* word list for OOV mapping */static NGInputSet inset;            /* input file set */static NGBuffer   *ngb;             /* output ngram buffer */static MemHeap    ngbHeap;          /* memory for NGBuffers *//* Function prototypes */static void Initialise(void);static void CopyFiles(void);/* ---------------- Process Command Line ------------------------- *//* SetConfParms: set conf parms relevant to this tool */void SetConfParms(void){   int i;   nParm = GetConfig("LGCOPY", TRUE, cParm, MAXGLOBS);   if (nParm>0){      if (GetConfInt(cParm,nParm,"TRACE",&i)) trace = i;   }}void ReportUsage(void){   printf("\nUSAGE: LGCopy [options] map <[mult] file ....>\n\n");   printf(" Option                                       Default\n\n");   printf(" -a n    allow up to 'n' new classes          100\n");   printf(" -b n    set ngram buffer size to 'n'         2000000\n");   printf(" -d s    database directory 's'               current\n");   printf(" -i n    set output gram file start index     0\n");   printf(" -m fn   save new word map to 'fn'            off\n");   printf(" -n n    create n-grams of size 'n'           max\n");   printf(" -o      output class mappings only           off\n");   printf(" -r s    set root data base file name 's'     data\n");   printf(" -w fn   load class map from 'fn'             none\n");   PrintStdOpts("");   printf("\n\n");}int main(int argc, char *argv[]){   char *s;   InitShell(argc,argv,lgcopy_version,lgcopy_vc_id);   InitMem();   InitMath();   InitWave();   InitLabel();   InitWMap();   InitCMap();   InitGBase();   SetConfParms();   if (!InfoPrinted() && NumArgs() == 0)      ReportUsage();   if (NumArgs() == 0) Exit(0);   while (NextArg() == SWITCHARG) {      s = GetSwtArg();      if (strlen(s)!=1)          HError(16219,"Bad switch %s; must be single letter",s);      switch(s[0]){         case 'a':            freeSlots = GetChkedInt(10,10000000,s); break;         case 'b':	    ngbSize = GetChkedInt(1,10000000,s); break;         case 'd':            if (NextArg() != STRINGARG)               HError(16219,"Database file directory expected");            dbsDir = GetStrArg(); break;         case 'i':            dumpOfs = GetChkedInt(0, 100000, s); break;         case 'm':            if (NextArg()!=STRINGARG)               HError(16219,"Output map filename expected");            omapFN = GetStrArg(); break;         case 'n':            nSize = GetChkedInt(1, MAXNG, s); break;         case 'o':            outMapped = TRUE; break;         case 'r':            if (NextArg()!=STRINGARG)               HError(16219,"Gram base root file name expected");            rootFN = GetStrArg(); break;         case 'w':            if (NextArg() != STRINGARG)               HError(16219,"Class map filename expected");	    cmapFN = GetStrArg();	    mapWords = TRUE;	    break;         case 'T':            trace = GetChkedInt(0,077,s); break;         default:            HError(16219,"LGCopy: Unknown switch %s",s);      }   }   /* Look for wordmap */   if (NextArg() != STRINGARG)      HError(16219,"LGCopy: map file name expected");   mapFN = GetStrArg();   Initialise();   /* Warn about any left-over command line parameters */   if (NumArgs() != 0)      HError(-16219,"LGCopy: unused args left on cmd line");   /* Do the actual copy */   CopyFiles();   /* And exit */   Exit(0);   return 1;}/* ------------------------ Initialisation ----------------------- *//* BuildMap: create new map with both word and class IDs */static WordMap *BuildOutputMap(MemHeap *heap,ClassMap *cmap){   char s[256];   int i,nme;   MapEntry *me,*tme;   ClassEntry *ce;   WordMap *omap,*wmap;   wmap = cmap->wmap;   for (nme=0,me=wmap->me,i=0; i<wmap->used; i++,me++)      if (me->class==NULL) nme++;   nme += cmap->entries;   omap = (WordMap *) New(heap,sizeof(WordMap));   CreateWordMap(NULL,omap,nme);   omap->hasCnts = FALSE;   omap->isSorted = FALSE;   omap->seqno = wmap->seqno+1;   omap->htkEsc = wmap->htkEsc;   sprintf(s,"%s%%%%%s",wmap->name,cmap->name);    omap->name = CopyString(heap,s);   sprintf(s,"derived from %s using class map %s",wmap->name,cmap->name);    omap->source = CopyString(heap,s);   /* copy class IDs to the new map */   tme = omap->me; nme = 0;   for (i=0; i<CLMHASHSIZE; i++) {      for (ce=cmap->htab[i]; ce!=NULL; ce=ce->next) {	 tme->ndx = ce->ndx;	 tme->sort = 0;	 tme->count = 0;	 tme->class = NULL;	 omap->id[nme] = ce->id;	 ce->id->aux = tme;        /* !!! aux field no longer point to class entry !!! */	 nme++; tme++;      }   }   /* copy remaining word IDs to new map */   for (me = wmap->me,i=0; i<wmap->used; i++,me++) {      if ((ce=me->class)!=NULL) {	 tme = (MapEntry *) ce->id->aux;	 tme->count += me->count;         continue;      }      omap->me[nme] = wmap->me[i];      omap->id[nme] = wmap->id[i];      omap->id[nme]->aux = (Ptr) (omap->me+nme);      nme++;   }   omap->used = nme;   BuildLookupTables(omap);   SortWordMap(omap);   return omap;}/* Initialise: initialise global data structures */static void Initialise(void){   float weight;   char *fn,path[256];   CreateWordMap(mapFN, &wmap, freeSlots);   SortWordMap(&wmap);   if (cmapFN != NULL) {      CreateClassMap(cmapFN, &cmap, &wmap);      omap = BuildOutputMap(&gstack, &cmap);      if (omapFN!=NULL)	 SaveWordMap(omapFN,omap,FALSE);   }   weight = 1.0;   CreateInputSet(&gstack, &wmap, &inset);   while (NextArg() == STRINGARG || NextArg() == FLOATARG) {      if (NextArg() == FLOATARG)  	 weight = GetFltArg();      if (weight==0.0 || weight<-10000.0 || weight>10000.0)         HError(-16219,"Unlikely ngram weight[%.4f]",weight);      if (NextArg()!=STRINGARG)         HError(16219,"Gram base file name expected");      fn = GetStrArg();      AddInputGFile(&inset,fn,weight);      if (trace&T_TOP)         printf("Input file %s added, weight=%.4f\n",fn,weight);   }   if (nSize==0) nSize = inset.N;   CreateHeap(&ngbHeap,"NGB mem",MSTAK,1,0.0,1000,1000);   MakeFN(rootFN,dbsDir,NULL,path);   ngb = CreateNGBuffer(&ngbHeap,nSize,ngbSize,path,(omap)?omap:&wmap);   ngb->fndx += dumpOfs;}/* ----------------- File Processing -------------------- *//* SaveOutBuffer: save the output buffer */static void SaveOutBuffer(void){   if (trace&T_TOP) {      printf(" saving %d ngrams to file %s.%d\n",              ngb->used, ngb->fn, ngb->fndx);   }   WriteNGBuffer(ngb,"LGCopy");}/* CompressBuffer: and save if necessary or mustSave is TRUE */static void CompressBuffer(Boolean mustSave){   float compx;   if (ngb->used == 0) return;   SortNGBuffer(ngb);     compx = 100.0 * (float)ngb->used / (float)ngb->poolsize;   if (trace&T_SAV)      printf(" buffer %s.%d compressed%s to %.3f%%\n",              ngb->fn, ngb->fndx, mustSave?"[must save]":"",compx);   if (compx > 60.0 || mustSave) SaveOutBuffer();}#define MAP_ENTRY(map,i) map.me + ((i<BASEWORDNDX) ? i : i-BASEWORDNDX+map.nClass)/* CopyFiles: read input N-grams and write to output */static void CopyFiles(void){   int i;   float count;   MapEntry *me;   ClassEntry *ce;   Boolean outThis, success;   UInt ng[MAXNG], nin, nout;   nin = nout = 0;   OpenInputSet(&inset);   if (trace&T_TOP) {      printf("Copying %d input files to output files with %d entries\n",              inset.nFiles, ngbSize);      if (cmapFN != NULL)         printf("Class map = %s%s\n", cmapFN, outMapped ? " [Class mappings only]":"");   }   while (GetNextNGram(&inset, ng, &count, nSize)) {      ++nin;      if (trace&T_TOP && (nin%500000==0))         printf("  %d ngrams read\n",nin);      if (mapWords)      {	 /* Only output this if we're either outputting all entries or it's in a class */	 outThis = !outMapped;         for (i=0; i<nSize; i++) {            me = wmap.me + GetMEIndex(&wmap, ng[i]);            ce = me->class;            if (ce) {	       ng[i] = ce->ndx; /* Map to class */	       outThis = TRUE;            }         }      }      else      {	outThis = TRUE;      }#ifdef FLOAT_COUNT      fp = (float *) (ng+ngram); *fp = count; #else      ng[nSize] = (UInt) count;#endif      if (outThis) {         ++nout;	 /* StoreNGram returns TRUE if the NGram buffer is full */	 success = StoreNGram(ngb, ng);         if (success) {            if (mapWords)      /* filtering (eg. using classmap) so need to compress */	       CompressBuffer(FALSE);  /* also calls SaveOutBuffer() */            else               /* otherwise assume inputs already sorted */               SaveOutBuffer();         }      }   }    if (mapWords)      /* filtering so need to compress */      CompressBuffer(TRUE);   else               /* otherwise assume inputs already sorted */      SaveOutBuffer();   printf("%d out of %d ngrams stored in %d files\n",nout,nin,ngb->fndx);   CloseInputSet(&inset);}/* ---------------------- End of LGCopy.c ----------------------- */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲一级二级在线| 91在线视频在线| 国产v综合v亚洲欧| 欧美写真视频网站| 欧美国产在线观看| 久久国产夜色精品鲁鲁99| 成人免费黄色大片| 日韩欧美电影一二三| 夜夜嗨av一区二区三区网页| 国产精品羞羞答答xxdd| 欧美日韩的一区二区| 亚洲欧美日本在线| 国产69精品久久99不卡| 日韩精品中文字幕在线不卡尤物| 亚洲一区精品在线| 91麻豆国产香蕉久久精品| 国产亚洲午夜高清国产拍精品 | 欧美中文字幕亚洲一区二区va在线| 日韩欧美在线观看一区二区三区| 亚洲精品第一国产综合野| 成人久久视频在线观看| 久久久www免费人成精品| 蜜臀a∨国产成人精品| 欧美日韩亚洲综合一区二区三区| 一区精品在线播放| 成人永久看片免费视频天堂| 国产午夜精品一区二区三区视频| 久久精品免费观看| 欧美撒尿777hd撒尿| 依依成人精品视频| 91国偷自产一区二区三区成为亚洲经典| 国产欧美日韩精品在线| 国产精品资源在线看| 久久久久国产一区二区三区四区| 麻豆精品久久久| 欧美不卡一区二区| 国产真实乱子伦精品视频| 欧美成va人片在线观看| 久久99精品一区二区三区三区| 日韩一级免费观看| 国产一区二区不卡在线| 久久综合九色综合97_久久久| 精品一区二区三区免费毛片爱 | 国产成人免费xxxxxxxx| 亚洲va欧美va国产va天堂影院| 日韩在线a电影| 91精品婷婷国产综合久久竹菊| 亚洲chinese男男1069| 欧美日韩中文字幕一区二区| 亚洲午夜日本在线观看| 欧美剧情片在线观看| 奇米影视在线99精品| 日韩三级免费观看| 国产乱子轮精品视频| 国产精品色一区二区三区| 91网站在线播放| 亚洲精品videosex极品| 欧美日韩黄色影视| 精品一区二区国语对白| 久久久久久久久久看片| 91啪亚洲精品| 日韩和欧美的一区| 久久久九九九九| 欧美在线观看一二区| 秋霞成人午夜伦在线观看| 久久久久久久性| 在线精品视频免费观看| 国产在线精品一区二区三区不卡| 国产精品久久久久国产精品日日| 精品视频一区二区三区免费| 国模无码大尺度一区二区三区| 国产精品久久久一本精品| 这里只有精品99re| gogo大胆日本视频一区| 天堂蜜桃91精品| 亚洲国产高清在线观看视频| 欧美午夜精品一区二区蜜桃| 国产自产视频一区二区三区| 亚洲精选在线视频| 久久久99精品久久| 制服丝袜亚洲精品中文字幕| 国产91精品一区二区麻豆网站| 性久久久久久久久久久久| 日本一二三不卡| 日韩欧美成人一区二区| 欧美性猛交xxxx黑人交 | 五月天网站亚洲| 国产三级欧美三级日产三级99 | 99久久精品国产一区| 老司机免费视频一区二区| 亚洲另类色综合网站| 国产拍欧美日韩视频二区| 日韩一级欧美一级| 欧美图区在线视频| 91看片淫黄大片一级在线观看| 激情另类小说区图片区视频区| 亚洲成人精品影院| 又紧又大又爽精品一区二区| 国产网红主播福利一区二区| 日韩一区二区免费电影| 欧美艳星brazzers| 色8久久人人97超碰香蕉987| 成人污视频在线观看| 国产成人av福利| 美女久久久精品| 男人的j进女人的j一区| 视频一区中文字幕| 亚洲v中文字幕| 亚洲黄色av一区| 亚洲免费伊人电影| 亚洲欧美视频一区| 亚洲区小说区图片区qvod| 国产精品久久久久久久久果冻传媒| 久久久五月婷婷| 久久久久九九视频| 中文字幕+乱码+中文字幕一区| 久久亚洲精品国产精品紫薇| 欧美精品一区二区三区蜜桃| 日韩视频中午一区| 26uuu成人网一区二区三区| 日韩精品自拍偷拍| 久久综合资源网| 久久久精品国产免费观看同学| 精品精品国产高清a毛片牛牛| 91精品国产一区二区人妖| 欧美一区二区性放荡片| 日韩免费看的电影| 国产亚洲精久久久久久| 欧美国产禁国产网站cc| 最新国产の精品合集bt伙计| 自拍偷拍国产亚洲| 午夜精品久久久久影视| 日韩高清国产一区在线| 国精品**一区二区三区在线蜜桃| 九色综合国产一区二区三区| 国产毛片一区二区| 99riav久久精品riav| 在线观看日韩电影| 欧美精品在线观看一区二区| 日韩欧美国产三级电影视频| 精品毛片乱码1区2区3区| 中文一区二区完整视频在线观看| 国产精品久久久久久久久久免费看 | 久久中文字幕电影| 国产精品福利一区二区| 亚洲一卡二卡三卡四卡 | 精品国产一区久久| 国产精品卡一卡二卡三| 午夜一区二区三区视频| 国产一区在线视频| 色婷婷综合五月| 日韩久久精品一区| 亚洲视频小说图片| 日韩1区2区3区| 成人激情免费电影网址| 欧美老女人第四色| 国产免费久久精品| 五月天欧美精品| 成人免费视频网站在线观看| 欧美军同video69gay| 中文字幕精品综合| 久久精品国产99国产精品| 99久久精品国产导航| 日韩视频在线一区二区| 一区二区三区精品视频| 国产美女视频91| 91精品国产一区二区三区蜜臀| 中文字幕在线视频一区| 久久国产尿小便嘘嘘| 欧美无砖砖区免费| 国产精品美女一区二区三区| 蜜乳av一区二区| 欧洲亚洲国产日韩| 国产精品私人自拍| 国产精品亚洲一区二区三区妖精 | 欧美精品久久一区| 亚洲精品视频在线看| 国产福利一区二区三区视频| 91精品国产品国语在线不卡| 亚洲另类一区二区| 成人激情动漫在线观看| 久久久久久免费毛片精品| 蜜桃视频免费观看一区| 欧美日本在线一区| 伊人婷婷欧美激情| 99久久伊人精品| 欧美激情在线一区二区| 国产一区在线精品| xf在线a精品一区二区视频网站| 免费在线观看一区| 这里只有精品免费| 日韩—二三区免费观看av| 欧美性欧美巨大黑白大战| 亚洲综合无码一区二区| 色吊一区二区三区| **性色生活片久久毛片| 不卡视频一二三四| 国产欧美日韩卡一| 91小视频在线| 一区二区三区色|