我有一个名为 student 的 WAV 文件,现在我想将其转换为文本并将此文本下载为 JSON 文件。
WAV文件(音频)有以下内容“你好,我是米歇尔。我是格鲁吉亚大学的学生”
JSON 文件需要将上述内容作为字符串。
基本上,将语音转换为文本。
相当多的语音识别软件依赖于HMM或隐马尔可夫模型。这种方法基于这样的假设,即当在足够短的时间尺度(例如,十毫秒)上查看语音信号时,可以合理地近似为一个平稳过程 - 意思是,统计属性不随时间变化的过程。语音被分成 10 毫米的片段,并映射到称为倒谱系数的实数向量,然后这些向量与音素匹配。这是对典型语音识别系统的高度概括。
现在,回到你的要求,做一点研究就会把你带到图书馆,比如 -
现在使用SpeechRecognition就像(取自源代码并在我的计算机上尝试)一样简单-
import speech_recognition as sr
from os import path
AUDIO_FILE = path.join(path.dirname(path.realpath(__file__)), "english.wav")
r = sr.Recognizer()
with sr.AudioFile(AUDIO_FILE) as source:
audio = r.record(source) # read the entire audio file
try:
print("Sphinx thinks you said " + r.recognize_sphinx(audio))
except sr.UnknownValueError:
print("Sphinx could not understand audio")
except sr.RequestError as e:
print("Sphinx error; {0}".format(e))
瞧,它只用十行代码就可以工作,这要感谢开发这些的了不起的人:)
编辑- 您需要设置PocketSphinx才能运行此代码。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句