有谁知道可以将音频转换为文本的应用程序吗?
答案1
您可以使用的软件是沃斯克阿皮,一款基于神经网络的现代语音识别工具包。它支持 7 种以上的语言,可在包括 RPi 和移动设备在内的多种平台上运行。
首先将文件转换为所需的格式,然后识别它:
ffmpeg -i file.mp3 -ar 16000 -ac 1 file.wav
然后使用 pip 安装 vosk-api:
pip3 install vosk
然后使用以下步骤:
git clone https://github.com/alphacep/vosk-api
cd vosk-api/python/example
wget https://alphacephei.com/kaldi/models/vosk-model-small-en-us-0.3.zip
unzip vosk-model-small-en-us-0.3.zip
mv vosk-model-small-en-us-0.3 model
python3 ./test_simple.py test.wav > result.json
结果将以json格式保存。
同一目录还包含一个 srt 字幕输出示例,该示例更易于评估并且可直接供某些用户使用:
python3 -m pip install srt
python3 ./test_srt.py test.wav
存储库中给出的示例以完美的美式英语口音和完美的音质说了三句话,我将其转录为:
one zero zero zero one
nine oh two one oh
zero one eight zero three
“九零二一零”读得很快,但仍然很清晰。倒数第二个“零”的“z”听起来有点像“s”。
上面生成的SRT内容如下:
1
00:00:00,870 --> 00:00:02,610
what zero zero zero one
2
00:00:03,930 --> 00:00:04,950
no no to uno
3
00:00:06,240 --> 00:00:08,010
cyril one eight zero three
所以我们可以看到,我们犯了几个错误,大概部分是因为我们认为所有的单词都是数字来帮助我们。
接下来,我还尝试了,vosk-model-en-us-aspire-0.2
它的下载量为 1.4GB,而 的下载量为 36MB,vosk-model-small-en-us-0.3
列在https://alphacephei.com/vosk/models:
mv model model.vosk-model-small-en-us-0.3
wget https://alphacephei.com/vosk/models/vosk-model-en-us-aspire-0.2.zip
unzip vosk-model-en-us-aspire-0.2.zip
mv vosk-model-en-us-aspire-0.2 model
结果是:
1
00:00:00,840 --> 00:00:02,610
one zero zero zero one
2
00:00:04,026 --> 00:00:04,980
i know what you window
3
00:00:06,270 --> 00:00:07,980
serial one eight zero three
又答对了一个单词。
在 vosk-api 7af3e9a334fbb9557f2a41b97ba77b9745e120b3 上测试。
答案2
我知道这已经过时了,但为了扩展 Nikolay 的答案并希望将来能节省一些时间,为了使 pocketsphinx 的最新版本正常工作,您需要从 github 或 sourceforge 存储库编译它(不确定哪个保持得更最新)。请注意 -j8 表示尽可能并行运行 8 个单独的作业;如果您有更多的 CPU 核心,您可以增加数量。
git clone https://github.com/cmusphinx/sphinxbase.git
cd sphinxbase
./autogen.sh
./configure
make -j8
make -j8 check
sudo make install
cd ..
git clone https://github.com/cmusphinx/pocketsphinx.git
cd pocketsphinx
./autogen.sh
./configure
make -j8
make -j8 check
sudo make install
cd ..
然后,来自:https://sourceforge.net/projects/cmusphinx/files/Acoustic%20and%20Language%20Models/US%20English/
下载最新版本cmusphinx-en-us-....tar.gz
的en-70k-....lm.gz
tar -xzf cmusphinx-en-us-....tar.gz
gunzip en-70k-....lm.gz
然后你终于可以按照 Nikolay 的回答中的步骤进行操作了:
ffmpeg -i book.mp3 -ar 16000 -ac 1 book.wav
pocketsphinx_continuous -infile book.wav \
-hmm cmusphinx-en-us-8khz-5.2 -lm en-70k-0.2.lm \
2>pocketsphinx.log >book.txt
Sphinx 运行良好。我不会依赖它来制作文本的可读版本,但如果您正在寻找特定的引文,它已经足够好了,您可以搜索它。如果您使用像 Xapian 这样的搜索算法,效果会更好(http://www.lesbonscomptes.com/recoll/) 接受通配符并且不需要精确的搜索表达式。
希望这可以帮助。
答案3
如果您想将语音转换为文本,您可以尝试安装该julius
包:
sudo apt install julius
描述:
“Julius”是一款面向语音相关研究人员和开发人员的高性能、两遍大词汇量连续语音识别(LVCSR)解码器软件。
或者另一个不在 Ubuntu 存储库或 Snap Store 中的选项是西蒙:
... 是一个开源语音识别程序,取代了鼠标和键盘。
参考链接:
朱利叶斯:
西蒙:
答案4
vosk-transcriber
Vosk 的官方 CLI
安装后我随机完成了制表符的填写沃斯克今天,之前提到过:https://askubuntu.com/a/423849/52975当我看到他们终于添加了一个不错的 CLI 包装器时,现在在 Ubuntu 23.10 上测试,您可以使用英文模型进行安装:
pipx install vosk
mkdir -p ~/var/lib/vosk
cd ~/var/lib/vosk
wget https://alphacephei.com/vosk/models/vosk-model-en-us-0.22.zip
unzip vosk-model-en-us-0.22.zip
cd -
然后使用如下方式:
wget -O think.ogg https://upload.wikimedia.org/wikipedia/commons/4/49/Think_Thomas_J_Watson_Sr.ogg
vosk-transcriber -m ~/var/lib/vosk/vosk-model-en-us-0.22 -i think.ogg -o think.srt -t srt
-i
可以处理几乎所有东西,包括像这样的压缩音频文件,.ogg
甚至像这样的视频文件.ogv
,大概是 FFmpeg 在工作。
太棒了!现在他们只需要一个vosk-transcriber --download-model en
选项和一个默认-m
目录就可以彻底清理干净,但这已经是生活的一大进步了。
我使用了一些示例来非正式地评估准确性:https://unix.stackexchange.com/questions/256138/is-there-any-decent-speech-recognition-software-for-linux/613392#613392
OpenAI Whisper
https://github.com/openai/whisper
该答案略微改编自:https://unix.stackexchange.com/questions/256138/is-there-any-decent-speech-recognition-software-for-linux/718354#718354作者:Franck Dernoncourt。
OpenAI 的耳语(MIT 许可证、Python 3.9、CLI)可产生一些高度准确的转录。要使用它(在 Ubuntu 20.04 x64 LTS 上测试):
conda create -y --name whisperpy39 python==3.9
conda activate whisperpy39
pip install git+https://github.com/openai/whisper.git
sudo apt update && sudo apt install ffmpeg
whisper recording.mp3
whisper recording.mp3 --model large
如果使用 Nvidia 3090 GPU,请在后面添加以下内容conda activate whisperpy39
pip install -f https://download.pytorch.org/whl/torch_stable.html
conda install pytorch==1.10.1 torchvision torchaudio cudatoolkit=11.0 -c pytorch
OpenAI 的性能基准
模型推理时间:
尺寸 | 参数 | 纯英语模式 | 多语言模型 | 所需 VRAM | 相对速度 |
---|---|---|---|---|---|
微小的 | 三十九 米 | tiny.en |
tiny |
约 1 GB | ~32倍 |
根据 | 74 米 | base.en |
base |
约 1 GB | ~16倍 |
小的 | 244 米 | small.en |
small |
约 2 GB | ~6倍 |
中等的 | 769 米 | medium.en |
medium |
约 5 GB | ~2倍 |
大的 | 1550 米 | 不适用 | large |
~10 GB | 1x |
来自以下语料库的 WERhttps://cdn.openai.com/papers/whisper.pdf:
几种语言的 WERhttps://github.com/openai/whisper/blob/main/language-breakdown.svg:
相关问题: