2011-09-29 54 views
7

我正在尋找API將口語項目轉換爲iOS上的文本,但主要是針對數字和字母,如1,2,3,4和a,b,c,d。如何讓OpenEars識別iOS上的口語數字?

我試過OpenEars,正如許多人所建議的,但它似乎只支持某些ords,如「前進後退左右開始停止轉動」。它可以用來識別通用詞彙或口頭數字嗎?

我也嘗試過iSpeech API,但是當我說一串12345這樣的數字時,它只能返回文本「一二三四五」,而且它只能給我識別的結果,而不是猜測列表(如Android上的Google語音識別API)。

如何使用這些API(或其他備選方法)來識別口頭數字或字母?

+0

您是否設法解決它? – Samidjo

+1

不,我用另一個API代替,抱歉忘了在這裏更新。雖然謝謝! – Luvina

+6

@Luvina,你可以分享你使用哪個Api嗎?謝謝。 – kforkarim

回答

7

要了解如何創建自定義的語言模型,以及如何動態地創建OpenEars語言模型(語言模型是您的自定義設置的話),在這裏閱讀OpenEars文檔:

http://www.politepix.com/openears/yourapp

要了解如何使用OpenEars聲學模型,這是朝着識別口語位數爲導向,在OpenEars論壇閱讀討論:

http://www.politepix.com/forums/topic/way-to-see-phonemes-openears-heard

您還可以查看OpenEars示例應用程序中的代碼,該應用程序經過深入評論,並顯示了內嵌更改應用程序「詞彙表」的示例。如果您對實施OpenEars有更多疑問,我建議在OpenEars論壇上創建一個帳戶(我是OpenEars開發人員)。

-1

我使用了以下基於sphinx unit tests的JSGF。

<int0> = (ZERO | OH); 
<int10> = TEN; 
<int100> = HUNDRED; 
<int1to9> = ONE | TWO | THREE | FOUR | FIVE | SIX | SEVEN | EIGHT | NINE; 
<int0to9> = (<int0> | <int1to9>); 
<int01to09> = <int0> <int1to9>; 
<int11to19> = ELEVEN | TWELVE | THIRTEEN | FOURTEEN | FIFTEEN | SIXTEEN | SEVENTEEN | EIGHTEEN | NINETEEN; 
<tens> = TWENTY | THIRTY | FORTY | FIFTY | SIXTY | SEVENTY | EIGHTY | NINETY; 
<int20to99> = (<tens> [<int1to9>]); 
<int10to99> = (<int10> | <int11to19> | <int20to99>); 
<int1to99> = (<int1to9> | <int10to99>); 
<int0to99> = (<int0> | <int1to99>); 
<int01to99> = (<int01to09> | <int10to99>); 
<int1to9hundreds> = ((A | <int1to9>) <int100>); 
<int101to999> = (<int1to9> (<int01to09> | <int10> | <int11to19> | <int20to99>)); 
<int100to999> = (<int1to9hundreds> [[AND] <int1to99> ]); 
<int1to999> = (<int1to99> | <int100to999> | <int101to999>); 
+1

通常最好給出一些關於你的答案的描述 - 而不是僅僅留下一段代碼 –