【问题标题】:iPhone: Speech Recognition is in IOS SDK available?iPhone:语音识别在 IOS SDK 中可用?
【发布时间】:2011-10-19 15:22:52
【问题描述】:

有谁知道在 IOS 5 或 IOS 6 SDK 中是否可以访问 Siri 中使用的“语音转文本”和“文本转语音”api?

我进行了研究,但在文档中找不到任何关于它的内容,所以如果 SDK 中不包含这些内容,市场上是否有任何“Siri”质量库?

【问题讨论】:

标签: iphone ios speech-recognition siri


【解决方案1】:

Siri 尚未以 API 形式提供,但是,任何 UITextField 或 UITextArea 都可以指定为使用语音到文本的内置选项。

【讨论】:

  • tnx 您能否对此进行更多解释?我该如何使用它?
  • 您根本不必“使用”它 - 拥有该选项的用户会自动看到它。您所要做的只是设置您的文本输入字段,就好像它们是键入的一样,并且用户必须点击键盘的听写按钮。使用这种机制是不可能进行直接语音控制的,除非您告诉用户口述命令并且您的文本字段对其进行解析——尽管这可能会对应用商店的提交性产生怀疑,因为它与 Siri 过于相似并且也会使用户感到困惑。
【解决方案2】:

查看 Openears,网址为:http://www.politepix.com/openears 我已经在实验中使用过它,效果很好。它将很好地识别预设词汇。在它识别出这个词之前有 1/2 秒左右的轻微停顿,它在有很多声音的环境中(拥挤的餐厅)会感到困惑,但在相当安静的环境中,我发现它效果很好。

【讨论】:

  • Openears 也能处理语音转文本吗?举个例子,你按下一个按钮,你对着电话说话,它就会把所说的话转换成文本字段中的字符串?
  • 自从我使用它已经有一段时间了,我构建了一个快速原型,可以识别一组定义的单词。它工作得非常出色。我相信它也可以对文本进行语音,但我没有任何直接的经验。但是当我看到它时,我已经联系了项目所有者,他非常敏感和乐于助人。 p.s.很抱歉延迟回复我已经有一段时间没有回到 Stack 了。
  • OpenEars 如果您的配置文件中包含一组全面的单词,则效果很好。但是,如果在配置文件中找不到该单词,则它不起作用。所以问题是 - 如何创建或导入包含足够单词的综合配置文件以产生令人满意的结果?配置中是否有可用的所有会话词列表?
  • @CoolDocMan 他们建议您将“词汇”限制在 300 字左右。这似乎不是一个硬性限制,但是随着词汇量的增加,性能将开始受到影响(更强大的设备受这种影响的影响较小)。 OpenEars 进行所有板载处理...Siri 和大多数其他语音 SDK 都在服务器端进行。如果您需要识别非结构化语言的东西,它可能不是您的工具。
  • OpenEars 似乎特别棒,因为它在内部使用了免费和开源的卡内基梅隆大学 Sphinx 语言识别项目,称为 CMU pocketSphinx。可以调整 pocketSphinx 文件(尽管我猜需要付出一些努力)以适应特定的口音,例如印度口音等。
【解决方案3】:

iOS 10 引入了新的语音识别 API - SFSpeechRecognizer

https://developer.apple.com/videos/play/wwdc2016/509/

【讨论】:

    【解决方案4】:

    Siri 仅在 iPhone 4S 上作为测试版提供,不确定是否计划将其推广到所有支持 iOS 5 的设备。语音识别的开源库很难获得。您可以查看Nuance (dragon) 开发者网关here

    【讨论】:

    • 对于投反对票的人,我知道情况已不再如此,但在 2011 年 10 月给出了这个答案。因此,提供更多信息可能是更好的方法。
    【解决方案5】:

    您可能还想查看 ispeech 的 text to speechspeech recognition API。它们已经让你可以毫不费力地将它包含在你的应用程序中,而且实际上比 Siri 的要好一些。 Siri 的最大优势在于 NLP,而不是底层的语音技术。

    【讨论】:

      【解决方案6】:

      Siri 尚未对开发者开放。

      【讨论】:

        【解决方案7】:

        我们制作了一个用于识别孤立词(或小短语)的 SDK,即 CeedVocal SDK。我们在自己的应用程序 Vocalia 中使用它。虽然它不是免费的(但有免费试用),更多信息请访问:http://www.creaceed.com/ceedvocal

        【讨论】:

          【解决方案8】:

          对于语音识别,您可以使用 OpenEars (http://www.politepix.com/openears/),它可以离线工作并提供良好的准确性。OpenEars 可在 iPhone 或 iPad 应用程序中免费使用。 是 OpenEars 处理 Speech to Text 功能。

          【讨论】:

            【解决方案9】:

            iOS 10 之后可以使用

            语音框架

            使用起来非常简单。只需将 Speech 导入你的类

            import Speech
            
            let speechRecogizer = SFSpeechRecognizer(locale: Locale.init(identifier: "en-US"))!  //locale whatever you want to use
            let recognitionRequest = SFSpeechAudioBufferRecognitionRequest()
            let recognitionTask:SFSpeechRecognitionTask = speechRecogizer.recognitionTask(with: recognitionRequest, resultHandler: { (result, error) in 
                print(result?.bestTranscription.formattedString) //here you can get your text 
            })
            

            您也可以查看https://github.com/PKrupa94/SpeechManager

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 2013-05-24
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多