Descargar

Reconocimiento de voz

Enviado por David


  1. Resumen
  2. Introducción
  3. Diseño y desarrollo del sistema
  4. Experimentación
  5. Conclusiones
  6. Bibliografía

Resumen

En este documento presentamos el proceso que se lleva a cabo para el procesamiento de voz, ya que en la actualidad muchos de los procesos se lo realizan mediante la voz o se trata de implementarlo debido a que una interacción entre el hombre y la maquina fuera mucho mejor si se lo realizara utilizando el medio de comunicación que es la voz. Además la voz no es otra cosa más que una señal que emitimos y que lleva información que luego será decodificada por el receptor, por tal motivo se debe realizar uno o varios procesos para que el mensaje que emitimos sea codificada y pueda ser recibida y comprendida en este caso por una maquina o cualquier aparato electrónico.

PALABRAS CLAVESProcesamiento y reconocimiento de voz.

Introducción

Todos los sistemas que trabajan procesando señales de voz necesitan una primera etapa en la cual segmentos consecutivos de la señal de voz son convertidos a secuencias temporales de vectores de parámetros, una manera de disminuir la cantidad de parámetros la parametrización se combina con técnicas discriminativas, las cuales tomas los parámetros que mayor información nos puedan proporcionar [1][2].

Cuando hablamos sobre un sistema que tenga la capacidad de procesar y reconocer el habla estamos hablando de un sistema SRHA, la señal que recibe debe pasar por un proceso de digitalización para obtener muestras las cuales permiten comprender el mensaje enviado para después ser procesado.[7]

Las etapas que debe pasar la señal para ser procesado son dos: entrenamiento y reconocimiento de las cuales la primera etapa es la más importante y critica a la vez ya a ella se deberá el éxito del proceso [3][5][10]. A continuación mostramos la secuencia que sigue el reconocimiento de voz:

edu.red

Diseño y desarrollo del sistema

  • A- Reconocimiento de palabras aisladas:

Para este tipo de reconocimiento es necesario que el emisor pronuncie las palabras de una forma pausada lo cual simplifica mucho el proceso de reconocimiento ya que se pueden detectar con facilidad las fronteras o intervalos de cada palabra, la siguiente figura ilustra de mejor manera el proceso que acabamos de mencionar [4][7]:

edu.red

Distancia: una de las características de los sistemas de reconocimiento es como las matrices son combinadas y comparadas son con los patrones de referencia para lograr esto se debe establecer una distancia entre los vectores característicos. El algoritmo utilizado para MATLAB es la distancia Euclidiana como se indica en la siguiente formula [1][2]:

Parametrización de las señales de voz: su objetivo es obtener la caracterización de la señal de ingreso (voz) en un conjunto de vectores que contengan toda la información discriminatoria.

Los coeficientes de Cepstrum en la escala MEL (MFCCs – MEL-frequency Cesptral Coefficients) demuestran un mejor rendimiento al momento de realizar la parametrización, para calcular los parametros MFCCs utilizamos la siguiente formula [4][5]:

  • B- La señal acústica:

Debido a que no existe un sistema que reconozca los movimientos de la boca el proceso para obtener la señal de ingreso se enfoca en analizar la voz misma, la voz no es más que una señal análoga es decir un flujo continuo de ondas sonoras y de silencios que juntas forman un lenguaje [5][6][10].

edu.red

Es necesario estudiar la ciencia de la acústica ya que de ella se derivan factores muy importantes para el reconocimiento efectivo de voz; estos factores son Frecuencias, Amplitud, Estructura armónica (tono vs ruido) y la resonancia [5].

Cuando hablamos de reconocer la señal de vos también debemos tomar en cuenta que el sistema serie mucho más eficaz si la maquina interactuara de igual manera con nosotros, a lo que nos referimos es que esta también debería emitir un mensaje que nosotros recibiríamos de manera audible, por este motivo existe un modelo clásico detracto vocal el cual está compuesto por un generador de pulsos y de ruido aleatorio. Este modelo presenta dos entradas las cuales dependerán del tipo de señal, por ejemplo para una señal sonora (vocales) la excitación es un tren de impulsos de frecuencia controlada caso contrario para señales no sonoras la excitación es simplemente ruido aleatorio. El siguiente esquema representa el modelo de producción de voz [2][6][9]:

edu.red

El espectro de frecuencias de la señal vocal se obtiene del producto de la transformada de Fourier (FT) de la excitación por la respuesta del filtro:

edu.red

  • D- Reconocimiento de voz con HMM

Las siglas HMM quieren decir Hidden Markov Models también conocido como modelo oculto de Markov, es la manera más popular y efectiva para el reconocimiento de voz y cuyo proceso se basa en la comparación de patrones tipo estocásticos, esto se debe a que posee algoritmos elegantes y eficientes tanto en entrenamiento como en reconocimiento.

Este modelo se lo utiliza por dos etapas la una para modelar palabras usando modelos acústicos y el otro para modelar el lenguaje que va a estar sujeto a las restricciones gramaticales.

Este modelo está formado por un conjunto de estados y transiciones predeterminados por un conjunto de parámetros [1][4][5].

  • E- Ruido

El ruido sigue presentando problemas a pesar de que en la actualidad se cuentan con poderosos algoritmos de reconocimiento de voz que trabajan adecuadamente eliminado el ruido de fondo pero la aplicaciones sufren alteraciones que bajan su rendimiento al enfrentarse a ambientes ruidosos. Por tal motivo existe el software AVSR que además de trabajar con los algoritmos presenta además una aplicación para las computadoras que les permite detectar el rostro de la persona y de igual manera los movimientos de la boca, de esta manera se logra un reconocimiento de la voz más precisa. Vale tener en cuenta que el detector de movimiento no funciona por sí solo [1][5].

Experimentación

Una vez que tenemos una idea más clara de lo que estamos tratando procedemos a realizar una pequeña práctica para esto utilizamos un software como apoyo que va a ser el MATLAB [1][9]:

Filtrado:

Con el software ya mencionado podemos obtener los parámetros característicos de un filtro, observar su respuesta en frecuencia, obtener sus coeficientes característicos y conocer su estabilidad:

edu.red

El filtro diseñado en MATLAB funciona con el siguiente código [1]:

edu.red

Detención y eliminación de los periodos de silencio de la señal:

Primero calculamos la energía de la señal, para esto se calcula el valor absoluto y con este el valor pico, la señal de ingreso la dividimos por el valor que obtuvimos para lograr independizar la forma de onda respecto a la intensidad de la señal.

La señal normalizada se la eleva al cuadrado y se la divide por el número de muestras de la señal [1].

edu.red

La siguiente imagen fue filtrada por el algoritmo de eliminación de silencio y nos quedó de la siguiente manera:

edu.red

Conclusiones

En conclusión podemos decir que si deseamos realizar un sistema que sea capaza de procesar señales de voz y ejecutarlos debemos tener en cuenta muchos parámetros como por ejemplo el ruido, el ambiente en el que estamos, la rapidez con la que hablamos va a tener mucha influencia al momento de captar la señal ya que si el algoritmo de reconocimiento no es eficiente al momento en el que nosotros diéramos una orden hablando rápidamente el sistema no respondería, el ruido es otro factor importante ya que los algoritmos pueden trabajar perfectamente eliminando el ruido pero al momento que se encuentran en ambientes en donde existe mucho ruido su eficiencia se ve afectada negativamente, por todo esto siempre se trata de implementar nuevas ideas para mejorar los algoritmos de reconocimiento y ya vimos el caso de que había software para las computadoras que aparte de procesar la voz tenía la capacidad de seguir los movimientos de la boca y de esta manera realizar un trabajo mucho más preciso y eficiente ya que las posibilidades de error son mucho menores.

Bibliografía

[1] Universidad Tecnológica Nacional Facultad Regional San Nicolas, Tecnicas Digitales III, reconocimiento de voz, 2008.

[2] Universidad Politecnica de Catalunya 08034 Barcelona, Esquema unificado de parametrización de la señal de voz en peconocimiento del habla, J Mendez, F. Vallverdu.

[3] Graduated: José Luis Oropeza Rodríguez

Centro de Investigación en Computación-IPN

[email protected]

Graduado en diciembre 15, 2006

Advisor: Sergio Suárez Guerra

Centro de Investigación en Computación-IPN

ssuare@cic,ipn,mx

[4] Autor: José Ignacio Puertas Tera

Director: Ramón García Gómez

Madrid 2.000

[5] Autor: Jorge Hierro Álvarez

Madrid, 28 de junio de 2004

[6] Implementación de un reconocedor de palabras aisladas

Dependiente del locutor

César San Martín S.1 Roberto Carrillo A.1

Recibido el 14 de julio de 2003, aceptado el 3 de mayo de 2004

[7] Universidad De Chile Facultad De Ciencias Físicas Y Matemáticas. Departamento Ingeniería Eléctrica.

[8] Rabiner, L. & Juang, B-H.. Speech Recognition by Machine, Chap. 47 in The Digital Signal Processing Handbook, CRC Press, IEEE Press, 1998.

[9] Rabiner, L. & Juang, B-H.. Fundamentals of Speech Recognition, Prentice Hall, N.J., 1993.

[10] PICONE, J.W.: «Signal Modeling Techniques in Speech Recognition», Proceedings of the IEEE  1993; 81 (Sept.): 1215-1247.

 

 

Autor:

Oscar David Sari Villa

UNIVERSIDAD POLITÉCNICA SALESIANA

Carrera de Ingeniería Electrónica Y Telecomunicaciones