Dmytro Prylipkoは、音声による感情認識のためのオープンソースのライブラリがあることは非常に疑わしいと述べています。
あなた自身で解決策を書くことができます。それは難しくありません。以前にも述べたように、適切なトレーニングやゴミ箱には多くの時間と神経がかかるという問題があります。
私は、あなたがアルゴの書き方を始めるべきかという簡単な理論を教えてくれるが、トレーニングなどはあなたの上にある。
最初に大きな問題は、異なる人々が異なる感情をボーカルに中継することです。 たとえば、ショックを受けた人はショックを受けて、過度の刑を言い渡しますが、別の人は「フリーズ」し、レスポンスは非常にフラットになります(ほとんどロボットに似ています)。 したがって、感情によって入力音声を分類する方法を学ぶための多くのテンプレートが必要になります。
音声認識とコンテキスト認識を併用すると、いくつかの問題を解決できます。 それは私があなたにすることをお勧めします。
まず、音声認識されたテキストを使用して感情コンテキストに入れるアルゴリズムを作成します。例えば。さまざまな感情を表現するときに人々が使用する特定の単語やフレーズを使用できます。
これは簡単に実行できます。ニューラルネットワークや単純な分岐などを使用することができます。
したがって、文脈認識と韻律からの感情を組み合わせることで、感謝と驚きを同時に認識することができます。
ここで、韻律から感情を認識するためには、韻律パラメータなどを取得する必要があります。
は、例えば、いくつかの感情は、文中の特定の単語の長さを見ることで認識することができます。
あなたはその文の文章とテキストを持っています。あなたは、通常のスピーチのスピードが毎分約200語であることを知っています。文章中のこれと言葉の数を知ることで、誰かが話していることがどれほど速いかを知ることができます。次に、各単語の長さを測定し、その速度を取得します。スピーチの速さとその単語の長さを知ることによって、感情の最も近い推測を決定するために、分類に使用できる正規化された比率を得ることができます。誰かがかなり長く鳴り、「ありがとう」と、彼/彼女はとても好きなことは、本で提示される。例えば
、。また、その人の通常の発言よりも高いピッチになります。
次のステップは、各単語の平均ピッチを取得して、それらの間の関係を確認することです。それで、あなたは文の韻律がどのように変化するか見ることができます。低いものから高いものへ、またはその逆へ。
また、文中のフレーズ内でどのように韻律が変化しますか。
あなたは直接知られている感情の曲線を比較することによって、この取り掛かること、か、韻律曲線ベクトルから係数を取得するためにaproximationを使用することができます。平方関数は、通常の音声韻律(特に感情がない)に適しています。だから、いくつかの高次多項式がすべきです。だから、あなたは多項式の係数を得ることができ、それを使って感情全体が文章や文章のリレーをするべきです。
文中の個々の単語についても同じことが言えます。あなたは各音素または音節の音程を得るか、例えば音程または音程を得るだけです。その言葉の20ミリ秒ごとに。次に、あなたは、あなたに十分であると決めた多項式を近似するために、いくつかの係数を計算するか、全体の曲線を取り、それを例えばに正規化します。認識でそれを使用するために30ポイント。
http://www.gamedev.net/reference/articles/article2039.asp
私はそれだけで正常に動作し、メロディーのピッチ曲線上でそれを試してみました:直接あなたはオレグDopertchoukによるジェスチャー認識アルゴリズムを使用して曲線を比較するため
。
トラブルがあなたと比較するために、あなたのアルゴ何かを与えることを明らかに手動で行わ分類とコンテキストと感情と音声のデータベースが必要です。あなたは全体ではなく曲線の多項式を使用している場合
することは、あなたは係数に閾値を使用して、いくつかの認識を行うことができますが、結果は少し不安定になります。 coeffsを使用するための本当の言い訳は、問題の単語がどのくらいの長さであるかを知る必要はないということです。私。あなたが見る同じ多項式2つの音素を単語に取り組み、5と1にすべきである(動作するはずです)
は、理論がいいと簡単です。音声認識を使用し、発言率と各単語の長さを測定し、FFTを使用して各単語のフレーズとピッチカーブ全体のピッチカーブを作成し、準備されたデータベースと入力を比較します。そして、感情が認識されたウォラ。
しかし、どこに感情でマークされた単語のカーブを持つデータベースが見つかりますか。 たとえば、音素の数が異なる単語に対しては、各感情に対して少なくとも1つのピッチカーブが必要です。母音が母音で始まるか、母音で終わるかが重要であるか、または同じ感情を他の人が違うように伝えるかどうかは、曲線が同じ単語であっても重要です。
これでOKです。記録されたサンプルを見つけて曲線を作るか、またはcoeffを計算しますか?うーん、おそらくいくつかのドラマの録音。悪い考えではありませんが、実際の感情は自然な感情と同じではありません。
このようなことを機械に教えることは大きな仕事です。
ああ、私はほとんど忘れています、感情だけでなく、時にはピッチの変化を使って転送されている、時にはそれは単語が発音されている方法です。
したがって、場合によっては、LPCや他のいくつかの係数が、単語の音素の音の仕方に関する情報を表示する必要があります。あるいは、興奮列車のピッチを表すものだけでなく、FFTから他の高調波を見る必要があります。
統計的なスピーチ(感情的に豊かな)モデルを開発するためにNLTK(自然言語ツールキット)を使用し、そこからアルゴリズムを使用することができます。問題の感情に到達しようとする。
しかし、私はそれがゼロから行くよりも大きな仕事になると恐れています。私の知る限り、NLTKは感情をサポートしていません。ちょうど通常の音声韻律。
感情に基づく音声モデルを開発し、感情認識をスフィンクスVRアルゴリズムに直接導入するために、私が書いたいくつかのものをスフィンクスに統合しようとするかもしれません。
本当に必要な場合は、独自のアルゴを作成するのに十分なDSPを学び、オーディオブック、ラジオドラマなどから(あなたが提供するツールを使用して)初期データベースを作成するように頼んでください。
あなたのアルゴが合理的にうまく動作した後、アルゴの間違った推測を修正するオプションをユーザに与えてオートアラーニングを実装します。しばらくすると、90%の信頼できるアルゴがスピーチからの感情を認識するようになります。
私はここでopenEAR iOSのものを見つけました。http://www.politepix.com/openears/tutorial/これはスピーチから感情を見つけるために機能しますか? – Stella
感情の分析と検出のためのiOS向けの音声/音声によるオープンソースはありますか教えてください。 – Stella