Reconocer funciones matemáticas dentro de las canciones.

12

Soy nuevo en DSP y acabo de descubrir este StackExchange, así que me disculpo si este no es el lugar correcto para publicar esta pregunta.

¿Hay algún recurso que describa los géneros en términos más matemáticos? Por ejemplo, si realicé un FFT en la señal de esta sección de la canción (2:09 si el enlace no comienza allí), ¿hay alguna forma de que yo pueda detectar que esta sección tiene ese tipo aproximado? de sonido? ¿Los sonidos como este siguen alguna función matemática con la que puedo comparar? http://www.youtube.com/watch?v=SFu2DfPDGeU&feature=player_detailpage#t=130s (el enlace comienza a reproducir sonido de inmediato)

¿Es la única forma de utilizar técnicas de aprendizaje supervisado, o hay un enfoque diferente (que preferiblemente no requiere supervisión)?

Gracias por cualquier consejo.

XSL
fuente
Podrías usar un FFT para detectar un ritmo de batería contra una flauta, pero no para detectar el género. Cosas muy locales sobre el sonido, claro, pero no el carácter musical del archivo total.
Endolith
¿Es posible reconocer la "aspereza" del sonido? ¿Es aquí donde entran en juego los MFCC?
XSL

Respuestas:

10

Creo que la distinción que está buscando es más como empírica frente a teórica (en lugar de supervisada frente a no supervisada), pero podría estar equivocado al respecto. En otras palabras, lo ideal sería tener una definición teórica de varios géneros, en lugar de solo un montón de datos opacos que se pueden utilizar para clasificar una canción [sin una comprensión real].

Sin embargo, para la clasificación general de géneros, probablemente esté atrapado al menos con la capacitación de los ejemplos, incluso si solo crea las definiciones de géneros en primer lugar. Con respecto a su ejemplo, considere con qué frecuencia la gente discutirá [en YouTube] si una pista dada es realmente dubstep (por ejemplo, cualquier pista que sea más dudosa y menos tambaleante , a pesar de que el género comenzó sin ningún bamboleo real). Las personas definen géneros a lo largo del tiempo a través de ejemplos, por lo que es razonable esperar que los algoritmos que replican ese comportamiento también requieran algunos ejemplos. La forma en que las personas describen géneros es casi como un vector de características de todos modos, hacen una lista de preguntas sobre la canción (por ejemplo, ¿es más rompedora o tambaleante? ¿Tiene muchos subgraves? ¿Cuánto dura? ¿Cuál es el tempo? ¿Hay una voz? etc.).

Por supuesto, puede elegir una lista de características que también proporcionan una comprensión intuitiva del género. Una característica como "Rango dinámico" es algo que una persona también puede detectar por el oído, pero algo como "Cruces cero en el dominio del tiempo" no sería muy intuitivo, incluso si funciona bien para la clasificación. El siguiente documento tiene algunas características que pueden ser interesantes para usted:

George Tzanetakis, Perry R. Cook: clasificación de género musical de señales de audio. IEEE Transactions on Speech and Audio Processing 10 (5): enlace 293-302 (2002) .

Para medir la rugosidad, la rugosidad psicoacústica sería un buen lugar para comenzar, pero podría no ser suficiente para distinguir entre los cables dubstep y los cables eléctricos, por ejemplo. Para distinciones más finas, una cosa a tener en cuenta es el reconocimiento de timbres . La siguiente tesis tiene una encuesta decente de técnicas:

TH Park, "Hacia el reconocimiento automático de timbres de instrumentos musicales", Ph.D. disertación, Princeton University, NJ, 2004. enlace .

También hay un modelo relacionado con la rugosidad perceptiva en Timbre, Tuning, Spectrum y Scale que se utiliza para construir escalas personalizadas para timbres arbitrarios. La idea es que los armónicos que están muy juntos producen frecuencias de latido que se perciben como disonancia. Parafraseando de los Apéndices F y E ,

Ff1,f2,...,fn

DF=1/2 i=1n j=1n d(|fifj|min(fi,fj))

donde

d(x)=e3.5xe5.75x

es un modelo de la curva Plomp-Levelt .

Se usa para medir qué tan agradable es un acorde dado con respecto a un timbre (minimizando la disonancia). No sé si la aspereza de la variedad psicoacústica o la disonancia intrínseca serían muy fructíferas para sus propósitos por sí mismas, pero pueden ser útiles en combinación con otras métricas.

Probablemente tendrás más suerte al clasificar los timbres matemáticamente que los géneros. Por ejemplo, las cuerdas tienen armónicos pares e impares, pero un clarinete solo tiene armónicos impares (cf. Onda de diente de sierra , Onda cuadrada ). La oscilación de Dubstep tiende a hacerse con filtros controlados por LFO (paso bajo y / o filtros formantes), por lo que algo como Spectral Flux (ver [Tzanetakis], arriba) podría ser un buen punto de partida como característica. Sin embargo, dudo que alguien haya estudiado la clasificación matemática del bamboleo todavía;)

Datageist
fuente
2
Excelente respuesta de datageist. También sugeriría isophonics.net/QMVampPlugins si está buscando más información y una plataforma de desarrollo con código fuente
Dan Barry
@Dan Eso se ve increíble, gracias por ese enlace.
Datageist
¡He encontrado un nicho sujeto a estudio! : D Gracias por la brillante respuesta y enlaces. Me apuntó en una dirección en lugar de usar Google sin rumbo fijo.
XSL
Encantado de ayudar :)
datageist