問題タブ [pocketsphinx-android]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
176 参照

pocketsphinx-android - Pocketsphinx android onEndOfSpeech() は、私が話している場合でも呼び出されます

アプリで数字を認識しようとしています。数字を話しているときにメソッドが呼び出されますonEndOfSpeech()が、それでも番号を話す必要があります。正常に動作する場合もあれば、0.5 秒の遅延があっても音声が途切れる場合もあります。

0 投票する
1 に答える
375 参照

pocketsphinx-android - Android setKeywordThreshold() の問題での PocketSphinx

setKeywordThreshold() メソッドを使用してしきい値を下げたいと思います。公式のデモ アプリでのこれのデフォルト値は 1e-45 です。最小値は 1e-200 になる可能性があると言われました。この記事を参照してください: https://sourceforge.net/p/cmusphinx/discussion/help/thread/05d09693/?limit=25

そこで、1e-150 に設定しようとしたのですが、Android Studio から、しきい値は「double」ではなく「float」型にする必要があるとのクレームがありました。

1e-45 未満に設定する方法を教えてもらえますか? ありがとう!

0 投票する
1 に答える
3529 参照

android - Pocketsphinx - ホットワード検出の完成

私は最近CMU Sphinxを再訪し、チュートリアルから始めてサンプル アプリケーションを適応させて、Android 用の基本的なホットワード検出器をセットアップしようとしました。

ドキュメントを深く掘り下げても、それ以上読めなくなるまで解決できなかったさまざまな問題があります...

それらを複製するために、キーワードwakeup youwakeup meを検出するように設計された基本的なプロジェクトを作成しました。

私の辞書:

私の言語モデル:

上記の両方は、提案されたツールを使用して作成されました。

そして私のキーフレーズファイル:

上にリンクされたサンプル アプリケーションを適応させた、私のコードは次のとおりです。

:- 選択したキー フレーズ (およびその他の関連ファイル) をより類似しないように変更し、静かな環境で実装をテストする必要があります。適用されたセットアップとしきい値は非常にうまく機能します。

問題

  1. wakeup youまたはwakeup meと言うと、両方が検出されます。

最後の音節に増加した重みを適用する方法を確立できません。

  1. 私が単にwakeupと言うと、多くの場合 (常にではありませんが) 両方が検出されます。

これを回避する方法を確立できません。

  1. バックグラウンド ノイズに対してテストする場合、偽陽性が頻繁に発生します。

使用している基本しきい値を下げることができません。そうしないと、通常の条件下でキーフレーズが一貫して検出されません。

  1. バックグラウンド ノイズに対して長時間 (再現するには 5 分で十分です) テストした場合、すぐに静かな環境に戻ってキーフレーズを発声すると、検出されません。

静かな環境でテストが開始されたかのように、キーフレーズが正常に繰り返し検出されるまでに不確定な時間がかかります。

関連する可能性のある質問を見つけましたが、リンクが機能しなくなりました。認識機能をより頻繁にリセットする必要があるのではないかと思います。バックグラウンド ノイズが検出しきい値に平均化されないようにリセットするにはどうすればよいでしょうか。

  1. 最後に、キーフレーズを制限するという私の要件によって、音響モデルのサイズを縮小できるのでしょうか?

もちろん、アプリケーション内でパッケージ化する際のオーバーヘッドは有益です。

最後に (正直に!)、特に@NikolayShmyrevがこの質問を見つけてくれることを期待していますが、基本的な Android 実装/SDK を gradle 経由で完全にラップする計画はありますか?

ここまで来てくれた方々に感謝です…

0 投票する
1 に答える
166 参照

android - 音名「MA」が音響モデルにありません。「masoud」という単語 - ポケットフィンクス

私の名前はmasoudです。今、私が言いたいのはmasoud、私のアプリがコンソールログを出力することです。

これを行うために、mdic.txtファイルを作成し、その中に自分の名前を入れました:

マスード MA SOD

に変更mdic.txtmdic.dictて、assets/syncdirecotry に置きました。

ファイルを作成し、cm.txtその中に文字列を入れました:

に変更cm.txtしましたcm.gram

私のMainActivityで

今、私はこのメッセージを受け取りました:

"dict.c"、195 行目: 1 行目: 音響モデルに音名 'MA' がありません。単語 'masoud' は無視されました "kws_search.c"、171 行目: 単語 'masoud' が辞書にありません

行でこのエラーが発生しましrecognizer.addKeywordSearch(KWS_SEARCH, new File(assetsDir, "mdic.dict"));た。

0 投票する
1 に答える
916 参照

android - Pocketsphinx Android デモ エラー:「認識エンジン java.io.IOException の初期化に失敗しました: レコーダーの初期化に失敗しました。マイクは既に使用されている可能性があります。」

私は Pocketsphinx Android デモを使用していて、次のエラーが表示されます。

エラーの意味と修正方法を教えてください。

0 投票する
2 に答える
576 参照

android - 特定のライブラリの jniLibs フォルダーを検索しないように Android Studio に指示するにはどうすればよいですか?

私は android studio を初めて使用し、OpenCV を使用している既存のプロジェクトに取り組んでいます。CMU の Pocketsphinx for Android を実装する必要があります。インストール手順に従って、プロジェクトの /src ディレクトリに jniLibs フォルダーを作成し、そこに Pocketsphinx 用の適切なファイルを配置しました。

ここで問題が発生します。これを行うと、突然次のエラー メッセージが表示されます。

/src ディレクトリに jniLibs フォルダーがない場合、このエラーは発生しませんが、もちろん、必要な .so ファイルが見つからないというエラーが pocketSphinx から表示されます。

さらに、OpenCV の SDK を調べたところ、「libjniopencv_core.so」というファイルがないことに気付きました。どこにも存在しません。他の .so ファイルがありますが、その名前のファイルはありません。すべての armeabi と、openCV から新しい jniLibs フォルダーにディレクトリ以外のものをインストールしても、このエラー メッセージが表示されます。

Pocketphinx jniLibs ファイルのみをロードし、そのディレクトリでの openCV .so ファイルの検索を無視するように Android Studio に指示するにはどうすればよいですか?

0 投票する
1 に答える
204 参照

android - およびandroid pocketphinx からの出力として

.wav ファイルをテキスト ファイルに変換するために、ポケットフィンクスを使用しています。変換後に<s>のみ出力されるため、奇妙な出力が得られる理由はわかりません。</s>cmusphinx コミュニティによって提供されたデフォルトの辞書、言語モデル、および音響モデルを使用しています。

変換に使用しているコードは次のとおりです。

0 投票する
0 に答える
182 参照

android - Pocketsphinx デコーダーが初期化に失敗する

CMUSphinx を使用して音声入力を開始するホットワードをアプリに実装しようとしています。チュートリアルからコードをコピーし、音声入力を開始するためにいくつかの変更を加えましたが、機能していません。認識用の mainActivity コードは次のようになります。

私のキーワードは「こんにちは」です。問題は、このコードを実行するたびに、これが原因で「失敗しました」というトースト メッセージが表示されることです。

これで何が問題になる可能性がありますか?

私はこれらのことに非常に慣れていないので、これに関するヘルプは本当に役に立ちます。

ありがとうございました。