Аудио сравнение с моделью - PullRequest
0 голосов
/ 22 апреля 2011

Я хочу иметь возможность решить следующую проблему в Java - так как это язык, на котором я наиболее опытен и мой предпочтительный выбор.

Я хочу иметь возможность создать модель звука - например, лай собаки, основанный, скажем, на 100 звуковых сэмплах разных собак, лающих ... Как только я получу этот образец, я хочу иметь возможность записать клип с микрофон и обработайте его по модели, чтобы определить вероятность того, что записанный образец достаточно близко соответствует модели, чтобы определить, был ли записанный звук собакой.

Я имел в виду следующее:

Получите Фурье-преобразования 100 собак.

Получите среднее значение FT из 100 - теперь это модель.

Запись аудиоклипа - генерация преобразования Фурье.

Вычтите звуковой клип FT из модели FT, чтобы увидеть, как они сравниваются?

Я не очень разбираюсь в аудио - поэтому, если кто-нибудь может сказать мне, если это правильный подход - какую библиотеку FFT использовать - и каков процесс создания среднего FT из 100 семплов - это было бы здорово!

Спасибо

1 Ответ

1 голос
/ 23 апреля 2011

Несмотря на то, что я читал о FT несколько раз, я никогда специально не использовал их сам.

Однако я использовал библиотеку CoMIRVA.Он реализует методы, основанные, среди прочего, на FT для сравнения музыки (www.cp.jku.at/comirva).Короче говоря, он сравнивает два «аудиоисточника» друг с другом, сравнивая тембр (http://en.wikipedia.org/wiki/Timbre). Когда я его использовал, в некоторых случаях он работал хорошо, а в других - не так хорошо. Однако это было с музыкой.Я понятия не имел, будет ли он работать с лаем собаки.

Я предлагаю вам взглянуть на него и прочитать больше о методах, которые он реализует. Более подробную информацию вы найдете под заголовком Обработка аудио. Я рекомендую вам прочитатьоба отчета (Мандель и Эллис, Aucouturier и Pachet).

Удачи!

...