Está en la página 1de 3

ALGORITMO DE RECONOCIMIENTO DE VOZ

PARA MATALAB

1) Tratamiento de la señal de referencia.


2) Tratamiento de la señal variable.
3) Comparación de señales.

1.1. Grabar voz de referencia.


1.2. Guardar voz de referencia.
1.3. Asignar voz de referencia a una variable a.
1.4. Hallar la longitud de a.
1.5. Hallar el máximo valor de la matriz a.
1.6. Dividir a entre el máximo valor de a para que el máximo valor sea 1.
1.7. Hallar la amplitud promedio de la señal.
1.8. Establecer el umbral del 1%.
1.9. Generar Matriz sin espacios en blanco.

1.10. Generar matriz de longitud definida.

1.11. Graficar onda de referencia normalizada

1.12. Hallar la transformada rápida de Fourier de la onda.

1.13. Graficar la transformada de Fourier de la onda.

1.14. Exportar al espacio de trabajo la matriz bt de la transformada de Fourier de la onda.

1.9.1. Variable y toma el valor de una matriz vacía.

1.9.2 Iterar desde que i=1 en intervalos de 10 muestras hasta la longitud máxima menos 10:

1.9.2.1. Se genera una matriz con 10 muestras: seg=a(i:i+9).


1.9.2.2. Se halla el promedio del segmento: e=sum((seg.^2).^0.5)/10;
1.9.2.3. Si e es mayor que el 1% de la señal promedio seg se guarda en la matriz, sino, se
desecha como espacio en blanco.

1.10.1. Se asigna a la variable a el valor de la matriz sin espacios en blanco.

1.10.2. Se genera la variable i que representa la posición de los elementos de la matriz a.

1.10.3. Mientras que el valor de a en la posición i sea menor que 0.2 sumar al valor de i la
cantidad 1: i=i+1.

1.10.4. Generar una matriz b vacía.

1.10.5. Iterar desde k=i, en intervalos de 1 hasta i+1000: b=[b+a(i)].


2.1. Grabar voz variable.

2.2. Guardar voz de referencia.

2.3. Asignar voz de referencia a una variable a.

2.4. Hallar la longitud de a.

2.5. Hallar el máximo valor de la matriz a.

2.6. Dividir a entre el máximo valor de a para que el máximo valor sea 1.

2.7. Hallar la amplitud promedio de la señal.

2.8. Establecer el umbral del 1%.

2.9. Generar Matriz sin espacios en blanco.

2.10. Generar matriz de longitud definida.

2.11. Graficar onda de referencia normalizada

2.12. Hallar la transformada rápida de Fourier de la onda.

2.13. Graficar la transformada de Fourier de la onda.

2.14. Exportar al espacio de trabajo la matriz ct de la transformada de Fourier de la onda.

2.9.1. Variable y toma el valor de una matriz vacía.

2.9.2 Iterar desde que i=1 en intervalos de 10 muestras hasta la longitud máxima menos 10:

2.9.2.1. Se genera una matriz con 10 muestras: seg=a(i:i+9).


2.9.2.2. Se halla el promedio del segmento: e=sum((seg.^2).^0.5)/10;
2.9.2.3. Si e es mayor que el 1% de la señal promedio seg se guarda en la matriz, sino, se
desecha como espacio en blanco.

2.10.1. Se asigna a la variable a el valor de la matriz sin espacios en blanco.

2.10.2. Se genera la variable i que representa la posición de los elementos de la matriz a.

2.10.3. Mientras que el valor de a en la posición i sea menor que 0.2 sumar al valor de i la
cantidad 1: i=i+1.

2.10.4. Generar una matriz c vacía.

2.10.5. Iterar desde k=i, en intervalos de 1 hasta i+1000: c=[c+a(i)].


3.1 Importar el valor de la transformada de Fourier de la señal referencia, bt.

3.2 Importar el valor de la transformada de Fourier de la señal variable, ct.

3.3 Hallar el coeficiente de correlación entre las dos señales.

3.4. Graficar el vector de correlación.

3.5 hallar el valor máximo de del vector de correlación, z.

3.6 Si z<0.75 Mostrar: “No identificado”.

Sino, Mostrar “Identificado correctamente”.

FIN

También podría gustarte