0

2 セットの楽曲を比較する必要があります (つまり、MIDI 形式で取得したノートの詳細を抽出してデータベース テーブルに保存したものと、XML 形式で取得した楽譜) を比較する必要があります。楽譜に対する演奏を評価する場合 (ピッチ、デュレーション、リズムなどのノートの詳細)、参照 (楽譜) ノートからの見逃し/余分な/間違った/交換されたノートを識別するために、ノートの配置を行う必要があります。

私は約 1800 から 2500 のノートを 1 つのピースに持っています (ポリフォニックではさらに多くなる可能性があります。今はモノフォニックでやっています)。これらすべてを配列に入れる必要がありますか?メモリの過負荷またはスタック オーバーフローでしょうか。

KMP、Boyce-Moore などの文字列一致アルゴリズムがあります。ただし、動的計画法を使用して音符を揃えることもできます。動的計画法を使用してこれにアプローチするにはどうすればよいですか? 利用可能なアルゴリズムは何ですか? おおよその文字列一致についてですか?

生産性が高いのはどのアプローチですか? Boyce-Moore のような文字列マッチング アルゴリズム、または動的プログラミング? どちらがより効果的かをどのように評価できますか?

洞察や提案を大歓迎します 事前に感謝します

4

1 に答える 1

1

興味深い質問です。この論文は、あなたが興味を持っていることの多くをカバーしていると思います。彼らは、エラーと音楽の調整の問題に取り組み、DP をソルバーとして使用してその結果について議論しています。彼らは、DPアプローチよりも優れていると主張する「高速近似マッチング」と呼ばれるアルゴリズムを導入しています。

検索で使用する主要な著者は Mongeau & Sankoff のようです。彼らのオリジナルの論文は、この分野で多くの作業を開始したようです。

きちんとしたもの。お役に立てれば。

于 2010-06-09T16:19:53.053 に答える