UNIVERSIDAD NACIONAL DE TRUJILLO DEPARTAMENTO DE CIENCIAS FÍSICAS Y MATEMÁTICAS ESCUELA DE INFORMÁTICA

UNIVERSIDAD NACIONAL DE TRUJILLO ´ DEPARTAMENTO DE CIENCIAS F´ISICAS Y MATEMATICAS ´ ESCUELA DE INFORMATICA ´ DE CARACTER´ISTICAS EN EL EXTRACCION ˜ P

3 downloads 97 Views 3MB Size

Story Transcript

UNIVERSIDAD NACIONAL DE TRUJILLO ´ DEPARTAMENTO DE CIENCIAS F´ISICAS Y MATEMATICAS ´ ESCUELA DE INFORMATICA ´ DE CARACTER´ISTICAS EN EL EXTRACCION ˜ PROCESAMIENTO DIGITAL DE UNA SENAL PARA EL MEJORAMIENTO DEL RECONOCIMIENTO ´ AUTOMATICO DEL HABLA USANDO WAVELETS por Jorge Luis

Guevara D´ıaz

Juan Orlando Salazar Campos

Tesis presentada para obtener el t´ıtulo profesional de: ´ INGENIERO INFORMATICO Jurado de Tesis:

Carlos Castillo Diestra Msc. Sistemas de Informaci´on

Ronald Le´on Navarro Msc. Matem´atica Industrial

Ely Miguel Aguilar Msc. F´ısica

Trujillo, Per´ u Enero, 2007

RESUMEN

´ DE CARACTER´ISTICAS EN EL EXTRACCION ˜ PROCESAMIENTO DIGITAL DE UNA SENAL PARA EL MEJORAMIENTO DEL RECONOCIMIENTO ´ AUTOMATICO DEL HABLA USANDO WAVELETS por Jorge Luis Guevara D´ıaz

Juan Orlando Salazar Campos

La presente tesis, centra su investigaci´on en la extracci´on de caracter´ısticas de una se˜ nal de habla que ser´an los valores que mejor permitan representarla, los mejores valores de caracter´ısticas ser´an aquellos que contengan mayor informaci´on, esta informaci´on ser´a usada para hacer un reconocimiento autom´atico de la palabra hablada en el ordenador. El presente trabajo enfoca su investigaci´on en el Reconocimiento Autom´atico del Habla (Speech Recognition), cuyo amplio campo de investigaci´on abarca desde ´areas como procesamiento digital de se˜ nales, an´alisis y dise˜ no de algor´ıtmos, inteligencia artificial, matem´aticas, hasta ´areas como la ling¨ uistica, fonolog´ıa entre muchas otras. Nuestra investigaci´on se centra en el desarrollo de los algor´ıtmos correspondientes a la etapa del procesamiento digital de la se˜ nal de habla, haciendo un estudio de la

iii aplicaci´on de las wavelets en este campo, y compar´andolas con un an´alisis mediante la Trasformada de Fourier. El presente trabajo de investigaci´on brinda una t´ecnica alternativa en la extracci´on de caracter´ısticas en el proceso de Reconocimiento Autom´atico del Habla haciendo uso de las wavelets. Palabras clave:

Muestreo, Wavelets, cepstrum, Mel, Fourier, Dynamic Time

Warping, Procesamiento Digital de Se˜ nales.

Agradecimientos Agradecemos a nuestra familia y amigos por el apoyo y soporte brindado, a los profesores que nos inculcaron el deseo por la investigaci´on y la superaci´on, y a todos los que hicieron posible que esta tesis pudiera realizarse.

v

A nuestra familia y amigos.

INDICE

I

Resumen

ii

Agradecimientos

iv

Lista de Figuras

xi

Lista de Tablas

xix

Introducci´on

xxi

Marco Te´ orico

1 Sistemas Inform´ aticos del Lenguaje Hablado

1 2

Arquitectura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5

1.1.1

Reconocimiento Autom´atico del Habla . . . . . . . . . . . . .

5

1.1.2

S´ıntesis del Habla . . . . . . . . . . . . . . . . . . . . . . . . .

6

1.1.3

Entendimiento del Lenguaje Hablado . . . . . . . . . . . . . .

7

1.2

Trabajos Previos . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

9

1.3

Historia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

11

1.1

2 El Habla, Producci´ on y Percepci´ on

14

2.1

El Habla como Sonido . . . . . . . . . . . . . . . . . . . . . . . . . .

14

2.2

Producci´on del Habla . . . . . . . . . . . . . . . . . . . . . . . . . . .

16

2.3

Percepci´on del Habla . . . . . . . . . . . . . . . . . . . . . . . . . . .

17

vii 2.3.1

Fisiolog´ıa del O´ıdo . . . . . . . . . . . . . . . . . . . . . . . .

3 Procesamiento Digital de la Se˜ nal

19

22

3.1

Se˜ nales Digitales . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

22

3.2

Sistemas Digitales . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

24

3.3

Transformada de Fourier . . . . . . . . . . . . . . . . . . . . . . . . .

25

3.3.1

Transformada Discreta de Fourier . . . . . . . . . . . . . . . .

26

3.3.2

Complejidad Computacional de la Transformada Discreta de Fourier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

26

3.3.3

Transformada R´apida de Fourier . . . . . . . . . . . . . . . .

27

3.3.4

Algoritmo Radix-2 con Decimaci´on en Frecuencia y reordenamiento en la salida de bits mezclados . . . . . . . . . . . . .

3.3.5

3.4

3.5

28

Complejidad Computacional de la Transformada R´apida de Fourier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

32

Funci´on Ventana . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

34

3.4.1

Ventana Rectangular . . . . . . . . . . . . . . . . . . . . . . .

34

3.4.2

Ventana Generalizada Hamming . . . . . . . . . . . . . . . . .

35

Representaci´on de la Se˜ nal de Habla . . . . . . . . . . . . . . . . . .

36

3.5.1

Transformada Corta de Fourier . . . . . . . . . . . . . . . . .

36

3.5.2

Transformada Discreta del Coseno . . . . . . . . . . . . . . . .

38

3.5.3

Procesamiento Cepstral

39

. . . . . . . . . . . . . . . . . . . . .

viii 3.5.4

Extracci´on de caracter´ısticas basadas en la Trasformada de Fourier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

40

Coeficientes Cepstrales en Frecuencia Mel . . . . . . . . . . .

41

3.6

Muestreo de la Se˜ nal de Habla . . . . . . . . . . . . . . . . . . . . . .

44

3.7

Codificaci´on de la Se˜ nal de Habla . . . . . . . . . . . . . . . . . . . .

45

3.7.1

Codificadores Escalares de Forma de Onda . . . . . . . . . . .

46

3.7.2

Codificaci´on PCM . . . . . . . . . . . . . . . . . . . . . . . .

47

3.5.5

4 Wavelets

48

4.1

Introducci´on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

48

4.2

Transformada Wavelet . . . . . . . . . . . . . . . . . . . . . . . . . .

50

4.3

Transformada Wavelet Continua . . . . . . . . . . . . . . . . . . . . .

51

4.4

Comparaci´on de la Transformada de Fourier con la Transformada Wavelet 52

4.5

Transformada Wavelet Discreta . . . . . . . . . . . . . . . . . . . . .

55

4.5.1

Funci´on Escala . . . . . . . . . . . . . . . . . . . . . . . . . .

57

4.5.2

Funci´on Wavelet . . . . . . . . . . . . . . . . . . . . . . . . .

58

4.6

An´alisis Multiresoluci´on . . . . . . . . . . . . . . . . . . . . . . . . .

59

4.7

Filtro Pasa Banda . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

62

4.8

Codificaci´on de Subbanda . . . . . . . . . . . . . . . . . . . . . . . .

64

4.9

Complejidad Computacional de la Transformada Wavelet . . . . . . .

67

4.10 Wavelet Packets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

69

ix 5 T´ ecnicas para el Reconocimiento Autom´ atico del Habla

72

5.1

Redes Neuronales Artificiales . . . . . . . . . . . . . . . . . . . . . . .

72

5.2

Modelos Ocultos de Markov . . . . . . . . . . . . . . . . . . . . . . .

73

5.3

Dynamic Time Warping . . . . . . . . . . . . . . . . . . . . . . . . .

73

5.3.1

Distancia General Normalizada en el Tiempo . . . . . . . . . .

75

5.3.2

Restricciones de la Funci´on Warping . . . . . . . . . . . . . .

77

5.3.3

Coeficientes de Pesos . . . . . . . . . . . . . . . . . . . . . . .

80

5.3.4

Algoritmo PD-Matching . . . . . . . . . . . . . . . . . . . . .

82

6 Reconocimiento Autom´ atico del Habla utilizando Wavelets 6.1

6.2

87

Modelo propuesto para la Extracci´on de Caracter´ısticas basadas en las wavelets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

89

6.1.1

Wavelet de Haar . . . . . . . . . . . . . . . . . . . . . . . . .

91

6.1.2

Wavelet de Daubechies . . . . . . . . . . . . . . . . . . . . . .

92

6.1.3

Wavelet Coiflets

98

6.1.4

Obtenci´on de las Caracter´ısticas . . . . . . . . . . . . . . . . . 101

. . . . . . . . . . . . . . . . . . . . . . . . .

Modelo propuesto para la Extracci´on de Caracter´ısticas basadas en las wavelets packet Perceptual con Daubechies 4 . . . . . . . . . . . . . . 101 6.2.1

II

Obtenci´on de las Caracter´ısticas para las Wavelets Packet

M´ etodos

. . 103

108

x 7 M´ etodos y T´ ecnicas

109

7.1

Enfoque . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109

7.2

Hip´otesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109

7.3

Tipo de Investigaci´on . . . . . . . . . . . . . . . . . . . . . . . . . . . 109

7.4

Universo y Muestra . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109

7.5

Instrumentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110

7.6

Procedimiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110

7.7

M´etodos y procedimientos para la recolecci´on de datos . . . . . . . . 111

7.8

An´alisis estad´ısticos de los datos . . . . . . . . . . . . . . . . . . . . . 111

III

Resultados y An´ alisis

112

8 Resultados

113

9 An´ alisis

136

IV

Conclusiones

144

Conclusiones

145

Comentarios

150

Referencias Bibliogr´ aficas

154

Ap´endice

156

Lista de figuras

1.1

Arquitectura b´asica de un Sistema de Reconocimiento Autom´atico del Habla. Fuente : [Huang and Hon, 2001] . . . . . . . . . . . . . . . . .

1.2

7

Arquitectura b´asica de un Sistema de Conversi´on Texto-Habla. Fuente : [Huang and Hon, 2001] . . . . . . . . . . . . . . . . . . . . . . . . .

8

2.1

Diagrama del aparato fonador humano. . . . . . . . . . . . . . . . . .

18

2.2

Diagrama del sistema auditivo humano. Fuente : Microsoft Encarta 2006.

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

21

3.1

Representaci´on de un n´ umero complejo en el plano cartesiano. . . . .

24

3.2

En la parte superior se tiene la se˜ nal de habla en el dominio del tiempo. En la parte inferior se tiene la se˜ nal de habla en el dominio de la frecuencia. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

25

3.3

La mariposa Gentleman-Sande. . . . . . . . . . . . . . . . . . . . . .

31

3.4

La entrada x en el array a es sobreescrita por la salida mezclada X. .

31

3.5

Algoritmo Radix 2 . Fuente: [Chu and George, 2000] . . . . . . . . .

33

3.6

Ventana Rectangular en el dominio del tiempo y de la frecuencia. . .

35

3.7

Ventana Hamming en el dominio del tiempo y de la frecuencia. . . . .

36

xii 3.8

Comparaci´on en el dominio de la frecuencia entre la Ventana Rectangular y la Ventana Hamming. . . . . . . . . . . . . . . . . . . . . . .

37

Transformada Corta de Fourier. . . . . . . . . . . . . . . . . . . . . .

38

3.10 Modelo b´asico fuente-filtro para se˜ nales de habla. . . . . . . . . . . .

39

3.9

3.11 Coeficientes Cepstrales de la se˜ nal de habla, la parte baja corresponde al tracto vocal, la parte alta corresponde a la informaci´on provenientes de las cuerdas vocales. Fuente: Oppenheim . . . . . . . . . . . . . . .

40

3.12 Filtros triangulares usados en el c´alculo del Mel-Cepstrum. . . . . . .

42

3.13 Escala perceptual Mel comparada con la escala de frecuencias. . . . .

43

3.14 Muestreo de una se˜ nal de habla. . . . . . . . . . . . . . . . . . . . . .

45

4.1

Ventana Tiempo-Frecuencia para la Transformada de Fourier. Fuente: [Mallat, 1989] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4.2

Ventana Tiempo-Frecuencia para la Transformada Wavelet. Fuente: [Mallat, 1989] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4.3

56

Localizaci´on de las wavelets discretas en el dominio de la frecuencia, como resultado de escalar las wavelets en el domino del tiempo. . . .

4.5

54

Localizaci´on de las wavelets discretos en el espacio tiempo-escala en una malla di´adica. Fuente: [Mallat, 1989] . . . . . . . . . . . . . . . .

4.4

53

63

Funci´on escala en el dominio de la frecuencia y como ´esta es analizada por las wavelets. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

64

xiii 4.6

Banco de Filtros Iterativo. . . . . . . . . . . . . . . . . . . . . . . . .

65

4.7

Esquema del banco de filtros. . . . . . . . . . . . . . . . . . . . . . .

67

4.8

Implementaci´on del banco de filtros iterativo. . . . . . . . . . . . . .

68

4.9

´ Arbol de descomposici´on para el Wavelet Packet, cada nodo forma un espacio W. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

69

4.10 Wavelet Packet en profundidad 3, mejor cubrimiento de rango de frecuencias calculado con el Wavelet de Haar. . . . . . . . . . . . . . . .

70

4.11 Wavelet Packet en profundidad 3, mejor cubrimiento de rango de frecuencias calculado con el Wavelet de Daubechies. . . . . . . . . . . .

70

4.12 C´alculo de las Wavelets Packets mediante banco de filtros iterativo. .

71

5.1

Funci´on Warping y Ventana de Ajuste. Fuente: [Sakoe and Chiba, 1978] 77

5.2

Slope Constraint en Funci´on Warping. Fuente: [Sakoe and Chiba, 1978] 79

5.3

Coeficientes de pesos para la forma sim´etrica y la forma asim´etrica. Fuente: [Sakoe and Chiba, 1978] . . . . . . . . . . . . . . . . . . . . .

82

5.4

Diagrama de flujo del algoritmo PD-Matching. . . . . . . . . . . . . .

84

5.5

Algoritmos sim´etricos y asim´etricos con condici´on de Slope Constraint P = 0, 12 , 1, 2. Fuente: [Sakoe and Chiba, 1978] . . . . . . . . . . . . .

86

6.1

Muestreo de la se˜ nal anal´ogica para construir la se˜ nal digital. . . . . .

87

6.2

Obtenci´on de los segmentos con informaci´on de la se˜ nal de habla. . .

88

xiv 6.3

Funci´on escala φ y funci´on wavelet ψ de Haar. . . . . . . . . . . . . .

92

6.4

´ Arbol de descomposici´on para las wavelets de Haar . . . . . . . . . .

93

6.5

Se˜ nal de Habla correspondiente a los digitos 10001-90210-01803. . . .

93

6.6

Descompocici´on de la se˜ nal de habla correspondiente a la secuencia de digitos 10001-90210-01803, mediante las wavelets de Haar. . . . . . .

94

6.7

Funci´on escala φ y funci´on wavelet ψ Daubechies.. . . . . . . . . . . .

96

6.8

´ Arbol de descomposici´on para las wavelets de Daubechies 6

. . . . .

96

6.9

Se˜ nal de habla correspondiente a los digitos 10001-90210-01803. . . .

97

6.10 Descompocici´on de la se˜ nal de habla correspondiente a la secuencia de digitos 10001-90210-01803, mediante las wavelets de Daubechies 4 . .

97

6.11 Descompocici´on de la se˜ nal de habla correspondiente a la secuencia de digitos 10001-90210-01803, mediante las wavelets de Daubechies 6 . .

98

6.12 Funci´on escala φ y funci´on wavelet ψ de Coiflets. . . . . . . . . . . .

99

6.13 Se˜ nal de habla correspondiente a los digitos 10001-90210-01803. . . . 100 6.14 Descompocici´on de la se˜ nal de habla correspondiente a la secuencia de digitos 10001-90210-01803. mediante las wavelets Coiflet 6 . . . . . . 100 6.15 Equivalencias de Mel a Frecuencias . . . . . . . . . . . . . . . . . . . 102 6.16 Arbol de descompocici´on espacios de resoluci´on 12,13 y 14 . . . . . . 103 6.17 Arbol de descompocici´on espacios de resoluci´on 9,10 y 11 . . . . . . . 104 6.18 Arbol de descompocici´on espacios de resoluci´on 6,7 y 8 . . . . . . . . 105

xv 6.19 Arbol de descompocici´on espacios de resoluci´on 4 y 5 . . . . . . . . . 106 6.20 Arbol de descompocici´on espacios de resoluci´on 1, 2 y 3 . . . . . . . . 107 8.1

Distribuci´on de 900 palabras pronunciadas por 60 personas seg´ un su identificaci´on y no identificaci´on por la computadora con el m´etodo de Fourier y el m´etodo propuesto basado en las wavelets de Haar. Trujillo 2006. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114

8.2

Distribuci´on de 900 palabras pronunciadas por 60 personas seg´ un su identificaci´on y no identificaci´on por la computadora con el m´etodo de Fourier y el m´etodo propuesto basado en las wavelets de Daubechies 4. Trujillo 2006. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116

8.3

Distribuci´on de 900 palabras pronunciadas por 60 personas seg´ un su identificaci´on y no identificaci´on por la computadora con el m´etodo de Fourier y el m´etodo propuesto basado en las wavelets de Daubechies 6. Trujillo 2006. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117

8.4

Distribuci´on de 900 palabras pronunciadas por 60 personas seg´ un su identificaci´on y no identificaci´on por la computadora con el m´etodo de Fourier y el m´etodo propuesto basado en las wavelets de Coiflet 6. Trujillo 2006. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118

xvi 8.5

Distribuci´on de 900 palabras pronunciadas por 60 personas seg´ un su identificaci´on y no identificaci´on por la computadora con el m´etodo de Fourier y el m´etodo propuesto basado en las wavelets Packet Walsh. Trujillo 2006. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119

8.6

Distribuci´on de 900 palabras pronunciadas por 60 personas seg´ un su identificaci´on y no identificaci´on por la computadora con el m´etodo de Fourier y el m´etodo propuesto basado en las wavelets Packet Daubechies 4. Trujillo 2006. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120

8.7

Distribuci´on de 900 palabras pronunciadas por 60 personas seg´ un su identificaci´on y no identificaci´on por la computadora con el m´etodo de Fourier y el m´etodo propuesto basado en las wavelets packet Daubechies 6. Trujillo 2006. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121

8.8

Distribuci´on de 900 palabras pronunciadas por 60 personas seg´ un su identificaci´on y no identificaci´on por la computadora con el m´etodo de Fourier y el m´etodo propuesto basado en las wavelets packet Perceptual con Daubechies 4. Trujillo 2006. . . . . . . . . . . . . . . . . . . . . . 122

8.9

Distribuci´on de 900 palabras pronunciadas por 60 personas seg´ un su identificaci´on y no identificaci´on por la computadora con el m´etodo MFCC y el m´etodo propuesto basado en las wavelets de Haar. Trujillo 2006. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123

xvii 8.10 Distribuci´on de 900 palabras pronunciadas por 60 personas seg´ un su identificaci´on y no identificaci´on por la computadora con el m´etodo MFCC y el m´etodo propuesto basado en las wavelets de Daubechies 4. Trujillo 2006. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124 8.11 Distribuci´on de 900 palabras pronunciadas por 60 personas seg´ un su identificaci´on y no identificaci´on por la computadora con el m´etodo MFCC y el m´etodo propuesto basado en las wavelets de Daubechies 6. Trujillo 2006. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 8.12 Distribuci´on de 900 palabras pronunciadas por 60 personas seg´ un su identificaci´on y no identificaci´on por la computadora con el m´etodo MFCC y el m´etodo propuesto basado en las wavelets de Coiflet 6. Trujillo 2006. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127 8.13 Distribuci´on de 900 palabras pronunciadas por 60 personas seg´ un su identificaci´on y no identificaci´on por la computadora con el m´etodo MFCC y el m´etodo propuesto basado en las wavelets Packet Walsh. Trujillo 2006. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 8.14 Distribuci´on de 900 palabras pronunciadas por 60 personas seg´ un su identificaci´on y no identificaci´on por la computadora con el m´etodo MFCC y el m´etodo propuesto basado en las wavelets Packet Daubechies 4. Trujillo 2006. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129

xviii 8.15 Distribuci´on de 900 palabras pronunciadas por 60 personas seg´ un su identificaci´on y no identificaci´on por la computadora con el m´etodo MFCC y el m´etodo propuesto basado en las wavelets packet Daubechies 6. Trujillo 2006. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 8.16 Distribuci´on de 900 palabras pronunciadas por 60 personas seg´ un su identificaci´on y no identificaci´on por la computadora con el m´etodo MFCC y el m´etodo propuesto basado en las wavelets packet Perceptual con Daubechies 4. Trujillo 2006. . . . . . . . . . . . . . . . . . . . . . 131 9.1

Parte real e imaginaria de las Wavelets de Morlet . . . . . . . . . . . 151

9.2

Parte real de las Wavelets de Morlet en el dominio del tiempo y en el dominio de la frecuencia en 1D y 2D respectivamente . . . . . . . . . 151

0.3

Lorito graficando la Trasformada Discreta de Fourier de una se˜ nal de habla. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158

0.4

Lorito graficando el espectograma como paso previo para la extracci´on de caracter´ısitcas MFCC. . . . . . . . . . . . . . . . . . . . . . . . . . 159

0.5

Lorito mostrando resultados de reconocimiento por medio de las wavelets.160

0.6

Lorito graficando los coeficientes en diferentes espacios de resoluci´on de una se˜ nal de habla . . . . . . . . . . . . . . . . . . . . . . . . . . . 161

Lista de Tablas

1.1

Error humano es aproximadamente 5 veces menor que el error de las m´aquinas. Fuente : [Huang and Hon, 2001] . . . . . . . . . . . . . . .

2.1

Relaci´on entre atributos f´ısicos y perceptuales del sonido. Fuente : [Huang and Hon, 2001]

6.1

13

. . . . . . . . . . . . . . . . . . . . . . . . .

21

Rango aproximado de frecuencias en los espacios V y W para una frecuencia de muestreo igual a 16000Hz y un nivel de descomposici´on m = 7. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

8.1

91

Datos obtenidos utilizando la t´ecnica de DTW como reconocedor, con distancia Euclidiana y con Slope Constrain P=0. Se observa la mejor performance en las Wavelet Packet Perceptuales Daubechies 6, y la mas pobre en las Wavelet Haar . . . . . . . . . . . . . . . . . . . . . 132

8.2

Datos obtenidos utilizando la t´ecnica de DTW como reconocedor, con distancia Euclidiana y con Slope Constrain P=1. Se observa la mejor performance en las Wavelet Packet Perceptuales Daubechies 6, y la mas pobre en las Wavelet Haar . . . . . . . . . . . . . . . . . . . . . 133

xx 8.3

Datos obtenidos utilizando la t´ecnica de DTW como reconocedor, con distancia Chebyshev y con Slope Constrain P=0.Se observa la mejor performance en las Wavelet Packet Perceptuales Daubechies 6, y la mas pobre en las Wavelet Haar . . . . . . . . . . . . . . . . . . . . . 133

8.4

Datos obtenidos utilizando la t´ecnica de DTW como reconocedor, con distancia Chebyshev y con Slope Constrain P=1. Se observa la mejor performance en las Wavelet Packet Perceptuales Daubechies 6, y la mas pobre en las Wavelet Haar . . . . . . . . . . . . . . . . . . . . . 134

8.5

Tasa de reconocimiento de las palabras por m´etodo. . . . . . . . . . . 135

9.1

Datos obtenidos utilizando la t´ecnica de DTW como reconocedor, con distancia Chebyshev y con Slope Constrain P=1. Se observa la mejor performance en las Wavelet Continuos de Morlet . . . . . . . . . . . . 152

Introducci´ on La realidad problem´atica de los sistemas inform´aticos actuales de reconocimiento autom´atico del habla, donde est´a enfocada la mayor parte de la investigaci´on, son principalmente las ´areas del procesamiento digital de la se˜ nal de habla, donde los cient´ıficos de la computaci´on buscan mejores algoritmos para procesar y caracterizar adecuadamente la se˜ nal de habla digitalizada en una computadora y el ´area del reconocimiento donde se buscan tambi´en algoritmos y t´ecnicas para que la computadora pueda reconocer adecuadamente la palabra hablada. La presente tesis hace un estudio de la aplicaci´on de las wavelets en el procesamiento digital de la se˜ nal como una alternativa para la extracci´on de caracter´ısticas de una palabra dada; una de las t´ecnicas cl´asicas m´as robusta y usada frecuentemente por los reconocedores comerciales en la actualidad es la t´ecnica denominada Coeficientes Cepstrales en Frecuencia Mel, que en la etapa de an´alisis de las frecuencias presentes en la se˜ nal de habla, hace uso de la Transformada de Fourier cuya complejidad computacional para los algoritmos r´apidos conocidos es O(n log n) en el tama˜ no de la entrada de los datos. En consecuencia la presente investigaci´on se inicia plante´ando el siguiente problema: ¿El an´alisis de la se˜ nal digital de habla mediante wavelets, proporciona una t´ecnica alternativa, en la extracci´on de caracter´ısticas para el Reconocimiento Autom´atico

xxii del Habla por parte de un ordenador frente a un procesamiento digital de la se˜ nal mediante la Transformada de Fourier?. Pues conociendo que las wavelets tienen mejor localizaci´on tiempo-frecuencia en las se˜ nales (en este caso se˜ nales de habla) que la Transformada de Fourier y tambi´en la existencia de algoritmos r´apidos con complejidad computacional O(n), nos llev´o a plantearnos la siguiente hip´otesis de trabajo: El procesamiento digital de la se˜ nal del habla con wavelets nos proporciona una alternativa frente a un an´alisis de la se˜ nal mediante la Transformada de Fourier, mejorando el an´alisis del espectro, y disminuyendo la complejidad computacional en el an´alisis de la se˜ nal, como paso previo para la obtenci´on de vectores de caracter´ısticas en el reconocimiento autom´atico del habla por parte de un ordenador. Esto nos lleva a la siguiente pregunta: ¿Qu´e tan buenos ser´an los vectores de caracter´ısticas obtenidos usando wavelets frente a los m´etodos tradicionales?; el t´ermino bueno en este contexto significa que tengan informaci´on localizada de los cambios en la se˜ nal para distintos niveles de frecuencia, es decir, conocer que tanto aporta en la se˜ nal determinado nivel de frecuencia, en determinado tiempo. Para lograr comprobar si nuestra hip´otesis es verdadera, compararemos los vectores de caracter´ısticas obtenidos con wavelets, frente a los obtenidos con la Trasformada de Fourier, y utilizaremos un reconocedor com´ un en ambos casos. El mejoramiento del espectro se traduce como mejores tasas de reconocimiento;

xxiii se hace tambi´en una comparaci´on con unos de los m´etodos m´as robustos existentes actualmente para extracci´on de caracter´ısticas , el m´etodo MFCC. La presente tesis est´a organizada de la siguiente manera, se hace una breve introducci´on a los sistemas inform´aticos del lenguaje hablado, su arquitectura, algunos trabajos previos y una breve descripci´on hist´orica. Luego se describe el habla as´ı como algunas de sus propiedades f´ısicas para despu´es abordar el procesamiento digital de la se˜ nal, donde se muestran algunos conceptos previos aplicables a la extracci´on de caracter´ısticas de la se˜ nal de habla; se describe tambi´en la t´ecnica de los Coeficientes Cepstrales en Frecuencia Mel. Posteriormente se definen las wavelets. A continuaci´on se muestra el reconocedor basado en Dynamic Time Warping que fu´e utilizado para medir el desempe˜ no de nuestra t´ecnica basada en las wavelets frente a los Coeficientes Cepstrales en Frecuencia Mel. Finalmente se detalla el procedimiento para extraer caracter´ısticas de la se˜ nal de habla mediante wavelets, mostrando los resultados obtenidos y las conclusiones de la presente tesis. La contribuci´on que la presente tesis brinda es la t´ecnica de extracci´on de caracter´ısticas basadas en las wavelets, para la construcci´on de reconocedores de habla con menor costo computacional que pueden ser aplicados en diversos sistemas inform´aticos de nuestro medio, por ejemplo en diversas industrias; por este motivo las pruebas se hicieron con voces pertenecientes a personas de nuestra regi´on. Es as´ı como la ciencia es aplicada para crear tecnolog´ıa, en este caso la aplicaci´on de las

xxiv wavelets en sistemas inform´aticos de reconocimiento autom´atico del habla.

Los Autores.

1

Parte I Marco Te´ orico

Cap´ıtulo 1 Sistemas Inform´ aticos del Lenguaje Hablado Los seres humanos tenemos muchas formas de comunicarnos, pero la m´as dominante de todas es el habla, pues constituye la m´as importante manera de intercambiar informaci´on. Desde los tiempos primitivos hasta los tiempos modernos, con la aparici´on de ciertas tecnolog´ıas como el tel´efono, la radio, la televisi´on, las pel´ıculas; es notoria la importancia que tiene la palabra hablada en la sicolog´ıa humana. Si el habla es la principal forma de comunicaci´on de humano-humano, luego esto motiva a entender que tambi´en sea una buena y natural manera de tratar de entablar una comunicaci´on humano-m´aquina. Las computadoras actuales, nos ofrecen diversas Interf´aces Gr´aficas de Usuario, en las cuales por ejemplo los usuarios, pueden hacer click con el mouse o ejecutar un comando con el teclado. Actualmente muchos investigadores, buscan, la posibilidad de que las computadoras hablen, escuchen, entiendan, aprendan e inclusive vean; mostrando resultados prometedores, pero todav´ıa las computadoras actuales carecen de todas estas caracter´ısticas propiamente humanas. El habla puede constituir una interfaz natural entre los humanos y las m´aquinas por ser esta la manera mas natural como las personas nos comunicamos en la vida diaria, en el trabajo; ya existen muchas aplicaciones en las cuales las tecnolog´ıas del los Sistemas Inform´aticos del Lenguaje Hablado† han sido implantadas, como es el caso †

del ingl´es “Spoken Language System”

3 de celulares, algunas aplicaciones software para usuarios finales, software industrial y de aprendizaje. Un sistema inform´atico de lenguaje hablado, requiere algunos m´odulos como: un m´odulo de Reconocimiento Autom´atico del Habla que convierta las se˜ nales ac´ usticas provenientes del aparato fonador del hablante a texto, otro m´odulo de Entendimiento del Lenguaje Hablado que razone y extraiga el significado de manera coherente del texto generado por el m´odulo anterior, es decir sea capaz de interpretar el habla; y a la vez sea capaz de reunir el conocimiento necesario en un respectivo dominio para que a trav´es de ciertas reglas, la computadora pueda emitir informaci´on y generar una determinada acci´on y finalmente un m´odulo de S´ıntesis del Habla, por el cual la computadora tendr´a la capacidad de emitir sonidos, en este caso ser´a el lenguaje hablado de la forma mas natural posible, constituyendo de esta manera, una m´ınima interfaz con el usuario. Existen potencialmente dos clases de usuarios quienes se pueden beneficiar con la adopci´on del habla como una modalidad de control en paralelo con otras modalidades como el mouse, el teclado, pantallas digitales, joystick, etc. La primera clase de usuarios son los usuarios novatos, las funciones que son realmente simples deber´ıan ser accesibles como por ejemplo levantar o disminuir el volumen de los parlantes, bajo un software de control de escritorio, que conceptualmente es una simple operaci´on, en algunas Interfaces de Usuario actuales, requieren el abrir de una a varias ventanas

4 o men´ us, manipular sliders, cajas de texto y otros elementos; esto requiere alg´ un conocimiento de convenciones del sistema de interfaces y estructura, para usuarios novatos operaciones sencillas como levantar el volumen o apagar el ordenador, iniciar un determinado programa, etc. deben ser realizadas de la manera mas natural posible. Para usuarios expertos muchas veces las Interfaces Gr´aficas de Usuario constituyen un obst´aculo, muchas veces se requerir´a la utilizaci´on de las manos del usuario manipulando el teclado o el mouse, y que a la misma vez est´e en iteracci´on con comandos del sistema; por ejemplo un operador de un sistema de dise˜ no gr´afico para CAD/CAM, debe especificar un comando en cierto formato de texto, mientras lleva el puntero a cierta ´area de la pantalla. El habla cumple esas funciones de forma mucho m´as eficiente que el teclado o los clics del mouse, y se puede de cierta manera dise˜ nar un sistema con interfaces de usuario de forma multimodal, que incluya al habla para capturar aspectos din´amicos del usuario y del estado del sistema; por ejemplo en un entorno donde la parte visual no requiera distracciones y las manos est´en ocupadas manejando probablemente un veh´ıculo, el habla podr´ıa ser una interfaz entre el hombre y la m´aquina. Podemos tambi´en imaginar un entorno donde dos personas hablen diferente lenguaje, y exista un mecanismo para que las dos se entiendan sin problemas en tiempo real, este es un potencial escenario para una interfaz de lenguaje hablado, que podr´ıa tener un m´odulo de Reconocimiento Autom´atico del Habla, un m´odulo de s´ıntesis del habla y necesitar´ıamos un m´odulo muy sofisticado de entendimiento que

5 sea multiling¨ ue, si bien todo ello ahora es parte de la ciencia ficci´on, es una muestra de la importancia de las investigaciones en esta ´area y sus potenciales aplicaciones.

1.1

Arquitectura

El procesamiento del lenguaje hablado se refiere a la tecnolog´ıa comprometida con el Reconocimiento Autom´atico del Habla, S´ıntesis del Habla y Entendimiento del lenguaje Hablado. Un Sistema Inform´atico de Lenguaje Hablado tiene por lo menos uno de los tres m´odulos mencionados: un m´odulo de Reconocimiento Autom´atico del habla, que convierte el habla en palabras y las almacena en un ordenador, un m´odulo de S´ıntesis del Habla, que hace una conversi´on texto-habla y origina palabras habladas por el ordenador, y un m´odulo de Entendimiento del Lenguaje Hablado que convierte las palabras en acciones, asocia conocimiento, y que planifica en el sistema aquellas acciones. 1.1.1

Reconocimiento Autom´ atico del Habla

Las ventajas del Reconocimiento Autom´atico del Habla, como v´ıa de dar ordenes a los ordenadores son:

• Permite acceso remoto, al poder acceder a un ordenador usando la red telef´onica, que es la red de comunicaciones m´as extendida. • Permite la disminuci´on del tama˜ no de los paneles de control. Pi´ensese en el panel de un avi´on, cuantos conmutadores manuales podr´ıan suprimirse si se

6 utilizara la voz como forma de comunicaci´on con el sistema de control. • Permite movilidad, ya que la voz se puede enviar a distancia y ser recogida por un micr´ofono, por oposici´on a un teclado que no se puede mover de la mesa de trabajo. • Hace la comunicaci´on m´as r´apida y m´as agradable para los usuarios, ya que al ser la forma natural de comunicarse no se necesita ninguna habilidad especial. • Permite tener las manos libres para utilizarlas en alguna otra actividad, a la vez que se van dando ordenes por medio de la voz. La tecnolog´ıa del Reconocimiento Autom´atico del Habla es una actividad multidisciplinaria, en la que deben intervenir desde cient´ıficos de la computaci´on, ingenieros electr´onicos, programadores, hasta psic´ologos y ling¨ uistas. 1.1.2

S´ıntesis del Habla

Tambi´en llamada conversi´on Texto-Habla, puede verse como la tarea inversa del Reconocimiento Autom´atico del Habla, y el objetivo es generar sonidos por la computadora que se asemejen a la voz humana, a partir de un texto almacenado en el computador. Se debe tener en cuenta la entonaci´on de las frases cuando se pronuncian, las pausas entre estas, el orden y duraci´on natural de los sonidos y tratar con un n´ umero grande de palabras, convirti´endose en un problema no trivial.

7

Figura 1.1

Arquitectura b´asica de un Sistema de Reconocimiento Autom´atico del Habla. Fuente : [Huang and Hon, 2001]

Las investigaciones en el tema datan de la fecha de 1930, y hasta ahora, si bien es cierto se ha podido generar voz humana a trav´es programas de conversi´on TextoHabla para computadora, todav´ıa ´esta no llega a la calidad de la voz humana, pero existen muchas aplicaciones comerciales. 1.1.3

Entendimiento del Lenguaje Hablado

Un Sistema de Entendimiento del Lenguaje Hablado es necesario para interpretar las expresiones en determinado contexto y para llevar a cabo las acciones apropiadas; el conocimiento l´exico. sint´actico y sem´antico debe ser aplicado de manera que permita una interacci´on cooperativa entre varios niveles de conocimiento ac´ ustico,

8

Figura 1.2

Arquitectura b´asica de un Sistema de Conversi´on Texto-Habla. Fuente : [Huang and Hon, 2001]

fon´etico, ling¨ u´ıstico y conocimiento aplicativo para minimizar las incertidumbres. El conocimiento de las caracter´ısticas del vocabulario, los t´ıpicos patrones sint´acticos y las posibles acciones en un determinado contexto para la interpretaci´on de las expresiones de los usuarios y para la planificaci´on de la actividad del sistema, que es a su vez la parte vital de cualquier Sistema Inform´atico del Lenguaje Hablado.

9

1.2

Trabajos Previos

Actualmente existe mucha bibliograf´ıa en el campo de Reconocimiento Autom´atico del Habla (RAH) y en el Procesamiento Digital de Se˜ nales aplicable al RAH, en consecuencia existen muchas t´ecnicas para el RAH, pero a manera com´ un estas t´ecnicas encajan en un modelo de construcci´on m´ınimo, que es el siguiente: La etapa encargada del procesamiento digital de la se˜ nal de habla , que vendr´a a ser la encargado de capturar la se˜ nal anal´ogica de voz, digitalizarla, manipularla mediante diversos algoritmos y brindar un conjunto de coeficientes de caracter´ısticas que representen muy bien a una palabra dada, la complejidad de esta etapa est´a dada por la manera de como se obtiene los mejores coeficientes de caracter´ısticas, es decir los coeficientes que mejor representen a una palabra o fonema dado. Los vectores de caracter´ısticas resultantes de la etapa anterior son enviados al reconocedor que ser´a la etapa encargada de hacer una clasificaci´on del patr´on entrante, la dificultad existente en esta parte est´a dada por la complejidad de analizar los vectores de caracter´ısticas resultantes, pues se podr´ıa decir por ejemplo la palabra ”casa” en 1 segundo, y otra persona podr´ıa decir la misma palabra en 1.7 segundos y con un timbre de voz, tonalidad y volumen de voz diferente; adem´as la complejidad a˜ nadida, si se est´a tratando de reconocer el habla en una conversaci´on normal es encontrar donde empieza una palabra y donde termina, por ejemplo si se dice ”hola como estas” de manera cotidiana (sin pausas), en este contexto donde empieza y

10 donde termina una palabra no es muy obvio. Estos dos etapas son las m´as b´asicos, pues se puede a˜ nadir m´as etapas para mejorar la performance del sistema, como por ejemplo la etapa de modelado de lenguaje, que ser´a la encargada de brindar estructuras l´exicas, como palabras de diccionario, y hacer uso de la teor´ıa de lenguajes formales [Huang and Hon, 2001]; otra etapa de modelado ac´ ustico, encargada de establecer modelos de producci´on del habla y modelos de percepci´on del habla en los humanos; estos modelos son establecidos generalmente por aproximaciones mediante f´ormulas matem´aticas de los fen´omenos f´ısicos involucrados. Existen diversos trabajos realizados, en la etapa del procesamiento digital de la se˜ nal de habla pero que no involucra un an´alisis mediante Wavelets [Mantha, 1998],existe un trabajo a manera de introducci´on sobre la posible aplicaci´on de las wavelets en el RAH, [Aboufadel, 2001], los trabajos de Sarikaya, [Ruhi Sarikaya and Hansen, 2001], [Sarikaya and Hansen, 2000], son unos de los m´as importantes en lo que se refiere a la aplicaci´on de Wavelets en la etapa del procesamiento digital de la se˜ nal de habla, entre otros trabajos no menos importantes tenemos: [Beng, 2000], que hace uso de la transformada Wavelet en el reconocimiento de fonemas y el trabajo de, [M. Siafarikas, 2000], que hace uso de la aplicaci´on de Wavelets en el reconocimiento del hablante. En la etapa de reconocimiento uno de los trabajos m´as importantes es el trabajo de Sakoe and Chiba, [Sakoe and Chiba, 1978] que muestran un algoritmo optimizado para el reconocimiento de palabras haciendo uso de la programaci´on

11 din´amica.

1.3

Historia

A˜ nos 1940’s y 1950’s , procesamiento digital de la se˜ nal muy simple, se detectaba la energ´ıa en varios bandos de frecuencia, se introdujeron muchas ideas que son usados en los sistemas actuales de Reconocimiento Autom´atico del Habla como el entrenamiento estad´ıstico y el modelado del lenguaje, tambi´en los reconocedores ten´ıan un peque˜ no vocabulario como d´ıgitos, vocales, etc., generalmente los sistemas no se probaban con muchos hablantes (aproximadamente 10). 1970’s , un ambicioso proyecto para construir un sistema inform´atico que entienda y procese el habla fue iniciado por DARPA [Jelinek, 1998], la meta era integrar conocimiento acerca del habla, ling¨ u´ıstica e inteligencia artificial para desarrollar un Sistema Inform´atico del Lenguaje Hablado. Se desarroll´o un sistema inform´atico llamado Harpy que integraba todas las fuentes de conocimiento en redes de estado finito, que eran entrenadas estad´ısticamente. En estos a˜ nos crecen notoriamente m´etodos que hacen uso de la probabilidad y se entiende por Reconocimiento Autom´atico del Habla como buscar la palabra mas probable en una se˜ nal de audio, dada alguna informaci´on de su distribuci´on de probabilidad.

12 1980’s , modernos reconocedores son lanzados al mercado, los algoritmos desarrollados en este tiempo son usados todav´ıa en nuestros d´ıas como: modelos n-grams, mixturas gaussianas, modelos ocultos de Markov, decodificador Viterbi, etc. En 1984 es construido el primer sistema de dictado en tiempo real, por IBM. 1990’s , con el aumento del poder de c´omputo y capacidad de memoria de las computadoras existen avances en algoritmos de adaptaci´on, entrenamiento discriminativo; se desarrollan a la vez sistemas inform´aticos que reconoc´ıan palabras independientemente quien fuera el hablante, algunas aplicaciones fueron implantadas en empresas telef´onicas. 1995 , Dragon IBM lanza su producto que reconoc´ıa palabras aisladas dependiente del hablante, era un sistema que permit´ıa un dictado de un gran n´ umero de palabras. 1997 Dragon IBM lanza su sistema para dictado continuo. Actualidad , se espera que con el poder de c´omputo actual de las m´aquinas y las diversas investigaciones en el tema, se logre aumentar el desempe˜ no. Aplicaciones actuales van desde software para celulares, rob´otica hasta interfaces de voz para personas discapacitadas; desafortunadamente las comparaciones de error entre humanos y m´aquinas todav´ıa dan una amplio margen de diferencia, se espera lograr que ´este margen de diferencia disminuya en los pr´oximos a˜ nos.

13

Tarea Vocabulario Humanos D´ıgitos conectados 10 0.009% Letras del alfabeto 26 1% Habla espont´anea por tel´efono 2000 3.8% Tabla 1.1

M´aquinas 0.72% 5% 36.7%

Error humano es aproximadamente 5 veces menor que el error de las m´aquinas. Fuente : [Huang and Hon, 2001]

Cap´ıtulo 2 El Habla, Producci´ on y Percepci´ on El campo de estudio del Reconocimiento Autom´atico del habla por parte de un ordenador, ha sido y es abordado como un trabajo interdisciplinario entre cient´ıficos de la computaci´on y profesionales de otras ´areas en la b´ usqueda de algor´ıtmos para reconocimiento de patrones, gram´aticas regulares, analizadores l´exicos sint´acticos, etc.; estos algoritmos deben ser ´optimos por el elevado n´ umero de valores a tratar, es decir se debe buscar el mejor algoritmo que resuelva una situaci´on determinada en el menor tiempo posible y que a la vez consuma pocos recursos, es por eso que el dise˜ no y an´alisis de algoritmos se vuelve un pilar fundamental en este campo de investigaci´on, convirti´endose un trabajo interdisciplinario. A continuaci´on presentamos parte de la teor´ıa fundamental para el desarrollo de esta tesis.

2.1

El Habla como Sonido

El sonido es una onda que transporta su energ´ıa en forma paralela a su movimiento, est´a formada por compresiones y rarefacciones de mol´eculas de aire; cuando producimos un sonido, independientemente del tipo que sea, provocamos una perturbaci´on en las mol´eculas de aire, dicha perturbaci´on es captada por nuestros o´ıdos, que lo interpretan como un sonido en particular, en consecuencia el sonido tiene una doble

15 interpretaci´on, por una parte para los f´ısicos ser´a una perturbaci´on en las mol´eculas de aire, independientemente de la sensaci´on que producen; pero para los fisi´ologos ser´a sonido todo aquello que resulta audible por el sistema auditivo humano, entonces se tiene un punto de vista fisiol´ogico y f´ısico del sonido; en conclusi´on para esta tesis diremos que sonido es todo aquello que produce una perturbaci´on f´ısica en las mol´eculas de aire causando compresi´on y rarefacci´on, es decir un movimiento de vaiv´en en las mol´eculas medidas en su punto de origen, movimiento que es transmitido en forma de cadena a todas las dem´as mol´eculas de aire y que causan una sensaci´on auditiva en un determinado receptor. El habla es el sonido que emite el aparato fonador humano, pero no es cualquier sonido, si no que contiene adem´as informaci´on perteneciente a un determinado lenguaje o idioma. El sonido al tener un movimiento ondulatorio en las mol´eculas de aire originar´a un cambio de presi´on y una transmisi´on de energ´ıa en forma paralela al movimiento de ´estas. La velocidad del sonido a una temperatura de 0.6 grados cent´ıgrados es de 331.5 m/s. La cantidad de trabajo requerida para generar la energ´ıa est´a en funci´on del grado de desplazamiento de las mol´eculas de aire de su posici´on de reposo, este grado de desplazamiento es llamado amplitud de un sonido, el amplio rango de los valores de amplitud hace que ´esta se mida en una escala logar´ıtmica (decibeles), la escala decibel

16 es la comparaci´on entre dos sonidos:

10 log10

P1 . P2

(2.1)

Donde P1 y P2 son dos niveles de presi´on. La medida absoluta del nivel de presi´on de un sonido SP L, es una medida absoluta de la presi´on P del sonido en decibeles:

SP L(dB) = 20 log10

P . P0

(2.2)

Donde 0 dBSP L corresponde al umbral de audici´on del o´ıdo humano y que corresponde al valor de P0 = 0.0002 µBar para un tono de 1 Khz, por ejemplo un nivel de conversaci´on normal a 1.5 metros es de 3 dBSP L, y el sonido producido por un avi´on es de aproximadamente de 120 dBSP L.

2.2

Producci´ on del Habla

El aire que proviene de los pulmones hace vibrar las cuerdas vocales una y otra vez, durante el sonido del habla, luego se dir´a que el sonido es sonoro si las cuerdas oscilan una y otra vez, si los pliegues de las cuerdas vocales se encuentran demasiado flojos o demasiado tensos para vibrar peri´odicamente se dice que los sonidos son no sonoros, el lugar donde las cuerdas vocales vibran se llama glotis. Luego el aire pasa por el velo del paladar que act´ ua como una v´alvula, ac´a se producen sonidos como la ”m” y ”n”. El paladar duro act´ ua junto con la lengua para

17 formar sonidos de diversas consonantes, la lengua en diversas posiciones puede dar lugar a consonantes y vocales, los dientes tambi´en son juntados para la formaci´on de ciertas consonantes, finalmente la forma de disposici´on de los labios va a dar lugar a las vocales, si los labios son cerrados completamente dar´an lugar a ciertas consonantes como la ”p”, ”b”, ”m”. Los sonidos sonoros como las vocales tienen mayor energ´ıa que los no sonoros, los diversos timbres son formados por la forma en que la lengua y los labios son dispuestos, tambi´en la resonancia formada por la cavidad oral. Las cuerdas vocales vibran a raz´on de 30 Hz en un hombre adulto hasta 300Hz en un ni˜ no o una mujer La tasa de frecuencia de las cuerdas vocales ( abierto-cerrado ) en la laringe, va a llamarse frecuencia fundamental y diversos arm´onicos de alta frecuencia van a acompa˜ nar a esta frecuencia debido a las resonancias producidas por la cavidad oral. La frecuencia fundamental tambi´en contribuye m´as que cualquier otro factor para la percepci´on del tono (la ca´ıda y afloramiento semi-musical de tonos de voz) en el discurso.

2.3

Percepci´ on del Habla

Existen dos componentes en el sistema de percepci´on, los ´organos perif´ericos auditivos (o´ıdos) y el sistema del nervio auditivo (cerebro). En el o´ıdo es donde se procesa la informaci´on ac´ ustica y luego la informaci´on resultante es enviada al cerebro a trav´es del nervio auditivo para su procesamiento.

18

Figura 2.1

Diagrama del aparato fonador humano.

La manera en que los humanos captamos la informaci´on ac´ ustica por medio de los o´ıdos y como el cerebro procesa dicha informaci´on, inspira la construcci´on de modelos inform´aticos, el objetivo esta tesis es construir un modelo basado en la percepci´on del habla utilizando funciones matem´aticas llamadas wavelets, pues en el o´ıdo interno se produce una descomposici´on en frecuencias de la se˜ nal de una manera muy parecida al tratamiento con wavelets de una se˜ nal.

19 2.3.1

Fisiolog´ıa del O´ıdo

El o´ıdo esta dividido en tres partes: o´ıdo externo, o´ıdo medio y o´ıdo interno; el o´ıdo externo es el encargado de percibir y canalizar las se˜ nales ac´ usticas al interior del o´ıdo, tiene una funci´on receptora de se˜ nales y hace una normalizaci´on del sonido, es decir los sonidos con mucha amplitud los reduce y los sonidos con muy baja amplitud los incrementa, esto ayuda a que el o´ıdo escuche sonidos muy bajos y que ablande de alguna manera los sonidos fuertes [Bernal, 2000]; en el o´ıdo externo existe el pabell´on auricular que es el encargado de percibir los sonidos y dirigirlos hacia el conducto auditivo externo que tiene un tama˜ no de 25 a 30 mm, parte de su funci´on es la de proteger al o´ıdo externo, tiene adem´as una funci´on de resonancia, que es lo que permite en cierto modo el incremento de las se˜ nales d´ebiles, tambi´en es el encargado de producir cerumen para la lubricaci´on y protecci´on del o´ıdo. El o´ıdo medio tiene la funci´on de incrementar la percepci´on sonora, tiene una interface aire-liquido y es aqu´ı donde se encuentra el t´ımpano que tambi´en permite una amplificaci´on del sonido por su gran tama˜ no; cuando las presiones del aire var´ıan, hacen que el t´ımpano vibre, esta vibraci´on es comunicada a unos huesillos llamados martillo, estribo y yunque, que transmiten a su vez las vibraciones al o´ıdo interno; gracias al t´ımpano, el o´ıdo humano gana unos 25 a 30 Db de presi´on, tambi´en aten´ ua presiones muy fuertes, pues activa un mecanismo de freno que protegen las c´elulas ciliadas del o´ıdo interno.

20 En el o´ıdo interno se encuentra un conducto en forma de caracol llamado c´oclea, ´este contiene un liquido llamado perilinfa, que es estimulado por el movimiento proveniente del t´ımpano hacia los huesillos, este estimulo es llamado onda viajera y tiene una vibraci´on dependiendo de la frecuencia de estimulo, es decir, las frecuencias altas estimulan con mayor intensidad la parte basal de la c´oclea, que es la parte m´as amplia y contiene mayor cantidad de c´elulas ciliadas, aproximadamente unas 12000, las frecuencias mas graves estimulan mejor la parte m´as interna de la c´oclea que tiene menos c´elulas ciliadas, lo que ocurre all´ı, nos hace pensar que internamente el o´ıdo hace un an´alisis de la se˜ nal de entrada muy parecido al an´alisis con wavelets, teniendo m´as detalles para las altas frecuencias que para las bajas frecuencias. Finalmente ocurre una conversi´on de energ´ıa mec´anica a el´ectrica por medio de las c´elulas ciliadas, con el correspondiente env´ıo de la informaci´on a las redes neuronales del cerebro. Finalmente se puede decir que los atributos f´ısicos y los atributos perceptuales se pueden relacionar de la siguiente manera: La intensidad estar´a relacionada con la fuerza de sonido percibida, la frecuencia fundamental de una se˜ nal de voz estar´a en relaci´on con el tono percibido de una persona al momento de hablar y la forma espectral de una se˜ nal tendr´a relaci´on con el timbre percibido.

21

Figura 2.2

Diagrama del sistema auditivo humano. Fuente : Microsoft Encarta 2006.

Cantidad F´ısica Cantidad Perceptual Intensidad Fuerza de Voz Frecuencia Fundamental Tono Forma Espectral Timbre Tabla 2.1

Relaci´on entre atributos f´ısicos y perceptuales del sonido. [Huang and Hon, 2001]

Fuente :

Cap´ıtulo 3 Procesamiento Digital de la Se˜ nal El Procesamiento Digital de Se˜ nales juega un rol importante en asegurar que la informaci´on proveniente de la se˜ nal de habla pueda ser f´acilmente extra´ıda por la computadora. Generalmente este trabajo con la se˜ nal se hace en el dominio de la Frecuencia, la representaci´on de las se˜ nales en este dominio se hace debido a que la estructura de un fonema es generalmente u ´nica, tomando en cuenta que si una se˜ nal de habla es llevada al dominio de la frecuencia entonces se puede obtener su energ´ıa en cada nivel de frecuencia. El procesamiento digital de la Se˜ nal nos permite realizar la extracci´on de caracter´ısticas mediante diversos algoritmos, que finalmente hacen una reducci´on significativa del tama˜ no de los datos de entrada.

3.1

Se˜ nales Digitales

El Habla puede entenderse como una se˜ nal que es representada matem´aticamente como una funci´on continua de variable t que representa al tiempo, luego para poder procesar esta se˜ nal por medio de una computadora es necesario tener la forma discreta de la se˜ nal continua, una se˜ nal digital es aquella resultante de hacer un muestreo con Periodo T a la se˜ nal continua, luego diremos que las se˜ nales digitales tambi´en

23 conocidas como se˜ nales discretas en el tiempo, son se˜ nales de la forma: x[n] = x0 (nT ).

(3.1)

y se puede definir la frecuencia de muestreo como sigue: Fs =

1 . T

(3.2)

Una de las se˜ nales m´as importantes es el sinusoide u onda seno: (3.3)

x0 [n] = A0 cos(ω0 n + φ0 ).

esta se˜ nal es importante pues las se˜ nales de habla pueden ser descompuestas como una suma de sinusoides, donde A es la amplitud del sinusoide, ω0 es la frecuencia angular y φ0 es la fase; todos estos ´angulos expresados en radianes. Operar con identidades trigonom´etricas puede ser algo tedioso, en consecuencia usaremos una notaci´on basada en el uso de n´ umeros complejos. Un n´ umero complejo se representa de la forma: z = x + jy.

donde x es la parte real, y es la parte imaginaria y j =

(3.4) √

−1; tambi´en un n´ umero

complejo tiene una representaci´on polar de la forma: z = Aejφ .

(3.5)

donde x = A cos φ y y = A sin φ, luego usando la relaci´on de Euler se tiene: ejφ = cos φ + j sin φ

(3.6)

24

Figura 3.1

Representaci´on de un n´ umero complejo en el plano cartesiano.

Un n´ umero complejo z en su forma polar z = Aejφ ., donde A es la amplitud y φ es la fase, luego si se usan n´ umeros complejos el sinusoide puede ser representado como sigue: x0 [n] = A0 cos(ω0 n + φ0 ) = Re{A0 ej(ω0 n+φ0 ) }

3.2

(3.7)

Sistemas Digitales

Se dice que un sistema es digital si: y[n] = T {x[n]}

(3.8)

T {a1 x1 [n] + a2 x2 [n]} = a1 T {x1 [n]} + a2 T {x2 [n]}

(3.9)

Ser´an lineales si:

Ser´an invariantes en el tiempo si: y[n − n0 ] = T {x[n − n0 ]}

(3.10)

Luego se puede definir la operaci´on convoluci´on y su propiedad conmutativa como sigue: y[n] =

∞ X k=−∞

x[k]h[n − k] =

∞ X k=−∞

x[n − k]h[k]

(3.11)

25 puede ser escrita como: y[n] = x[n] ∗ h[n]

3.3

(3.12)

Transformada de Fourier

La Transformada de Fourier es una herramienta de an´alisis que trasforma una se˜ nal representada en en dominio del tiempo hacia el dominio de la frecuencia, sin alterar su informaci´on. La Transformada de Fourier est´a dada por: X(ω) =

Z



x(t)e−jωt

(3.13)

−∞

y su inversa llamada Transformada Inversa de Fourier est´a dada por: x(t) =

1 Z∞ X(ω)ejωt 2π −∞

(3.14)

Figura 3.2 En la parte superior se tiene la se˜nal de habla en el dominio del tiempo. En la parte inferior se tiene la se˜ nal de habla en el dominio de la frecuencia.

26 3.3.1

Transformada Discreta de Fourier

Transforman una se˜ nal discreta en el tiempo en una se˜ nal discreta en la frecuencia, la Transformada Discreta de Fourier de una se˜ nal esta definida por: X[k] =

N −1 X

x[n]e

−j2πnk N

=

N −1 X

x[n]WNkn ,

k = 0, 1, ..., N − 1

(3.15)

n=0

n=0

donde: WN = e

−j2π N

(3.16)

El factor W es llamado tambi´en f actor mariposa, el cual es una funci´on de N t´erminos de frecuencia, con argumento nk La Transformada Inversa Discreta de Fourier esta dada por: x[n] = 3.3.2

−1 N −1 X j2πnk 1 NX X[k]e N = X[k]WN−kn N k=0 k=0

n = 0, 1, ..., N − 1

(3.17)

Complejidad Computacional de la Transformada Discreta de Fourier

La Transformada Discreta de Fourier tiene la siguiente ecuaci´on de recurrencia (

T [n] =

T (n − 1) + N si 0 < n ≤ N 0 n=0

resolviendo la ecuaci´on de recurrencia T (n) = T (n − 1) + N T (n − 1) = (T (n − 2) + N ) + N ... = ... T (n − n + 1) = T (n − n) + N + N + . . . + . . . + N

(3.18)

27 T (n) = N xN} | {z T (n) = N 2 (3.19) se tiene una complejidad O(n2 ) 3.3.3

Transformada R´ apida de Fourier

Utilizar la Transformada Discreta de Fourier tiene un costo computacional elevado, cuando se trabaja con muchos datos, para ello un algoritmo propuesto por [Cooley and Tukey, 1965] hizo que el c´alculo de la Transformada Discreta se realizara en forma mas eficiente, este es el algoritmo de la Transformada R´apida de Fourier, el aporte est´a en el hecho de que la Transformada Discreta de Fourier necesita N 2 operaciones mientras que la Transformada R´apida de Fourier solo necesita N log2 N operaciones, donde N es el n´ umero de muestras, por ejemplo si N = 1024, la Transformada Discreta de Fourier necesitar´ıa 10242 = 1, 048, 576 operaciones entre multiplicaci´ones y sumas como m´ınimo, mientras que la Transformada R´apida de Fourier solo necesitar´ıa 1024 log2 1024 = 10, 240 operaciones entre multiplicaci´ones y sumas como m´ınimo; la ventaja del segundo algoritmo es evidente. Existen muchos algoritmos que implementan la Transformada R´apida de Fourier y estos se basan en el paradigma divide y conquista [Cooley and Tukey, 1965], los cuales primero dividen el problema en dos o m´as subproblemas de peque˜ no tama˜ no, solucionan el mismo

28 subproblema recursivamente por el mismo algoritmo, aplicando condiciones de limite para terminar la recursion cuando el tama˜ no de los subproblemas son suficientemente peque˜ nos y obtienen la soluci´on al problema original, combinando las soluciones de los subproblemas. Existen muchos algoritmos R´apidos de Fourier y su aplicaci´on depende de criterios, como el tama˜ no de datos a tratar, si el algoritmo va a ser implementado en computadoras con un procesador o en computadoras con varios procesadores, etc.; para el presente trabajo, hemos optado en utilizar el algoritmo Radix − 2 F F T , el cual tiene dos variantes habitualmente usadas [Chu and George, 2000], los cuales son algoritmos secuenciales es decir se van a implementar en computadoras con un solo procesador, estos algoritmos son: algoritmo Radix − 2 con Decimacion en el T iempo y algoritmo Radix − 2 con Decimacion en la F recuencia, solamente var´ıan en el modo en como los dos subproblemas son definidos, no existiendo ninguna variaci´on en complejidad computacional. 3.3.4

Algoritmo Radix-2 con Decimaci´ on en Frecuencia y reordenamiento en la salida de bits mezclados

Los primeros algoritmos r´apidos fueron propuestos en forma independiente por [Cooley and Tukey, 1965] en su forma de decimaci´on en el tiempo y en su forma de decimaci´on en frecuencia por [Gentleman and Sande, 1966]. A continuaci´on se describe el algoritmo Radix-2 con decimaci´on en frecuencia y reordenamiento en la

29 salida de bits. Tenemos la Transformada Discreta de Fourier definida de la siguiente manera: X[k] =

N −1 X

x[n]e

−j2πnk N

=

n=0

N −1 X

x[n]WNkn ,

k = 0, 1, ..., N − 1

(3.20)

n=0

donde: WN = e

−j2π N

(3.21)

donde podemos deducir lo siguiente: N

WN2

= −1

WN

= WN2

2

WNN = 1 donde N es necesariamente un valor que sea el resultado de una potencia de dos, para que el algoritmo pueda aplicar eficientemente el principio de divide y conquista. El algoritmo radix-2 con decimaci´on en la frecuencia, es obtenido por definir dos subproblemas de la forma: {X(2k)|k = 0, ...,

N − 1} 2

(3.22)

que son las series de frecuencias de salidas diezmadas en indices pares y: {X(2k + 1)|k = 0, ...,

N − 1} 2

(3.23)

las series de frecuencias de salidas diezmadas en indices impares; para lograr esto la ecuaci´on (3.21) puede ser escrita como† †

usaremos Xk por X(K) y Xn por x(n)

30

N 2

−1

N −1 X

xn WNkn +

X

Xk =

n=0

N 2

Xk =

N 2

xn WNkn

+

Xk =

k(n+ N ) 2

xn+ N WN

kN

(xn + xn+ N WN 2 )WNkn ,

k = 0, 1, ..., N − 1

2

n=0

(3.25)

2

n=0

−1

X

−1

X

n=0

N 2

(3.24)

n= N 2

−1

X

xn WNkn

(3.26)

escogiendo los indices pares tenemos: N 2

−1

X

X2k =

(xn + xn+ N WNkN )WN2kn

N 2

X2k =

−1

X

(3.27)

2

n=0

(xn + xn+ N )W Nkn , 2

n=0

k = 0, 1, ...,

2

N −1 2

(3.28)

k = 0, 1, ..., N2 − 1, tenemos la primera

definiendo Yk = X2k y yn = xn + xn+ N , 2

mitad del problema N 2

Yk =

−1

X

yn W Nkn ,

n=0

k = 0, 1, ...,

2

N −1 2

(3.29)

similarmente para los indices impares tenemos: N 2

X2k+1 =

−1

X

(2k+1) N 2

(xn + xn+ N WN 2

n=0

N 2

X2k+1 =

(2k+1)n

)WN

−1

X n=0

((xn − xn+ N )WNn )W Nkn , 2

2

k = 0, 1, ...,

(3.30)

N −1 2

(3.31)

31

Figura 3.3

Figura 3.4

La mariposa Gentleman-Sande.

La entrada x en el array a es sobreescrita por la salida mezclada X.

definiendo Zk = X2k+1 y zn = (xn − xn+ N )WNn , 2

k = 0, 1, ..., N2 − 1, obtenemos

la segunda mitad del problema N 2

Zk =

−1

X

zn W Nkn ,

n=0

2

k = 0, 1, ...,

N −1 2

(3.32)

El c´alculo de yn y de zn en el paso de la subdivision es definida en la literatura como: la mariposa Gentleman-Sande. La salida de este procedimiento obtiene los valores de frecuencia pero en un orden mezclado, es decir si se tiene los valores de entrada x almacenados en un array a, la salida cuando el algoritmo Radix-2 con Decimaci´on en Frecuencia sea computado, obtendremos los valores X en el array a pero de una manera mezclada.

32 El reordenamiento de estos valores se hace teniendo en cuenta lo siguiente: las posiciones ordenadas de los valores de salida ser´an obtenidos al hacer un operaci´on de bits reverso a las posiciones del vector de salida. Si la notaci´on binaria de un n´ umero A es la siguiente:

A = abcd...yz

(3.33)

donde abcde...yz son valores que corresponden a los n´ umeros 0 o 1, su bits reverso sera:

A = zyxw....a

(3.34)

que corresponden a intercambiar la u ´ltima posici´on de su representaci´on binaria por la primera, la pen´ ultima por la segunda, la antepen´ ultima por la tercera y as´ı sucesivamente. 3.3.5

Complejidad Computacional de la Transformada R´ apida de Fourier

La Transformada R´apida de Fourier tiene la siguiente ecuaci´on de recurrencia: (

T [n] =

2T (n/2) + Cn si 2n ≥ 2 0 n=1

resolviendo la ecuaci´on de recurrencia

T (n) = 2T (n/2) + Cn T (n/2) = 4T (n/4) + 2C

n + Cn 2

(3.35)

33

Figura 3.5

Algoritmo Radix 2 . Fuente: [Chu and George, 2000]

... = ... 2a = n a = log2 n ... = ... 2a−1 T (n/2a−1 ) = 2a T (n/2a ) + 2a−1 C |

2a−1 T (n/2a−1 ) = n + a(cn)

n 2a−1

+ 2a−2 C

n 2a−2 {z

+ . . . + . . . + Cn }

34 T (n) = n + cn log2 n (3.36)

La Transformada R´apida de Fourier tiene una complejidad de O(n log n)

3.4

Funci´ on Ventana

Las funciones ventana son se˜ nales concentradas en un lapso de tiempo, para lograr as´ı enfocar un mayor an´alisis en cierta regi´on en particular y tratar de evitar las discontinuidades al principio y al final de los bloques analizados, existen muchas funciones ventana como las triangulares, Kaiser, Barlett entre muchas otras, las que son mayormente usadas en los sistemas digitales de procesamiento del habla son la ventana rectangular, Hanning y Hamming. La utilizaci´on de una ventana cambia el espectro en frecuencia en la se˜ nal. 3.4.1

Ventana Rectangular

La ventana rectangular es definida como:

hn = u[n] − u[n − N ]

(3.37)

donde la funci´on u es la funci´on paso unitario definida como: (

u[n] = y N es el tama˜ no de la ventana.

1 si n ≥ 0 0 si n < 0

(3.38)

35

Figura 3.6 3.4.2

Ventana Rectangular en el dominio del tiempo y de la frecuencia.

Ventana Generalizada Hamming

La forma generalizada de la ventana Hamming es definida como: (

h[n] =

(1 − α) − α cos( 2πn ) si 0 ≤ n < N N 0 otra manera

(3.39)

Cuando α = 0.5 la funci´on ventana es conocida como ventana Hanning y cuando α = 0.46 la funci´on es llamada ventana Hamming. Las ventanas rectangulares raramente son usadas para analizar segmentos de habla, pues si bien tienen alta resoluci´on en el tiempo, producen efectos no deseables en las frecuencias obtenidas, mayormente son usadas las ventanas tipo Hamming o Hanning que producen un menor derramamiento espectral que es un efecto asociado

36

Figura 3.7

Ventana Hamming en el dominio del tiempo y de la frecuencia.

a las ventanas rectangulares.

3.5

Representaci´ on de la Se˜ nal de Habla

En esta secci´on se mostrar´a como obtener una representaci´on de la se˜ nal de habla, es decir como obtener valores caracter´ısticos. 3.5.1

Transformada Corta de Fourier

Descompone la se˜ nal en una serie de segmentos y analiza los segmentos independientemente. Dada una se˜ nal x[n] se define una se˜ nal corta en el tiempo xm [n] de un segmento m como sigue:

xm [n] = x[n]wm [n]

(3.40)

37

Figura 3.8 Comparaci´on en el dominio de la frecuencia entre la Ventana Rectangular y la Ventana Hamming. que es el producto de de x[n] por una funci´on ventana wm [n], luego podremos hacer que la funci´on tenga valores constantes para todos los segmentos:

wm [n] = w[m − n]

(3.41)

Usualmente se usa un tama˜ no de ventana de 20ms a 30ms. Finalmente se tiene que la Transformada Corta de Fourier para un segmento m est´a definida como:

Xm (ejw ) =

X

χm [n]e−jw =

X

ω[m − n]χ[n]e−jw

(3.42)

38

Figura 3.9 3.5.2

Transformada Corta de Fourier.

Transformada Discreta del Coseno

La Transformada Discreta del Coseno (DTC) es ampliamente usada en el procesamiento del habla, ´esta tiene varias definiciones; la DTC-II C[k] de una se˜ nal real x[n] esta definida: N −1 X

n + 12 )), N

0≤k f (m + 1)

(3.49)

Filtros triangulares usados en el c´alculo del Mel-Cepstrum.

Estos filtros calculan el promedio del espectro alrededor de cada frecuencia central. Definimos fl como la frecuencia m´as alta y fh como la frecuencia m´as baja del banco de filtros en Hz, F s es la frecuencia de Muestreo en Hz, M el n´ umero de filtros y N el tama˜ no de la Transformada R´apida de Fourier. Los puntos l´ımite f (m) son uniformemente espaciados en la escala Mel:

f (m) =

β(fh ) − β(f1 ) N −1 β (β(f1 ) + m ) Fs M +1

(3.50)

donde la escala Mel β esta dada por:

β(f ) = 1125 ln(1 + y su inversa β −1 esta dada por:

f ) 700

(3.51)

43

Figura 3.13

Escala perceptual Mel comparada con la escala de frecuencias.

β −1 [b] = 700(exp(

b ) − 1) 1125

(3.52)

Entonces finalmente se computa el logaritmo de la energ´ıa de cada filtro: N −1 X

S(m) = ln(

|Xa (k)|2 Hm (k)),

0

Get in touch

Social

© Copyright 2013 - 2024 MYDOKUMENT.COM - All rights reserved.