使用vosk离线语音识别模型进行中文语音speech识别

Vosk官网:Vosk 离线语音识别

Vosk是言语识别工具包。Vosk最好的事情是:

  1. 支持二十+种语言 - 中文,英语,印度英语,德语,法语,西班牙语,葡萄牙语,俄语,土耳其语,越南语,意大利语,荷兰人,加泰罗尼亚语,阿拉伯, 希腊语, 波斯语, 菲律宾语,乌克兰语, 哈萨克语, 瑞典语, 日语, 世界语, 印地语, 捷克语, 波兰语, 乌兹别克语, 韩国语, 塔吉克语
  2. 移动设备上脱机工作-Raspberry Pi,Android,iOS
  3. 使用简单的 pip3 install vosk 安装
  4. 每种语言的手提式模型只有是50Mb, 但还有更大的服务器模型可用
  5. 提供流媒体API,以提供最佳用户体验(与流行的语音识别python包不同)
  6. 还有用于不同编程语言的包装器-java / csharp / javascript等
  7. 可以快速重新配置词汇以实现最佳准确性
  8. 支持说话人识别

Vosk说:我们有一个非常大的微信群,所以它仅受邀请。 发邮件给我们加入小组,并提供一些有关您自己的信息。

选择和下载vosk语音模型 

模型选择地址:VOSK Models

Chinese
vosk-model-small-cn-0.2242M23.54 (SpeechIO-02) 38.29 (SpeechIO-06) 17.15 (THCHS)Lightweight model for Android and RPiApache 2.0
vosk-model-cn-0.221.3G13.98 (SpeechIO-02) 27.30 (SpeechIO-06) 7.43 (THCHS)Big generic Chinese model for server processingApache 2.0
Chinese Other
vosk-model-cn-kaldi-multicn-0.151.5G17.44 (SpeechIO-02) 9.56 (THCHS)Original Wideband Kaldi multi-cn model from Kaldi with Vosk LMApache 2.0

考虑到要在树莓派2上部署,选择了42M大小的版本,下载模型并解压到一个目录。

wget https://alphacephei.com/vosk/models/vosk-model-small-cn-0.22.zip
unzip vosk-model-small-cn-0.22.zip

 解压后的模型目录为:/home/skywalk/work/speech/vosk-model-small-cn-0.22

进行中文识别 

import vosk
from vosk import Model, KaldiRecognizer
import wave

# 加载模型
model_path = "path/to/vosk-model"  # 替换为你的模型路径
model = Model(model_path)

# 初始化识别器,设置音频的采样率为16000Hz
rec = KaldiRecognizer(model, 16000)

# 打开音频文件
with wave.open('path/to/your/audio.wav', 'rb') as wave_file:
    # 循环读取音频帧
    while True:
        data = wave_file.readframes(4000)
        if len(data) == 0:
            break
        if rec.AcceptWaveform(data):
            print(rec.Result())  # 获取部分识别结果

    # 获取最终结果
    final_result = rec.FinalResult()
    if final_result != '':
        print("Final Result:", final_result)

 执行结果:

/vosk-model-small-cn-0.22/graph/HCLr.fst ./vosk-model-small-cn-0.22/graph/Gr.fst
LOG (VoskAPI:ReadDataFiles():model.cc:303) Loading winfo ./vosk-model-small-cn-0.22/graph/phones/word_boundary.int
Final Result: {
  "text" : "我 认为 跑步 最 重要 的 就是 给 我 带来 了 身体健康"
}

当然运行程序前,不要忘记安装vosk包: 

pip install vosk

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值