スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

【同じタグを付けた記事の一覧】

(失敗)VOA に英語音声認識でタイムタグをつける

2014年10月05日(日)00時27分

VOA という英語音声素材

Voice of America(以下 VOA)というのは、アメリカの国営放送です。
で、その中に「Learning English」なるプログラムがあります(かつては「Special English」の名称で放送していたようです)。
これは、英語ネイティブでないリスナーを対象に、使用する単語を絞り込み、通常よりゆっくり読み上げる英語ニュースで、音声だけでなくそのスクリプト(ニュースの読み上げ原稿)も同時に提示されています。
それらの特徴から、英語の初級~中級学習者の間で話題に上ることが多いのですが、さらに素晴らしいのは、これらの音声やスクリプトが、「public domain」で公開されているという事実です(これは例えば、公式サイトの下の方にある「About Us」あたりに明記されています)。
例えばブログや WEB ページで、例文等として比較的自由に使える英語の「文章」であれば Wikipedia などがありますが、「音声」となるとなかなか見つかりませんので、これはありがたいことです(日本語でもこういったものがあるとうれしいのですが)。

音声認識とタイムタグ付きテキスト

そして、今回はこの音声ファイルを、Windows の音声認識にかけて、タイムタグ付きテキストを自動生成できないだろうか?と考え、実際にやってみた記録です。
「タイムタグ付きテキスト」というのは、LRC ファイル等とも呼ばれる、いわゆる歌詞カードです。
LRC ファイルを生成できると、対応する音楽再生ソフト(foobar2000 等)やDAP(ウォークマン等)で、現在読み上げている個所を表示したりハイライトさせたりするようにできます。
Windows で WAVE ファイルを音声認識させると、各認識文が「どのタイミングで開始されるか」という情報も得られますので、これを使ってタイムタグを打とうというわけです。
ただし、結論から先に書きますと、タイムタグ生成の前段階である音声認識の時点で、「完全自動処理」が可能なレベルの結果が得られないことがわかり、それ以降の処理を書いていないため、今回の目論見は失敗に終わったということになります。
ですが、せっかく途中までは書きましたので、「どの程度まで認識できるのか」といった資料として、今回試した内容を書き残しておこうと思います。

SAPI5 と Microsoft Speech Platform

これまでに、「Windows の音声認識を JavaScript で(基礎編)」や「Windows の音声認識を C++ で(基礎編)」等でも書いていますが、Windows で使用できる音声認識機能として、標準で添付されている「SAPI5」と、Microsoft のサイトから無料でダウンロード可能な「Microsoft Speech Platform(以下 MSSP)」の二つのシステムがあります。
ただし、標準である SAPI5 の方は、「日本語版 Win7 で英語音声認識機能を使う」で書いたような作業を行わないと英語認識が使用できません。
その点、MSSP の方は OS の言語に関係なく「MSSpeech_SR_en-US_TELE.msi」をダウンロード&インストールするだけで英語認識可能になるのですが、こちらはこちらで「口述筆記(自由認識)」モードが使えず、あらかじめ登録しておいた文章のみが認識可能な「コマンド認識」モードのみとなります。
とはいえ、今回の目的はあらかじめ読み上げ原稿がわかっており、「その原稿内のどの文章を読んでいるのか?」が認識できればいいわけですから、MSSP を使うことにしました。

MSSP のインストール

まずは「http://www.microsoft.com/en-us/download/details.aspx?id=27225」から、MSSP のランタイム「SpeechPlatformRuntime.msi」をダウンロード&インストールします。
この「SpeechPlatformRuntime.msi」は、32ビット版である「x86」と、64ビット版である「x64」があるのですが、これは「OS のビット数がどちらか?」ではなく「使用するソフトウェアのビット数がどちらか?」で決まります。
といっても、共存可能ですので、とりあえず「x86」をインストールし、64ビット版の Windows の場合のみ追加で「x64」もインストールしておけばいいと思います。
その後、「http://www.microsoft.com/en-us/download/details.aspx?id=27224」で、英語認識エンジン「MSSpeech_SR_en-US_TELE.msi」をダウンロード&インストールします。

スクリプトの準備

今回実験のために書いた HTA スクリプト「DictVOA.hta」は、上部テキストエリアに認識文を設定し、それに対応する WAVE 音声ファイルを指定して「認識」することで、認識できた行の時間情報を表示するものです。

DictVOA.txt ← 矢印左側の文字の上で右クリックし、「対象をファイルに保存(A)…」してダウンロードします。

DictVOA対象をファイルに保存

ダウンロードした「DictVOA.txt」を右クリックし、「プロパティ」を見て、「ブロックの解除」ボタンがあれば押して「OK」します。

DictVOAブロックの解除

ダウンロードした「DictVOA.txt」の拡張子(末尾の3文字)を「txt」から「hta」に変更し「DictVOA.hta」とします。

DictVOA拡張子変更

DictVOA.hta を実行します。

DictVOA

やってみた結果

アナウンサーによる違い

当然、というべきかわかりませんが、ニュースを読み上げるアナウンサーの違いによって、認識率がかなり違います。
アナウンサーは皆、ゆっくりと丁寧に読み上げてはいるのですが、人によってはどうにもうまく認識せず、数行しか確定できないということもあります。
もちろん、その逆に「凄く認識しやすいアナウンサー」というパターンもあり、実験した中では一つだけでしたが、「一記事丸々全文認識確定できた」というニュースもありました。
感覚として、なんとなく女性アナウンサーの方が認識率が悪いような気がします(サンプル数が少ないため、たまたまである可能性は高いのですが)。

インタビュー音声

VOA による「なるべく生のアメリカ英語にも親しんでもらおう」というような配慮によるものか、外部(アナウンサー以外)の人によるインタビュー音声が、わりに頻繁に挿入されます。
これらは当然、Learning English のようなゆっくりとしたものではなく通常の速度、そして話し言葉ですから流暢というわけにもいきませんし、またスタジオ録音でないためノイズも乗っています。
そういう悪条件であるため、インタビュー音声に関しては、これが混じっているとほぼ「自動認識は無理」という状態になります。

略記・数字

これは VOA 側でなく音声認識側の問題ですが、SAPI5 や MSSP の音声認識システムは、例えば「Mister」を「Mr.」と表記するような略記に対応していません。
つまり、記事中にこういった表記がある場合、「元の表記」に戻して登録しないと認識率が著しく低下します。
これが略記だけのことであれば機械処理でもある程度対応可能なのですが、数値も、例えば「123」をアナウンサーが「one hundred twenty three」と読み上げているのであれば、文中の「数字」を「数値英単語列」に書き換えて登録する必要があります。
これが結構厄介で、例えば「2001」という「数字」があった場合、これが「西暦」であるのか、単なる何かの数を示しているだけなのかで読み方が変わります。
つまり、最終的には「アナウンサーがどう読み上げているのか?」を聞いて書き換えるしかないため、結局のところ、ある程度の手作業は避けられないということになります。

半自動化

今回は「完全自動化」を前提としたため「難しい」という結論になりました。
が、例えば「A」「B」「C」「D」「E」の5行の文章が存在するとして、「A」と「D」の文が認識確定できれば、「B」「C」と「E」の位置が大まかに推定可能になります。
つまり「A」の終わりから「D」の始まりまでの間に「B」「C」があるわけで、WAVE ファイルからその範囲のみを切り出し、「B」「C」のみを登録した音声認識器に掛ければ、認識確率がかなり上がります。
これを利用して、認識不可だった文章を細切れに認識させていけば、インタビュー音声を含むほとんどの位置確定が可能になることを確認しています。
というわけで、ある程度の手作業を許容すれば、目的達成はできなくもない、とは思いますが、実際のところ、そこまでして作るほど LRC ファイルを利用するだろうか?という疑問はあります。
「英語聞き取りの練習」ということであれば、別に普通の TEXT ファイルを目で追っていても特に不便はないですから…。

関連記事

【同じタグを付けた記事の一覧】
自作ソフト eラーニング 音声技術 語学学習 音声認識 英語音読学習計画

スポンサーサイト

コメントの投稿

非公開コメント

最新記事
最新コメント
Amazonおまかせリンク
カテゴリ
タグクラウド
Amazonお買い得ウィジェット
カレンダー
08 | 2017/09 | 10
- - - - - 1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
月別アーカイブ
プロフィール

電脳太助

Author:電脳太助
Website:電脳スピーチ web

RSSリンクの表示
メールフォーム

名前:
メール:
件名:
本文:

サイト内検索
Ads by Google
FC2アクセスランキング
Ads by Google
FC2拍手ランキング
ユーザータグ

音楽管理(66)
ポータブル(57)
ソフト紹介(44)
プログラミング(42)
音声技術(41)
自作ソフト(35)
サイト運営(32)
FC2(31)
ブログ(30)
iTunes(27)
Windows(25)
LISMO(24)
音声合成(23)
音声認識(22)
x-アプリ(22)
電子ブック(22)
eラーニング(20)
バックアップ(19)
語学学習(19)
foobar2000(18)
ソースコード(18)
WindowsLiveWriter(15)
画像管理(15)
C++(14)
アフィリエイト(10)
DnspTools(10)
fi-6130(9)
FLAC(9)
JavaScript(9)
ウォークマン(9)
英語音読学習計画(8)
Gracenote(8)
Prolog(8)
ベクター(8)
雑記(8)
CodeBlocks(7)
SyntaxHighlighter(7)
TraConv(7)
spcbght(7)
wxWidgets(7)
VirtualBox(6)
W63CA(6)
DCP-J552N(6)
WinRT(6)
WindowsLiveMesh(6)
iGoinLM(6)
英語発音矯正実験(6)
ExactAudioCopy(6)
MP3Gain(6)
LAME(5)
音楽技術(5)
Mery(5)
楽器演奏(5)
GalateaTalk(4)
nLite(4)
WindowsLiveSkyDrive(4)
ホームページ(4)
GalateaProject(4)
MIDI(4)
LLVM(4)
PC-98(3)
カウンター(3)
AACGain(3)
iTCDini(3)
OverCutChecker(3)
拍手(3)
PK-513L(3)
UniversalExtractor(3)
アクセスランキング(3)
ImageCompositeEditor(2)
アクセス解析(2)
OCR(2)
qtaacenc(2)
資格試験(1)
AquesTalk(1)
AquesCmdDl(1)

FC2アクセスランキング
最新トラックバック
アクセスランキング
[ジャンルランキング]
コンピュータ
162位
アクセスランキングを見る>>

[サブジャンルランキング]
ソフトウェア
17位
アクセスランキングを見る>>
FC2カウンター
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。