如何提高ios中的语音识别数字输入?

时间:2017-08-28 07:26:36

标签: ios speech-recognition sfspeechrecognizer

我正在使用ios语音识别,只要有足够的上下文,它就会很好。我正在使用语音识别仅用于数字输入并且看到问题。例如,使用单个数字(例如2 - ,或8 - ate);没有足够的背景。或者甚至有两位数字(80有时被翻译为白痴)。我想向语音识别器表明输入将是数字。例如,如果输入是"数字2",那么语音识别器就能完成出色的工作。

我玩了一些提示--SFSpeechRecognitionTaskHint(未指定,听写,搜索,确认) - 但这些模式都不适合数字输入。

所以,问题是:

  • 有没有办法向SFSpeechRecognizer提示音频是否为数字?或
  • 是否有其他语音识别技术可能更适合我的需求?

另请注意,我也喜欢这种语言也可以使用多种语言(不仅仅是英语)。

感谢您的帮助, 埃里克

1 个答案:

答案 0 :(得分:2)

目前语音框架中没有任何内容可以让您仅为数字自定义它。如果你说的是用" number"单词效果更好 - 你可以尝试使用" number"来录制语音文件。声音并将该文件即时添加到用户所说的内容中,以便您获得适当的识别。切词"数字"识别完成后,您从语音框架接收的文本。这听起来很丑陋,但我不确定还有其他解决方案。

<强>更新

另一个选择是等待并分析您将在SFSpeechTranscriptionResult.transcriptions[]内收到的多个变体 https://developer.apple.com/documentation/speech/sfspeechrecognitionresult/1648282-transcriptions

等到这个数组包含可以解释为数字的东西而不接受第一个可用的数字。