【发布时间】:2010-05-27 20:07:19
【问题描述】:
我想了解进行语音识别和文本到语音转换的各种技术。 也请让我知道任何资源,如链接、教程、电子书等。
实现它的最有效技术是什么?
【问题讨论】:
我想了解进行语音识别和文本到语音转换的各种技术。 也请让我知道任何资源,如链接、教程、电子书等。
实现它的最有效技术是什么?
【问题讨论】:
我将回答关于语音识别的部分(因为我对文本到语音的了解不多):
《语音识别的统计方法》这本书是解释统计语音识别的数学基础的经典著作,由该领域的创始人 Frederick Jelinek 撰写。
你必须知道的最重要的概念是Hidden Markov Models。几十年来,人们一直在语音识别中使用它们。最近的一种方法使用Conditional Random Fields,请参阅paper (PDF) 和相关的软件工具包SCARF。
编写自己的语音识别器相当困难。这是一个活跃的研究领域,有几个科学会议,例如。 ASRU, Interspeech, ICASSP.
【讨论】:
两者都是非常广泛的领域。 关于识别:在这个this schema,您将了解如何构建一个基本的自动语音识别系统。这绝不是接近艺术的开始,但它是可以实现的并且它有效。如果您想做更高级的事情,请阅读倒谱系数和隐马尔可夫模型。看看HTK,它是一个广泛使用的隐马尔可夫模型工具包。
关于文字转语音:我想看看Festival。
【讨论】:
有多个狮身人面像。主要活跃的是pocketsphinx和sphinx4。
Sphinx4 是用 Java 编写的。它更适合桌面和 Web 应用程序。
Pocketsphinx 是用 C 语言编写的。它更适合嵌入式设备。有 iphone/android 应用程序使用它。
听起来你想要pocketsphinx。试试这个教程: http://www.speech.cs.cmu.edu/sphinx/tutorial.html
在 CMU 的 sourceforge 论坛上提问 pocketsphinx/sphinx4 问题的更好地方。
您还应该提供更多信息,例如您打算制作的内容。
至于书籍,语音识别的圣经是《口语处理》
【讨论】:
既然你提到了 MS -
您应该只查看Microsoft Speech 网站。它包含许多处理语音的资源,包括 TTS 和语音识别。
【讨论】:
如果您正在寻找一些实际代码,请查看 Sphinx,这是 CMU 的一个开源语音识别项目。它不是用 C++ 编写的,但如果你对算法感兴趣,它实现了一堆你可以从中学习的东西。 (我也想回应@dehmann 的观点:阅读隐藏马尔可夫模型。)
【讨论】:
如果您对如何处理您的精美语音识别感到好奇,您应该阅读: Randy Allen Harris 的语音交互设计
它就何时使用 Voice 以及如何在应用程序中使用它提供了一些很好的建议。
【讨论】: