Принцип работы программ для распознавания музыки заключается в цепочке преобразований, через которые проходит музыкальная композиция, прежде чем становится известна информация о её названии и исполнителе. moluch.ru
Некоторые этапы процесса:
- Захват звука и его дискретизация. moluch.ru Микрофон преобразует звуковые колебания в аналоговый электрический сигнал, который затем превращается в цифровой с помощью выборки значений амплитуд. moluch.ru habr.com
- Анализ частотных характеристик. moluch.ru Из всего множества частот выбирают важные, особого внимания требуют частоты с наибольшими амплитудами. moluch.ru С помощью интервалов для низких звуков удаётся распознать инструменты с низкой частотой звукоизвлечения, а с помощью средних и высоких — вокал и другие. moluch.ru
- Вычисление хэш-тегов. moluch.ru habr.com Для упрощения поиска нужного трека его сигнатуры используются как ключи в хэш-таблице. moluch.ru
- Сравнение полученной сигнатуры с теми, что хранятся в базе данных. moluch.ru Для этого используется «скользящее окно», или блок данных, и трансформируется часть сигнала, которая попадает в «окно». moluch.ru habr.com
- Сортировка записей с совпадениями. moluch.ru В конце процедуры сопоставления с базой данных записи, в которых нашлись совпадения, сортируются в убывающем порядке. moluch.ru Чем больше совпадений — тем выше вероятность рассчитать нужную композицию. moluch.ru
Современные технологии, такие как искусственный интеллект и машинное обучение, позволяют приложениям не только распознавать текущие треки, но и предсказывать, что пользователи могут захотеть послушать на основе их истории поиска. dzen.ru