You are on page 1of 7

Um Ambiente para Processamento Digital de

Sinais Aplicado Comunicao Vocal


Homem-Mquina
Mrcio G. Passos e Patric L. Silva
marcio_passos@yahoo.com.br e lacouth@gmail.com

Silvana Luciene do N. Cunha Costa 1


silvanacunhacosta@gmail.com

Benedito G. Aguiar Neto e Joseana M. Fechine


bganeto@cct.ufcg.edu.br e joseana@dsc.ufcg.edu.br

Resumo: Este trabalho trata do estudo e implementao de tcnicas de processamento digital de sinais que
so utilizadas em sistemas de resposta vocal como: sistemas de reconhecimento de voz, reconhecimento de
locutor e sistemas de sntese de voz. Foi utilizada a linguagem de programao C na elaborao de funes
que caracterizam os sinais de voz. Foram implementados algoritmos para converso amostras-texto,
deteco de incio e fim, pr-nfase, janelamento de Hamming e extrao de parmetros temporais. Estes
parmetros incluem energia, taxa de cruzamento por zero, nmero total de picos, diferena no nmero de
picos e coeficiente de correlao normalizado. Foram propostos algoritmos diferenciados para a taxa de
cruzamento por zero e para o detector de incio e fim. Com o intuito de criar um ambiente didtico,
construiu-se uma interface grfica amigvel utilizando uma plataforma de desenvolvimento orientada a
eventos.

Palavras Chave: processamento de sinais, comunicao vocal homem-mquina.

1. Introduo pois atuam no sentido de fornecer no somente a


informao de interesse ao processamento de
Dentre as vrias reas que compem o campo da determinada amostra de som, mas tambm ocasionar
comunicao por voz, a rea da comunicao vocal uma reduo considervel na quantidade de
homem-mquina uma das mais interessantes e informaes a serem processadas. Tais informaes
estimulantes. O desejo, bem como a necessidade das sero responsveis pela produo de padres entre
pessoas se comunicarem com as mquinas da determinada referncia registrada (PETRY et al,
maneira mais natural de comunicao a voz 2000).
humana tem dado grande impulso ao crescimento Este trabalho apresenta os resultados obtidos
desta rea (RABINER; SHAFER, 1978). utilizando-se tcnicas para processamento digital de
Por no requererem nem as mos nem os olhos sinais da fala. A primeira seo tratar do processo
do usurio para a sua operao, os sistemas de de aquisio, gravao e digitalizao da voz. Em
entrada vocal podem ser utilizados em diversas seguida, apresentado um algoritmo diferenciado
aplicaes, como por exemplo: controle de trfego para deteco de incio e fim de palavras, bem como
areo, auxlio a portadores de deficincia fsica, as tcnicas de pr-nfase, segmentao, janelamento
controle de qualidade e inspeo e controle de das amostras e extrao de alguns parmetros
acesso a ambientes restritos. temporais do sinal da fala.
Dos sistemas de entrada vocal hoje disponveis,
destacam-se os sistemas de reconhecimento Nomenclatura
automtico de voz (RAV) e os sistemas de a = constante, igual a 0,95.
reconhecimento automtico de locutor (RAL). Nas y = sinal pr-enfatizado
aplicaes RAV e RAL necessria uma preparao x = sinal amostrado
ou pr-processamento dos sinais da voz. As tcnicas M = nmero total de amostras
de pr-processamento permitem a extrao de s = amostra aps janelamento
caractersticas que realmente merecem destaque, L = tamanho (tempo) da janela de Hamming

PRINCIPIA, Joo Pessoa, n.14, Dezembro 2006. 25


Na = tamanho (amostras) da janela de Hamming B Deteco de incio e fim das palavras
Eseg = energia segmental
COR = coeficiente de autocorrelao normalizado Durante o processo de gravao da voz,
PNEG = picos negativos inevitavelmente, parte do tempo alocado para a
PPOS = picos positivos elocuo ocupado com silncio ou rudo ambiente.
NTP = nmero total de picos Assim, quando uma palavra gravada, as amostras
DPN = diferena do nmero de picos sem informao til podem ser descartadas de
TCZ = taxa de cruzamento por zero maneira segura. A separao das amostras
representativas de voz das amostras de silncio
ndices chamada de deteco de incio e fim de palavra.
n relativos amostra Em sistemas de palavras isoladas, a deteco de
incio e fim fundamental por duas razes principais
2. Processamento do Sinal de Voz (COSTA, 1994):
1. A classificao correta da palavra
A Aquisio do sinal criticamente dependente da preciso dessa
deteco.
A aquisio dos sinais de voz realizada 2. Os clculos necessrios para o
inicialmente utilizando-se um microfone. Este processamento do sinal de voz so
converte as variaes que a fala causa na presso do minimizados quando o incio e o fim so
ar em variaes de tenso eltrica. O prximo passo localizados com preciso.
do sistema a amostragem e digitalizao das O algoritmo para deteco de incio e fim,
variaes de tenso. Geralmente a passagem do sinal proposto neste trabalho, mostrado na Fig. (1).
de voz da forma analgica para a digital feita
utilizando a modulao por codificao de pulsos
(PCM pulse code modulation). Com a finalidade
de ser manipulado por um sistema digital, o sinal de
voz representado por uma seqncia de pulsos
binrios, codificados com uma quantidade de bits
proporcional a qualidade e fidelidade desejadas. Para
sinais de voz, esta codificao feita geralmente
com 8 ou 16 bits.
Neste trabalho, para a aquisio dos sinais de voz
utilizou-se um microcomputador PC com placa de
som e microfone comum. O software usado para
gravao do som em mdias digitais foi o
GoldWave verso 4.26, e o formato de gravao
escolhido foi o padro WAV. Este formato de
gravao um dos mais utilizados para este tipo de
aplicao, e contm um cabealho de 44 bytes com
informaes sobre o prprio arquivo.
Com a obteno do arquivo WAV, contendo o
sinal de voz na forma digital, pode-se agora
Figura 1. Fluxograma do algoritmo para deteco
manipul-lo no ambiente de processamento digital
de incio e fim de palavras.
de sinais implementado. Como passo inicial, foi
implementado um algoritmo que extrai as
Este algoritmo consiste na leitura ordenada de
informaes do cabealho do arquivo WAV. Estas
amostras individuais na busca de um grupo de 5
informaes incluem nmero de amostras,
amostras consecutivas que ultrapassam um limiar
freqncia de amostragem, tipo de modulao e
pr-determinado. Encontrado este grupo, indica-se
nmero de bits por amostra. Foi elaborado um
que o incio da palavra a primeira amostra deste
algoritmo para converter arquivos WAV para o modo
grupo. Aps a determinao do incio da palavra, o
texto. Para manter a compatibilidade, as amostras
algoritmo passa a buscar o fim desta.
so multiplicadas por constantes de valores
Esta busca feita atravs da anlise ordenada de
previamente estabelecidos, a fim de que o software
amostras, de forma que se 1000 dessas amostras
GoldWave possa fazer a reproduo audvel dos
consecutivamente estiverem abaixo de um limiar
arquivos de voz tambm no modo texto.

26 PRINCIPIA, Joo Pessoa, n.14, Dezembro 2006.


previamente estabelecido, ento delimitado A pr-nfase objetiva eliminar uma tendncia
provisoriamente o fim da palavra. espectral de aproximadamente 6dB/oitava na fala
Mesmo aps essas deteces, o algoritmo irradiada dos lbios. Essa distoro espectral no
continua a ler as amostras procura de um novo traz informao adicional e pode ser eliminada
grupo, desta vez com 20 amostras seguidas, que atravs de um filtro, que proporcione um ganho de
estejam acima de um certo limiar. Caso seja +6dB/oitava, fazendo com que o espectro se nivele.
encontrado este ltimo grupo, reiniciada a busca Em um sistema digital a pr-nfase pode ser
pelo fim da palavra. Isto evita que o algoritmo venha implementada como um circuito analgico,
a identificar incorretamente o fim de elocues que precedendo o amostrador, ou diretamente na
possuem intervalos curtos de silncio entre fonemas. informao digital atravs de um filtro do tipo de
De posse das amostras que compem o sinal, resposta ao impulso finito (finite impulse response)
criado um novo arquivo de extenso WAV que FIR de primeira ordem (PETRY et al, 2000). A Eq.
possui a palavra delimitada. As Fig. (2) e (3) (1) descreve o processo de pr-nfase realizado neste
ilustram a forma de onda da elocuo esquerda, trabalho:
codificada com 8 bits e taxa de amostragem de
11025 Hz, antes e depois da deteco de incio e fim y (n) = x(n) ax(n 1) , com 1 n <M (1)
respectivamente.
em que:
y(n) = sinal pr-enfatizado
x(n) = sinal amostrado
M = nmero de amostras
a = constante, neste caso, usou-se a = 0,95

A Fig. (4) ilustra o processo de pr-nfase, com a


elocuo esquerda.

Figura 2. Forma de onda da palavra "esquerda"


com codificao em 8 bits e taxa de amostragem
de 11025 Hz.

Figura 4. Forma de onda da palavra "esquerda"


original e pr-enfatizada.

D Segmentao e Janelamento

Em processamento digital de sinais de voz,


necessrio trabalhar com segmentos ou frames do
Figura 3. Forma de onda da palavra "esquerda" sinal. Estes segmentos so da ordem de
com incio e fim detectados . milisegundos, assumindo que nestes pequenos
C Pr-nfase intervalos os sinais podem ser considerados
razoavelmente estacionrios. Foi definido um frame
O sinal de voz apresenta baixas amplitudes nas de voz como sendo o produto de uma janela discreta
altas freqncias o que as torna especialmente w(n) de tamanho L, pela seqncia de voz pr-
vulnerveis ao rudo. Tais freqncias so enfatizada (PETRY et al, 2000).
responsveis pela gerao dos sons surdos (COSTA, Neste trabalho, optou-se por utilizar a janela de
1994). Hamming. Este tipo de janela apresenta boas
caractersticas espectrais bem como atenua a

PRINCIPIA, Joo Pessoa, n.14, Dezembro 2006. 27


transio entre quadros adjacentes. O ambiente de
processamento de sinais permite que o usurio
estabelea o tamanho das janelas, em milisegundos,
de acordo com a sua necessidade. As janelas
geralmente so sobrepostas entre si, para que haja
uma variao gradual dos parmetros entre elas. Foi
utilizada uma sobreposio fixa entre janelas de
50%. A representao matemtica do janelamento
de Hamming descrita na Eq. (2).

0 n<0 Figura 5. Energia segmental da palavra


2 n "esquerda".
s (n) = 0,54 0,46 cos 0 n < L (2)
330 1
0 nL Usualmente este parmetro definido por Eq. (4)
e (5):
3. Extrao de Parmetros Temporais do Sinal
de Voz 1 Na 1
TCZ = | sgn[s(n)] sgn[s(n 1)] |
2 n=1
(4)
Para aplicaes em RAV e RAL, necessria a
extrao de informaes teis sobre o sinal da voz.
Para se obterem tais informaes, foram utilizadas em que:
tcnicas baseadas no domnio do tempo, pois
apresentam baixo custo computacional e produzem 1 , se s (n) 0
informaes teis acerca do sinal processado. Segue- sgn[ s (n )] = (5)
se uma explanao sobre cada um dos parmetros 1 , se s (n) < 0
obtidos pelo ambiente de processamento de sinais.
Em janelas que apresentam elevado nmero de
A Energia amostras de valor nulo, esta definio no
corresponde realidade, pois, na transio de uma
A energia segmental, Eseg, utilizada para amostra negativa para uma amostra nula ser
diferenciao do silncio, sons surdos, sons sonoros contado um cruzamento por zero mesmo que a
e fricativos. Este parmetro obtido simplesmente prxima amostra tambm seja negativa.
somando-se os quadrados das amplitudes das Na Neste trabalho, proposto um algoritmo que
amostras da janela em anlise. A energia por fornea uma maior preciso no resultado final da
segmento para sinais estacionrios dada pela Eq. Taxa de Cruzamento por Zero. Em sntese, o
(3) (RABINER; SHAFER, 1978). algoritmo ignora as amostras nulas e incrementa a
A Fig. (5) mostra a variao da energia ao longo TCZ, apenas, quando houver realmente uma
da elocuo esquerda. inverso dos sinais das amostras consecutivas no
nulas. A Fig. (6) ilustra a variao da Taxa de
Na 1 Cruzamento por Zero ao longo da palavra
Eseg = [s(n)] 2
(3) esquerda e a Fig. (7) o fluxograma do algoritmo
n=0 em questo.

B Taxa de Cruzamento por Zero


As aplicaes em que se utilizam mtodos de
anlise no domnio do tempo, a Taxa de Cruzamento
por Zero (TCZ) um parmetro usado na deteco
de blocos com sons surdos (ex. consoante s),
sonoros (ex. vogal a) e consoantes fricativas (ex.
consoante f) (RABINER; SHAFER, 1978).

Figura 6. Variao da TCZ ao longo da palavra


"esquerda".

28 PRINCIPIA, Joo Pessoa, n.14, Dezembro 2006.


NTP = PPOS + PNEG;
DPN = PPOS PNEG;

A Fig. (8) ilustra o Nmero Total de Picos da


elocuo esquerda e a Fig. (9) ilustra a variao da
Diferena entre o Nmero de Picos na mesma
elocuo.

Figura 8. Variao do parmetro NTP na palavra


"esquerda".
Figura 7. Fluxograma do algoritmo
implementado para clculo da TCZ.

C Nmero Total de Picos e Diferena entre o


Nmero de Picos

O sinal de voz apresenta trechos que se repetem


quase periodicamente e trechos basicamente
aleatrios, sem nenhuma periodicidade. Em sistemas
que trabalham com reconhecimento ou sntese de
voz, a deteco de diferentes modos de excitao
permite a classificao dos sinais de voz em: sons Figura 9. Variao do parmetro DPN na
sonoros, sons surdos e sons explosivos. palavra "esquerda".
O Nmero Total de Picos (NTP) um parmetro
que auxilia a deteco de fricativos surdos de D Coeficiente de Autocorrelao Normalizado
pequena intensidade como o /f/. A Diferena entre o Este parmetro tem bastante utilidade na
Nmero de Picos (DPN) ajuda o reconhecimento de distino de sons surdos e sonoros. Esse coeficiente
sons fricativos sonoros que podem ser facilmente tem valores prximos a unidade para sons sonoros,
confundidos com vogais de pequena intensidade por serem sinais que possuem alta concentrao de
(VIEIRA, 1989). energia. Logo, para sons com baixa concentrao de
O algoritmo a seguir mostra o procedimento de energia como os sons surdos este parmetro
clculo do NTP e DPN. As variveis Picos Positivos aproxima-se de zero (LIMA, 1994).
(PPOS) e Picos Negativos (PNEG) correspondem ao O valor do coeficiente de autocorrelao
nmero de picos da parte positiva e da parte negativa determinado pela Eq. (6):
do sinal, respectivamente.
PPOS = 0 N
PNEG = 0 [s n s n -1 ]
COR = n =1
(6)
para [i = 1; i < N; i = i + 1] N
N -1

se [(sn 0) e (sn sn-1) e (sn > sn+1)] s 2n s 2n
n =1 n =0
PPOS = PPOS + 1;
A Fig. (10) ilustra a variao do Coeficiente de
se [(sn < 0) e (sn sn-1) e (sn < sn+1)]
Correlao ao longo dos blocos da palavra
PNEG = PNEG + 1;
esquerda.

PRINCIPIA, Joo Pessoa, n.14, Dezembro 2006. 29


resultados em ambiente de laboratrio, mas que deve
ainda ser otimizado.
A extrao de parmetros que o programa
executa retorna variveis expressivas para
caracterizao do sinal da fala. Neste estgio foi
implementado um algoritmo diferenciado, do
geralmente utilizado, para a contagem da Taxa de
Cruzamento pelo Zero, que obteve resultados
excelentes na caracterizao de sinais de 8 bits.
Outros passos devem ser dados para
implementao de um sistema de reconhecimento de
Figura 10. Variao do parmetro COR ao longo voz ou de locutor como a determinao dos
da palavra esquerda. coeficientes LPC, Mel, Mel-Cepstrais entre outros.
As tcnicas de parametrizao dos modelos como
4. Interface Grfica Modelos de Markov Escondidos (HMM), Redes
Neurais Artificiais ou tcnicas hbridas podem ser
utilizadas. No entanto, o trabalho at aqui realizado
De forma a tornar-se mais compreensveis as
serve como base para um sistema que use qualquer
etapas do processo de extrao de caractersticas a
dessas tcnicas.
partir de um arquivo WAV , foi implementada uma
Pretende-se ainda, em etapas posteriores, avaliar
interface grfica, atravs do ambiente de
o desempenho dos algoritmos aqui propostos com os
desenvolvimento Borland C++ Builder, amigvel e
algoritmos existentes na literatura.
intuitiva que contm todos os algoritmos,
anteriormente, discutidos. As figuras contendo os
6. Referncias
resultados obtidos neste trabalho foram retiradas do
software implementado. A Fig. (11) apresenta a
COSTA, W. C. da A. Reconhecimento de Fala
interface inicial do programa.
Utilizando Modelos de Markov Escondidos
(HMMs) de Densidades Contnuas. 1994.
Dissertao (Mestrado em Engenharia Eltrica)
Departamento de Engenharia Eltrica, UFPB,
Campina Grande.

LIMA, A. B. O. Sistema de Resposta Vocal


VOCODER LPC. 1994. Relatrio Tcnico
Departamento de Engenharia Eltrica, UFPB,
Campina Grande.

PETRY, A..; ZANUZ, A.; BARONE, D. A. C.


Utilizao de tcnicas de processamento digital de
sinais para identificao automtica de pessoas
pela voz. 2000. Relatrio Tcnico UFRGS, Porto
Figura 11. Interface inicial do ambiente de Alegre.
processamento digital de voz.
VIEIRA, M. N. Mdulo Frontal para um Sistema
5. Concluses de Reconhecimento Automtico de Voz. 1989.
Dissertao (Mestrado em Engenharia Eltrica)
Neste trabalho foram implementadas rotinas que Departamento de Engenharia Eltrica, UNICAMP,
podem servir de base para qualquer sistema de Campinas.
reconhecimento de voz, de locutor ou sistemas de
sntese de voz. O programa final flexvel, pois RABINER, L. R., SHAFER, R. W., Digital
permite que se trabalhe com arquivos WAV de 8 ou Processing of Speech Signals, Prentice Hall, 1978.
16 bits, alm de executar passo-a-passo o
processamento do sinal da voz o que facilita a
compreenso de cada procedimento.
Na fase de deteco de incio/fim de palavras foi
proposto um algoritmo que demonstrou bons
30 PRINCIPIA, Joo Pessoa, n.14, Dezembro 2006.
Responsabilidade de autoria
As informaes contidas neste artigo so de
inteira responsabilidade de seus autores. As opinies
nele emitidas no representam, necessariamente,
pontos de vista da Instituio e/ou do Conselho
Editorial.

PRINCIPIA, Joo Pessoa, n.14, Dezembro 2006. 31