開源VOSK引擎免費語音轉文字部署


步驟1:安裝Python3環境
前往 https://www.python.org/downloads/ 下載Windows環境版本(Python 3.8以上)。安裝過程中選中“Add Python directory to 'PATH' environment variable”。選中之后,Python可以像系統自帶命令一樣,在所有CMD目錄下運行。否則每次執行Python都需要輸入它的目錄位置。其他選項按默認即可。

(可選操作)步驟1a:替換下載鏡像為清華大學鏡像源
在命令行輸入 pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

這樣對於國內用戶來說下載速度會更快

步驟2:安裝VOSK API庫
打開CMD(命令提示符)輸入 pip install vosk

步驟3:配置目錄並下載語音模型
在桌面創建 vosk 目錄。

前往 https://alphacephei.com/vosk/models 下載中文語音模型。

或者直接點擊下面的鏈接下載,並解壓到vosk目錄下。將解壓出來的目錄重命名為 “model”(不含引號)。

vosk-model-cn-0.1.zip
195M TBD Big narrowband Chinese model for server processing Apache 2.0

步驟4:下載ffmpeg
前往 https://github.com/BtbN/FFmpeg-Builds/releases 下載ffmpeg,並將 ffmpeg.exe 解壓到桌面 vosk 目錄內

步驟5:安裝並打開Notepad++ (或者使用你自己的高級文本編輯器)
前往 https://notepad-plus-plus.org/downloads/ 下載 notepad++

(國內鏡像:http://www.pc6.com/softview/SoftView_13941.html)

安裝打開,並創建新文件,拷貝以下內容:

#使用方法
#拷貝語音模型到當前目錄下 並命名為 'model'
#拷貝ffmpeg.exe文件到當前目錄下
#執行 python test_ffmpeg.py speech.mp3 即可

#!/usr/bin/env python3

from vosk import Model, KaldiRecognizer, SetLogLevel
import sys
import os
import wave
import subprocess
import json

SetLogLevel(0)

if not os.path.exists("model"):
print ("Please download the model from https://alphacephei.com/vosk/models and unpack as 'model' in the current folder.")
exit (1)

sample_rate=16000
model = Model("model")
rec = KaldiRecognizer(model, sample_rate)

process = subprocess.Popen(['ffmpeg', '-loglevel', 'quiet', '-i',
sys.argv[1],
'-ar', str(sample_rate) , '-ac', '1', '-f', 's16le', '-'],
stdout=subprocess.PIPE)

f = open("result.txt", "w+")

while True:
data = process.stdout.read(10000)
if len(data) == 0:
break
if rec.AcceptWaveform(data):
re = rec.Result()
print(re)
re = json.loads(re)
f.write(re['text'] + '\n')
else:
print(rec.PartialResult())

f.close()

# print(rec.FinalResult())

另存為 vosk 目錄下的 voice2text.py 文件。

(可選步驟)步驟4a:調試命令行
步驟4給出的代碼最適合處理mp3錄音文件。如果你想要處理更多形式的音頻,例如實時錄音,或者更多的對話模式,例如電影對白,你可以參考官方的代碼,地址是 https://github.com/alphacep/vosk-api/tree/master/python/example

步驟4的代碼就是根據官方的 test_ffmpeg.py 代碼修改而來。

步驟6:運行程序並識別文字
將需要識別的mp3/wav/mp4等音視頻文件拷貝至 桌面的vosk目錄內。例如,我需要識別的文件為 story.mp3。

進入CMD環境,輸入 cd ~/Desktop/vosk 進入工作目錄,然后輸入 python voice2text.py story.mp3。

系統開始識別語音內容,你可以看到識別的文字在窗口內一段段顯示出來。

識別效果
image

最終結果將存儲到 vosk 目錄下的 result.txt 文件內。你可以在word中進一步處理這些內容。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM