問題タブ [mfcc]
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.
algorithm - メル周波数ケプストラム係数はどのように機能しますか?
私はすでにマイクの入力からリアルタイムで計算されたFFTとピッチ+絶対周波数を持っています。次に、音色を計算します。
Mel Frequency Cepstrum Coefficients - MFCCs を見ましたが、よくわかりませんでした。誰かがこれに関するヒントを教えてもらえますか..
java - MFCC アルゴリズムの三角形のウィンドウを生成する方法とその使用方法は?
JavaでMFCCアルゴリズムを実装しています。
ここにサンプル コードがあります: Matlab のhttp://www.ee.columbia.edu/~dpwe/muscontent/practical/mfcc.m 。ただし、メル フィルター バンキング プロセスにはいくつか問題があります。三角形のウィンドウを生成する方法とその使用方法は?
PS1: MFCC について説明している部分がある記事: http://arxiv.org/pdf/1003.4083
PS2:基本的に MFCC アルゴリズムの手順に関するドキュメントがあれば、それでよいでしょう。
PS3: 私の主な質問はそれに関連しています: Java Linear and Logarithmic Filters を使用した MFCC一部の実装では、線形フィルターと対数フィルターの両方を使用し、一部の実装では使用しません。そのフィルターとは何か、中心的な頻繁な概念とは何か。私はそのコードに従います: MFCC Java、そのコードの違いは何ですか: MFCC Matlab
java - Java 線形および対数フィルターを使用した MFCC
JavaでMFCCアルゴリズムを実装しています。Java に三角フィルターと MFCC のサンプル コードがあります。リンクは次のとおりです: MFCC Javaただし、Matlab で記述されたコードに従う必要があります: MFCC Matlab
私の質問は、Matlab コードでは線形フィルターと対数フィルターについて話しているということですが、Java コードではそれについて何もありません。対数フィルターと線形フィルターのパフォーマンスを測定する必要がありますが、その Java コードを実装しましたが、それについては何もありません。また、Java コードでこれらの fbin と cbin が何であるか理解できませんでしたか?
java - MFCCとBFCCの違いは何ですか?
MFCCアルゴリズムを実装しましたが、BFCCを実装したいと思います。それらの違いは何ですか?周波数から周波数への関数(2595 * Math.log10(1+周波数/700))とメルから周波数への関数(700 *(Math.pow(10、mel))の代わりに別の関数を使用するだけで十分です/ 2595)-1))私はそのコードに従います:MFCC
PS:三角フィルターのコードを変更する必要がありますか?
signal-processing - ある MFCC タイプから別のタイプへの変換 - HTK
HTK
ワード スポッティング タスクでツールキットを使用していますが、従来のトレーニング データとテスト データの不一致があります。トレーニング データは、「クリーンな」(マイク経由で録音された) データのみで構成されていました。データはパラメーターに変換さMFCC_E_D_A
れ、HMM (電話レベル) によってモデル化されました。私のテスト データは、固定電話と携帯電話のチャネルで記録されています (歪みなどを招きます)。MFCC_E_D_A
パラメータを使用すると、HVite
出力が正しくなくなります。cepstral mean normalization
パラメーターを使用したいのですがMFCC_E_D_A_Z
、HMM はこのデータでモデル化されていないため、あまり役に立ちません。私の質問は次のとおりです。
- に変換する
MFCC_E_D_A_Z
方法はありますMFCC_E_D_A
か? そのように私はこのように従います:input -> MFCC_E_D_A_Z -> MFCC_E_D_A -> HMM log likelihood computation
. MFCC_E_D_A
パラメーターをモデル化する既存の HMM を に変換する方法はありますMFCC_E_D_A_Z
か?
上記の (1) を行う方法がある場合、構成ファイルはHCopy
どのようになりますか? HCopy
変換用に次の構成ファイルを作成しました。
SOURCEFORMAT = MFCC_E_D_A_Z
TARGETKIND = MFCC_E_D_A
TARGETRATE = 100000.0
SAVECOMPRESSED = T
SAVEWITHCRC = T
WINDOWSIZE = 250000.0
USEHAMMING = T
PREEMCOEF = 0.97
NUMCHANS = 26
CEPLIFTER = 22
NUMCEPS = 12
ENORMALISE = T
これは動作しません。どうすればこれを改善できますか?
matlab - 2 つのシリーズの Mfcc 係数のマッチング
同じ音声コンテンツからなる 2 つの約 30 秒のオーディオ ファイルから 2 つの系列 MFCC 係数を抽出しました。オーディオ ファイルは、異なるソースから同じ場所に録音されます。オーディオに同じ会話が含まれているか、別の会話が含まれているかを推定する必要があります。現在、2 つの Mfcc シリーズの相関計算をテストしましたが、結果はあまり妥当ではありません。このシナリオのベスト プラクティスはありますか?
audio - 音響的類似性を判断する方法 (フィンガープリンティングは除く)
異なる曲の間で何らかの音響的類似性を判断するために実際に機能する方法を探しています。
私がこれまでに見た方法 (MFCC など) のほとんどは、実際には同一の曲のみを見つけることを目的としているようです (つまり、推奨ではなく音楽認識のためのフィンガープリンティング)。ほとんどのレコメンデーション システムは、ネットワーク データ (一緒に聴いた曲) とタグで動作するようです。
ほとんどの Mpeg-7 オーディオ ディスクリプタも、この方向に沿っているようです。さらに、それらのほとんどは「これとあれを抽出する」レベルで定義されていますが、これらの機能を実際に使用したり、曲の類似性を計算するために使用したりする人は誰もいないようです。類似アイテムの効率的な検索でも...
http://gjay.sourceforge.net/やhttp://imms.luminal.org/などのツールは、単純なスペクトル分析、ファイル システムの場所、タグに加えて、「色」や評価などのユーザー入力を手動で使用しているようです。ユーザーによって割り当てられた曲、または曲が再生されスキップされた頻度。
では、一般的な音楽コレクションの計算がかなり高速で、興味深いプレイリストの生成や類似の曲の検索に使用できるオーディオ機能はどれでしょうか? 理想的には、既存のプレイリストをフィードして、このプレイリストに一致する数の曲を取り出したいと考えています。
だから私は音響の類似性に本当に興味があって、識別やフィンガープリンティングにはあまり興味がない。実際には、結果から同じ曲を削除したいだけです。また、ハミングによるクエリも探していません。マイクすら付けていません。
ああ、私はオンライン サービスを探しているわけではありません。第一に、自分のすべてのデータを Apple などに送信したくない、第二に、所有している曲からのおすすめだけを取得したい (探索していないので、追加の音楽を今すぐ購入したくない)私の音楽のすべて. 私はまだすべての CD を mp3 に変換していません...) 第二に、私の音楽の好みは主流ではありません。システムが常に Maria Carey を推奨するのは望ましくありません。
さらに、もちろん、どのテクニックがうまく機能し、どのテクニックがうまくいかないのか、本当に興味があります.関連する文献や方法の推奨事項をありがとう.
c# - Bass Library を使用して libmfcc を C# に移植する
私は現在、FFT を計算して配列として返すことができるオーディオ分析用の Bass ライブラリを使用しています。libmfcc はこのデータを使用して、必要な MFCC 係数の値を計算します。(情報: MFCC はオーディオ スペクトルに似ていますが、人間の聴覚と周波数スケーリングの仕組みにより適合します) ベース ライブラリは 0 から 1 までの値を FFT 値として返します。
今、私はいくつかの問題と質問に遭遇しました:
- 彼らのFFTサンプルデータは異なるフォーマットを持っているようです.値は非常に高く、8192 FFT値の合計は10739.24になります.[/li]
- 彼らの例のアプリケーションでは、次のように関数を呼び出します。8192 個の値をロードしただけなのに、FFT 配列サイズとして 128 を使用するのはなぜですか?
- C# の構文/関数に一致するように少しコピーして編集した MFCC クラスを使用すると、一部の係数で負の値が得られますが、そうあるべきではないと思います。
なぜそれが負の値を返すのか、または私が間違ったことを誰かが助けてくれますか? 上記を実行し、デバッグに役立つ簡単なサンプル Ready to Try Program を作成しました。
リンク: http://www.xup.in/dl,17603935/MFCC_Test.rar/
私の C# アプリケーションからの出力 (正しくない可能性が高い)
Coeff 16 = 0,017919318626506 Coeff 17 = -0,155580763009355 Coeff 18 = -0,76072865841987 Coeff 19 = 0,108961510335727 Coeff 20 = 0,819025783804398 Coeff 21 = -0,660508603974514 Coeff 22 = -0,951623924906163 Coeff 23 = 0 ,424922129906254 Coeff 24 = 0,0129727009313168 Coeff 25 = -0,388796833267654 Coeff 26 = 0,270839393161931 Coeff 27 = -0,138515788828431 Coeff 28 = -0,454837674981149 Coeff 29 = -0,448629344922371 Coeff 30 = -0,11908663618393 Coeff 31 = 0,237500036702818 Coeff 32 = 0,114874386870208 Coeff 33 = -0,100822381384326 Coeff 34 = 0,144242143551012 Coeff 35 = 0,209338502838453 Coeff 36 = 0,247588420953066 Coeff 37 = -0,451654204112441 Coeff 38 = 0,0346927542067229 Coeff 39 = 0,180816031061584
彼らの例のFFTデータ(異なるフォーマット?)
14.524506 38.176063 10.673860 3.705076 2.102398 1.461585 1.145616 0.974108 0.878079 0.825304 0.798959 0.789067 0.789914 0.797102 0.808576 0.822048 0.836592 0.851101 0.864869 0.877625 0.888780 0.897852 0.905033 0.910054 0.912214 0.912414 0.909593 0.904497
c# - Mono for Android プロジェクトで使用するために libmpg123 をコンパイルするにはどうすればよいですか
私は Android 用の Mono での開発は初めてですが、それが私のプロジェクトのフレームワークとして最適な選択肢のようです。私が開発しているアプリケーションには、非常に高速なオーディオ処理が必要です。
- mp3ファイルをPCMに変換
- FFT を適用
- ファイルのMFCCを抽出
- さらに計算を行う
mp3 デコーダーは周波数ドメインで動作するため、デコーダーで再合成が行われる前に MFCC を抽出するのは非常に簡単で、PCM 信号に FFT を適用する必要がありません。そこで、mp3 ファイルのフレームの生データを取得するように mpg123 layer3.c ファイルを変更しました。
この変更したライブラリをモノプロジェクトで使用したいと思います。どのようにコンパイル (ARM 用にクロスコンパイル) し、そこからどのように使用するのですか?
mfcc - mfcc とダイナミック タイム ワーピング (dtw) を使用したサウンド分類
私の目的は、Java で mfcc と dtw を使用している非音声信号を分類することです。しかし、私は途中で立ち往生しています。助けていただければ幸いです。各フレームで 13 個の mfcc 値を評価しましたが、一部の値は負であり、従っているプロセスが正しいか間違っているか混乱しています。現在、JAudio が提供するコードを使用しています。他のコードも試してみましたが、負の値も得られます。
次に、特定の長さのサンプルに対して 157 フレームを考慮して、各フレームに対して 13 の係数を取得します。13 mfccs の 157 セットを取得します。dtw は 2 つの時報間の最も近い距離しか与えないため、DTW ですべての係数を使用する方法に苦労しています。2 つの時報を比較する DTW のコードがあります。信号のすべての mfccs 値を機能として使用する方法がわかりません。
私が見逃している分類の重要なステップはありますか? 私を助けてください。