Javaでwavファイルを読みたいので、K-meansで分類します。
Javaでwavファイルを読み取り、それらを配列などに割り当てて(アイデアを提案できます)、分類するにはどうすればよいですか?
編集: wavファイルの読み取りとK-meansにAPIを使用したいと思います。
公式のJava Sound Programmer Guide では、オーディオ ファイルの読み取りと書き込みについて説明しています。
A Greensted によるこの記事: Java での Wav ファイルの読み取りと書き込みが役立つはずです。WavFile クラスは非常に便利で、バッファリングされたフラグメントではなくデータ配列全体を返すように微調整できます。
javaxサウンドライブラリとFileInputStreamを使用してサウンドファイルを読み取り(ここで良い例を見つけました)、ウェーブファイルをビット(0,1)またはバイトのベクトルとして扱うことができます。マルチプルアラインメント(Wiki)を使用して、ビット/バイトのすべてのストリーム、そしてそこから、クラスタリングは単純である必要があります。
問題は、この方法はノイズなどに非常に敏感であるということですが、一見の価値があります...
matlab の wavread 関数と同等:
http://web.archive.org/web/20120531113946/http://www.builogic.com/java/javasound-read-write.html