allan shigueto akishino grr20040179 marcos paulo … · tabela 3.5 – quantidade de amostras de...

50
ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO RIKI YANASE GRR20042822 PESQUISA, DESENVOLVIMENTO E TESTES DE UM SISTEMA DE RECONHECIMENTO DE PALAVRAS FALADAS Trabalho de conclusão do curso de graduação em Engenharia Elétrica, do Setor de Tecnologia da Universidade Federal do Paraná. Orientador: Eduardo Parente Ribeiro Co-orientador: Marcelo de Oliveira Rosa CURITIBA 2008

Upload: truonghanh

Post on 13-Dec-2018

221 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

ALLAN SHIGUETO AKISHINO GRR20040179

MARCOS PAULO RIKI YANASE GRR20042822

PESQUISA, DESENVOLVIMENTO E TESTES DE UM

SISTEMA DE RECONHECIMENTO DE PALAVRAS FALADAS

Trabalho de conclusão do curso de

graduação em Engenharia Elétrica, do

Setor de Tecnologia da Universidade

Federal do Paraná.

Orientador: Eduardo Parente Ribeiro

Co-orientador: Marcelo de Oliveira Rosa

CURITIBA

2008

Page 2: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

i

RESUMO

Este trabalho expõe os conceitos básicos envolvidos em sistemas de

reconhecimento de palavras faladas. Traz informações relativas aos parâmetros que

podem ser extraídos de um sinal de voz e como obtê-los. Em um trabalho prático, a

teoria é aplicada através do desenvolvimento de um sistema simples de

reconhecimento de fala, cujo objetivo é verificar os conceitos envolvidos e tentar

reconhecer dígitos pronunciados em língua portuguesa.

Page 3: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

ii

SUMÁRIO

LISTA DE TABELAS ............................................................................................................... iv

LISTA DE FIGURAS ................................................................................................................. v

1 INTRODUÇÃO ...................................................................................................................... 1

2 FUNDAMENTAÇÃO ............................................................................................................ 2

2.1 SISTEMAS DE RECONHECIMENTO DE FALA ............................................................ 2

2.1.1 FUNCIONAMENTO DE UM SISTEMA DE RECONHECIMENTO DE FALA ...... 3

2.1.2 MODELO DE PRODUÇÃO DA VOZ ........................................................................ 4

2.1.2.1 Fonemas ................................................................................................................. 5

2.2 EXTRAÇÃO DOS PARÂMETROS ................................................................................... 6

2.2.1 PRÉ-ÊNFASE ............................................................................................................... 6

2.2.2 AMOSTRAGEM .......................................................................................................... 6

2.2.3 DIGITALIZAÇÃO ....................................................................................................... 7

2.2.4 JANELAMENTO ......................................................................................................... 7

2.2.5 PARÂMETROS TEMPORAIS .................................................................................... 9

2.2.5.1 Energia ................................................................................................................... 9

2.2.5.2 Taxa de Cruzamento por Zero ............................................................................. 10

2.2.6 PARÂMETROS ESPECTRAIS ................................................................................. 11

2.2.6.1 Transformada de Fourier a Curto Prazo (Short-Time Fourier Transform (STFT)) .......................................................................................................................................... 12

2.2.6.2 Parâmetros Cepstrais ........................................................................................... 13

2.2.6.3 MFCC (Mel-Frequency Cepstrum Coefficients) ................................................. 14

2.2.6.4 Parâmetros Dinâmicos ......................................................................................... 16

2.2.6.5 Análise LPC ......................................................................................................... 17

2.2.6.6 Parâmetros LPC Cepstrais ................................................................................... 18

2.3 DISTÂNCIA ...................................................................................................................... 19

2.3.1 DISTÂNCIA EUCLIDEANA .................................................................................... 19

2.3.2 DISTÂNCIA DE MAHALANOBIS .......................................................................... 20

2.3.3 DISTÂNCIA DE ITAKURA-SAITO ......................................................................... 20

3 METODOLOGIA E RESULTADOS ................................................................................... 21

3.1 DESENVOLVIMENTO DA APLICAÇÃO ...................................................................... 21

3.1.1 A BASE DE DADOS ................................................................................................. 21

3.1.2 APLICAÇÃO 1: DISTÂNCIA EUCLIDEANA MÍNIMA ENTRE DÍGITOS ......... 23

3.1.3 APLICAÇÃO 2: DISTÂNCIA EUCLIDEANA MÍNIMA ENTRE FONEMAS ...... 27

3.1.4 APLICAÇÃO 3: REGIÕES DEFINIDAS POR MÚLTIPLOS DO DESVIO PADRÃO .............................................................................................................................. 33

3.1.5 APLICAÇÃO 4: PONDERAÇÃO DE DISTÂNCIA EUCLIDEANA POR REGIÕES

Page 4: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

iii

BASEADAS EM HISTOGRAMAS .................................................................................... 36

3.2 APLICAÇÃO DE TESTES ............................................................................................... 40

4 CONCLUSÕES .................................................................................................................... 41

REFERÊNCIAS BIBLIOGRÁFICAS ..................................................................................... 42

ANEXO I .................................................................................................................................. 43

Page 5: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

iv

LISTA DE TABELAS

Tabela 3.1 – Transcrição fonética dos dígitos pronunciados .................................... 22

Tabela 3.2 – Métodos de acesso à base de dados .................................................. 22

Tabela 3.3 – Cenários de teste para a aplicação 1 .................................................. 25

Tabela 3.4 – Tabela de resultados para aplicação baseada na distância euclideana

entre centróides de dígitos inteiros .......................................................................... 26

Tabela 3.5 – Quantidade de amostras de treino e teste .......................................... 28

Tabela 3.6 – Taxas de acerto para cada cenário e cada fonema de teste ............... 29

Tabela 3.7 – Taxas de acerto para cada cenário e cada fonema de teste com

centróides calculados com base na tabela 3.3 ........................................................ 31

Tabela 3.8 – Taxas de acerto para a aplicação 4 ..................................................... 38

Page 6: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

v

LISTA DE FIGURAS

Figura 2.1 – Modelo simplificado de um sistema de reconhecimento automático de

fala ............................................................................................................................. 3

Figura 2.2 – Modelo simplificado de produção da voz ............................................... 4

Figura 2.3 – Janela de Hamming (a) e sua transformada discreta no tempo (b) ....... 8

Figura 2.4 – Seção de sinal de voz com janelas de análise a curto prazo ................ 9

Figura 2.5 – Taxa de cruzamento por zero e energia a curto prazo ......................... 11

Figura 2.6 – Gráfico mostrando a relação freqüência – freqüência mel ................... 15

Figura 2.7 – Banda de filtros mel .............................................................................. 16

Figura 3.1 – Determinação de centróides para as amostras de testes .................... 24

Figura 3.2 – Centróide do dígito de testes e dígitos 0 e 1 ........................................ 25

Figura 3.3 – Ilustração da separação de amostras de treino e teste ....................... 27

Figura 3.4 – Fonemas com duração menor que 15ms ............................................. 30

Figura 3.5 – Gráfico comparativo de resultados globais .......................................... 32

Figura 3.6 – Gráfico comparativo de desempenho para silêncio (#) ........................ 33

Figura 3.7 – Figura ilustrativa das regiões de classificação ..................................... 34

Figura 3.8 – Comparação de resultados globais para constante k=3 e 3,5 ............. 35

Figura 3.9 – Histograma do primeiro coeficiente ao longo dos quadros da letra a .. 36

Figura 3.10 – Regiões baseadas em histogramas ................................................... 37

Figura 3.11 – Comparação de histogramas ............................................................. 39

Page 7: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

1

1 INTRODUÇÃO

O presente trabalho apresenta as teorias envolvidas no reconhecimento da

fala, principalmente em relação à extração de parâmetros do sinal de voz. A teoria é

aliada à parte prática através do desenvolvimento de sistemas simplificados,

modularmente flexíveis para o reconhecimento de voz.

Na parte teórica é apresentada:

• Uma visão geral de um sistema de reconhecimento de voz;

• O modelo simplificado do sistema de produção da voz;

• Os diferentes parâmetros que podem ser extraídos do sinal de voz, sendo

eles temporais, freqüenciais e cepstrais;

• Diferentes medidas de distância que podem ser usadas para a comparação

dos parâmetros.

Na parte prática são desenvolvidos sistemas simples baseados no

reconhecimento de fonemas e vogais, tendo como foco principal os parâmetros Mel-

Cepstrais e as medidas de distância euclideana entre vetores extraídos

estatisticamente das amostras de fala. Para cada sistema é apresentada a taxa de

acerto obtida e uma breve conclusão.

Page 8: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

2

2 FUNDAMENTAÇÃO

2.1 SISTEMAS DE RECONHECIMENTO DE FALA

Os sistemas de reconhecimento de fala podem ser classificados de diversas

maneiras: quanto ao modo de reconhecimento, em relação à dependência ou não do

locutor, de fala contínua ou isolada, tamanho do vocabulário, etc.

Em um sistema dependente do locutor, o sistema é treinado para reconhecer

o que é dito por determinado usuário. Já um sistema independente do locutor

reconhece a fala independente do usuário, não sendo treinado para nenhum usuário

específico. Os sistemas dependentes do locutor, apesar de serem mais eficientes no

reconhecimento, têm uma aplicabilidade mais limitada, pois há aplicações em que a

realização de treinamento para cada locutor é impossível.

Os sistemas de reconhecimento de fala contínua, apesar de serem mais

amigáveis ao usuário em diversas aplicações, têm complicações adicionais na

implementação e uma menor eficiência de reconhecimento, já que é necessária a

determinação de fronteiras entre palavras ou unidades fonéticas.

Com relação ao tamanho do vocabulário, é lógico que quanto maior o

número de palavras que podem ser reconhecidas, maior a probabilidade de erro de

reconhecimento, já que o sistema tem de optar dentro de um universo maior de

palavras.

Existem também os sistemas de reconhecimento de falante, cujo objetivo é a

identificação de usuários. Nestes sistemas é necessária uma fase de treinamento

para cada usuário, além de haver diversas características intra-locutor que dificultam

na implementação de tal sistema.

Em todos os sistemas de reconhecimento de voz, há diversos fatores que

afetam seu desenvolvimento e utilização, e que precisam ser ou solucionados ou

contornados. Como exemplo pode-se citar o ruído presente no sinal de voz,

proveniente tanto do ambiente de captação do sinal quanto da especificção e

qualidade dos materiais utilizados na transdução.

Page 9: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

3

2.1.1 FUNCIONAMENTO DE UM SISTEMA DE RECONHECIMENTO DE FALA

O desenvolvimento de um sistema de reconhecimento de fala possui duas

etapas principais: a etapa de treinamento, onde criamos padrões ou modelos de

referência para nosso sistema; e a utilização propriamente dita, realizada a partir do

sistema devidamente treinado. A figura 2.1 mostra um modelo simplificado do

funcionamento de um reconhecedor automático de fala.

Figura 2.1 – Modelo simplificado de um sistema de reconhecimento automático de fala

Seu funcionamento pode simplificadamente ser descrito assim:

A voz é captada por um microfone e o sinal analógico proveniente é

transmitido a um sistema onde é feita a amostragem e a digitalização do sinal. A

partir disto, o sinal é dividido em pequenos intervalos de tempo sobrepostos e, para

cada um destes intervalos é feito o cálculo de parâmetros espectrais e/ou temporais.

A partir destes parâmetros, são realizadas comparações entre o padrão do sinal e o

da referência previamente criada, de acordo com o método escolhido. A seguir, o

sistema passa para a tomada de decisão, optando pela palavra com maior chance

de ser igual à palavra pronunciada.

Page 10: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

4

2.1.2 MODELO DE PRODUÇÃO DA VOZ

Figura 2.2 – Modelo simplificado de produção da voz

A produção da voz pelo aparelho fonador humano pode ser aproximada por

um modelo simplificado que consiste de duas partes: a produção do sinal excitador e

a formação da característica espectral. Tal modelo está representado na figura 2.2.

Este modelo funciona da seguinte maneira: a excitação sonora é modelada

por um gerador de trem de pulsos, cujo espectro pode ser representado por P(f); a

excitação surda é modelada por um gerador de ruído branco, com espectro N(f).

Através de u e v a intensidade de cada excitação pode ser representada de maneira

satisfatória. A saída de ambas as excitações é então somada e alimenta o modelo

do trato vocal simplificado representado por H(f). Finalizando, as características dos

lábios podem ser modeladas por R(f) [3].

Basicamente são estes os parâmetros que modelam o sistema de produção

do sinal de voz. Para realizar o reconhecimento da voz, os parâmetros acima têm de

ser computados do sinal a cada intervalo de tempo e encaminhados ao

reconhecedor de voz, para o qual a maior parte da informação importante está

contida no modo em como a forma espectral do sinal muda com o tempo. Daí a

necessidade do cálculo ser realizado em curtos intervalos de tempo.

Page 11: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

5

2.1.2.1 Fonemas

Neste tópico são citadas as principais classificações dos fonemas, sem

muitos detalhes por não ser este o enfoque deste trabalho.

Os fonemas podem ser divididos basicamente em vogais e consoantes.

Vogal é o fonema produzido pelo ar que, expelido dos pulmões, faz vibrar as

cordas vocais e não encontra nenhum obstáculo na sua passagem pelo aparelho

fonador. Há diversas classificações para as vogais [4], donde pode ser feita de

acordo com a intensidade (tônica, subtônica e átona), timbre (abertas e fechadas),

modo de articulação (orais e nasais), e quanto ao ponto de articulação (anteriores e

posteriores) além das semivogais.

Já as consoantes são fonemas assilábicos que são produzidas após

ultrapassar um obstáculo que se opõe à corrente de ar no aparelho fonador. Assim

como as vogais, podem ser classificadas de diversas maneiras:

• Quanto ao papel das cordas vocais: surdas (f, k, p, s, t, ch) e sonoras (b, d, g,

j, l, lh, m, n, nh, r, v, z)

• Quanto ao modo de articulação: oclusivas: (b, p, d, t, g, k), fricativas (f, v, j, ch,

s, z), laterais (l, lh), vibrantes (r, rr). nasais (m, n, nh).

• Quanto ao ponto de articulação: bilabiais (p, b, m), dentais ("th" do inglês),

alveolares (t, d, n, s, z, l, "r" fraco), labiodentais (f, v), palatais (j, ch, lh, nh),

retroflexivas("r" caipira), velares (k, g e rr na maioria dos dialetos), uvulares( o

“r” forte do dialeto fluminense ou o "h" do inglês) e glotais (não há consoantes

glotais em português e em praticamente nenhum dos idiomas ocidentais).

Neste trabalho a única classificação usada é a distinção entre os fonemas

surdos e sonoros, por ser uma característica bem visível através do sinal de voz e de

seus parâmetros.

Page 12: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

6

2.2 EXTRAÇÃO DOS PARÂMETROS

Para a extração dos parâmetros do sinal de voz, primeiro é necessário

realizar uma preparação neste sinal, o que é tratado nos próximos tópicos. Logo a

seguir há algumas informações sobre os parâmetros temporais, espectrais e

cepstrais.

2.2.1 PRÉ-ÊNFASE

Devido a uma queda de freqüência provocada pelos lábios e pelo pulso

glotal do locutor, é necessária a aplicação de um filtro pré-ênfase para realizar a

compensação [3]. Este filtro passa-altas pode ser aplicado por um circuito analógico,

antes da quantização, ou depois, por um filtro digital.

Esta queda é de aproximadamente 6dB/oitava, o que pode ser compensado

com o uso de um filtro FIR de primeira ordem: ���� = ���� − ��� − 1� (Eq. 1)

O valor de utilizado no filtro varia de acordo com a compensação desejada

e outras características, podendo ter valores como 0,9 [2], 0,97 [3], em geral,

estando no intervalo entre 0,9 e 1 [1].

2.2.2 AMOSTRAGEM

O microfone capta um sinal contínuo de voz, que então é enviado a um

sistema que faz a amostragem do sinal a uma freqüência adequada, lembrando

sempre de respeitar o teorema de Nyquist, que diz que é necessário amostrar o sinal

a, pelo menos, uma freqüência de duas vezes o valor da maior freqüência do sinal.

Apesar da voz ter um amplo espectro de freqüências, contendo até mesmo

freqüências ultrasônicas para alguns sons fricativos [3], do uso do telefone analógico

é sabido que uma banda de 4 kHz de sinal contém toda a informação necessária

para o entendimento da voz humana. Sendo assim, um valor mínimo para a taxa de

amostragem seria de 8kHz. Aumentando esta taxa de amostragem, pode-se diminuir

a taxa de erro no reconhecimento, mas a partir de 16 kHz já não se nota melhoras

tão significativas [5].

Page 13: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

7

2.2.3 DIGITALIZAÇÃO

A amostragem discretiza o sinal no tempo, mas ele ainda é contínuo em

amplitude. Então é necessário transformar esta amplitude em valores discretos para

que possam ser armazenados e processados em sistemas computacionais. Apesar

de 8 bits serem até suficientes para a representação do sinal de voz, geralmente é

utilizado um valor de 16 bits para a digitalização [1].

2.2.4 JANELAMENTO

Devido à natureza da variação do sinal de voz, é comum processar a voz em

blocos (frames), que mantém certas propriedades da forma de onda da voz. Isto nos

conduz ao princípio básico de análise a curto prazo, que pode ser representada de

forma geral pela equação 2 [1]:

��� = � ���������� − ����� � �� (Eq. 2)

onde ��� representa o parâmetro de análise de curto prazo (ou vetor de parâmetros)

em um tempo de análise ��. O operador ��� representa a natureza da função de

análise, e ���� − �� representa a seqüência de janelas deslocadas no tempo, cujo

propósito é selecionar um segmento da seqüência ���� na vizinhança da amostra � = ��.

A função da janela é suavizar as extremidades do segmento, diminuindo o

efeito das extremidades, pois na segmentação do sinal podemos acabar gerando

componentes de alta freqüência que não pertencem ao sinal [2].

Uma das janelas mais usadas para esta função é a janela de Hamming, que

pode ser matematicamente representada como na equação 3.

� ��� = ! 0.54 + 0.46 cos *+�, - , −, ≤ � ≤ ,0, 01�2 02�34á4627 (Eq. 3)

O tamanho da janela e da sobreposição de janelas consecutivas são valores

que são escolhidos por experiência e ajustados empiricamente de acordo com os

resultados desejados, havendo diversos estudos a este respeito. Como exemplos de

valores práticos, pode-se citar:

Page 14: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

8

• Janela de Hamming com 12 a 32ms de duração e deslocamento de 6 a

15ms [2]

• Janela com 40ms de duração e 15ms de deslocamento [1]

• 16 a 25ms de duração e 10ms de deslocamento [3]

Na figura 2.3 temos a representação em tempo discreto da janela de

Hamming (a) e sua transformada discreta no tempo (b). Na figura 2.4 tem-se uma

visão geral da sobreposição das janelas de Hamming aplicadas ao sinal.

Figura 2.3 - Janela de Hamming (a) e sua transformada discreta no tempo (b) [1]

Page 15: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

9

Figura 2.4 - Seção de sinal de voz com janelas de análise a curto prazo [1]

O objetivo do processamento do sinal de voz a curto prazo é fornecer um

conjunto de parâmetros que representem os diferentes intervalos do sinal de voz e

que possam ser empregados nos estágios posteriores de reconhecimento de

padrões acústicos. Estes parâmetros devem separar, ou pelo menos tentar, os

padrões de diferentes fonemas ou alofones a partir das características físicas do

sinal acústico. Para isso podem-se utilizar tanto parâmetros temporais como

espectrais.

2.2.5 PARÂMETROS TEMPORAIS

Duas análises básicas a curto prazo para os sinais de voz são a energia do

sinal e a taxa de cruzamento por zero a curto prazo. Estas funções são simples de

computar, e elas são úteis na estimação das propriedades da função de excitação

no nosso modelo de produção de voz [1].

2.2.5.1 Energia

A energia de curto prazo é definida através da equação 4.

9�� = � (�������� − ��):����� = � �:����:��� − ���

���� (9;. 4)

Page 16: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

10

Neste caso o operador ��� é simplesmente o quadrado das amostras

janeladas. Geralmente é possível também expressar os operadores de análise a

curto prazo como uma convolução ou uma operação de filtro linear. Neste caso, 79�� = �:��� ∗ ℎ>���|���� onde a resposta ao impulso do filtro linear é ℎ>��� = �:��� [1].

2.2.5.2 Taxa de Cruzamento por Zero

Similarmente, a taxa de cruzamento por zero a curto prazo é definida como

uma média ponderada do número de vezes em que o sinal de voz muda de sinal

dentro da janela de tempo. A equação 5 representa este operador em termos de

filtragem linear.

@�� = � 0.5 |�A������� − �A����� − 1��|����� ���� − �� (9;. 5)

onde �A���� = B1 � ≥ 0−1 � < 07

Como 0.5 |�A������� − �A����� − 1��| é igual a 1 se ���� e ��� − 1� têm

diferentes sinais algébricos e igual a 0 se eles têm o mesmo sinal, então @�� é a

soma ponderada de todos os eventos de alternância de sinal que estão dentro da

região da janela deslocada ���� − ��. A equação 5 é apenas uma representação

geral desta taxa, e o cálculo de @�� pode ser feito de outras maneiras.

A figura 2.5 mostra um exemplo gráfico da energia e da taxa de cruzamento

por zero a curto prazo para um segmento de voz com uma transição entre um sinal

de voz surdo e um sonoro. Nesta figura, é utilizada uma janela de Hamming com

duração de 25ms (equivalente a 401 amostras a uma taxa de amostragem de 16

kHz).

Page 17: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

11

Figura 2.5 - Taxa de cruzamento por zero e energia a curto prazo [1]

Note que durante o intervalo de sinal surdo, a taxa de cruzamento por zero é

relativamente maior quando comparado ao da taxa do sinal sonoro. Enquanto isso, a

energia é relativamente menor na região de sinal surdo quando comparada à

energia da região de sinal sonoro.

A energia e a taxa de cruzamento por zero a curto prazo são importantes

porque eles fornecem informações valiosas sobre o sinal de voz, e além disso são

simples de calcular. Elas podem ser usadas como base para um algoritmo de

decisão para decidir se o sinal de voz tem característica surda ou sonora.

2.2.6 PARÂMETROS ESPECTRAIS

Pode-se afirmar que o sinal de voz é uma seqüência de sinais em pequenos

intervalos onde a distribuição espectral de potência é relativamente constante. Ou

seja, a informação é composta pela dinâmica da variação dessas características

espectrais. Sabendo disso, torna-se interessante submeter o sinal de voz à análise

de Fourier, em intervalos de curta duração.

Para calcular de modo eficiente a transformada de Fourier, utiliza-se os

algarismos da FFT (Fast Fourier Transform) [2]. Os parâmetros da análise de Fourier

são dados pelos coeficientes da Transformada Discreta de Fourier (DFT - Discret

Fourier Transform).

Page 18: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

12

Para esse tipo de parametrização, vale salientar que a resolução em

freqüência é limitada pelo passo em freqüência ∆F = 1 G�H , onde N é o comprimento

do quadro medido em número de amostras e T é o período de amostragem. Assim a

resolução em freqüência aumenta de maneira diretamente proporcional ao número

de amostras por quadro. Na parametrização temporal, contudo, a resolução aumenta

à medida que o tamanho dos quadros diminuem, e o número de amostras por

quadro se tornam mais concentradas.

O entendimento da resolução é essencial quando se trata de analisar

fonemas não-oclusivos ou oclusivos. Para fonemas não-oclusivos a identidade

espectral está fortemente relacionada à densidade espectral sendo mais importante,

neste caso, a resolução em freqüência. Por outro lado, fonemas oclusivos são

melhor identificados pela mudança de estacionariedade do sinal sendo, portanto,

mais vantajoso possuir uma resolução maior no domínio do tempo [2].

2.2.6.1 Transformada de Fourier a Curto Prazo (Short-Time Fourier Transform

(STFT))

As funções de análise de curto prazo são a base para a maioria dos

algoritmos de processamento de voz. Uma importante função é a transformada de

Fourier a curto prazo, definida equação 6.

���IJKLM N = � �������� − ��J�KLM ������ (9;. 6)

Esta transformada é a base para uma vasta gama de sistemas de análise,

codificação e síntese de voz. Por definição, para um tempo de análise fixo ��, a STFT

é a transformada discreta de Fourier (DTFT) do sinal selecionado e ponderado pela

janela deslocada ���� − ��. Então, a STFT é uma função de duas variáveis: �� o

índice de tempo discreto denotando a posição da janela e OM representando a

freqüência de análise. Como a última equação é uma seqüência de DTFTs, a função

bidimensional ��� no tempo discreto �� é uma função periódica de freqüência contínua

radiana OM com período 2+ [1].

Page 19: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

13

2.2.6.2 Parâmetros Cepstrais

2.2.6.2.1 Cepstrum

O cepstrum foi definido por Bogert, Healy e Tukey como sendo a

transformada inversa de Fourier do logaritmo da magnitude espectral de um sinal [6].

Oppenheim, Schafer e Stockham mostraram que o cepstrum está relacionado ao

conceito mais geral de filtragem homomórfica de sinais que são combinados por

convolução [1]. Eles deram a definição de cepstrum de um sinal discreto no tempo

como na equação 7.

0��� = 12+ P logS�IJKLNSJKL� TOU�U (9;. 7)

onde logS�IJKLNS é o logaritmo da magnitude da DTFT do sinal, e eles estenderam o

conceito definindo o cepstrum complexo como na equação 8.

0��� = 12+ P logW�IJKLNX JKL� TOU�U (9;. 8)

onde logW�IJKLNX é o logaritmo complexo de �IJKLN definido pela equação 9. �ZIJKLN = logW�IJKLNX = logS�IJKLNS + [ 14A\�IJKLN] (9;. 9)

Neste trabalho não é considerado o logaritmo complexo, devido a uma série

de fatores e dificuldades adicionais em seu cálculo [1].

2.2.6.2.2 O cepstrum de tempo curto

A aplicação destas definições de cepstrum requerem que a DTFT seja

substituída pela STFT. Então o cepstrum de curto prazo é definido pela equação 10.

0����� = 12+ P logS���IJKLM NSJKLM � TOMU�U (9;. 10)

onde ���IJKLM N é a STFT definida pela equação 6.

Apesar da definição de cepstrum ser dada em termos da DTFT, e isto ser útil

para definições básicas, não o é para uso em processamento de sinais de voz

amostrados. Felizmente, para isto existem outras opções computacionais, seja

usando a DFT, a transformada z, ou usando computação recursiva. O detalhamento

destes métodos não será abordado neste trabalho.

Page 20: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

14

Os cepstrum podem ser usados tanto para detecção de pitch ou em

reconhecimento de padrões.

2.2.6.3 MFCC (Mel-Frequency Cepstrum Coefficients)

A distância ponderada cepstral tem uma interpretação diretamente

equivalente em termos de distância no domínio da freqüência. Isto é significante

quanto aos modelos de percepção humana do som, que são baseados na análise

freqüencial desempenhada pelo ouvido interno. Com isto em mente, Davis e

Mermelstein [1] formularam um novo tipo de representação cepstral que veio a ser

vastamente usada e conhecida como coeficientes de freqüência mel-cepstrais

(mfcc).

A transformação entre freqüência e freqüência mel pode ser representada

pela equação 11.

F�>_(F) = 1127.01 ln a1 + F700b (9;. 11)

Ou de maneira equivalente, em relação ao logaritmo decimal, como na

equação 12.

F�>_(F) = 2595 log a1 + F700b (9;. 12)

Na figura 2.6 há um gráfico mostrando a relação entre estas freqüências.

Page 21: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

15

Figura 2.6 - Gráfico mostrando a relação freqüência – freqüência mel[3]

A idéia básica é computar a análise freqüencial baseado no banco de filtros

com espaçamento de bandas críticas. Para uma banda de 4 kHz, aproximadamente

20 filtros são usados. Na maioria das implementações, uma análise de Fourier a

curto prazo é feita primeiro, resultando na DFT ��� para o tempo de análise ��. Então

os valores de DFT são agrupados juntos em bandas críticas e ponderados por

funções triangulares como mostrados na figura 2.7. Note que as bandas são

constantes para freqüências centrais abaixo de 1 kHz e então aumentam

exponencialmente até metade da freqüência de amostragem 4 kHz resultando em

um total de 22 “filtros”. O espectro mel freqüencial no tempo de análise �� é definido

pela equação 13.

,c���4� = 1de � |fe���������|:ghi�jh

(9;. 13)

onde fe é a função triangular para o 4-ésimo filtro indo do índice DFT ke a le, e onde

Page 22: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

16

de = � |fe���|:ghi�jh

(9;. 14)

é o fator de normalização para o 4 -ésimo filtro mel [1].

Figura 2.7 – Banda de filtros mel

Há autores que utilizam deste normalização [1], enquanto outros não [2] [3].

Para cada frame, uma transformada cosseno discreta do logaritmo da magnitude da

saída dos filtros é computada para formar a função �F00��, ou seja,

�F00����� = 1m � log(,c���4�) cos n2+m a4 + 12b �ope�q (9;. 15)

Tipicamente, �F00�� é calculado para um número de coeficientes M menor

que o número de filtros mel, por exemplo, M=13 e R=22.

2.2.6.4 Parâmetros Dinâmicos

Os MFCCs são computados para um segmento de voz em intervalos de

tempo curto de aproximadamente 10 ms. Para melhor refletir as mudanças

dinâmicas dos MFCCs em tempo, a primeira e segunda derivadas em tempo podem

também ser computadas, por exemplo, computando a diferença entre dois

coeficientes diferindo de r índices no passado e no futuro do tempo levado em

consideração. Para a primeira derivada nós temos a equação 16: ∆�F00��(�) = �F00��st(�) − �F00���t(�), � = 0,1, … , − 1 (9;. 16)

Page 23: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

17

E para a segunda derivada temos a equação 17. ∆∆�F00��(�) = ∆�F00��st(�) − ∆�F00���t(�), � = 0,1, … , − 1 (9;. 17)

onde r está geralmente no intervalo 2 ≤ r ≤ 4 [3].

2.2.6.5 Análise LPC

A análise de predição linear é uma das mais poderosas e usadas técnicas de

análise de voz. A importância deste método está na habilidade de fornecer

estimativas precisas de parâmetros de voz e sua velocidade relativa de computação.

Como já vimos do modelo de produção de voz, uma amostra de sinal de voz

é modelada como a saída de um sistema linear de variação lenta excitada por

impulsos quasi-periódicos (durante sinal de voz sonora) ou ruído aleatório (durante

sinal de voz surda).

Para curtos intervalos de tempo, o sistema linear pode ser descrito por um

sistema só de pólos na forma:

v(w) = �(w)9(w) = x1 − ∑ 1iw�izi�q (9;. 18)

Na análise de predição linear, a excitação é definida implicitamente pelo

modelo de trato vocal, isto é, a excitação é qualquer coisa que é necessária para

produzir ���� na saída do sistema. A maior vantagem deste modelo é o parâmetro de

ganho G, e os coeficientes de filtro �1i� podem ser estimados em uma maneira

eficiente pelo método de predição linear.

Assim, as amostras de voz ���� estão relacionadas com a excitação através

da equação 19.

���� = � 1i��� − �� + xJ���zi � q (9;. 19)

Um preditor linear com coeficientes de predição i é definida como um

sistema cuja saída é

�̃��� = � i��� − ��zi � q (9;. 20)

E o erro de predição, definido pelo quanto �̃��� falha em predizer a amostra

exata ����, é

Page 24: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

18

T��� = ���� − �̃��� = ���� − � i��� − ��zi � q (9;. 21)

A análise LPC resulta em parâmetros referentes a um filtro excitado por um

sinal denominado erro de predição. Este filtro é obtido através de aplicação de

teoremas (Yule-Walker e Wold) e modelos para processos estocásticos (auto-

regressivo).

O objetivo da análise é obter os coeficientes que minimizam a energia do

sinal residual. Há diversos métodos para estimar os valores dos coeficientes, mas

nenhum deles será detalhado neste trabalho, visto que através do software MatLab

pode-se realizar com relativa facilidade o cálculo destes coeficientes.

2.2.6.6 Parâmetros LPC Cepstrais

Os parâmetros LPC-Cepstrais podem ser obtidos basicamente através da

aplicação do na análise LPC, como na equação 22. log�v(w) ∙ 9(w)� = log�v(w)� + log�9(w)� (9;. 22)

Essa operação permite separar a excitação do trato vocal, que é o que

determina o timbre dos fonemas.

Os parâmetros dessa análise são obtidos recursivamente através da

equação 23,

0� = � + � � − 6���q}�q }0��q , � ≥ 1 (9;. 23)

onde 0=iα para i > p (p é a ordem da análise LPC) [2].

Page 25: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

19

2.3 DISTÂNCIA

Um valor importante tanto para a codificação, a análise e o reconhecimento

de voz é a medida de distância entre os quadros. O objetivo é medir a diferença de

identidade fonética entre dois segmentos de voz de igual duração (como os quadros

janelados), através da distância numérica, métrica ou não [2], entre os coeficientes

ou parâmetros extraídos do sinal de voz dentro do intervalo em questão. Como o

caráter fonético da voz está muito correlacionado com a distribuição espectral de

potência do sinal, a maior parte dos parâmetros extraídos são freqüenciais. Assim,

as distâncias que trabalham com estes coeficientes fornecem uma aproximação

numérica razoável para uma caracterização bastante perceptiva.

Existem três tipos de distância mais utilizados: Euclideana; Mahalanobis e

Itakura-Saito.

Dado os vetores de parâmetros sob teste �~ = ( �q, �: , … , �i ) e de

referência �~ = ( �q, �: , … , �i ), para k parâmetros, define-se a distância entre eles

segundo os diferentes métodos tratados nos próximos tópicos.

2.3.1 DISTÂNCIA EUCLIDEANA

A medida de distância euclideana é a distância “padrão” entre dois vetores

em um espaço vetorial N-dimensional. É a medida de distância mais conhecida e

mais utilizada nos reconhecedores que não utilizam a análise LPC [2] [3].

Para calcular a distância euclideana, é necessário computar a raiz quadrada

da soma dos quadrados das diferenças entre as componentes individuais dos

vetores. Assim:

T = ��(�} − �}):i}�� (9;. 4.1)

Page 26: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

20

2.3.2 DISTÂNCIA DE MAHALANOBIS

A distância euclideana ponderada funciona bem se não há correlação entre

as propriedades individuais, como se as propriedades selecionadas para nosso

espaço vetorial fossem estatisticamente independentes uma das outras [1].

Como generalização da distância euclideana, há a distância de Mahalanobis,

que por meio da matriz de covariâncias W pondera os parâmetros de acordo com a

sua importância. Assim, a distância de Mahalanobis pode ser definida como:

T = (�~ − �~)� ∙ �� �q ∙ (�~ − �~) (9;. 4.2)

onde, se W = I (Matriz Identidade), caímos no caso da distância euclideana [2].

2.3.3 DISTÂNCIA DE ITAKURA-SAITO

O método Itakura-Saito é comumente aplicado nos parâmetros LPC e possui

como parâmetros ganhos LPC ( Xσ e Yσ ) e matrizes de autocorrelação ( XR e YR ).

T = ��: ∙ �~� ∙ m~� ∙ �~��: ∙ �~� ∙ m~� ∙ �~ + log ���:��:� − 1 (9;. 4.3)

Outro fundamento importante no reconhecimento de voz é a quantização

vetorial, que consiste em estabelecer limites de decisão entre vetores passíveis de

serem observados. Esse processo tem dependência com a probabilidade do evento

[2]. Os detalhes sobre a quantização vetorial não serão abordados no presente

trabalho.

Page 27: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

21

3 METODOLOGIA E RESULTADOS

3.1 DESENVOLVIMENTO DA APLICAÇÃO

A aplicação em questão tem como objetivo principal a pesquisa e não o

desenvolvimento de um produto comercial específico. O que se deseja é abordar

alguns conceitos envolvidos e existentes na área de reconhecimento de fala, não se

preocupando com a invenção.

Todo o desenvolvimento foi feito utilizando o aplicativo matemático MatLab.

Os métodos foram escritos de um modo flexível e modular, ou seja, de modo a

permitir que parâmetros e/ou chamadas de métodos pudessem ser variados a fim de

visualizar diferentes resultados. O desempenho das aplicações não constitui

preocupação principal do projeto e em muitos dos métodos optou-se pela facilidade

do uso ao desempenho.

Foram desenvolvidas quatro aplicações intermediárias que, baseados na

taxa de acerto, objetivaram estudar empiricamente a implicação de determinados

parâmetros relacionados com o reconhecimento de fala.

Todos os métodos escritos estão dispostos e sumarizados no Anexo I deste

trabalho e são apenas citados no texto de acordo com a necessidade.

3.1.1 A BASE DE DADOS

A base de dados constituiu-se de amostras de fala de três falantes, dos

quais dois deles são homens e uma é mulher. O microfone utilizado na coleta das

amostras foi um microfone dinâmico, omnidirecional da marca SONY e modelo

FV33. Como auxílio na gravação e edição dos sinais de voz coletados foi utilizada

uma ferramenta de software de distribuição livre, denominada Audacity. Todos os

falantes pronunciaram naturalmente os dígitos de 0 a 9 que foram, então separados

e subdivididos em fonemas. A separação dos fonemas e dígitos foi feita visual e

auditivamente e foram exportados em arquivos de áudio puro (.wav), para criação da

base de dados. A base de dados foi armazenada diretamente no sistema de pastas

do Windows, tendo, dentro de sua pasta raiz, pastas secundárias correspondentes

aos falantes, dígitos e fonemas.

Page 28: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

22

A transcrição fonética de cada dígito foi feita segundo a tabela 3.1. Além dos

caracteres de representação presentes nesta tabela, também foi criado o caractere

de representação ‘#’ que representa silêncio.

Transcrição Fonética dos Dígitos Dígito Transcrição Variação

0 zEro

1 um

2 dois

3 treis tres 4 kuatro

5 sinko sinku

6 seis

7 sEte sEXi (sEtchi)

8 oito oitu

9 nOve Tabela 3.1: transcrição fonética dos dígitos pronunciados.

Devido ao fato de se utilizar o próprio sistema de pastas do Windows para

armazenar as amostras da base de dados, criou-se alguns métodos de acesso ao

mesmo. Esses métodos são conforme tabela 3.2.

Método Descrição Parâmetros de Entrada

getDBPath Retorna o caminho principal dos arquivos da base de dados -

getDBMatPath Retorna o caminho absoluto das matrizes de parâmetros (.mat) -

getDBMatDigitPath Retorna o caminho das matrizes de parâmetros dos Digitos (.mat) -

getDBMatPhonPath Retorna o caminho das matrizes de parâmetros dos Fonemas (.mat) -

getDBMatTestPath Retorna o caminho das matrizes de parâmetros dos Fonemas para teste (.mat) -

getDBMatTrainPath Retorna o caminho das matrizes de parâmetros dos Fonemas para teste (.mat) -

getDBPhonPath Retorna o caminho dos arquivos dos fonemas, formato .wav, da base de dados

spk - string que representa o falante do sinal. dig - string que representa o digito

Page 29: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

23

getDBDigitPath Retorna o caminho dos arquivos dos dígitos, formato .wav, da base de dados

spk - string que representa o falante do sinal

getWavDigit

Retorna os valores digitalizados referentes a um arquivo .wav de um digito. Recebe como argumento duas string, a primeira representa o falante e a segunda o digito

spk - string que representa o falante do sinal. dig - string que representa o digito

getWavPhon

Retorna os valores digitalizados referentes a um arquivo .wav de um digito. Recebe como argumento duas string, a primeira representa o falante e a segunda o fonema

spk - string que representa o falante do sinal. dig - string que representa o digito. phon - string que representa o fonema.

Tabela 3.2: métodos de acesso à base de dados.

Nas aplicações desenvolvidas, os falantes são definidos pelas palavras:

“konr”, “shig” e “kati”. Há também um conjunto de amostras denominadas pela

palavra “shig3” que foi utilizada em uma das etapas da aplicação 1, conforme será

descrito adiante.

3.1.2 APLICAÇÃO 1: DISTÂNCIA EUCLIDEANA MÍNIMA ENTRE DÍGITOS

Nesta aplicação, utilizou-se o método computeDigits para efetuar o

janelamento e cálculo de coeficientes Mel-Cepstrais para dígitos inteiros,

armazenando as matrizes resultantes em arquivos de extensão mat na base de

dados. Com o método computeRegion, calculou-se os centróides de cada matriz.

Um centróide consiste em um único vetor de parâmetros que representa

todos os vetores da matriz de treino. Na presente aplicação, utilizaram-se dois tipos

de centróides: mediana e média. A figura 3.1 ilustra o cálculo de um centróide para

vetores de parâmetros de 4 quadros.

Page 30: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

24

Figura 3.1: Determinação de centróides para as amostras de testes.

O método reconDigit é utilizado para reconhecer os dígitos, baseando-se no

critério de distância euclideana mínima entre centróides.

A figura 3.2 ilustra a maneira com que o reconhecimento é feito utilizando

como base apenas dois dígitos. Na figura é mostrado um vetor centróide de um

digito de teste que antecipadamente é conhecido como sendo digito 0. Dois outros

centróides de treino são mostrados um correspondente ao digito 0 e outro ao digito

1. O digito de teste é reconhecido então como sendo 0 se seu centróide estiver

euclideanamente mais próximo do centróide do digito 0, caso contrário será

reconhecido como 1. Na figura 3.2, todos os centróides foram calculados a partir da

média dos vetores de parâmetros Mel-cepstrais de todos os quadros de cada dígito

Recapitulando o funcionamento desta aplicação: Dada uma amostra de

teste, essa amostra é computada (computeDigit), tendo como resultado uma matriz

de coeficientes Mel-cepstrais calculados. O centróide dessa matriz é então calculado

como sendo o vetor médio ou o vetor mediana dos seus vetores de parâmetros

(computeRegion). Esse centróide é comparado com os centróides da base de

0 2 4 6 8 10 12-20

-15

-10

-5

0

5

10parametros do quadro 1parametros do quadro 2parametros do quadro 3parametros do quadro 4centroide

Page 31: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

25

dados, sendo o mais próximo, por distância euclideana, o dígito reconhecido.

Figura 3.2: centróide do digito de testes e dígitos 0 e 1.

A tabela 3.3 mostra os cenários utilizados para a verificação de taxas de

acerto para esta aplicação. O objetivo destes cenários é verificar o efeito, na taxa de

acerto, dos seguintes parâmetros:

• Tamanho e sobreposição dos quadros;

• Utilização de janelamento de hamming;

• Utilização de pré-enfase;

• Cálculo do centróide utilizando média e mediana.

Centróide

Valor de pré-

Ênfase

Tamanho dos

Quadros

Sobreposição dos Quadros

Ordem de

Análise Hamming

Cenário 1 Média 0 10 0,5 12 0

Cenário 2 Média 0,9 10 0,5 12 0

Cenário 3 Média 0,97 10 0,5 12 0

Cenário 4 Média 0,97 10 0,5 12 0

Cenário 5 Média 0,97 10 0,8 12 0

Cenário 6 Média 0,97 12 0,8 12 0

0 2 4 6 8 10 12-20

-10

0

10

20

30

40centroide de treino - digito 0centroide de treino - digito 1centroide de teste - digito 0

Page 32: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

26

Cenário 7 Média 0,97 12 0,8 12 1

Cenário 8 Média 0,97 15 0,8 12 1

Cenário 9 Mediana 0 10 0,5 12 0

Cenário 10 Mediana 0,9 10 0,5 12 0

Cenário 11 Mediana 0,97 10 0,5 12 0

Cenário 12 Mediana 0,97 10 0,5 12 0

Cenário 13 Mediana 0,97 10 0,8 12 0

Cenário 14 Mediana 0,97 12 0,8 12 0

Cenário 15 Mediana 0,97 12 0,8 12 1

Cenário 16 Mediana 0,97 15 0,8 12 1 Tabela 3.3: cenários de teste para a aplicação 1.

A coluna ‘centróide’ da tabela 3.3 se refere apenas ao modo de cálculo dos

centróides para a base de dados. Em se tratando das amostras de testes foi utilizado

sempre o vetor médio das matrizes de vetores.

Os resultados obtidos para cada cenário são conforme tabela 3.4, onde o

número 1 representa um acerto e em todos os cenários mostrados na tabela 3.3,

utilizou-se a análise Mel-cepstral com 20 filtros (canais) mel.

Como amostras de treino foram utilizadas as amostras dos três falantes

“kati”, “konr” e “shig”, e como amostras de testes o conjunto “shig3”.

Dígito nº de Acertos

0 1 2 3 4 5 6 7 8 9

Cenário 1 1 1 1 0 0 0 1 1 0 0 5

Cenário 2 1 1 0 1 0 0 0 1 0 1 5

Cenário 3 1 1 0 1 1 0 0 1 0 1 6

Cenário 4 1 1 0 1 1 0 0 1 0 1 6

Cenário 5 1 1 0 1 0 0 0 1 0 1 5

Cenário 6 1 1 0 1 0 0 1 1 0 1 6

Cenário 7 1 1 1 1 1 0 1 1 0 1 8

Cenário 8 1 1 1 1 1 0 0 1 0 1 7

Cenário 9 1 1 1 1 0 0 0 1 0 0 5

Cenário 10 1 1 0 1 1 0 1 1 1 0 7

Cenário 11 1 1 0 1 1 0 1 1 1 0 7

Cenário 12 1 1 0 1 1 0 1 1 1 0 7

Cenário 13 1 1 0 1 1 0 1 1 1 0 7

Cenário 14 1 1 0 1 1 0 1 1 1 0 7

Cenário 15 1 1 1 1 0 0 0 1 1 0 6

Cenário 16 1 1 0 1 1 0 0 1 1 0 6

Tabela 3.4: tabela de resultados para aplicação baseada na distância euclideana entre centróides de dígitos inteiros.

Page 33: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

27

Como se pode observar na tabela 3.4, o melhor resultado foi atingido para o

cenário 7, onde utilizaram-se quadros de 12ms sobrepostos 80%; cálculo dos

centróides a partir da média das amostras de treino, pré-ênfase de 0.97 e

janelamento de Hamming.

Esses mesmos cenários foram testados para análise LPC-Cepstral de

mesma ordem, obtendo um número de acerto muito inferior (média de dois acertos

por cenário). Ainda para os LPC-Cepstrais mais um teste foi realizado substituindo o

critério de reconhecimento, da distância euclideana para distância de Itakura-Saito

[2], mas isso implicou em diminuição do número de acertos (média de um acerto por

cenário). Uma situação semelhante pode ser verificada para a análise LPC.

3.1.3 APLICAÇÃO 2: DISTÂNCIA EUCLIDEANA MÍNIMA ENTRE FONEMAS

Em uma segunda etapa de desenvolvimento, utilizaram-se como dados de

treino os vetores de parâmetros calculados separadamente para cada fonema. Para

testes dessa aplicação, utilizou-se o método separateVectors para separar em duas

partes as matrizes, calculadas e salvas pelo método computePhons: 75% de suas

linhas foram usadas para treino, ou seja, foram utilizadas como padrões na

determinação de parâmetros estatísticos; e a outra parte (25%) são referentes aos

quadros de testes, os quais são comparados com parâmetros estatísticos dos outros

75%. A figura 3.3 ilustra essa separação.

Figura 3.3: ilustração da separação de amostras de treino e teste.

A relação entre quadros de teste e treino é mostrada de forma quantitativa

na tabela 3.5. Para essa tabela utilizaram-se quadros de 12ms com sobreposição de

0,8 e todos os fonemas da base de dados

Page 34: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

28

Quadros # X a d e f i k m n o p r s t u v z

Treino 605 106 131 16 356 344 320 35 102 148 629 184 20 911 136 275 71 79

Teste 201 35 43 5 118 115 107 11 34 49 209 61 7 303 45 91 24 26

Tabela 3.5 – Quantidade de amostras de treino e teste

Novamente o critério utilizado para o reconhecimento dos fonemas foi a da

menor distância euclideana. Assim, dado um vetor de parâmetros de teste x, este é

dito fonema ‘a’ se sua distância euclideana até o centróide dos vetores de treino de

‘a’ for menor que a distância euclideana até os demais centróides comparados.

Os mesmos cenários simulados para a aplicação 1, foram simulados para a

aplicação 2, tendo como foco principal o reconhecimento de fonemas e a utilização

dos parâmetros Mel-cepstrais com vinte filtros. A taxa de acerto resultante para cada

um dos cenários e para cada fonema é conforme tabela 3.6. Três análises podem

ser feitas a partir dessa tabela: análise de resultados globais, análise ponderada

pelo número de ocorrências dentro do vocabulário e análise específica por fonema.

Page 35: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

29

Cenário (Taxa de Acerto em %) Máximo Valor

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

# 59,02 46,72 100,00 100,00 98,40 100,00 100,00 100,00 57,38 36,89 70,49 70,49 67,31 73,95 81,99 76,12 100,00

X 90,91 100,00 100,00 100,00 98,18 95,65 95,65 97,14 90,91 100,00 100,00 100,00 98,18 95,65 95,65 97,14 100,00

a 40,74 74,07 74,07 74,07 75,00 67,86 85,71 83,72 25,93 51,85 59,26 59,26 63,24 57,14 51,79 34,88 85,71

d 25,00 25,00 50,00 50,00 60,00 62,50 37,50 40,00 25,00 50,00 50,00 50,00 60,00 75,00 50,00 40,00 75,00

e 62,50 61,11 56,94 56,94 58,92 54,55 63,64 67,80 34,72 13,89 16,67 16,67 15,68 9,09 1,95 1,69 67,80

E 86,96 91,30 91,30 91,30 91,62 95,97 99,33 100,00 86,96 92,75 92,75 92,75 95,53 96,64 99,33 98,26 100,00

i 38,24 67,65 72,06 72,06 75,44 82,27 73,05 73,83 42,65 75,00 70,59 70,59 75,44 81,56 85,11 84,11 85,11

k 22,22 33,33 11,11 11,11 19,05 25,00 31,25 36,36 44,44 22,22 11,11 11,11 19,05 25,00 25,00 27,27 44,44

m 42,86 38,10 47,62 47,62 49,06 43,18 40,91 44,12 33,33 38,10 38,10 38,10 41,51 43,18 43,18 41,18 49,06

n 9,68 19,36 12,90 12,90 11,39 13,85 0,00 10,20 32,26 29,03 3,23 3,23 12,66 20,00 6,15 24,49 32,26

o 21,71 38,76 37,98 37,98 40,24 43,75 50,37 47,85 24,81 47,29 46,51 46,51 50,92 41,91 54,04 60,29 60,29

O 43,24 62,16 54,05 54,05 60,00 68,35 58,23 60,66 56,76 81,08 75,68 75,68 85,26 81,01 77,22 85,25 85,26

r 85,71 71,43 71,43 71,43 62,50 58,33 75,00 71,43 71,43 71,43 71,43 71,43 68,75 58,33 58,33 57,14 85,71

s 36,22 60,54 48,65 48,65 49,36 51,65 30,79 29,70 35,14 56,76 43,78 43,78 43,43 43,77 33,59 33,66 60,54

t 16,67 10,00 10,00 10,00 8,00 4,92 0,00 0,00 33,33 33,33 33,33 33,33 52,00 54,10 0,00 6,67 54,10

u 66,07 78,57 76,79 76,79 82,52 89,08 93,28 93,41 62,50 69,64 73,21 73,21 73,43 87,40 92,44 94,51 94,51

v 28,57 64,29 64,29 64,29 62,16 61,29 74,19 70,83 28,57 50,00 57,14 57,14 48,65 58,07 58,07 62,50 74,19

z 68,75 75,00 68,75 68,75 76,19 73,53 38,24 73,08 68,75 75,00 75,00 75,00 80,95 73,53 35,29 92,31 92,31

Resultado global para

cenários 46,95 56,52 58,22 58,22 59,89 60,65 58,17 61,12 47,49 55,24 54,90 54,90 58,44 59,74 52,73 56,53

Tabela 3.6: Taxas de acerto para cada cenário e cada fonema de teste.

Page 36: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

30

Analisando os resultados de forma global, observa-se que o melhor

desempenho foi obtido no cenário 8, onde são utilizados quadros de 15ms

sobrepostos 80%. Embora, essa seja uma boa indicação para o uso desse tamanho

de janela, constatou-se que alguns fonemas não possuem duração maior que 14ms,

sendo problemática a computação realizada com quadros nesse tamanho. Dentro da

base de dados utilizada, podem-se citar os fonemas r e t que, pronunciadas por

alguns dos falantes, possuem duração conforme mostra a figura 3.4. Portanto,

apesar de se obter o melhor resultado global, a utilização de quadros de 15ms pode

não ser a melhor opção.

Figura 3.4: Fonemas com duração menor que 15ms.

Descartando-se os cenários 8 e 16, devido à observação de tamanho de

quadros já apontada e se concentrando na análise dos tipos de centróides (média e

mediana), podemos observar que para determinados fonemas, obteve-se um melhor

resultado para os centróides calculados a partir da mediana: '#' (silêncio), 'i', 'O', 's' e

'z'. Para uma verificação dos resultados que se obteriam considerando apenas esses

fonemas calculados como mediana, independentemente da coluna ‘centróide’ da

tabela 3.3, calculou-se a tabela 3.7.

0 2 4 6 8 10 12 14-0.05

0

0.05

0.1

0.15Fonema ' r '

Tempo [ms]

0 2 4 6 8 10 12 14-0.2

0

0.2

0.4

0.6Fonema ' t '

Tempo [ms]

Page 37: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

31

Cenário - centróides mediana/média (taxa de acerto em %) Valor máximo

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

# 60,66 42,62 74,59 74,59 74,68 27,20 15,71 21,39 57,38 36,89 70,49 70,49 67,31 73,95 81,99 76,12 81,99

X 90,91 100,00 100,00 100,00 98,18 95,65 95,65 97,14 90,91 100,00 100,00 100,00 98,18 95,65 95,65 97,14 100,00

a 40,74 74,07 74,07 74,07 75,00 67,86 85,71 83,72 25,93 51,85 59,26 59,26 63,24 57,14 51,79 34,88 85,71

d 25,00 50,00 50,00 50,00 60,00 75,00 50,00 60,00 25,00 50,00 50,00 50,00 60,00 75,00 50,00 40,00 75,00

e 55,56 61,11 55,56 55,56 57,84 56,49 55,84 65,25 34,72 13,89 16,67 16,67 15,68 9,09 1,95 1,69 65,25

E 84,06 91,30 91,30 91,30 91,62 95,97 99,33 99,13 86,96 92,75 92,75 92,75 95,53 96,64 99,33 98,26 99,33

i 44,12 70,59 72,06 72,06 76,02 81,56 78,72 83,18 42,65 75,00 70,59 70,59 75,44 81,56 85,11 84,11 85,11

k 22,22 33,33 11,11 11,11 19,05 25,00 31,25 36,36 44,44 22,22 11,11 11,11 19,05 25,00 25,00 27,27 44,44

m 42,86 38,10 47,62 47,62 49,06 43,18 45,45 44,12 33,33 38,10 38,10 38,10 41,51 43,18 43,18 41,18 49,06

n 12,90 22,58 12,90 12,90 13,92 13,85 21,54 24,49 32,26 29,03 3,23 3,23 12,66 20,00 6,15 24,49 32,26

o 27,91 48,84 46,51 46,51 51,22 44,85 55,51 60,29 24,81 47,29 46,51 46,51 50,91 41,91 54,04 60,29 60,29

O 43,24 67,57 62,16 62,16 63,16 69,62 60,76 70,49 56,76 81,08 75,68 75,68 85,26 81,01 77,22 85,25 85,26

r 71,43 71,43 71,43 71,43 62,50 58,33 75,00 71,43 71,43 71,43 71,43 71,43 68,75 58,33 58,33 57,14 75,00

s 30,81 48,11 43,24 43,24 44,70 47,84 30,53 29,04 35,14 56,76 43,78 43,78 43,43 43,77 33,59 33,66 56,76

t 30,00 36,67 50,00 50,00 48,00 55,74 81,97 75,56 33,33 33,33 33,33 33,33 52,00 54,10 0,00 6,67 81,97

u 62,50 69,64 73,21 73,21 74,13 87,39 92,44 94,51 62,50 69,64 73,21 73,21 73,43 87,39 92,44 94,51 94,51

v 28,57 57,14 71,43 71,43 62,16 58,06 67,74 66,67 28,57 50,00 57,14 57,14 48,65 58,06 58,06 62,50 71,43

z 68,75 68,75 68,75 68,75 78,57 73,53 29,41 84,62 68,75 75,00 75,00 75,00 80,95 73,53 35,29 92,31 92,31

Resultado global para

cenários 46,79 58,44 59,77 59,77 61,10 59,84 59,59 64,86 47,49 55,24 54,90 54,90 58,44 59,74 52,73 56,53

Tabela 3.7: Taxas de acerto para cada cenário e cada fonema de teste com centróides calculados com base na tabela 3.3

Page 38: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

32

Comparando os resultados das tabelas 3.6 e 3.7, pode-se observar que

ocorreu um aumento não muito significativo na taxa de acerto para os cenários que

utilizam a média no cálculo dos centróides (veja, figura 3.5). Esse aumento, porém,

implicou em uma diminuição muito mais significativa na taxa de acerto para o

fonema silêncio (figura 3.6).

Figura 3.5: Gráfico comparativo de resultados globais.

45,00

47,00

49,00

51,00

53,00

55,00

57,00

59,00

61,00

63,00

65,00

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

Cenário

Comparação de resultados globais

centróide calculados de acordo com os cenários

centróides calculados diferenciadamente para fonemas específicos

Page 39: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

33

Figura 3.6: Gráfico comparativo de desempenho para silêncio (#).

3.1.4 APLICAÇÃO 3: REGIÕES DEFINIDAS POR MÚLTIPLOS DO DESVIO

PADRÃO

Esta terceira aplicação baseia-se na criação de regiões, que delimitem os

valores dos coeficientes dos vetores de teste. Assim, se um vetor de teste se

enquadrar em uma determinada região referente ao fonema ‘a’, então se pode dizer,

primariamente, que ele é um ‘a’. Existem, porém, casos em que um único vetor de

teste se enquadra em duas ou mais regiões e, nestes casos o critério de menor

distância euclideana é utilizado.

As regiões foram definidas por múltiplos do desvio padrão conforme ilustra a

figura 3.7. Nessa figura, a região foi calculada para o fonema ‘E’ e mostra o vetor

10,00

20,00

30,00

40,00

50,00

60,00

70,00

80,00

90,00

100,00

110,00

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

Cenário

Comparação de resultados para #

centróides calculados de acordo com os cenários

centróides calculados diferenciadamente para fonemas específicos

Page 40: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

34

centróide, com valores de coeficientes delimitados pelas linhas pontilhadas e

tracejadas. A região hachurada dessa figura é limitada pelos vetores: Região =

centróide +- 3 * desvio padrão. De um modo geral, a região pode ser definida como:

Região = centróide +- k * desvio padrão

Para um valor de constante k=3, teríamos então, para uma distribuição

normal, que cerca de 99,7% dos coeficientes estariam dentro da região delimitada

pelas linhas tracejadas.

Figura 3.7: Figura ilustrativa das regiões de classificação.

Para verificação do funcionamento da aplicação, calcularam-se as taxas de

acerto para os cenários dispostos na tabela 3.3 utilizando parâmetros Mel-Cepstrais

com 20 filtros e uma constante k=3 e k=3.5. Os resultados estão dispostos na figura

3.8, onde, para uma melhor análise dos resultados, preocupou-se apenas com os

cenários que obtiveram resultados acima de 58%.

Page 41: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

35

Figura 3.8: Comparação de resultados globais para constante k=3 e 3,5.

Pode-se observar que aliando o critério da distância euclideana às regiões

delimitadas por múltiplos do desvio padrão obteve-se uma melhoria dos resultados

globais do sistema. Isso implica que um único coeficiente fora da região diminui a

probabilidade da menor distância euclideana ser a mais adequada.

Esta aplicação poderia ser melhorada pelo estudo e definição de regiões

baseadas em funções de densidade de probabilidade definidas individualmente para

cada coeficiente, pois a distribuição estatística de determinados coeficientes não é

normal, conforme será mostrado na aplicação 4. Em outras palavras, a região

centróide +- k x desvio_padrão, se enquadra bem para distribuições normais, porém

para outras distribuições pode não ser a mais adequada.

58,00

58,50

59,00

59,50

60,00

60,50

61,00

61,50

62,00

62,50

63,00

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

Cenário

Comparação de resultados globais

centróides calculados de acordo com os cenários

regiões - k=3

regiões - k=3,5

Page 42: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

36

3.1.5 APLICAÇÃO 4: PONDERAÇÃO DE DISTÂNCIA EUCLIDEANA POR

REGIÕES BASEADAS EM HISTOGRAMAS

Nesta aplicação, ao invés de definir regiões delimitadas por valores de

desvio padrão, optou-se pela ponderação da distância euclideana pelo histograma

estatístico de cada coeficiente. A figura 3.9 mostra o histograma do primeiro

coeficiente do vetor de parâmetros para o fonema ‘a’.

Figura 3.9: Histograma do primeiro coeficiente ao longo dos quadros da letra a.

A figura 3.10 ilustra a disposição das regiões de ponderação de uma das

matrizes de coeficientes computadas. Cada linha pontilhada delimita a fronteira de

uma região e para cada região, tem-se um valor de ponderação baseada na

ocorrência.

-2.5 0.12 2.74 5.36 7.98 10.6 13.22 15.84 18.46 21.080

10

20

30

40

50Histograma do primeiro coeficiente

centros das regioes

Oco

rren

cia

do v

alor

0 50 100 150 200 250-5

0

5

10

15

20

25Valores absolutos ao longo dos quadros

quadros de treino

valo

r do

prim

eiro

coe

ficie

nte

Page 43: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

37

Figura 3.10: Regiões baseadas em histogramas.

Para comparar os resultados com os demais aplicativos, calculou-se as

taxas de acerto para os mesmos cenários da aplicação 1, conforme tabela 3.3. Os

resultados estão dispostos na tabela 3.8. Como se pode observar nos resultados

globais, a taxa de acerto utilizando a ponderação da distância é bem menor que

aquela atingida apenas utilizando o critério de distância euclideana simples. Isso

ocorre devido às diferentes distribuições estatísticas de cada um dos coeficientes de

cada falante. A figura 3.11 mostra os histogramas correspondentes ao primeiro

coeficiente para os falantes em separado. Pode-se notar através dessa figura, que a

distribuição da ocorrência dos valores se difere de falante para falante o que implica

em um aumento da taxa de erro para um sistema independente do falante.

0 2 4 6 8 10 12-40

-30

-20

-10

0

10

20Regioes baseadas em histogramas

Coeficientes Mel-Cepstrais

cetroide

Page 44: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

38

Cenário - Utilizando Ponderação da Distância (Taxa de Acerto em %) Máximo Valor

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

# 29,51 58,20 66,39 66,39 65,39 73,56 85,82 82,59 26,23 46,72 55,74 55,74 52,89 60,92 79,31 76,12 85,82

X 0,00 13,64 18,18 18,18 18,18 13,04 4,35 2,86 0,00 18,18 18,18 18,18 20,00 17,39 2,17 2,86 20,00

a 3,70 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 3,70

d 75,00 75,00 50,00 50,00 60,00 62,50 50,00 40,00 75,00 75,00 50,00 50,00 60,00 87,50 62,50 40,00 87,50

e 4,17 0,00 0,00 0,00 1,08 0,00 0,00 0,00 1,39 0,00 0,00 0,00 1,08 0,00 0,00 0,00 4,17

E 18,84 2,90 4,35 4,35 15,64 9,40 0,67 0,00 17,39 8,70 4,35 4,35 15,64 9,40 0,67 0,00 18,84

i 16,18 0,00 2,94 2,94 15,79 5,67 0,71 0,00 16,18 5,88 5,88 5,88 16,96 6,38 1,42 0,00 16,96

k 11,11 0,00 0,00 0,00 4,76 12,50 12,50 9,09 11,11 0,00 0,00 0,00 4,76 18,75 6,25 9,09 18,75

m 19,05 14,29 4,76 4,76 20,76 13,64 9,09 23,53 23,81 9,52 4,76 4,76 20,76 11,36 9,09 23,53 23,81

n 6,45 3,23 0,00 0,00 2,53 0,00 0,00 0,00 29,03 6,45 0,00 0,00 3,80 1,54 0,00 0,00 29,03

o 20,16 4,65 5,43 5,43 12,50 6,62 0,00 0,00 22,48 6,20 5,43 5,43 13,72 6,62 0,00 0,00 22,48

O 13,51 8,11 5,41 5,41 12,63 8,86 0,00 0,00 18,92 10,81 10,81 10,81 15,79 7,59 0,00 0,00 18,92

r 71,43 14,29 0,00 0,00 12,50 25,00 8,33 0,00 71,43 14,29 0,00 0,00 12,50 33,33 16,67 14,29 71,43

s 13,51 28,11 31,89 31,89 34,75 32,32 17,05 15,18 15,14 33,51 25,95 25,95 27,54 28,75 14,76 14,52 34,75

t 6,67 6,67 6,67 6,67 5,33 3,28 0,00 0,00 20,00 26,67 53,33 53,33 49,33 57,38 4,92 6,67 57,38

u 21,43 5,36 5,36 5,36 9,09 10,92 0,00 0,00 23,21 5,36 5,36 5,36 7,69 12,61 0,00 0,00 23,21

v 35,71 7,14 21,43 21,43 16,22 9,68 6,45 8,33 28,57 14,29 14,29 14,29 13,51 12,90 3,23 8,33 35,71

z 31,25 37,50 43,75 43,75 52,38 50,00 50,00 53,85 31,25 62,50 43,75 43,75 52,38 50,00 50,00 53,85 62,50

Resultado global para

cenários 22,09 15,50 14,81 14,81 19,97 18,72 13,61 13,08 23,95 19,12 16,55 16,55 21,58 23,47 13,94 13,85

Tabela 3.8: Taxas de acerto para aplicação 4.

Page 45: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

39

Figura 3.11: Comparação de histogramas.

0 100 200 300 400 500 600 70020

30

40

50

60

70coeficiente 1 da falante 'kati'

quadros

0 50 100 150 200 250 30020

30

40

50

60

70coeficiente 1 da falante 'shig'

quadros

0 50 100 15010

20

30

40

50

60

70coeficiente 1 do falante 'konr'

quadros

10 20 30 40 50 60 700

50

100

150

200histograma do coeficiente 1 ('kati')

ocor

renc

ia

10 20 30 40 50 60 700

5

10

15

20

25

30

35histograma do coeficiente 1 ('konr')

ocor

renc

ia

10 20 30 40 50 60 700

10

20

30

40

50

60

70histograma do coeficiente 1 ('shig')

ocor

renc

ia

Page 46: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

40

3.2 APLICAÇÃO DE TESTES

A aplicação de testes constitui-se do método testReadWav o qual lê, através

do método wavrecord do MatLab, uma entrada de áudio do computador retornando

na saída de áudio (wavplay) o sinal lido e na saída do matlab a palavra

reconhecida.

No método testReadWav, podem ser chamados dois outros métodos:

reconDigitPhon e reconDigit. Se o primeiro for chamado, a saída do MatLab

mostrará algo do tipo: ##dz#ssszeeeeEEEErroo#rodd## . Se for chamado o

segundo, a saída é o digito reconhecido pelo sistema.

O funcionamento desta aplicação depende dos valores computados na base

de dados para arquivos de extensão mat, o que significa que os resultados obtidos

dependem dos cenários utilizados para o cálculo das matrizes armazenadas.

Portanto, para testes desta aplicação, são computados todos os fonemas e regiões,

para cenários específicos, a fim de inserir na base de dados as matrizes padrões

para as comparações realizadas pela aplicação de testes.

Nesta aplicação de testes, constatou-se que a maior parte dos erros ocorre

ao computar sinais nos quais existem muitos quadros de silêncio nas bordas do sinal

de voz propriamente dito. Quando o sinal está ausente de silêncio, ou seja, se

enquadra perfeitamente no tempo de leitura da entrada de áudio, na maior parte das

vezes, o sistema acerta o resultado. Tal deficiência poderia ser contornada se

fossem utilizadas outras técnicas como o DTW e taxa de cruzamento por zero, para

“limpar” o sinal, extraindo somente a parte relevante no reconhecimento.

Page 47: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

41

4 CONCLUSÕES

Visto as motivações deste trabalho, os sistemas desenvolvidos atingiram

uma taxa de acerto razoável, de modo geral em torno de 60%. Dentre todos os

sistemas desenvolvidos, o de melhor resultado foi a aplicação 3, que se baseou em

regiões limites para os coeficientes dos vetores de parâmetros.

Foi possível observar também que os parâmetros Mel-Cepstrais obtiveram

melhores resultados que os parâmetros baseados na predição linear, mesmo

quando nestes foram aplicadas o algoritmo de Itakura-Saito para o cálculo da

distâncias entre centróides.

Os resultados apresentados neste trabalho utilizaram os coeficientes Mel-

Cepstrais com ordem de análise 12. É sabido, embora não apresentado, que o

aumento da ordem de análise melhora a taxa de acerto do sistema, aumentando,

por outro lado a carga computacional do mesmo. Assim como a ordem de análise, o

presente texto não explorou de forma aprofundada o desempenho de parâmetros

LPC’s, embora o sistema desenvolvido comportasse.

Enfim, desenvolveu-se um sistema bastante robusto que permite realizar

uma grande quantidade de análises além de ser modularmente capaz de ser

expandido para agregar outros métodos baseados em toda a gama de conceitos

envolvidos no reconhecimento de fala. Além disso, as bases de dados de voz

podem, de maneira relativamente fácil, ser incrementadas com mais amostras de

mais falantes.

O sistema comporta testar uma grande quantidade de cenários que não

foram cobertos por este trabalho. Contudo, uma boa noção pôde ser adquirida na

realização do mesmo.

Page 48: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

42

REFERÊNCIAS BIBLIOGRÁFICAS

[1] RABINER, L e SCHAFER, R. Introduction to Digital Speech Processing.

Fundations and Trends in Signal Processing, Vol. 1, 2007.

[2] BECERRA, N. Reconhecimento Automático de Palavras Isoladas: Est udo e

Aplicação dos Métodos Determinísticos e Estocástico . Campinas: Unicamp,

1993

[3] PLANNERER, B. An Introduction to Speech Recognition. University of Munich,

Germany, 2005.

[4] Fonemas. Disponível em <http://pt.wikipedia.org/wiki/Fonemas>. Acesso em

Setembro de 2008.

[5] HUANG, X; ACERO, A; e HON, H. Spoken Language Processing – A Guide to

Theory, Algorithm and System Development. Upper Saddle River: Prentice Hall,

2001.

[6] BOGERT, P., HEALY, M. J. R, and TUKEY, J. W. The quefrency analysis of

times series for echos: Cepstrum, pseudo-autocovari ance, cross-cepstrum,

and saphe cracking. Proceedings of the Symposium on Time Series Analysis. New

York: John Wiley and Sons, Inc., 1963.

[7] DAVIS, S. B. and MERMELSTEIN, P. Comparison of parametric

representations for monosyllabic word recognition i n continuously spoken

sentences. IEEE Transactions on Acoustics, Speech and Signal Processing, vol. 28,

pp. 357–366, August 1980

Page 49: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

43

ANEXO I

SUMÁRIO DOS MÉTODOS

Tabela de descrição dos métodos de computação.

Page 50: ALLAN SHIGUETO AKISHINO GRR20040179 MARCOS PAULO … · Tabela 3.5 – Quantidade de amostras de treino e tes te ..... 28 Tabela 3.6 – Taxas de acerto para cada cenário e ca da

44

Método Descrição Parâmetros de Entrada

computeLPC

Calcula os coeficientes LPC's de um sinal de entrada digitalizado, formato .wav. Os coeficientes são retornados em formato de matriz, onde cada linha corresponde a um quadro e cada coluna a um coeficiente LPC.

x - sinal wav. Fs - taxa de amostragem do sinal. ms - tamanho dos quadros no janelamento. ol - sobreposição dos quadros. lpcOrder - ordem da análise LPC.

computeLPCCepstral

Calcula os coeficientes LPC's cepstrais de um sinal de entrada digitalizado, formato .wav. Os coeficientes são retornados em formato de matriz, onde cada linha corresponde a um quadro e cada coluna a um coeficiente LPC-cepstral.

x - sinal wav. Fs - taxa de amostragem do sinal. ms - tamanho dos quadros no janelamento. ol - sobreposição dos quadros. lpcOrder - ordem da análise LPC.

computeMelCepstral

Calcula os coeficientes Mel cepstrais de um sinal de entrada digitalizado, formato .wav. Os coeficientes são retornados em formato de matriz, onde cada linha corresponde a um quadro e cada coluna a um coeficiente Mel-cepstral.

x - sinal wav. Fs - taxa de amostragem do sinal. ms - tamanho dos quadros no janelamento. ol - sobreposição dos quadros. lpcOrder - ordem da análise LPC. nofFilters - número de filtros utilizados na análise. applyHam - argumento booleano que indica se o janelamento de hamming será aplicado aos quadros quando no cálculo dos coeficientes.

computeDigits

Calcula e salva as matrizes de parâmetros para todos os dígitos do falante determinado por um de seus argumentos de entrada. Nas matrizes salvas, cada linha se refere a um quadro e cada coluna um coeficiente.

spk - string que representa o falante do sinal. emphRadius - valor do raio de pré-ênfase. analisis - tipo de análise (MCC, LPC, ...). FS - taxa de amostragem dos sinal. MS - tamanho dos quadros (ms) no janelamento. OL - sobreposição dos quadros. HAM - parâmetro booleano para aplicação de hamming. ORDER - ordem da análise. NOF_FILTERS - número de filtros na análise Mel-cepstral

computePhons

Calcula e salva as matrizes de parâmetros para todos os fonemas do falante determinado por um de seus argumentos de entrada. Nas matrizes salvas, cada linha se refere a um quadro e cada coluna um coeficiente.

Idem computeDigits.

computeRegion Calcula parâmetros adicionais das matrizes calculadas e salvas na base de dados.

cType - tipo de cálculo para o vetor centróide. Exemplo: média ou mediana. matPath - caminho dos arquivos .mat na base de dados.

separateVectors Separa as matrizes de parâmetros em vetores linhas de teste e de treino.

perc - porcentagem de vetores de treino a serem separados.