長いタイトルのビットですが、私が尋ねようとしているのはこれです。ハッシュ関数は2つのデータストリーム(AとB)が与えられ、メッセージダイジェストを返します。メッセージダイジェスト自体の違いは、元のストリームの違いは?差分の大きさが元のメッセージの差異に比例するダイジェストを返すハッシュ関数はありますか?
たとえば、AとBは大きく異なり、h(A)= FA3DB31とh(B)= DA812DBです。 AとBがかなり似ている場合、h(A)= FA3DB31、h(B)= FB4DB42?
具体的には、2つの音楽ファイルを比較して、録音時に元のサンプリング設定が異なるにもかかわらず、同じ曲であるかどうかを判断することです。私は当初、十分な大きさのウィンドウで実行中の平均値を計算することができるかもしれないと考えましたが、異なるビットレートを扱うときに問題があるようです(同じビットレートに変換することはできません)。また、私はビート検出を行い、曲間のビートのシーケンスを比較するオプションがありません。
正しい用語を使用していくつかの結果が見つかりました(http://en.wikipedia.org/wiki/Acoustic_fingerprint)。私が遭遇したすべての方法は、(現在の携帯電話の仕様に限定されている)機能を抽出するのに非常にCPU集約的なようです。しかし、提案に感謝します。 (私はあなたの返信をupvoteだろうが、私は十分な評判がないように見える) – coderunner