19.A Camacho - Universidad de Costa Rica

Transcripción

19.A Camacho - Universidad de Costa Rica
Sobre el uso de modelos del sistema auditivo para mejorar el desempeño de un
algoritmo de estimación de altura ante señales de calidad telefónica
Arturo Camacho L.
Escuela de Ciencias de la Computación e Informática
Universidad de Costa Rica
[email protected]
Definición del problema
El problema a resolver es el de determinar la altura (musical) de una señal transmitida por
teléfono. La altura es la característica de un sonido que permite diferenciar entre uno agudo y
uno grave. Soluciones a este problema se han propuesto desde por lo menos hace cuarenta años.
Algunos enfoques han tratado de resolver el problema en el dominio del tiempo, de los cuales los
que utilizan la técnica de autocorrelación o semejantes han sido los más exitosos [1, 2, 3]. Otros
enfoques han tratado de resolverlo en el dominio de la frecuencia [4, 5], de los cuales uno de los
más exitosos ha sido SWIPE (por sus siglas en inglés), el cual estima la altura de una señal como la
frecuencia fundamental de la onda de diente de sierra cuyo espectro se asemeja más al de la señal.
A pesar de que el algoritmo da muy buenos resultados con señales de buena calidad, no ocurre lo
mismo con señales degradadas por transmisión telefónica (bajo el sistema tradicional, no Internet).
Estas señales se caracterizan por una ausencia total de energía por debajo de los 300 Hz, rango en el
que se encuentran la frecuencia fundamental y primeras armónicas de la voz humana. El problema
consiste entonces en mejorar el desempeño de SWIPE en señales telefónicas.
Justificación de la importancia
La importancia de este trabajo radica en las múltiples aplicaciones de la estimación de altura
en señales sonoras y en la gran cantidad de voz que es transmitida por el sistema telefónico. Una
de las aplicaciones en las que es más relevante la estimación de altura es la transcripción automática de música [6]. Otras aplicaciones que la usan, aunque en menor medida, son la codificación
de la voz [7] y la adquisición de una segunda lengua, especialmente de lenguas tonales [8]. Aunque no todas estas aplicaciones utilizan el sistema telefónico tradicional (excepto naturalmente la
codificación de la voz), el mejorar la estimación de la altura en señales telefónicas potencia su uso.
Metodología utilizada
El método desarrollado, denominado Aud-SWIPE (de SWIPE auditivo), consiste en agregar a
SWIPE una etapa previa de procesamiento de la señal, inspirada en el funcionamiento del sistema
1
auditivo, para recuperar armónicas que podrían estar ausentes en la señal. Esta idea se basa en un
análisis de Klapuri [9], quien mostró que el proceso no lineal realizado por el sistema auditivo
incorpora estas armónicas.
El primer paso consiste en aplanar la envolvente espectral de la señal. Para esto se utiliza un
filtro que emula la respuesta a la frecuencia del oído externo y el oído medio de los humanos.
El objetivo es lograr que armónicas consecutivas tengan aproximadamente la misma amplitud.
El segundo paso consiste en aislar grupos de armónicas consecutivas. Esto se logra mediante el
uso de un banco de filtros pasabanda que emula la respuesta de la cóclea (órgano más importante
del oído). El tercer paso es el más importante, ya que en él se generan las nuevas armónicas.
Esto se logra aplicando una rectificación de media onda a la salida de cada uno de los filtros. Un
problema de las armónicas generadas por este método, sin embargo, es que son exageradamente
fuertes, por lo que es necesario apaciguarlas. Como esto se logra más fácilmente en el dominio de
la frecuencia que en el dominio del tiempo (dominio en el que se realizaron los pasos anteriores),
se calcula el espectro de las salidas rectificadas de los filtros. Una peculiaridad de SWIPE que lo
diferencia de otros algoritmos es que el espectro no se calcula utilizando un tamaño de ventana
único, sino que se utilizan distintos tamaños de ventana para distintos candidatos a altura, más
precisamente, un tamaño de ventana por octava. El apaciguamiento de las armónicas se realiza
mediante un filtro que trunca los componentes que están por encima de las frecuencias centrales
de los filtros pasabanda y amortigua los componentes bajos. Luego se suman los espectros para
formar un espectro mejorado. Finalmente, se compara el espectro mejorado con un conjunto de
plantillas que emulan el espectro de ondas diente de sierra de distintas frecuencias, y se declara
la altura como la frecuencia correspondiente a la plantilla que se asemeja más al espectro de la
señal. Alternativamente, se utiliza un conjunto de plantillas cuyas armónicas correspondientes a
números compuestos (no primos) han sido removidas. Este enfoque fue utilizado en la propuesta
original de SWIPE, produciendo muy buenos resultados. A la variación del algoritmo que utiliza
estas plantillas se le denomina Aud-SWIPE0 .
Resultados
La eficacia de Aud-SWIPE(0 ) fue evaluada utilizando dos colecciones de datos de voces normales (la base de datos de Paul Bagshaw de la Universidad de Edinburgo [10], PB, y la de la
Universidad de Keele [11], KU), una de voces disfónicas (VD)1 y una de instrumentos musicales
(de la Universidad de Iowa)2 . Para simular la transmisión de estas señales por el sistema telefónico,
se les aplicó un filtro pasabandas que conserva solo los componentes en el rango de 300 a 3400 Hz.
Se exceptuó de este filtrado a la colección de instrumentos musicales debido a que la transmisión
de música por el sistema telefónico tradicional se consideró inusual. La altura de las voces de las
primeras dos colecciones fue estimada a partir de datos recolectados mediante un laringógrafo y
la altura de las dos últimas a partir de un análisis auditivo realizado por el autor de este trabajo.
El desempeño fue medido en términos de la tasa de errores gruesos, definidos como aquellos en
que la altura estimada por el algoritmo tiene una desviación mayor al 20 % con respecto a la altura
1
2
Producida por KayPentax, New Jersey.
Disponible en http://theremin.music.uiowa.edu.
2
Cuadro 1: Tasa de errores gruesos
(b) Instrumentos musicales
(a) Voz
Errores gruesos (%)
Algoritmo
Algoritmo
PB
KU
VD
Prom.
Aud-SWIPE0
RAPT
Aud-SWIPE
YIN
AC
SHS
SWIPE
SWIPE0
1,5
2,3
2,1
8,6
4,5
12
23
32
6,3
5,7
6
19
18
33
57
72
4,7
5,4
8,2
11
20
12
15
39
4,2
4,5
5,4
13
14
19
32
48
Aud-SWIPE0
Aud-SWIPE
SWIPE0
SWIPE
SHS
YIN
AC
Errores gruesos (%)
0,37
0,70
1,1
1,3
1,9
2,4
3,2
real.3 La eficiacia de Aud-SWIPE(0 ) fue comparada con la del SWIPE(0 ) original y otros algoritmos
ampliamente difundidos en la literatura: SHS [4],4 AC [1],4 RAPT [2]5 y YIN [3].6 Cabe aclarar
que RAPT no fue evaluado sobre instrumentos musicales porque la implementación utilizada no
permite establecer un rango de búsqueda para las alturas y el predefinido no cubre el de la colección.
Los resultados se muestran en el cuadro 1. El algoritmo que produjo la menor tasa de error
fue Aud-SWIPE0 , seguido de cerca por RAPT. Es importante notar sin embargo que el criterio de
selección de candidatos de RAPT usa interacciones complejas entre ventanas consecutivas de la
señal, lo que lo hace más sofisticado que la mayoría de otros algoritmos que utilizan solo información local para tomar decisiones. Cabe la posibilidad de que el uso de tales interacciones en otros
algoritmos, incluyendo Aud-SWIPE(0 ), pueda hacerlos mejorar sustancialmente. Sin embargo, la
exploración de tales técnicas está fuera del contexto de nuestro trabajo.
Investigación futura
Debido a que el espectro se calcula utilizando distintos tamaños de ventana, el costo computacional de SWIPE es sustancialmente más alto que el de otros algoritmos. Si a esto le agregamos el
costo de la etapa de procesamiento introducido, el costo computacional se vuelve enorme. Afortunadamente, algunas partes del algoritmo se pueden paralelizar, por lo que uno de nuestros planes es
implementar el algoritmo usando computación paralela. Otro plan es determinar la altura de fuentes
sonoras simultáneas. Esta es una tarea compleja, ya que al combinar fuentes sonoras, sus espectros
se suman, por lo que es difícil saber a cuál fuente corresponde cada componente de la señal.
3
Este es el estándar utilizado para medir el desempeño de estimadores de altura. Aunque a simple vista un umbral
del 20 % puede parecer demasiado generoso, considerando que los errores que suelen cometer los algoritmos de estimación de altura es estimarla como un múltiplo o submúltiplo de la altura real, la medida tiene sentido. Además, tal
permisividad es muchas veces necesaria en la práctica [5].
4
Parte del sistema Praat, disponible en http://www.fon.hum.uva.nl/praat.
5
Parte del Speech Filing System, disponible en http://www.phon.ucl.ac.uk/resource/sfs.
6
Facilitado por su autor.
3
Referencias
[1] P. Boersma. Accurate short-term analysis of the fundamental frequency and the harmonicsto-noise ratio of a sampled sound. En “Proceedings of the Institute of Phonetic Sciences”,
tomo 17, páginas 97–110 (1993).
[2] D. Talkin. A robust algorithm for pitch tracking (rapt). En W.B. Kleijn y K.K. Paliwal,
editores, “Speech Coding and Synthesis”, capítulo 14, páginas 495–518. Elsevier Science,
New York (1995).
[3] A. de Cheveigné y H. Kawahara. YIN, a fundamental frequency estimator for speech and
music. J. Acoust. Soc. Am. 111(4), 1917–1930 (2002).
[4] D. J. Hermes. Measurement of pitch by subharmonic summation. J. Acoust. Soc. Am. 83(1),
257–264 (1988).
[5] A. Camacho y J. G. Harris. A sawtooth waveform inspired pitch estimator for speech and
music. J. Acoust. Soc. Am. 124, 1638–1652 (2008).
[6] A. Klapuri y M. Davy, editores. “Signal Processing Methods for Music Transcription”. Springer, New York (2006).
[7] A. S. Spanias. Speech coding: a tutorial review. Proceedings of the IEEE 82(10), 1541 –1582
(1994).
[8] K. de Bot. Visual feedback of intonation I: Effectiveness and induced practice behavior.
Language and Speech 26(4), 331–350 (1983).
[9] A. Klapuri. Multipitch analysis of polyphonic music and speech signals using an auditory
model. IEEE Trans. Audio, Speech, Lang. Process. 16, 255–266 (2008).
[10] P. C. Bagshaw, S. M. Hiller y M. A. Jack. Enhanced pitch tracking and the processing of
f0 contours for computer aided intonation teaching. En “Proceedings of the Third European
Conference on Speech Communication and Technology”, páginas 1003–1006 (1993).
[11] F. Plante, G. Meyer y W. A. Ainsworth. A pitch extraction reference database. En “Proceedings of the Fourth European Conference on Speech Communication and Technology”,
páginas 837–840 (1995).
4

Documentos relacionados