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

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

?? hlabel.c

?? 隱馬爾科夫模型工具箱
?? C
?? 第 1 頁 / 共 3 頁
字號:
   printf("\n");}/* PrintList: print the given label list */static void PrintList(LabList *ll){   int i;   LLink p;      for (p=ll->head->succ,i=1; p->succ!= NULL; p=p->succ,i++) {      printf("%4d. ",i);      PrintLabel(p,ll->maxAuxLab);   }}/* EXPORT->PrintTranscription: for diagnostics */void PrintTranscription(Transcription *t, char *title){   int i;   LabList *ll;      printf("Transcription: %s [%d lists]\n",title,t->numLists);   ll = t->head;   for (i=1; i<=t->numLists; i++) {      printf(" List %d\n",i);      PrintList(ll); ll = ll->next;   }}/* FilterLevel: remove all but given level from transcription */static void FilterLevel(Transcription *t, int lev){   LabList *ll;   LLink p;         for (ll = t->head; ll != NULL; ll = ll->next) {      if (ll->maxAuxLab < lev)         HError(6570,"FilterLevel: level %d > max[%d]",lev,ll->maxAuxLab);      if (lev > 0) {         for (p=ll->head->succ; p->succ!=NULL; p=p->succ) {            if (p->auxLab[lev] != NULL) {               p->labid = p->auxLab[lev];               p->score = p->auxScore[lev];               p->end = AuxLabEndTime(p,lev);            } else               DeleteLabel(p);         }      }      ll->maxAuxLab = 0;   }}/* --------------- Format Specific Label File Input Routines --------------- */#define LEVELSEP "///"#define strlen_LEVELSEP 3#define COMMCHAR  ';'#define LFEED   '\012'#define CRETURN '\015'enum _TrSymbol{TRNULL,TRNUM,TRSTR,TREOL,TRLEV,TRCOMMA,TREOF};typedef enum _TrSymbol TrSymbol;static int curch = ' ';static TrSymbol trSym = TRNULL;static double trNum;static char trStr[256];/* IsNumeric: returns true if given string is a number */Boolean IsNumeric(char *s){   int i,len;   #ifdef WIN32   if(*s < 0)      return FALSE;#endif   len = strlen(s)-1;   if (!(isdigit(s[0])||s[0]=='+'||s[0]=='-')) return FALSE;   if (!(isdigit(s[len]))) return FALSE;      for (i=1; i<len; i++)      if (!(isdigit(s[i]) || s[i]=='.' || s[i]=='-' || s[i]=='+' || s[i]=='e' || s[i]=='E' ))         return FALSE;   return TRUE;}/* InitTrScan: initialise the scanner */static void InitTrScan(void){   curch = ' ';   trSym = TRNULL;}/* GetTrSym: get next symbol from f, remember that f might be an MLF             in which case EOF is a period on its own line   */static void GetTrSym(Source *src, Boolean htk){   int nxtch;   Boolean trSOL;   trNum = 0.0; trStr[0]='\0';    if (trSym==TRNULL) curch = GetCh(src);   if (trSym==TREOL || trSym==TRNULL)      trSOL=TRUE;   else      trSOL=FALSE;   while (curch == ' ' || curch == '\t') {      trSOL=FALSE;      curch = GetCh(src);   }   if (!htk && curch == COMMCHAR)      SkipLine(src);      switch (curch) {   case EOF:      trSym = TREOF;      break;   case LFEED:      curch = GetCh(src);      trSym = TREOL;      break;   case CRETURN:      curch = GetCh(src);      if (curch == LFEED) curch = GetCh(src);      trSym = TREOL;      break;   case ',':      if (!htk) {         curch = GetCh(src); trSym = TRCOMMA;         break;      }   case '.':      if (curch=='.' && trSOL==TRUE && mlfUsed>0 && htk) {         nxtch = GetCh(src);         if (nxtch == LFEED  || nxtch == CRETURN) {            trSym = TREOF;            break;         }         UnGetCh(nxtch,src);  /*  Requires more than one character pushback */      }   default:      if (htk) {         UnGetCh(curch,src);         if (!ReadString(src,trStr)) {            trSym=TREOF;            break;         }         curch=GetCh(src);         if (trSOL && strcmp(LEVELSEP,trStr)==0) {            if (curch == LFEED  || curch == CRETURN) {               trSym = TRLEV;               break;            }         }      }      else {         nxtch=0;         do {            if (nxtch>=255) break;            trStr[nxtch++]=curch; curch=GetCh(src);         }         while (!isspace(curch) && curch != ',' && curch != EOF);         trStr[nxtch]='\0';         src->wasQuoted=FALSE;      }      if (!src->wasQuoted && IsNumeric(trStr)){         sscanf(trStr,"%lf",&trNum);         trSym = TRNUM;         break;      }      if (htk && compatMode &&           (strcmp(LEVELSEP,trStr)==0 || strcmp(".",trStr)==0)) {         src->wasNewline=FALSE;         SkipWhiteSpace(src);         if (src->wasNewline) {            curch = CRETURN;            trSym=(strcmp(LEVELSEP,trStr)==0?TRLEV:TREOF);            break;         }         curch = GetCh(src);      }      if (stripTriPhones) TriStrip(trStr);      trSym = TRSTR;      break;   }}/* -------------------- HTK Label Format ------------------ *//* ExtendAux: extend the aux arrays in given lab list to n elems    New elems are set to NULL/0.0 */static void ExtendAux(MemHeap *x, LabList *ll, int n){   int i,oldn;   LabId *id;   float *s;   LLink p;   if (n>=99)      HError(6570, "ExtendAux: Too many auxiliary fields in label file");      oldn = ll->maxAuxLab; ll->maxAuxLab = n;   for (p=ll->head->succ; p->succ!=NULL; p=p->succ){      id = (LabId *)New(x,sizeof(LabId)*n) - 1;       s = (float *)New(x,sizeof(float)*n) - 1;      for (i=1; i<=oldn; i++){         id[i] = p->auxLab[i];         s[i] = p->auxScore[i];      }      for (i=oldn+1; i<=n; i++){         id[i] = NULL;         s[i] = 0.0;      }      p->auxLab = id; p->auxScore = s;   }   if (trace&T_HTKL)      printf("HLabel:     aux extended from %d to %d\n",oldn,n);}/* LoadHTKList: load a single HTK label list - dont create anything if                 transAlt>0 and alt != transAlt */static LabList * LoadHTKList(MemHeap *x, Source *src, int alt){   LabList  *ll = NULL;   LabId labid, auxLab[100];   LLink p;   HTime start,end;   float score, auxScore[100];   int n,maxAux = 0;   Boolean ok;      ok = (transAlt==0) || (transAlt == alt);   if (ok) ll = CreateLabelList(x,maxAux);  /* assume no aux labels */   if (trace&T_HTKL)      printf("HLabel: looking for lab list\n");      while (trSym==TRNUM || trSym==TRSTR){      start = -1; end = -1; score = 0.0;      if (trSym==TRNUM) {         start = trNum; GetTrSym(src,TRUE);         if (trSym==TRNUM) {            end = trNum; GetTrSym(src,TRUE);         }      }      if (trSym != TRSTR)         HError(6550,"LoadHTKList: Label Name Expected");      labid = GetLabId(trStr,TRUE);      GetTrSym(src,TRUE);      if (trSym==TRNUM){         score = trNum;         GetTrSym(src,TRUE);      }      if (trace&T_HTKL)         printf("HLabel: adding %.0f %.0f %s %f\n",start,end,labid->name,score);      if (ok) p = AddLabel(x,ll,labid,start,end,score);      /* Any aux labels ? */      n = 0;      while (trSym != TREOL && trSym!=TREOF) {         n++;         if (trSym != TRSTR)            HError(6550,"LoadHTKList: Aux Label Name Expected");         auxLab[n] = GetLabId(trStr,TRUE);         if (trace&T_HTKL)            printf("HLabel:   adding aux lab %d = %s\n",n,auxLab[n]->name);         GetTrSym(src,TRUE);         if (trSym==TRNUM){            auxScore[n] = trNum;            if (trace&T_HTKL)               printf("HLabel:   adding aux score %d = %f\n",n,trNum);            GetTrSym(src,TRUE);         } else            auxScore[n] = 0.0;      }      if (ok && n>0) { /* need to add aux info */         if (n>maxAux) {            ExtendAux(x,ll,n);            maxAux = n;         } else while (n<maxAux) {            ++n;            auxLab[n] = NULL;            auxScore[n] = 0.0;         }         AddAuxLab(p,n,auxLab,auxScore);      }      if (trSym!=TREOF)         GetTrSym(src,TRUE);   }   return ll;}/* LoadHTKLabels: load a HTK transcription */static void LoadHTKLabels(MemHeap *x, Transcription *t, Source *src){   LabList *ll;   int alt = 0;      InitTrScan();   GetTrSym(src,TRUE);   if (trSym==TRNUM || trSym==TRSTR){      ll = LoadHTKList(x,src,++alt);      AddLabelList(ll,t);      while (trSym == TRLEV){         GetTrSym(src,TRUE);         if (trSym != TREOL)            HError(6550,"LoadHTKList: End of Line after /// Expected");                GetTrSym(src,TRUE);         ll = LoadHTKList(x,src,++alt);         AddLabelList(ll,t);      }   }   while (trSym==TREOL)       GetTrSym(src,TRUE);   if (trSym != TREOF)      HError(6550,"LoadHTKLabels: Junk at end of HTK transcription");}/* --------------- TIMIT Label Format --------------------- *//* LoadTIMITLabels: load a TIMIT transcription */static void LoadTIMITLabels(MemHeap *x, Transcription *t, Source *src){   LabList *ll;   LabId labid;   HTime start,end;   float score;      ll = CreateLabelList(x,0);  AddLabelList(ll,t);   InitTrScan();   GetTrSym(src,FALSE);   while (trSym == TRNUM){          start = trNum*625;                 /* sample rate is 16KHz */      GetTrSym(src,FALSE);      if (trSym != TRNUM)          HError(6552,"LoadTIMITLabels: End Time expected in TIMIT Label File");      end   = trNum*625;      GetTrSym(src,FALSE);      if (trSym != TRSTR)          HError(6552,"LoadTIMITLabels: Label Name expected in TIMIT Label File");      labid = GetLabId(trStr,TRUE);      score = 0.0;      AddLabel(x,ll,labid,start,end,score);      GetTrSym(src,FALSE);      if (trSym == TREOL)         GetTrSym(src,FALSE);   }}/* --------------- ESPS Label Format --------------------- *//* LoadESPSLabels: read waves label file */static void LoadESPSLabels(MemHeap *x, Transcription *t, Source *src){   LabList *ll;   LabId labid;   HTime start,end;   float score;      ll = CreateLabelList(x,0);  AddLabelList(ll,t);   InitTrScan();   GetTrSym(src,FALSE);   while ( trStr[0] != '#' ) {      GetTrSym(src,FALSE);      if (trSym == TREOF)          HError(6553,"LoadESPSLabels: Unexpected EOF in ESPS Waves Label file.");      if ( strcmp( "nfields", trStr) == 0 ) {         GetTrSym(src,FALSE);         if ( trSym != TRNUM )            HError(6553,"LoadESPSLabels: Expecting field number");         if ( trNum != 1 )            HError(6553,"LoadESPSLabels: Can only read single field label files.");      }   }   end = start = 0.0; score = 0.0;   GetTrSym(src,FALSE);   while ( trSym != TRNUM && trSym != TREOF )      GetTrSym(src,FALSE);   while ( trSym == TRNUM ) {          start = end;   /* Get time stamp */      end = trNum * 1.0E7;       if ( start > end )         HError(-6553,"LoadESPSLabels: time stamps out of order.");      GetTrSym(src,FALSE);       /* Ignore color */      GetTrSym(src,FALSE);       /* Get field label for current level */      if ( trSym != TRSTR)          HError(6553,"LoadESPSLabels: Expecting label string in ESPS Waves Label file.");      labid = GetLabId( trStr,TRUE);       AddLabel(x,ll,labid,start,end,score);        GetTrSym(src,FALSE);      if ( trSym != TREOL )         HError(6553,"LoadESPSLabels: End-of-line expected in ESPS Waves Label file.");      GetTrSym(src,FALSE);   }}/* --------------- SCRIBE Label Format --------------------- */enum _ScribeLab {   S_LBB, S_LBA, S_UTS, S_EOF};typedef enum _ScribeLab ScribeLab;static char *scribeMap[] = {"LBB:", "LBA:", "UTS:"};/* GetScribeLab: get next scribe label in input */static ScribeLab GetScribeLab(Source *src){   char *s;   int i;      do {      do {         GetTrSym(src,FALSE);         if (trSym == TREOF) return S_EOF;      } while (trSym != TRSTR);      i = 0;      do {         s=scribeMap[i];          if (strcmp(trStr,s) == 0)             return (ScribeLab) i;         i++;      } while (i < S_EOF);   } while(TRUE);   return ((ScribeLab) 0);}/* LoadSCRIBELabels: load a SCRIBE (SAM) label file - searches for         first occurrence of a label symbol                LBA - acoustic label               LBB - broad class label               UTS - utterance          it loads this symbol and all subsequent labels of the         same type.  All other SAM label types are ignored */static void LoadSCRIBELabels(MemHeap *x, Transcription *t, Source *src){   LabList *ll;   LabId labid;   HTime start,end;   float score;   ScribeLab ltype, lx;   double sp;   char buf[256];      if (!GetConfFlt(cParm,numParm,"SOURCERATE",&sp))        sp = 500.0;   /* actual SCRIBE rate */   ll = CreateLabelList(x,0);  AddLabelList(ll,t);   InitTrScan();   do {  /* search for first label */      ltype = GetScribeLab(src);      if (ltype == S_EOF)         HError(6554,"LoadSCRIBELabels: Unexpected EOF");   } while (ltype != S_LBB && ltype != S_LBA && ltype != S_UTS);   do { /* load this and all subsequent ltype labels */      GetTrSym(src,FALSE);      if (trSym != TRNUM)         HError(6554,"LoadSCRIBELabels: Start Index expected [%d]\n",trSym);      start = trNum * sp;      GetTrSym(src,FALSE);      if (trSym != TRCOMMA)         HError(6554,"LoadSCRIBELabels: Comma expected [%d]\n",trSym);      GetTrSym(src,FALSE);      if (ltype == S_LBA || ltype == S_LBB) {   /* LBB and LBA have a centre field */         if (trSym != TRCOMMA)            HError(6554,"LoadSCRIBELabels: Comma expected [%d]\n",trSym);              GetTrSym(src,FALSE);      }      if (trSym != TRNUM)         HError(6554,"LoadSCRIBELabels: End Index expected [%d]\n",trSym);      end = trNum * sp;      GetTrSym(src,FALSE);      if (trSym != TRCOMMA)         HError(6554,"LoadSCRIBELabels: Comma expected [%d]\n",trSym);      GetTrSym(src,FALSE);      if (trSym != TRSTR)         HError(6554,"LoadSCRIBELabels: Label expected [%d]\n",trSym);      strcpy(buf,trStr);      GetTrSym(src,FALSE);      while (trSym == TRSTR){         strcat(buf,"_"); strcat(buf,trStr);         GetTrSym(src,FALSE);      }      labid = GetLabId(buf,TRUE);       score = 0.0;      AddLabel(x,ll,labid,start,end,score);       if (trSym != TREOL)         HError(6554,"LoadSCRIBELabels: End of Line expected [%d]\n",trSym);      lx = GetScribeLab(src);   } while (lx != S_EOF);}/* ----------------- TriPhone Stripping ------------------- *//* EXPORT->TriStrip: Remove contexts of form A- and +B from s */void TriStrip(char *s){   char buf[100],*p;      if ((p = strchr(s,'-')) == NULL) p = s; else ++p;   strcpy(buf,p);   if ((p = strrchr(buf,'+')) != NULL)       *p = '\0';   strcpy(s,buf);}/* EXPORT->LTriStrip: enable triphone stripping */void LTriStrip(Boolean enab){   stripTriPhones = enab;}/* ------------------ Master Label File Handling -------------------- *//* StoreMLFEntry: store the given MLF entry */static void StoreMLFEntry(MLFEntry *e){   e->next = NULL;   if (mlfHead == NULL)      mlfHead = mlfTail = e;   else {      mlfTail->next = e; mlfTail = e;   }   ++mlfUsed;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美影院一区二区三区| 久久综合色婷婷| 亚洲乱码一区二区三区在线观看| 国产成人99久久亚洲综合精品| 精品粉嫩aⅴ一区二区三区四区| 天堂蜜桃一区二区三区| 欧美制服丝袜第一页| 亚洲r级在线视频| 91.com视频| 国产在线精品一区在线观看麻豆| 欧美mv和日韩mv的网站| 狠狠久久亚洲欧美| 国产精品久久久久久久久图文区 | 国产精品第13页| 欧美性猛片xxxx免费看久爱| 日韩精品一二三区| 久久九九影视网| 在线欧美小视频| 精品一区中文字幕| 亚洲激情图片qvod| 精品国产一二三| 97精品久久久午夜一区二区三区| 亚洲高清视频中文字幕| 久久久另类综合| 欧美视频精品在线| 懂色av一区二区三区免费看| 亚洲精品第一国产综合野| 欧美精品一区二区久久婷婷| 色一情一乱一乱一91av| 国产精品一区二区在线播放 | 成人小视频在线| 免费的成人av| 一区二区三区视频在线看| 久久久无码精品亚洲日韩按摩| 欧美少妇bbb| www.亚洲免费av| 国产美女精品人人做人人爽| 日产国产高清一区二区三区| 日韩一区欧美小说| 亚洲人成网站影音先锋播放| 亚洲国产精品v| 精品动漫一区二区三区在线观看| 欧美日本在线播放| 欧美精品乱码久久久久久| 欧美日韩视频在线第一区| 日本高清不卡视频| 91麻豆精品在线观看| 91美女片黄在线观看| 91国产成人在线| 欧美日韩日日摸| 欧美一二三四在线| 精品国产1区二区| 久久综合九色综合欧美亚洲| 久久久久久久免费视频了| 欧美国产在线观看| 亚洲精品一二三四区| 午夜成人在线视频| 久久99精品国产麻豆不卡| 国产九九视频一区二区三区| 国产原创一区二区| av午夜一区麻豆| 欧美色网一区二区| 久久久夜色精品亚洲| 亚洲夂夂婷婷色拍ww47| 午夜免费欧美电影| 国产成人av电影在线观看| k8久久久一区二区三区 | 久久久影院官网| 亚洲一区二区精品久久av| 九九在线精品视频| 91国在线观看| 久久久亚洲高清| 一区二区三区中文在线观看| 亚洲同性gay激情无套| 香蕉av福利精品导航| 懂色一区二区三区免费观看| 欧美体内she精高潮| 久久久久久久久97黄色工厂| 亚洲成人动漫精品| 91欧美一区二区| 亚洲国产精品二十页| 老司机午夜精品99久久| 欧美日精品一区视频| 亚洲色图视频网| 高清在线不卡av| 欧美tk—视频vk| 奇米精品一区二区三区四区| 欧美性猛片aaaaaaa做受| 亚洲欧美在线视频观看| 粉嫩13p一区二区三区| 久久久91精品国产一区二区精品 | 久久精品国产第一区二区三区| 欧美探花视频资源| 亚洲人成人一区二区在线观看| 成人黄色免费短视频| 中文字幕精品一区二区精品绿巨人| 极品尤物av久久免费看| 国产欧美一区二区三区鸳鸯浴 | 国产精品自拍网站| 国产精品麻豆久久久| 东方aⅴ免费观看久久av| 国产免费观看久久| 91蜜桃网址入口| 视频一区视频二区中文字幕| 3751色影院一区二区三区| 三级在线观看一区二区| 久久久青草青青国产亚洲免观| 精品一区二区三区影院在线午夜| 精品日韩在线观看| 91免费精品国自产拍在线不卡| 亚洲一区二区av在线| 国产欧美精品一区二区色综合| 不卡一区二区中文字幕| 亚洲国产aⅴ天堂久久| 一区二区高清在线| 久久蜜桃av一区精品变态类天堂| av激情亚洲男人天堂| 日韩av网站免费在线| 综合婷婷亚洲小说| 精品欧美黑人一区二区三区| 日韩欧美高清一区| 日本电影欧美片| 国产福利精品一区二区| 午夜久久久久久| 亚洲人成在线播放网站岛国| 精品国产一区a| 69堂精品视频| 欧美老肥妇做.爰bbww视频| www.在线欧美| 成人一二三区视频| 国产福利电影一区二区三区| 日本在线不卡一区| 午夜国产精品影院在线观看| 1024成人网| 国产精品女人毛片| 国产精品色呦呦| 国产欧美日韩麻豆91| 久久免费偷拍视频| 久久综合狠狠综合久久综合88 | 国产精品一区二区不卡| 精品一区二区久久久| 奇米影视一区二区三区| 一区二区三区影院| 国产欧美精品一区二区色综合| 91香蕉视频黄| 91极品美女在线| 91香蕉视频在线| av毛片久久久久**hd| 在线观看91精品国产入口| 成人黄色电影在线| 成人h动漫精品一区二区| 美国av一区二区| 美女一区二区久久| 精品一区二区三区不卡| 精品一区二区成人精品| 国产毛片精品一区| 国产综合久久久久久鬼色| 国产一区二区在线电影| 成人一区二区三区视频在线观看| 国产成人精品一区二区三区网站观看| 另类中文字幕网| 国产麻豆精品在线| 91麻豆成人久久精品二区三区| av一区二区三区在线| 色偷偷久久人人79超碰人人澡| 欧美精品亚洲二区| 国产亚洲女人久久久久毛片| 中文字幕不卡的av| 国产精品三级视频| 五月天婷婷综合| 国产综合色产在线精品| www.欧美日韩| 欧美一区二区三区思思人| 欧美精品一区二区三区四区| 国产精品视频一区二区三区不卡| 午夜影视日本亚洲欧洲精品| 美女诱惑一区二区| 一本到不卡精品视频在线观看 | 国产高清亚洲一区| 制服丝袜激情欧洲亚洲| 国产精品国产三级国产a| 久久爱另类一区二区小说| 在线不卡的av| 亚洲精品五月天| 国产东北露脸精品视频| 欧美va亚洲va| 天天综合色天天| 91丝袜美女网| 中文字幕一区二区三区av| 激情六月婷婷综合| 日韩一区二区影院| 免费观看在线色综合| 欧美羞羞免费网站| 亚洲色图另类专区| 在线视频亚洲一区| 亚洲免费色视频| 色综合天天综合网天天看片| 亚洲精品免费播放| av成人免费在线| 国产欧美日韩在线看|