Обнаружение частей песни


9

Надеюсь, это не слишком субъективно ...

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

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

Но трудно, когда «части» пересекаются, как в большинстве музыки.

Трудно сказать, какая музыка наиболее подходит для такой системы. Я предполагаю, что большинство симфонической музыки в классическом стиле было бы легче всего обрабатывать.

Есть идеи, где искать исследования в этой области?


Я думаю, что есть приложение для iPhone для распознавания песни по записи фрагмента. И я думаю, что была статья, описывающая это приложение. Извините, у меня нет ссылок, но я бы начал с этого.
mpiktas

1
@mpiktas: вы, вероятно, имеете в виду такие приложения, как SoundHound или Shazam . Существует документ о том, как работает Shazam, хотя в нем не слишком много деталей. Хотя я не уверен, что это нужно ОП, это может быть хорошей отправной точкой.
Нико

Для хорошего, короткие сообщения в блоге на Shazam ( на основе, я считаю, на белой бумаге), вы также можете попробовать laplacian.wordpress.com/2009/01/10/how-shazam-works
raegtin

Ответы:


6

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

Попробуйте использовать преобразование Фурье для ваших данных, чтобы разбить их на наиболее заметные составляющие частоты, возможно, иерархически между различными подразделами. В частности, вы можете искать разные вещи в зависимости от того, как вы хотите сгруппировать «части» ваших данных.

  1. Самыми медленными колебаниями в вашей поп-музыке, вероятно, будут сдвиги между стихами и припевом и переходом к стихам (возможно, 0,75 колебаний в минуту?).

  2. Затем вы можете найти более высокие частоты колебаний среди ваших аккордов, то есть среди каждого полного такта вашей песни (возможно, около 6 колебаний в минуту?).

  3. Следующей наивысшей частотой, я думаю, будет полоса в такте (может быть, около 24 колебаний в минуту?), Внутри которого часто повторяется ритмичный паттерн и синкопирование текстов в поп / фолк музыке.

  4. Рассматривая кровавые подробности, затем вы найдете ритмы и ритмы, которые повторяются в каждом такте вашей музыки. Выбор и изоляция одного из них (возможно, при 148 колебаниях / ударах в минуту?), Вероятно, приведет к удару бас-барабана, удару колокольчика или чему-то в том же порядке.

  5. Где-то между ударами и тонами вы можете найти быстрые стилистические элементы вашей музыки, такие как выбор скорости / развертки на электрогитаре или быстрый вокальный ритм рэпа. (Я понятия не имею, как быстро они могут быть, но я бы предположил где-то порядка 1000 ударов в минуту или более).

  6. Наконец, быстро и, вероятно, наиболее сложно, являются элементами тона и тембра. Я знаю, что стандартная нота «А» стандартизирована и составляет 440 Гц, то есть 440 колебаний в секунду. Я уверен, что есть методы дифференциации, основанные на качестве звука и тембре, какие инструменты используются; Есть даже довольно хорошие алгоритмы обнаружения человеческого вокала. Однако, как я уже сказал, я не эксперт по обработке сигналов.


6

Музыка обычно описывается с использованием дескрипторов MPEG7 с некоторыми дополнительными вещами, такими как MFCC, рассчитанными на куски пьесы, сделанные с помощью некоторого подхода с движущимся окном (т.е. у вас есть некоторый размер окна и прыжок, начните с окна, помещенного в начало звука, вычислите дескрипторы в окне, затем переместите его путем прыжка и повторяйте, пока не будет достигнут конец).
Таким образом, кусок превращается в стол; в вашем случае это может быть использовано, чтобы применить некоторую кластеризацию к чанкам и таким образом обнаружить эти «части».


Теперь это больше похоже на это! Хороший технический ответ.
машина тоскует

5

Есть много разных методов и множество литературы по этой теме с самых разных точек зрения. Вот несколько основных моментов, которые могут быть хорошими отправными точками для вашего поиска.

Если ваш опыт более музыкальный, чем математический или вычислительный, вас могут заинтересовать работы Дэвида Коупа, большинство его опубликованных работ посвящено анализу произведений классической музыки, но у него есть частное предприятие, называемое рекомбинантным, которое кажется более общим. Во многих его работах музыка использовалась в качестве моделей языкового типа, но я полагаю, что, по крайней мере, некоторые из его последних работ больше сместились в сторону подхода, похожего на весь музыкальный геном . У него есть много программного обеспечения, доступного в Интернете , но оно, как правило, написано на Лиспе, и некоторые из них могут работать только в различных версиях ОС Apple, хотя некоторые должны работать в Linux или в любом другом месте, где можно запустить обычный lisp .

Анализ сигналов и музыки в целом был очень популярной проблемой в машинном обучении. Хорошее начальное освещение в текстах Кристофера Бишопа « Нейронные сети для распознавания образов и распознавания образов и машинного обучения» . Вот пример статьи MSc, которая имеет часть классификации музыки, но имеет хороший охват извлечения признаков, автор цитирует по крайней мере один из текстов Бишопа и несколько других источников. Он также рекомендует несколько источников для более актуальных работ по темам.

Книги, которые являются более математическими или статистическими (по крайней мере, по авторству, если не по содержанию):

Так как я упомянул Бишопа и вычислительную перспективу машинного обучения, я бы рассказал половину истории только в том случае, если бы я не предложил вам взглянуть на более свежие Элементы Статистического Обучения (которые доступны для бесплатной юридической загрузки) от Hastie Тибширани и Фридман. Я не помню, чтобы в этом тексте был конкретный пример обработки звука, но ряд описанных методов можно было бы адаптировать к этой проблеме.

Еще один текст, который стоит рассмотреть, - « Статистика музыковедения» Яна Берана . Это обеспечивает ряд статистических инструментов специально для анализа музыкальных произведений, а также имеет многочисленные ссылки.

Опять же, есть много других источников. Многое зависит от того, каков ваш опыт и какой подход к проблеме вам наиболее удобен. Надеюсь, что хотя бы кое-что из этого поможет вам в поиске ответа. Если вы расскажете нам больше о своем происхождении, дополнительных сведениях о проблеме или зададите вопрос в ответ на это сообщение, я уверен, что я или многие другие сотрудники здесь будут рады направить вас к более конкретной информации. Удачи!


4

Не очень хороший ответ, но есть два места для поиска:

Международное общество по поиску музыкальной информации опубликовало множество публикаций на эту тему, и поразительно, сколько там информации www.ismir.net

& Echo Nest (стартап с API для подобных вещей) echonest.com

ОБНОВЛЕНИЕ: они также выпустили некоторый открытый код для снятия отпечатков пальцев. http://echoprint.me/


0

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

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

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.