2

音声認識用の CMU ポケットフィンクスを調べています。理想的には、ライブオーディオを入力として使用して、オブジェクトの大きなリスト (〜200) である「ピックアップしてください」の行に沿って文構造を認識できるようにしたいと考えています。最初は、ポケットフィンクスを Ubunutu にインストールするのに非常に苦労しましたが、最終的には gstreamer を使用して動作させることができました。動作するようになったので、精度の向上に取り組んでいます。jsgf 文法を含めたいのですが、コードの説明や例が見つからず、現在途方に暮れています。

助けていただければ幸いです。

4

1 に答える 1

1

プラグインの簡単な変更になりますが、現在 gstreamer で JSGF を使用することはできません。ただし、文法は FSG 形式で使用できます。FSG 形式の文法を自分で作成するか、文法を JSGF 形式から FSG 形式に変換できます。

sphinx_jsgf2fsg -jsgf grammar.jsgf -fsg grammar.fsg

文法を fsg 形式で使用するには、プラグインの「fsg」プロパティを、代わりに「lm」プロパティを使用するのと同じように使用します。

    g_object_set(G_OBJECT(filter), "lm", MODELDIR "/lm/en/turtle.DMP", NULL);

FSG プロパティを FSG ファイルに設定します。

    g_object_set(G_OBJECT(filter), "fsg", 
         "pocketsphinx/test/data/goforward.fsg", NULL);

python:: でも同じことができます。

    asr.set_property("fsg", "pocketsphinx/test/data/goforward.fsg")
于 2013-03-31T13:32:03.400 に答える