LoginSignup
1
1

音声認識 Whisper.cppを使ってみた

Last updated at Posted at 2024-04-01

今回は,音声認識 Whisperです.
通常のWhisperと違い,Whisper.cppはCPUで動くという話を耳にしました.
それは動かしてみるしかないでしょ!!
(whisper.cppの導入にはLinux環境が必要)

Whisper.cppを動かす手順

1.ビルドする

git clone https://github.com/ggerganov/whisper.cpp.git
cd whisper.cpp
make

makeを実行すると,様々なオプションが確認できる

  • -otxt:テキストファイルとして出力
  • -ovtt:vttファイルとして出力
  • -m FNAME:使用モデルの選択
  • -f FNAME:入力ファイル選択
  • -l:言語の選択

などたくさんのオプションが存在する

2.使用するモデルをダウンロードする

./models/download-ggml-model.sh ”モデル名”

3.ffmpegのインストール

snap install ffmpeg

4.ffmpegにより16kHzのWAVファイルに変換する

ffmpeg -i ”変換したい音声の名前” -ar 16000 -ac 1 -c:a pcm_s16le ”変換後の音声の名”

Whisperはmp4など他のファイルにも対応していたが、Whisper.cppは16kHzのWAVファイルにのみ対応している

5.ダウンロードしたモデルを使用して,文字起こし

./main -m models/ggml-”使用モデル名” -f ”認識する音声” -l ja -otxt

モデルは tiny < base < small < medium < large の順で性能が良い

文字起こし結果

[00:00:00.000 --> 00:00:04.000]  これを持ちまして公園を終了させていただきます。
[00:00:04.000 --> 00:00:07.000]  どなたさまもお忘れもののございませんよ。
[00:00:07.000 --> 00:00:11.000]  今一度お手回り品を確かめください。
[00:00:11.000 --> 00:00:16.000]  本日はご来場いただきまして誠にありがとうございました。

モデルはsmallを使用してみましたが,まだ間違いが目立ちますね.
smallの代わりにmediumやlargeを使用すると間違いは見られなくなりました

いやーそれにしても 発音が片言の Japanese English もしっかりと認識するのが whisper のすごさですよね!これからもお世話になります:raised_hands:

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1