Escolar Documentos
Profissional Documentos
Cultura Documentos
Se supone que slo analizamos el tramo que nos interesa de la voz, es decir, que el
silencio de
antes y despus ha sido eliminado con un algoritmo de deteccin de actividad vocal
(a menos que tambin queramos detectar silencios). Adems, es deseable que la
seal haya sido aislada del ruido en la medida de lo posible, as como otras mejoras
previas que podamos aplicarle. Tras estos bloques, se procedera a la extraccin de
las caractersticas importantes mediante el
procedimiento que veremos posteriormente.
Prenfasis
La seal de voz digitalizada se hace pasar por un sistema de primer orden para
aplanar su
espectro, permitiendo que la codificacin sea ms uniforme. Este sistema tiene un
solo polo en
z a , siendo a un nmero cercano a uno, para que no se distorsione
demasiado la seal.
Segmentacin en tramas
Se seccionan W N muestras de voz consecutivas en una nica trama. Las tramas
consecutivas estn separadas en W M muestras, por lo que hay un solapamiento
entre tramas de W W N M muestras.
Enventanado de tramas
Cada trama es multiplicada por una ventana de N muestras, w n. Dicha
ventana ser elegida de manera que se minimicen los efectos adversos de recortar
una seccin de la seal de voz.
La ventana de Hamming tiene dos caractersticas que nos interesan al tratar con la
voz:
No distorsiona la envolvente del espectro, por lo que ser idnea para anlisis
espectral.
Permite solapamiento entre ventanas, dando continuidad al anlisis por tramas y en
tiempo real.
Figura 2.2. Utilidad de la ventana de Hamming. (a) Trama de voz segmentada. (b)
Su espectro
distorsionado debido a la segmentacin. (c) La ventana de Hamming. (d) La trama
enventanada. (e) Su espectro sin distorsin.
Se suele utilizar una duracin de 25 mseg para la ventana. Esto fija, junto a la
frecuencia de
muestreo, la longitud W N . Adems, el desplazamiento entre ventanas ronda los 10
mseg , por lo que solapan entre s.
Figura 2.3. Modelo clsico de generacin de la voz. (a) El aire atraviesa el tracto
vocal y produce la voz. (b) Representacin de las seales involucradas en el
modelo, extrada de voz.
La excitacin y el sistema tienen un fuerte significado fsico:
enrepresenta el aire modulado por las cuerdas vocales. Es una seal
peridica o
ruidosa.
hnmodela el tracto vocal por el que pasa el aire hasta salir al exterior. Es
un filtro con
funcin de transferencia racional.
El reconocimiento de voz est basado en la forma que tiene el tracto vocal, lo cual
determina los
fonemas que se estn diciendo en ese momento. Gracias a la distincin entre
excitacin y
sistema, podemos basar el reconocimiento en hn, pues modela el tracto
vocal.
Debemos encontrar un procedimiento para encontrar el sistema hna partir de
la seal s n,
pues representando aqul adecuadamente tenemos la mejor seleccin de
caractersticas posible
para el reconocimiento de voz.
Anlisis cepstrum
El dominio cepstrum
Una transformacin homomrfica es una transformacin ^que convierte una
convolucin en
una suma:
El cepstrum real coincide con la parte par del cepstrum. A partir de aqu,
utilizaremos la notacin
snaunque nos refiramos al cepstrum real de la seal.
Deconvolucin
Puede demostrarse que el cepstrum de la voz tiene una forma como la que se
muestra en la
grfica.
Figura 2.5. Representacin del cepstrum de la seal de voz. Las muestras cercanas
al origen corresponden al cepstrum del filtro, hn. Las muestras exteriores no
nos interesan pues corresponden al cepstrum de la excitacin. Extrado de [S. VOZ].
En estas condiciones, podemos recuperar hnsimplemente aplicando liftering
(recortar la parte
de la seal que nos interesa, en el dominio cepstrum) sobre la parte baja de la
grfica anterior.
Aplicando la transformacin homomrfica inversa, puede obtenerse hna partir
de hn
fcilmente.
Ahora que hemos introducido el concepto de cepstrum de una seal, matizaremos
que no
utilizaremos las muestras de hncomo coeficientes para el reconocimiento,
sino otros
coeficientes cepstrum que han dado mejores resultados en la aplicacin que nos
ocupa.
La escala de frecuencia Mel
Existen escalas de frecuencia en las que el odo humano se comporta de manera
ms uniforme
frente a los sonidos que recibe. Una de ellas es la escala Mel, que se relaciona con
la frecuencia
en hertzios mediante la siguiente expresin emprica:
Figura 2.7. Diagrama de flujo para el clculo de los coeficientes MFCC. Lo primero
que se hace es dividir la energa en M M bandas. En cada banda, la seal queda
ponderada por el correspondiente filtro perceptual del odo ( ) m H f . Despus, se
calcula la DCT del logaritmo de la energa para obtener los coeficientes.
El filtro perceptual tiene la forma:
Figura 2.8. Filtro perceptual del odo humano. Est elegido de manera que los
anchos de banda
son uniformes en unidades de frecuencia Mel.
El filtro perceptual tiene la expresin analtica:
ID=audiodevinfo(0,fs,16,1);
player=audioplayer(s,fs,16,ID);
play(player);
end
pause(3);
clc;
% ---- Eleccin de
disp('Trabajar con
disp('Trabajar con
disp('Trabajar con
disp('Trabajar con
disp('Trabajar con
disp('Trabajar con
la
la
la
la
la
la
la
persona
persona
persona
persona
persona
persona
persona
de trabajo.
1:
1');
2:
2');
3:
3');
4:
4');
5:
5');
6:
6');
');
file = sprintf('p%d.wav',selector);
mensajea=sprintf('reproduciendo a la persona %d (persona elegida)',selector);
disp(mensajea);
[s, fs] = wavread(file);
ID=audiodevinfo(0,fs,16,1);
player=audioplayer(s,fs,16,ID);
play(player);
pause(3);
% ---- caculando los datos de comparacion y comparando.
v = mfcc(s, fs);
% calcula los coeficientes mfcc.
distmin = inf;
% distancia minima-condicion inicial.
k1 = 0;
for l = 1:length(code)
% para cada conjunto de datos almacenado
d = disteu(v, code{l}); % distancia euclideana
dist = sum(min(d,[],2)) / size(d,1);
if dist < distmin
distmin = dist;
k1 = l;
end
end
clc;
disp('RESULTADO');
if distmin < 5.5
msg = sprintf('persona %d concuerda con el sujeto %d', selector, k1);
disp(msg);
else
msg = sprintf('persona desconocida');
disp(msg);
end