Sie sind auf Seite 1von 6

Algoritmos de estimación tiempo-frecuencia para

la transcripción de melodı́as monofónicas


empleando protocolo MIDI

Pablo R. D’Angelo1 , Francisco A. Dominguez2 , César A. Fuoco3 , Fernando G. Orge4 y Agustı́n M. Ortiz5
Departamento de Ingenierı́a Electrónica - Universidad Tecnológica Nacional - Facultad Regional Buenos Aires
Medrano 951 - Ciudad Autónoma de Buenos Aires - Argentina
1
pablod angelo@est.frba.utn.edu.ar 2 fdominguez@est.frba.utn.edu.ar 3 cesarfuoco@electron.frba.utn.edu.ar
4
forge@est.frba.utn.edu.ar 5 aortiz@est.frba.utn.edu.ar

Resumen—El presente trabajo propone una metodologı́a II. M ARCO T E ÓRICO


simple y eficaz para la detección y estimación de notas musicales
provenientes de la ejecución, en tiempo real, de instrumentos II-A. Protocolo MIDI
musicales de registro medio estándar. El procesamiento digital
involucra algoritmos de estimación tiempo-frecuencia para El protocolo MIDI es ampliamente utilizado en instrumen-
la determinación de las notas ejecutadas como ası́ también tos digitales como interfaz de control en estudios virtuales de
la capacidad de generar en forma autónoma la codificación edición de audio. El protocolo se limita a transmitir sólo infor-
necesaria para adecuar la información obtenida al protocolo mación de las notas ejecutadas y los eventos que caracterizan
MIDI, estándar ampliamente aceptado en la industria musical. su ejecución. A su vez, el archivo MIDI puede ser utilizado por
editores de partituras tanto libres como propietarios, para su
Abstract—This work propose a simple and effective posterior edición representando éste la partitura de la ejecución
methodology to detect and estimate musical tones, in real
que le dio origen.
time, from mid-register musical instrument executions. Digital
signal processing not only involves time-frequency estimation Si bien es sumamente amplio el conjunto de datos que
algorithms to establish the executed tones but the capability
ofrece el protocolo, en este trabajo, ası́ como en numerosas
to generate automatically the coding needed to adapt the
information to MIDI protocol, a widely accepted standard in aplicaciones, se hace uso de cuatro valores caracterı́sticos:
music industry.
Identificador de nota
Palabras clave—Audio digital, Protocolo MIDI, Transcripción Intensidad de la nota
musical, Estimación tonal
Notificación de comienzo
Canal de transmisión

I. I NTRODUCCI ÓN
II-B. Nociones de teorı́a musical
En la actualidad, un gran número de músicos, tanto profe- A los efectos del presente trabajo, los aspectos fundamen-
sionales como aficionados, no poseen la capacidad de escribir tales dentro de la teorı́a musical, de acuerdo con [2], se definen
sus obras. como:
Con la llegada de los sintetizadores, se ha desarrollado 1) Tempo: Indica la velocidad a la que se interpreta la
un protocolo unificado para la conexión entre instrumentos melodı́a. Se mide en negras, beats o pulsos por minuto (BPM
musicales electrónicos y computadoras, el protocolo MIDI [1]. o PPM), siendo la negra lo que se denomina unidad de tiempo.
Éste brinda, entre muchas otras facilidades, un lenguaje estan-
darizado para la escritura de piezas musicales. Sin embargo, 2) Compás: Es un conjunto de unidades de tiempo o
son pocas las herramientas que en la actualidad proveen al subconjunto de éste, en donde sólo la primera unidad de tiempo
músico que ejecuta instrumentos analógicos una practicidad está acentuada.
similar a este protocolo. 3) Figura: Indica la duración de cada nota en función del
tempo. Cada tipo de figura se representa por medio de un
Por tal motivo, este trabajo propone como solución a sı́mbolo diferente.
las problemáticas planteadas, la interpretación digital de la
información de instrumentos analógicos con el fin de obtener Resulta también de interés conocer la distribución de las
una partitura basada en el protocolo MIDI a partir de la notas musicales. Para la afinación estándar 12-TET A440 la
ejecución de una melodı́a. distribución se detalla en la tabla I.
Tabla I: ESCALA DE NOTAS MUSICALES 2) Resolución temporal: Para una determinada frecuencia
de muestreo f s y una hipotética distancia mı́nima ∆f entre
oc2 oc3 oc4 oc5 oc6 oc7 dos frecuencias adyacentes que deben ser discriminadas entre
do 65,41 130,81 261,63 523,25 1046,50 2093,00 sı́, se obtiene que el número de muestras a adquirir de la señal
do# 69,30 138,59 277,18 554,37 1108,73 2217,46 en estudio x[n] está dado por:
re 73,42 146,83 293,66 587,33 1174,66 2349,32
fs
re# 77,78 155,56 311,13 622,25 1244,51 2489,02 N= (5)
mi 82,41 164,81 329,63 659,26 1318,51 2637,02 ∆f
fa 87,31 174,61 349,23 698,46 1396,91 2793,83
fa# 92,50 185,00 369,99 739,99 1479,98 2959,96 II-D. Transformada a Q constante
sol 98,00 196,00 392,00 783,99 1567,98 3135,96
Al igual que la transformada de Fourier, ésta también puede
sol# 103,83 207,65 415,30 830,61 1661,22 3322,44
interpretarse en términos de un banco de filtros, sólo que a
la 110,00 220,00 440,00 880,00 1760,00 3520,00
116,54 233,08 466,16 932,33 1864,66 3729,31
diferencia de ella, éstos se encuentran espaciados geométrica-
la#
si 123,47 246,94 493,88 987,77 1975,53 3951,07
mente ∆cq k = fk+1 − fk donde cada fk = f0 · 2
k/b
con b igual
al número de filtros por octava y f0 es la mı́nima frecuencia
de interés [6].
II-C. Transformada discreta de Fourier (DFT) La transformación está definida por:
La trasformada discreta de Fourier tiene por objetivo la
conversión de información contenida en dominio temporal Nk −1
1 X
al dominio de las frecuencias complejas, por medio de la X cq [k] = x[n] · e−j2πnQ/Nk (6)
Nk n=0
descomposición de una señal en tiempo discreto en una suma
finita de señales sinusoidales de tiempo discreto [3], que donde Nk = Q · fs /fk representa el tamaño de la ventana de
conforman una base ortogonal en el espacio de frecuencias, de observación de la señal y se encuentra definido para k ≤ K−1,
forma análoga a como un vector dado puede descomponerse con K = b·log2 (fmax /f0 ), que representa el número máximo
en distintas bases ortogonales en un espacio de Rn . de frecuencias admisibles por la transformación a Q constante.
Sea una señal en tiempo discreto x[n], la DFT de ésta se Esta transformación presenta los siguientes inconvenientes:
obtiene según:
N −1 No conserva las propiedades de periodicidad y si-
metrı́a de la transformada discreta de Fourier.
X
X[k] = x[n]e−j(2πn/f s)·(kf s/N ) , k = 0, 1, ..., K−1 (1)
n=0 Nk no es constante, y en particular es muy elevado
donde N es el número de muestras de la señal x[n] y K la para las bajas frecuencias.
cantidad de puntos (bins) del espectro a calcular. En general
N = K por periodicidad de la transformación [4]. III. M ATERIALES Y M ÉTODOS
La ecuación (1) puede expresarse en forma matricial como: III-A. Estimación temporal
Xk = xn · WNnk (2) 1) Eventos sonoros: Para obtener la figura de una deter-
minada nota, es preciso poder establecer la presencia o no de
con xn  R1xN y WNkn  CN xK , siendo esta última la matriz la misma, lo cual sólo es posible si se es capaz de determinar
base de la trasformación: el momento en que la nota comienza. Para ello se propone
WNkn = e−j(2πn/f s)·(kf s/N ) (3) evaluar progresivamente el contenido energético de tramos de
audio de longitud constante L, a fin de obtener una adecuada
Se demuestra que producto de la simetrı́a de la matriz (3), resolución temporal.
puede simplificarse el cálculo dando lugar al algoritmo de
Transformada Rápida de Fourier o FFT [5], que reduce Para el análisis de dichos tramos resulta útil definir las
notablemente el número de operaciones respecto a la DFT. siguientes clases de eventos sonoros:

Ambas implementaciones presentan los mismos inconve- Evento Clase A: Ausencia de notas
nientes para el desarrollo de la metodologı́a de detección. Evento Clase B: Comienzo de una determinada nota
Estos son limitaciones conocidas e inherentes a los propios
algoritmos. A saber: Evento Clase C: Persistencia de una determinada nota
1) Resolución Espectral: Para una determinada frecuencia La distinción entre las diferentes clases de eventos sonoros
de muestreo f s y un determinado número de muestras N está determinada por la relación energética de los sucesivos
de la señal en estudio x[n], existe una restricción en la tramos de audio bajo estudio. Para clasificarlos se hace uso
representación espectral, por la cual no es posible representar del siguiente estimador energético:
una frecuencia arbitraria sino sólo aquellas que son múltiplos
de la resolución espectral, la cual está impuesta por la razón Ea − Ep
∆E
b, (7)
entre estos dos parámetros, es decir: Ea + Ep
fs donde Ea representa energı́a del tramo actual bajo estudio y
∆f = (4) Ep representa la energı́a del tramo previo.
N
Analisis temporal Algoritmo 1 Algoritmo de análisis temporal
2 Audio Entrada: Tramos de señal de longitud L
Duracion de la nota Salida: Captura temporal de la nota (señal de longitud N)
Salida: Figura de la nota
1.5
para todo Tramo de señal de longitud L hacer
Evaluar el tipo de evento sonoro
1 si Nota ha comenzado entonces
Almacenar tramo inicial de señal
Amplitud

fin si
0.5 si Nota persiste entonces
Concatenar los sucesivos tramos de señal
0 fin si
si Nota extinguida entonces
Calcular su duración
−0.5 fin si
fin para
−1 devolver Captura temporal de la nota
3 3.1 3.2 3.3 3.4 3.5 devolver Duración calculada
Muestra 5
x 10
Figura 1: Captura temporal de las notas ejecutadas
temporal es más gradual y su energı́a se encuentra mayormente
concentrada en determinadas frecuencias. Ası́ pues, la captura
temporal de la nota, para su posterior análisis espectral, debe
El comienzo y fin de una nota se encuentra ligado a estar sujeta a la parte armónica de la misma [7]. La figura 1
la variación de energı́a de los sucesivos tramos de audio ilustra esta situación.
en observación. Cuando la diferencia energética entre un
determinado tramo y su predecesor es positiva, se está en El algoritmo 1 exhibe los detalles del método de análisis
presencia del comienzo de una nota, mientras que cuando su temporal.
diferencia es negativa, es posible aseverar su extinción. Cuando
la diferencia energética es cercana a cero, se puede decir que la III-B. Estimación espectral
nota ejecutada está siendo sostenida, o bien que se ha detectado
un silencio. 1) Adaptación de DFT y la TQC para tonos de interés:
De las técnicas tradicionales de procesamiento de señales, DFT
En ausencia de señal de interés será inevitable detectar el (1) y TQC (6), se observa que
nivel medio de ruido del sistema y método de adquisición, el
cual deberá ser ignorado. Para ello se propone establecer un Para obtener una adecuada resolución espectral ∆f a
rango dinámico ηt que se define según: una determinada fS se requiere un elevado número
de muestras N, y por ende una elevada capacidad de
ηt , E0 · k (8)
almacenamiento, -N muestras temporales-.
siendo k una constante de escalamiento empı́rica y E0 la Producto del elevado número N de muestras que se
energı́a en ausencia de señal de interés, que se determina previo debe adquirir de la señal bajo estudio, se requiere de
al inicio de la ejecución de las notas. una elevada capacidad de memoria para almacenar los
Se comprueba empı́ricamente que la relación resultados en el espacio transformado, tras aplicar la
Transformada de Fourier, -N muestras espectrales-.
Ea
> 1,5 (9) La Transformada a Q constante permite reducir nota-
Ep
blemente el número de muestras del espacio transfor-
responde al comienzo de una nota, y a partir de dicha relación mado. Sin embargo la ventana temporal de observa-
y del nivel definido por la ecuación (8), se desprenden tres ción es de longitud variable, y en particular es muy
posibles estados: grande para frecuencias bajas.
1. Si ∆E b > 0,2 y Ea > ηt , se trata del comienzo de A partir de estas observaciones se propone
una nota.
2. Si previamente se detectó el comienzo de una nota y Utilizar la ley de generación de frecuencias de la
Ea > ηt , la nota persiste. Transformada a Q constante para la construcción de
3. Si Ea 6 ηt , la nota se ha extinguido. una nueva base de transformación que sólo contenga
las frecuencias de interés (ver tabla I) con el objetivo
2) Captura temporal de una nota: Generalmente, las notas de reducir el número de muestras resultantes en el
de los instrumentos contienen una parte percusiva y una parte espacio transformado.
armónica. La parte percusiva se caracteriza por tener un alto
contenido espectral de rápida extinción temporal, en tanto Reducir la ventana de observación a fin de reducir el
que la parte armónica se caracteriza porque su extinción número de muestras en el espacio temporal.
Algoritmo 2 Algoritmo de análisis espectral
Entrada: Señal obtenida tras el análisis temporal
Salida: Frecuencia fundamental
Calcular el nivel medio de ruido η
Localizar el máximo espectral absoluto
para i = 1 to cantidad de subarmónicos hacer
Localizar i-ésimo subarmónico del máximo espectral
Comparar i-ésimo subarmónico frente a η
fin para
devolver Menor subarmónico encontrado mayor que η
Figura 3: Esquema de generación de archivos MIDI.

Ası́ entonces, con las adaptaciones planteadas la transfor-


mación queda definida por: estimar adecuadamente la frecuencia de dicha nota será igual
N
X −1
k/b
a 0,1f s.
X[k] = x[n] · e−j(2πn/f s)·(2 f0 )
(10)
2) Frecuencia de la nota ejecutada: La determinación de
n=0
la frecuencia de la nota ejecutada se basa en la búsqueda
siendo f0 la frecuencia de la primera nota de interés (82,41 del máximo absoluto del espectro, ya que al tratarse de notas
Hz) y 21/b la relación de adyacencia entre frecuencias, que aisladas es posible asumir que dicho máximo se corresponde
para este caso es igual a 21/12 . con el i-ésimo armónico de la señal [8].
La base de transformación para (10) queda definida enton- La frecuencia de la nota ejecutada coincidirá con el
ces como k/b subarmónico de menor frecuencia del máximo localizado que
Wnk = e−j(2πn/f s)·(2 f0 ) (11) esté por encima del nivel medio de ruido espectral ηf , el cual
es utilizado para discriminar todos aquellos falsos positivos
Al comparar (3) con (11) se observa la siguiente analogı́a obtenidos en la búsqueda de los subarmónicos candidatos
kf s a la frecuencia de la nota ejecutada. La figura 2 ilustra la
←→ 2k/b f0 (12) situación en la que el máximo absoluto no se corresponde con
N la frecuencia fundamental de la nota.
a partir de la cual se puede concluir que el nuevo espacio
transformado guarda una relación exponencial, y no lineal, En el algoritmo 2 se expone con mayor detalle la metodo-
para las frecuencias. logı́a empleada.
El número de frecuencias admisibles en el nuevo espacio
III-C. Generación MIDI
transformado sólo queda determinado por la cantidad de notas
en la tabla I, contadas desde la frecuencia base f0 . Una vez obtenida la información (tiempo y frecuencia) de
las notas, se genera un archivo MIDI que contiene los valores
Si se supone que un músico aprendiz ejecuta, en promedio,
que simbolizan los datos estimados. El usuario debe informar
10 notas por segundo, el número de muestras N necesario para
el tempo y compás de ejecución. En la figura 3 se esquematiza
la generación del archivo MIDI.
Espectro armonico
Nota si2 = 123.4708 Hz III-D. Ensayos
1
Nivel de ruido A fin de poder evaluar la efectividad de los algoritmos fue
necesario contar con un set de señales para poder realizar los
0.8
ensayos pertinentes.
Dos músicos utilizaron sus instrumentos, Guitarra Squier
Stagemaster [9] y Piano Medeli M20 [10], para ejecutar seis
Amplitud

0.6 piezas musicales, que fueron cuidadosamente seleccionadas


para que éstas abarquen todo el registro de la guitarra y del
piano utilizados. En la figura 4 se aprecia el contenido espectral
0.4
de las piezas que conforman el set.
Las grabaciones se efectuaron, en condiciones controladas,
0.2 utilizando interfaces de audio comerciales, M-Audio M-Track
[11] y Focus Rite Scarlett 2i:2 [12], a una frecuencia de
muestreo de 22.050 Hz en base al estándar de audio [13].
0
0 200 400 600 800 1000
Frecuencia El set de señales consta de tres tramos de obras musicales
y tres fragmentos de la escala de Mi Mayor, ejecutadas en
Figura 2: Espectro correspondiente a la nota Si2 . distintas octavas. En la tabla II se detalla la cantidad de notas
ejecutadas en cada una de las piezas.
Tabla II: Set de señales de prueba Tabla III: Indicadores obtenidos
Grabación Notas ejecutadas Grabación Instrumento Nne Nnd Ncd Fp Fn
Canción A 73 Canción A Guitarra 73 71 71 0 2
Canción B 47 Piano 73 75 70 2 0
Canción C 24 Canción B Guitarra 47 47 47 0 0
Escala A 15 Piano 47 47 47 0 0
Escala B 15 Canción C Guitarra 24 25 24 1 0
Escala C 8 Piano 24 24 24 0 0
Escala A Guitarra 15 15 13 0 0
Total 182
Piano 15 16 13 1 0
Escala B Guitarra 15 15 13 0 0
Contenido espectral del set Piano 15 15 13 0 0
Escala C Guitarra 8 8 7 0 0
−3 Cancion A
x 10 Piano 8 8 7 0 0
Cancion B
6 Cancion C
Escala A
Tabla IV: Métricas obtenidas
Amplitud

4 Escala B
Escala C
Grabación Instrumento Precisión Detección Exactitud Energı́a
2
Canción A Guitarra 1,00 0,97 0,97 99,85 %
Piano 0,93 1,03 0,97 99,94 %
Guitarra 1,00 1,00 1,00 99,76 %
6 Canción B
Piano 1,00 1,00 1,00 99,97 %
5 Canción C Guitarra 0,96 1,04 0,96 99,99 %
Piano 1,00 1,00 1,00 99,97 %
4
Escala A Guitarra 0,87 1,00 1,00 99,94 %
3 Piano 0,81 1,07 0,94 99,27 %
Guitarra 0,87 1,00 1,00 99,98 %
2 Escala B
3000 Piano 0,87 1,00 1,00 99,96 %
1 2000 Escala C Guitarra 0,88 1,00 1,00 99,95 %
1000 Piano 0,88 1,00 1,00 99,95 %
0 Frecuencia

Figura 4: Contenido espectral del set de ensayos


Ası́ mismo, para medir la eficiencia de la variante propuesta
a las transformadas tradicionales, se cuantificó el uso de
memoria para los diferentes algoritmos, medido en muestras,
IV. R ESULTADOS como ası́ también el número de operaciones que éstas requie-
ran, en términos de sumas y productos.
La efectividad de los algoritmos expuestos a lo largo de
este trabajo se midió a partir de las siguientes tres métricas: Para la DFT se cuantificó el costo que se obtendrı́a al
calcularla de acuerdo con la ecuación (1), en tanto que para
Ncd la FFT se cuantificó considerando el uso del algoritmo de
P recisión = (13) decimación en tiempo radix-2. Por último para la TQC y
Nnd
Nnd la variante propuesta se cuantificó el costo en función de
Detección = (14) las ecuaciones (6) y (10) respectivamente. Los resultados se
Nne exhiben en la tabla V.
Nnd
Exactitud = (15)
Nnd + Fp + Fn
V. D ISCUSI ÓN
donde
De los resultados expuestos se concluye que los algoritmos
Ncd representa el número de notas correctamente detecta-
de estimación temporal y espectral presentan una elevada tasa
das (aciertos espectrales),
de acierto.
Nnd representa el número de notas detectadas (aciertos
temporales), Se obtuvo en promedio un 92 % para precisión, un 98 %
Nne representa el número de notas ejecutadas, para detección y un 98 % para exactitud, alcanzando un pro-
Fp representa el número de notas detectadas que no fueron medio general en torno al 96 %.
ejecutadas,
Fn representa el número de notas ejecutadas que no fueron El tamaño K del vector transformado no varı́a con la
detectadas. cantidad N de muestras temporales. La adaptación de las trans-
formadas DFT y TQC permite disminuir considerablemente
Los resultados obtenidos en los ensayos se exponen en las el uso de memoria, en particular hasta un 55 % frente a la
tablas III y IV. La columna Energı́a de la tabla IV indica transformada TQC, en lo que respecta al número de muestras
el porcentaje de energı́a que las piezas musicales contienen temporales a capturar para el estudio de señales. Ası́ mismo,
dentro de la banda de interés. el número de muestras del espacio transformado conserva las
Tabla V: Comparación de costo computacional económicos. Por otra parte, se evaluará también la factibilidad
del uso de técnicas más complejas, tales como la transformada
Ondita, sobre este tipo de plataformas.
DFT FFT Q CTE Adaptación
Se buscará hacer extensivo el método a otros instrumentos
Entradas
[muestras]
9.000 16.384 4.500 2.048 no contemplados en el presente trabajo, tales como otros ins-
Salidas trumentos melódicos y armónicos e instrumentos percusivos.
9.000 16.384 68 68
[muestras]
Este trabajo servirá también de puntapié inicial para elabo-
Sumas 80,991·106 229.376 78.533 139.196
rar un método general de transcripción musical que contemple
Productos 81·106 114.688 78.621 139.264 no sólo melodı́as, sino también armonı́as y ritmos.

R EFERENCIAS
propiedades de la transformada TQC siendo notablemente más [1] MIDI Association. [Online]. Available: https://midi.org/
pequeño que el número de muestras que emplea la DFT. [2] O. Karolyi, Introducción a la música. Madrid, España: Alianza
Editorial, 2006.
Pese a no conservar la propiedades de simetrı́a y periodi-
cidad de la Transformada Discreta de Fourier, el número de [3] E. da Silva, S. Netto, and P. Diniz, Digital Signal Processing - 2nd
Edition. Cambridge, United Kingdom: Cambridge University Press,
operaciones requeridas para calcular la transformación es com- 2010.
parable al requerido por la Transformada Rápida de Fourier. [4] R. Armentano and D. Craiem, Análisis de sistemas lineales. Buenos
El hecho de que dicho número sea mayor al requerido por la Aires, Argentina: Editorial CEIT, 2011.
Transformación a Q constante, no representa una limitación de [5] R. Lyons, Understanding Digital Signal Processing. New Jersey,
la metodologı́a expuesta. United States: Prentice Hall PTR, 2004.
[6] J. Brown, “Calculation of a constant q spectral transform,” 1991.
La posibilidad de modificar los parámetros f o y b en la
[7] D. FitzGerald, “Harmonic/percussive separation using median filtering,”
ecuación (10) permite cambiar la afinación de referencia y la 2010.
relación de adyacencia. [8] B. Kostek, Perception-Based Data Processing in Acoustics: Applica-
tions to Music Information Retrieval and Psychophysiology of Hearing.
El estimador energético (Ec. (7)) utilizado para la clasifica- Berlin, The Netherlands: Springer-Verlag, 2005.
ción de eventos sonoros, normaliza las diferencias energéticas, [9] Guitarra stagemaster. Squier. [Online]. Available:
otorgando versatilidad para su cálculo en procesadores digita- http://www.squierguitars.com/
les de señales. [10] Piano m20. Medeli. [Online]. Available: http://www.medeli.com.hk/
[11] Interfaz de audio m-track. M-Audio. [Online]. Available: http://www.m-
VI. T RABAJOS FUTUROS audio.com/
[12] Interfaz de audio scarlett 2i2. Focusrite. [Online]. Available:
Los esfuerzos por reducir el costo computacional de la https://us.focusrite.com/
metodologı́a - uso de memoria y cómputos -, servirán de base [13] C. Rouseeau and Y. Saint-Aubin, Mathematics and Technology. New
para su implementación en procesadores digitales de señales York, United States: Springer, 2008.

Das könnte Ihnen auch gefallen