Detectando partes de una canción


9

Esperemos que esto no sea demasiado subjetivo ...

Estoy buscando alguna dirección en los esfuerzos para detectar las diferentes "partes" de una canción, independientemente del estilo musical. No tengo idea de dónde buscar, pero confiando en el poder de los otros sitios de StackOverflow, pensé que alguien aquí podría ayudarme a señalar la dirección.

En términos más básicos, uno podría detectar diferentes partes de una canción simplemente agrupando patrones repetitivos consecutivos y llamándolos "parte". Tal vez eso no sea tan difícil: las computadoras son bastante buenas para detectar la repetición de una señal, incluso cuando hay una pequeña variación.

Pero es difícil cuando las "partes" se superponen, como lo hacen en la mayoría de la música.

Es difícil decir qué tipo de música sería más adecuada para este tipo de sistema. Supongo que la mayoría de la música sinfónica de estilo clásico sería más fácil de procesar.

¿Alguna idea de dónde buscar investigación en esta área?


Creo que hay una aplicación para iPhone para reconocer la canción de la grabación del fragmento. Y creo que hubo un artículo que describe esta aplicación. Lamento no tener enlaces, pero comenzaría con eso.
mpiktas

1
@mpiktas: probablemente te refieras a aplicaciones como SoundHound o Shazam . Hay un documento técnico sobre cómo funciona Shazam, aunque no entra demasiado en detalles. Aunque no estoy seguro de que eso sea lo que necesita el OP, puede ser un buen punto de partida.
nico

Para una buena y breve publicación de blog sobre Shazam (basada, creo, en el libro blanco), también puede probar laplacian.wordpress.com/2009/01/10/how-shazam-works
raegtin

Respuestas:


6

No soy un experto en procesamiento de señales, pero sé bastante sobre teoría de la música. Diría que, por el contrario, la música clásica probablemente sería una de las más difíciles de analizar mediante métodos matemáticos simples. Será mejor que comiences con algo más simple y más repetitivo, como la música pop o techno. Pop a menudo tiene un formato verso-coro-verso ... etc. que podría conducir a una versión simplista de sus objetivos.

Intente usar una Transformada de Fourier en sus datos para dividirla en sus frecuencias constituyentes más prominentes, tal vez jerárquicamente entre diferentes subsecciones. En particular, puede buscar diferentes cosas en función de cómo desea agrupar las "partes" de sus datos.

  1. Las oscilaciones más lentas en tu música pop probablemente serán los cambios entre verso y coro y volver al verso (¿tal vez 0,75 oscilaciones por minuto?).

  2. A continuación, puede encontrar oscilaciones de mayor frecuencia entre las progresiones de sus acordes, es decir, entre cada medida completa de su canción (¿tal vez alrededor de 6 oscilaciones por minuto?).

  3. La siguiente frecuencia más alta, creo, sería una barra dentro de una medida (¿tal vez unas 24 oscilaciones por minuto?) Dentro de la cual el patrón de rasgueo y la síncopa de las letras a menudo se repiten en la música pop / folk.

  4. Entrando en los detalles sangrientos, a continuación encontrará los ritmos y ritmos que se repiten dentro de cada compás de su música. Elegir y aislar uno de estos (¿quizás a 148 oscilaciones / latidos por minuto?) Probablemente produciría una patada de bombo, o un golpe de cencerro, o algo por el estilo similar.

  5. En algún lugar entre ritmos y tonos, es posible que encuentre elementos estilísticos rápidos de su música, como la selección de velocidad / barrido en una guitarra eléctrica o el ritmo rápido de rap vocal. (No tengo idea de lo rápido que podrían ser, pero supongo que en algún lugar del orden de 1000 latidos por minuto o más).

  6. Por último, rápidamente, y probablemente lo más complejo, son los elementos de tono y timbre. Sé que la nota "A media" está estandarizada para ser 440 Hz, es decir, 440 oscilaciones por SEGUNDO. Estoy seguro de que existen técnicas para diferenciar en función de la calidad tonal y el timbre de los tipos de instrumentos que se utilizan; Incluso hay algoritmos bastante buenos para detectar voces humanas. Sin embargo, como dije, no soy un experto en procesamiento de señales.


6

La música generalmente se describe usando descriptores MPEG7 con algunas cosas adicionales como MFCC calculadas en trozos de piezas hechas por un enfoque de ventana móvil (es decir, tiene un tamaño de ventana y salto, comience con la ventana colocada al comienzo del sonido, calcule descriptores en la ventana, luego muévalo por salto y repita hasta llegar al final).
De esta manera una pieza se transforma en una mesa; en su caso, se puede usar para aplicar algunos grupos en los trozos y así detectar esas "partes".


¡Ahora está mejor! Buena respuesta técnica.
máquina anhelando el

5

Hay muchos métodos diferentes y una gran cantidad de literatura sobre este tema desde una amplia variedad de perspectivas. Aquí hay algunos puntos destacados que podrían ser buenos puntos de partida para su búsqueda.

Si su experiencia es más musical que matemática o computacional, podría estar interesado en los trabajos de David Cope, la mayoría de sus trabajos publicados se centran en el análisis de piezas de música clásica, pero tiene una empresa privada llamada recombinante que parece más general. Gran parte de su trabajo utilizaba la música como modelos de tipo de lenguaje, pero creo que al menos parte de su trabajo más reciente se ha desplazado más hacia el enfoque genómico musical . Tiene una gran cantidad de software disponible en línea , pero generalmente está escrito en Lisp y algunos solo pueden ejecutarse en varias versiones del sistema operativo de Apple, aunque algunos deberían funcionar en Linux o en cualquier lugar donde pueda obtener un lisp común .

El análisis de señales y música en general ha sido un problema muy popular en el aprendizaje automático. Hay una buena cobertura de partida en el Christopher Bishop textos de Redes Neuronales de Reconocimiento de Patrones y reconocimiento de patrones y aprendizaje automático . Aquí hay un ejemplo de un artículo de maestría que tiene la parte de clasificación de música, pero tiene una buena cobertura en la extracción de características, que el autor cita al menos uno de los textos de Bishop y varias otras fuentes. También recomienda varias fuentes para documentos más actuales sobre los temas.

Libros que son más matemáticos o estadísticos (al menos por su autoría si no por su contenido):

Desde que mencioné a Bishop y la perspectiva computacional del aprendizaje automático, solo estaría contando la mitad de la historia si no le sugiero que eche un vistazo a los Elementos más recientes del aprendizaje estadístico (que está disponible para descarga legal gratuita) por Hastie , Tibshirani y Friedman. No recuerdo que haya específicamente un ejemplo de procesamiento de audio en este texto, pero varios de los métodos cubiertos podrían adaptarse a este problema.

Un texto más que vale la pena considerar es el de Estadística en Musicología de Jan Beran . Esto proporciona una serie de herramientas estadísticas específicamente para el análisis de obras musicales y también tiene numerosas referencias.

Nuevamente, hay muchas otras fuentes por ahí. Mucho de esto depende de cuál sea su experiencia y qué enfoque al problema le resulte más cómodo. Esperemos que al menos algo de esto lo guíe un poco en su búsqueda de una respuesta. Si nos cuenta más sobre sus antecedentes, detalles adicionales sobre el problema o hace una pregunta en respuesta a esta publicación, estoy seguro de que yo o muchos de los demás aquí estarán encantados de dirigirlo a información más específica. ¡La mejor de las suertes!


4

No es una gran respuesta, pero dos lugares para buscar investigación son:

La Sociedad Internacional para la Recuperación de Información Musical tiene toneladas de artículos publicados sobre este tema, sorprendente cuánta información hay en www.ismir.net

& Echo Nest (Un inicio con una API para hacer cosas similares) echonest.com

ACTUALIZACIÓN: también lanzaron un código de huellas digitales de código abierto. http://echoprint.me/


0

Estaba interesado en el problema similar. Aquí está la solución. No es una propuesta científica tan antigua que se llama trama de escape . Vea este artículo para más detalles (se ve bien).

Además, le recomendaría que visite también el sitio web del autor, ya que hay muchas aplicaciones similares de estadísticas en música. Al buscar otras fuentes similares, recomiendo usar el término Recuperación de información musical que incluye áreas similares.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.