スポンサーサイト

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

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

音声合成して音声認識するスクリプト

2013年04月21日(日)01時30分

音声合成 → 音声認識

日本語版 Win7 で英語音声認識機能を使う」で書きましたが、Win7 では「英語」「中国語」「スペイン語」「ドイツ語」「フランス語」の音声認識機能を、無料で使用することができます(少し工夫が必要な場合がありますが)。
また、「Microsoft Speech Platform の日本語音声合成エンジン」や「パソコンにいろいろな国の言葉をしゃべらせる」で書いた通り、上記言語を含む17言語分の音声合成が、これもタダで使うことができます。
で、今回はこれらの音声合成で生成した音声ファイルを、そのまま音声認識にかけて文字列に戻す、という処理を行うスクリプトを書いてみました。

外国語学習における発音練習のため

なぜこんなものを作ったのか?という話ですが、まず「この音声認識機能を外国語の発音練習に使えないか?」と考えたことが発端です。
しかしながら現在の音声認識機能は、例えば日本語の音声認識で確認すればわかるのですが、ネイティブが正確に発音したとしても、正しく認識できない文章があります。
当然、そういう文章を問題文として発音練習をしても、どうやっても正解できないわけですから、それは時間の無駄ということになります。
ですので、もし発音練習に使用するのであれば、事前に「この文章は正しく発音すれば正しく認識される」という保証を得る必要がありますが、そのためには「正確な発音の音声」を認識させて確認しなければならず、そしてその確認作業を自分でできるレベルの話力があれば、そもそも発音練習など不要なわけです。
というようなことから、そのあたりの矛盾をどうにか埋めてみようというのが、このスクリプトの目的です。

音声認識の準備

スクリプト自体の使い方以前に、まずは使用している PC(の OS)で、必要な言語の音声認識機能が使えないとどうしようもありません。
つまり、前述「日本語版 Win7 で英語音声認識機能を使う」等を参考に、使いたい言語の音声認識機能を OS に追加する必要があります。
また、スクリプト上では認識言語の変更を行えませんので、コントロールパネルの「コンピューターの簡単操作」(Win7 でカテゴリ表示の場合)から、「音声認識 → 高度な音声オプション」で、あらかじめ認識させたい言語に切り替えておきます。

音声認識の切り替え

音声合成の準備

次に音声合成ですが、英語発音の確認に使用するのであれば、Win2k 以降の Windows には標準で英語話者が存在していますので、特に何かをしなくとも一応は使えます。
が、使える話者は多い方が良いと思われますので、Microsoft Speech Platform で追加して増やします。
まずは「http://www.microsoft.com/en-us/download/details.aspx?id=27225」からランタイムをダウンロードし、インストールします。
32bit 版の OS の場合は「x86_SpeechPlatformRuntime\SpeechPlatformRuntime.msi」です。
64bit 版の OS の場合、今回のスクリプトだけであれば「x64_SpeechPlatformRuntime\SpeechPlatformRuntime.msi」のみでいいのですが、他でも使う予定があれば「x86_SpeechPlatformRuntime\SpeechPlatformRuntime.msi」も入れておきます。
次に「http://www.microsoft.com/en-us/download/details.aspx?id=27224」から、必要な言語用のファイルをインストールします。
英語なら頭に「MSSpeech_TTS_en-」が付いているものがそうですが、「オーストラリア英語(AU)」「カナダ英語(CA)」「インド英語(IN)」は認識率が落ちますので、今回の目的であれば、「MSSpeech_TTS_en-GB_Hazel.msi」「MSSpeech_TTS_en-US_Helen.msi」「MSSpeech_TTS_en-US_ZiraPro.msi」の三話者だけで十分かと思います。

スクリプトの準備

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

TtStT対象をファイルに保存

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

TtStTブロックの解除

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

TtStT拡張子変更

TtStT.hta を実行します。

TtStT

使い方

「合成エンジン」のドロップダウンリストで読み上げに使用する話者を選択し、その下にあるテキストエリアに読み上げたい文章を入力します。
「再生」ボタンではただ文章の読み上げのみが行われ、「認識」ボタンを押せば、音声認識された文章が下部のテキストエリアに表示されます。
「マイク入力開始」ボタンを押すとマイクからの入力を音声認識しますので、自分自身の発音でも確認できます。

やってみた結果

少しやってみた限りでは、意外に認識します。
例えば、人によってはピンとくる英文「We must respect the will of the individual.」で試してみますと、以下のようになりました。

  • we not respect the will to the individual[Microsoft Anna]
  • we must respect the will of the individual[Microsoft ZiraPro(en-US)]
  • we must respect the will of the individual[Microsoft Helen(en-US)]
  • we must respect the winner of the individual[Microsoft Hazel(en-GB)]

他にもいくつか試してみましたが、上記の例文のように、「一人の話者で全文完全一致する」ということも少なくはありませんでした(多くもありませんでしたが)。
それにもし、完全一致はしなくとも、「ある話者で一部一致しないが、その不一致部分は別の話者で一致する」というパターンがあれば、それはおそらく「訓練次第では完全一致させる発音ができる」と(多分)みなせますので、「発音練習用の文章として使用できるか?」の確認としては十分だと思われます。

自分でやってみた結果

ということで、「認識可能」と確認が取れた上記例文を、マイクに向かって発音してみました。
が、例文を試聴しながら、あるいは再生と同時に、何十回~何百回と繰り返してみましたが、かすりもしませんでした…。
念のために「日本語」の文章&音声エンジンで試しましたが、これだときちんと認識されますので、やはりマイクではなく自身の発音に問題があるようです。
まあ、ある程度は予想していたとはいえ、それにしてもこれだけ繰り返して、全く完全に一致しない(部分一致すらしなかった)というのは、なかなか厳しいものがあります。

関連記事

【同じタグを付けた記事の一覧】
自作ソフト ポータブル eラーニング 音声技術 語学学習 音声合成 音声認識 英語発音矯正実験

スポンサーサイト

コメントの投稿

非公開コメント

最新記事
最新コメント
Amazonおまかせリンク
カテゴリ
タグクラウド
Amazonお買い得ウィジェット
カレンダー
03 | 2017/04 | 05
- - - - - - 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拍手ランキング
ユーザータグ

音楽管理(65)
ポータブル(57)
ソフト紹介(44)
プログラミング(42)
音声技術(41)
自作ソフト(34)
サイト運営(32)
FC2(31)
ブログ(30)
iTunes(26)
Windows(25)
LISMO(24)
音声合成(23)
音声認識(22)
x-アプリ(22)
電子ブック(22)
eラーニング(20)
バックアップ(19)
語学学習(19)
foobar2000(18)
ソースコード(17)
画像管理(15)
WindowsLiveWriter(15)
C++(14)
アフィリエイト(10)
DnspTools(10)
ウォークマン(9)
fi-6130(9)
FLAC(9)
Gracenote(8)
英語音読学習計画(8)
Prolog(8)
JavaScript(8)
ベクター(8)
雑記(8)
CodeBlocks(7)
SyntaxHighlighter(7)
TraConv(7)
wxWidgets(7)
spcbght(7)
DCP-J552N(6)
W63CA(6)
MP3Gain(6)
WinRT(6)
iGoinLM(6)
VirtualBox(6)
WindowsLiveMesh(6)
英語発音矯正実験(6)
ExactAudioCopy(6)
楽器演奏(5)
Mery(5)
LAME(5)
音楽技術(5)
GalateaProject(4)
LLVM(4)
nLite(4)
MIDI(4)
ホームページ(4)
WindowsLiveSkyDrive(4)
GalateaTalk(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アクセスランキング
最新トラックバック
アクセスランキング
[ジャンルランキング]
コンピュータ
102位
アクセスランキングを見る>>

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