Введение

Musipedia — это поисковая система для идентификации музыкальных произведений. Это можно сделать, насвистывая мелодию, играя её на виртуальной клавиатуре фортепиано, простукивая ритм на компьютерной клавиатуре или вводя код Парсонса. Любой желающий может изменять коллекцию мелодий и добавлять MIDI-файлы, растровые изображения нот (которые могут быть сгенерированы сервером Musipedia после ввода исходного кода LilyPond или abc), тексты песен или описания произведения, а также мелодические контуры в формате кода Парсонса. Некоторые функции сайта могут быть неработоспособны из-за использования технологии Flash, поддержка которой была прекращена в 2020 году.

Принципы поиска

Музипедия предлагает три способа поиска: по мелодическому контуру, по высоте звуков и времени их появления, или только по ритму. Для первых двух способов пользователи могут рисовать ноты, играть их на клавиатуре или вводить мелодию в виде ASCII-последовательности.

Мелодия

В поиске мелодических контуров используется расстояние редактирования. Благодаря этому, поисковая система находит не только записи с точно таким же контуром, как в запросе, но и наиболее похожие среди неидентичных контуров. Степень сходства измеряется количеством операций редактирования (вставки, удаления или замены элемента), необходимых для преобразования контура запроса в контур результата поиска. Поскольку важен только мелодический контур, можно находить мелодии, даже если неизвестны тональность, ритм или точные интервалы.

Высота и ритм

Поиск, основанный на высоте тона и времени начала, учитывает больше характеристик мелодии. Этот метод поиска, используемый по умолчанию, остаётся инвариантным к транспозиции и темпу, но при этом учитывает ритм и интервалы. Мелодию можно ввести разными способами, например, кликая по виртуальной клавиатуре на экране. Затем поисковая система сегментирует запрос, преобразует каждый сегмент в набор точек в двумерном пространстве, определяемом временем начала и высотой тона, и, используя расстояние перемещения Земли (Earth Mover's Distance), сравнивает каждый набор точек с предварительно вычисленными наборами точек, представляющими сегменты мелодий из базы данных. Как и при контурном поиске, незначительные изменения запроса приведут к пропорционально небольшим изменениям в результатах, что делает метод поиска в некоторой степени устойчивым к ошибкам.

Нажимая на ритм

Метод "запрос нажатием", учитывающий только ритм, использует тот же алгоритм, что и метод определения высоты тона и времени начала, но предполагает, что все высоты тона одинаковы. В результате, алгоритм может быть использован для запросов, содержащих только время начала. Этот метод поиска также очень удобен для людей с ограниченными возможностями или использующих очень маленькие устройства ввода.

Индексирование

Оба алгоритма поиска ускоряются благодаря индексам, основанным на опорных объектах. Вместо вычисления расстояния между запросом и каждой записью в базе данных, Musipedia вычисляет расстояние только между запросом и несколькими опорными объектами. Для каждого опорного объекта заранее известно расстояние до каждой записи в базе данных. Поскольку неравенство треугольника применимо как к расстоянию редактирования контуров, так и к варианту расстояния перемещения земли, используемому Musipedia, алгоритм поиска на втором этапе должен более детально рассматривать только те записи базы данных, расстояния от которых до опорных объектов схожи с расстояниями между запросом и опорными объектами.

Сравнения с другими инструментами аудиопоиска

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

История

Музипедия была основана Райнером Типке в 1997 году и с тех пор разрабатывается им. До добавления функций совместной работы, аналогичных Википедии (редактирование и удаление существующих записей стало возможным только с 2004 года), он называл этот музыкальный поисковик "Melodyhound". С 2006 года поисковая система Musipedia также может использоваться для поиска MIDI-файлов в сети Интернет (World Wide Web). Musipedia находит MIDI-файлы для своего поискового индекса, используя сервис Alexa Web Search, доступный с декабря 2005 года благодаря партнерству с Alexa.