Как работают программы распознавания музыки?

В частности, для андройда есть shazam. Получалось распознавать даже играющее фоном радио в столовой :)
Очень интересно, как это работает. Ясно, что есть некая база. Но что в этой базе храниться? Как убираются шумы?
  • Вопрос задан
  • 7880 просмотров
Пригласить эксперта
Ответы на вопрос 2
@Keane
Вот, здесь доступно описан алгоритм (англ.) http://laplacian.wordpress.com/2009/01/10/how-shazam-works/
Ответ написан
Комментировать
@Stasik0
Привет, точно я конечно сказать не могу, но скорее всего и используется трансформация Фурье (FFT), и соответствующий набор фильтров. Фильтры срезают шумы выше и ниже каких-то уровней (ухо слышит где-то от 6 до 20000 герц, но я думаю срез они делают намного уже). Потом этот срез раскладывается через FFT. Можно себе это представить как разложение песни на частотные компоненты. Много баса — коэффициенты нижних частот будут выше. Много высоких звуков (hi-hat) — верхние компоненты будут выше. Получается отпечаток песни. Когда ты загружаешь туда свою запись с айфона сервер пытается подыскать самый похожий отпечаток.
Там наверняка тренируются алгоритмы AI и дата-майнинга чтобы искать наиболее эффективнее. Простейший пример это искусственная нейронная сеть (всё есть в вики).
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы