• Nenhum resultado encontrado

RECONHECIMENTO DE COMANDOS DE VOZ PARA O ACIONAMENTO DE CADEIRA DE RODAS

N/A
N/A
Protected

Academic year: 2021

Share "RECONHECIMENTO DE COMANDOS DE VOZ PARA O ACIONAMENTO DE CADEIRA DE RODAS"

Copied!
6
0
0

Texto

(1)

RECONHECIMENTODECOMANDOSDEVOZPARAOACIONAMENTODECADEIRADE RODAS

JÉSUS A. O. NETO, MARCO A. A. CASTRO , LEONARDO. B. FELIX Núcleo Interdisciplinar de Análises de Sinais - NIAS

Departamento de Engenharia Elétrica - DEL Universidade Federal de Viçosa - UFV Av. P. H. Holfs, sn, CEP 36570-000, Viçosa - MG

Fone: (31) 3899-3266 / 3899-3268

E-mails: pity_jesus@hotmail.com, maurelioac@ufv.br, leobonato@ufv.br.

Abstract The aim of this paper is to present a system that recognizes voice commands for the application in a wheelchair. This system was applied to a prototype that recognizes a limited number of command and triggers its motors. The controller was designed using the theories of signal processing, mathematical modeling and neural networks. For implementation of the work we used the algorithms of Linear Prediction Coefficients (LPC), Auto-Regressive model (AR) and Cepstral Coefficients (CC). The prototype was made from the model PIC 18F4450 microcontroller from Microchip®, small DC motors and a simple H bridge.

.Keywords Speech Recognition; Digital Signal Processing; Artificial Neural Network.

Resumo O objetivo desse trabalho é apresentar um sistema de reconhecimento de comandos de voz para a aplicação em ca-deira de rodas. Esse sistema foi aplicado a um protótipo que reconhece um número limitado de comandos e aciona seus motores. O controlador foi projetado utilizando-se as teorias de processamento de sinais, modelagem matemática e redes neurais artifici-ais. Para implementação do trabalho utilizaram-se os algoritmos de Coeficientes de Predição Linear (LPC), o modelo Auto-Regressivo (AR) e os Coeficientes Cepstrais. A montagem do protótipo foi realizada a partir do microcontrolador PIC modelo 18F4450 da Microchip®, de pequenos motores de corrente continua e de uma ponte H simples.

Palavras-chave Reconhecimento de Voz; Processamento Digital de Sinais; Redes Neurais Artificiais.

1 Introdução

A voz é uma característica humana intimamente relacionada à necessidade do homem de se agrupar e de se comunicar. Trata-se de um trabalho do sistema nervoso, em conjunto com os sistemas respiratório e digestivo, além da ligação com os músculos, ligamen-tos e ossos, harmoniosamente, atuam, para emissão eficiente.

A constante evolução tecnológica faz do reconheci-mento de fala um campo de estudo fascinante, pois, pode ter aplicações em diversas áreas do conheci-mento.

Atualmente, sistemas que permitem a comunicação mais natural entre o homem e a máquina ainda não estão completamente dominados. O principal obstá-culo a esse desafio é devido à grande complexidade de implementação de um sistema que seja capaz de modelar a não linearidade do ouvido humano. Os sistemas de reconhecimento de voz podem dividi-dos em três grupos: Identificação Automática de Lo-cutores (ASR, Automatic Speaker Recognition), no qual o sistema deve ser capaz de identificar diferentes locutores em um conjunto fixo de indivíduos; Verifi-cação Automática de Locutores (ASV, Automatic Speaker Verification), no qual verifica-se apenas se a voz capturada é autorizada, ou seja, se o locutor está cadastrado e Reconhecimento de Comandos

Inde-pendente do Locutor (RCIL), o qual reconhece pala-vras pronunciadas não importando o locutor (NIQUINI, 2007).

Em virtude de esses sistemas não necessitarem do uso das mãos ou dos olhos, os mesmos podem ser utili-zados nas mais diversas aplicações, como, por exem-plo:

- O sistema Identificação Automática de Locutores (ASR) pode ser utilizado na autenticação e no contro-le de acesso a locais restritos, em transações via tecontro-le- tele-fone e no uso forense;

- O sistema Verificação Automática de Locutores (ASV) pode ser aplicado a sistemas de segurança com senha restrita a alguns usuários;

- O sistema Reconhecimento de Comandos Indepen-dente do Locutor (RCIL) pode ser utilizado para agi-lizar operações realizadas por máquinas, as quais passariam a responder diretamente pela interpretação da fala do operador, não pela dependência de opera-ções manuais. Além disso, poderiam tornar mais simples a vida de pessoas com deficiência físicas, auxiliando-as na realização das tarefas cotidianas, e/ou auxiliando-as no controle dos instrumentos au-tomobilisticos.

As primeiras técnicas de reconhecimento de locutores eram baseadas nas análises de espectrogramas e na audição humana. Espectrograma é a representação das várias frequências de um dado sinal ao longo do tempo, ou seja, as identificações de quais frequências

(2)

estão presentes em cada janela temporal e quais são as suas intensidades. Todavia, tais técnicas são muito subjetivas e dependem de especialistas muito bem treinados para uma correta identificação.

Assim, essas técnicas passaram, a partir de 1966 na Inglaterra, a serem admitidas como válidas para a identificação de indivíduos em casos forenses. Atu-almente, no Brasil, essas técnicas ainda são utilizadas (TIMOSZCZUK, 2004).

Hoje, muitas são as técnicas utilizadas para reconhe-cimento, mas, dentre as principais, pode-se destacar as estatísticas e as determinísticas.

Nas técnicas estatísticas, as comparações de padrões são feitas pela medida da função de verossimilhança ou de probabilidade condicional, a partir da observa-ção de um modelo. As principais são: Modelos de Misturas Gaussianas (GMM, Gaussians Mixtures Models) e Modelos Ocultos de Markov (HMM, Hid-den Markov Models).

Nos GMMs, as probabilidades de ocorrência dos ve-tores de atributos para cada locutor são modeladas por meio de combinações ponderadas de variáveis aleatórias vetoriais e funções de densidade de proba-bilidade (PDF) Gaussiana. Os GMMs são usados com excelentes resultados em aplicações independentes de texto (MAFRA, 2002).

Já os HMMs, são modelos com grandes capacidades de modelar as dependências temporais associadas aos sinais de voz. Eles demonstram os melhores resulta-dos em aplicações dependentes de texto (MAFRA, 2002).e são largamente utilizados atualmente, sendo úteis, inclusive, para modelos de sistemas corrompi-dos por ruícorrompi-dos, devido à utilização de modelos pro-babilísticos para representação dos sistemas (OLIVEIRA & MORITA, 2005).

Com relação às técnicas determinísticas, o padrão é assumido sendo réplica perfeita e o processo de ali-nhamento faz-se necessário para calcular a distância (PARREIRA, 2005). Os principais métodos determi-nísticos são os embasados em Dynamic Time War-ping (DTW), em Quantização Vetorial (QV), em Re-des Neurais Artificiais e Classificadores Polinomiais. As Redes Neurais Artificiais, as quais foram aplica-das nesse trabalho, são modelos conexionistas, com capacidade de adaptação de respostas não-lineares, de reconhecimento e de classificação de padrões está-ticos. Segundo HOMAYOUNPOUR & CHOLLET (1995), quando associadas à quantização vetorial, seu desempenho é comparável ao dos GMMs (MAFRA, 2002). Segundo HUANG et. al. (2001), quando utili-zadas para pequenos vocábulos, pequenas e isoladas unidades de discurso, chegam a responder com um desempenho superior às estruturas que utilizam HMM.

Esse trabalho tem o objetivo de implementar um sis-tema de reconhecimento de comandos com locutores restritos em um pequeno vocabulário.

O sistema deve ser capaz de identificar qual a palavra pronunciada pelo locutor e, para isso, esse trabalho utilizou várias técnicas conjugadas, a fim de

minimi-zar ruídos e interferências. Para a caracterização dos sinais, foram utilizados os Coeficientes Cepstrais (Cepstrum) (TIMOSZCZUK, 2004), os Coeficientes de Predição Linear (LPC) (HUANG et. al., 2001) e os coeficientes de um modelo Auto Regressivo (AR) (THE MATHWORKS INC, 2002b). Para a identifi-cação e para a interpretação dos padrões, foram zadas Redes Neurais Artificiais (RNA), com a utili-zação de estruturas MLP (Multi-Layer Perceptrons - Perceptrons Multicamadas) (THE MATHWORKS INC, 2002a).

Como testes para a viabilidade do protótipo, utiliza-ram-se as seguintes palavras: frente, recue, direita, esquerda e pára. Todos locutores são do sexo mascu-lino com idades entre 19 e 25 anos de idade. Todos os testes foram realizados em um pequeno protótipo, composto por dois motores de corrente continua sim-ples, uma ponte H (para possibilitar a inversão do sentido de rotação do motor) e um microcontrolador, o qual recebeu os dados do computador via USB e enviou o comando para o protótipo.

2 Método proposto

O trabalho consiste na elaboração de um sistema de reconhecimento de comandos, independente do locutor e com finalidade de produzir um protótipo de uma cadeira de roda para reabilitação de pessoas com deficiência incapazes de se locomover de forma dire-ta.

O diagrama de blocos da figura 1 mostra as etapas necessárias no processo de reconhecimento de voz.

Figura 1. Etapas do Trabalho

Nas seções seguintes serão descritas as etapa desse diagrama.

2.1 Aquisição dos Dados

Visto que a voz humana está em um faixa de fre-qüência de 80 Hz a 3.5 kHz (BRANDÃO, 2006), para a aquisição dos dados utilizou-se uma taxa de amostragem de 11025 Hz em um único canal, com codificação PCM de 16 bits, atendendo o critério de Nyquist no teorema da amostragem. Os equipamen-tos utilizados nas gravações de voz são descriequipamen-tos a seguir:

- Duas diferentes placas de som: Beringher UAC200 (própria para gravação em estúdio) e Conexant (Inte-grada ao computador Dell inspiron 1525);

(3)

- Microfones: condensados (próprio para gravação de voz), integrado do computador (Dell inspiron 1525) e microfone externo simples;

Deve-se ressaltar que as diferentes placas de som e os diferentes microfones foram necessários para retirar efeitos devido a diferentes sistemas de aquisição, tornando o algoritmo funcional em vários computa-dores.

Em todas as gravações utilizou-se um programa de-senvolvido para auxiliar a interação com o usuário (figura 2).

Figura 2. Programa de Gravação Desenvolvido

O programa, além de gravar os comandos de voz, mostra o gráfico do sinal gravado, o que facilita uma análise instantânea do nível de ruído externo e, tam-bém, o descarte de gravações com muitas interferên-cias externas.

No total, foram realizadas 1021 gravações dos co-mandos: direita, esquerda, siga, parar e recue. Cada gravação teve duração de 2 segundos, e envolveu 14 pessoas, do sexo masculino, de diversos sotaques com idades entre 18 e 25 anos.

2.2 Pré - Processamento

Após a aquisição dos dados, foi realizado um pré-processamento para tratar o sinal de modo a normalizar os dados entre -1 e 1 (equação 1) e, cortar apenas a faixa de interesse do sinal da voz.

) ( max ) ( = y(n) n x n x (1)

Após a normalização, o sinal foi filtrado com objeti-vo de limitar a freqüência entre 80 Hz e 3500Hz (de-vido a voz masculina esta compreendida nesta faixa) (BRANDÃO, 2006). Nesse processo, um filtro passa-faixa Butterworth digital de ordem 10 foi utilizado com a seguinte resposta em freqüência (figura 3):

Figura 3. Resposta em freqüência do Filtro Butterworth Passa-Faixa de ordem 10 com freqüências de corte 80Hz e 3500Hz É perceptível a não-oscilação e o corte abrupto na banda de passagem do filtro. Entretanto, grande dis-torção de fase foi gerada pelo filtro IIR Butterworth. Para evitar problema de distorção de fase foi necessá-ria a utilização de uma filtragem com inversão de tempo (THE MATHWORKS INC, 2002b) (figura 4):

Figura 4. Filtragem com inversão no tempo

O processo de filtragem com inversão de tempo é constituído de duas etapas: a primeira, na qual o sinal é filtrado pelo filtro Butterworth e a segunda, na qual o sinal é invertido no tempo e filtrado novamente para a obtenção de um sinal sem distorção de fase. Por fim, o sinal foi cortado utilizando um método empírico de energia do sinal (equação 2):

 N 1 n 2 ) ( = E x n (2)

O método consiste, primeiramente, em eliminar ruí-dos externos e região de silêncio. Para isso, foi detec-tado o ponto máximo do sinal e o mesmo foi cordetec-tado para ter a duração de 1s, sendo centralizado no ponto máximo. Logo após, definiu-se o tamanho de 0,01s para o janelamento do sinal, e verificou-se a energia das diversas janelas. Para a detecção de início, defi-niu-se os valores limiares com base na energia do sinal e para diferenciar as regiões de silêncio e de voz. Adotou-se o valor de 0,5 J para o início e 0,2 J para o fim (valores determinados empiricamente).

2.3 Extrações das Características

A extração das características corretas é uma das mais importantes etapas no reconhecimento de voz. Para esse trabalho, são analisadas três propostas: os Coeficientes Cepstrais (Cepstrum) (TIMOSZCZUK,

(4)

2004), os Coeficientes de Predição Linear (LPC) (HUANG, 2001) e os coeficientes de um modelo Auto Regressivo (AR) (THE MATHWORKS INC, 2002).

Coeficientes Cepstrais

A partir da modelagem matemática da voz, como citado anteriormente, é possível estimar coeficientes que descrevam a fonte geradora. Esse método consis-te na desconvolução de dois sinais de freqüência dis-tintas.

h(n) x(n) =

y(n)  (3)

Aplicando-se a Transformada de Fourier à equação 3, pode-se decompor a convolução no tempo em uma multiplicação no domínio da freqüência, aplicando-se logaritmo devido a sua propriedade de adição (equa-ção 4). H(jw) log X(jw) log Y(jw) log   (4)

Fazendo a transformada inversa de Fourier na equa-ção 4, obtém-se o Cepstrum. Para extrair os Coefici-entes Cepstrais é necessário retirar os primeiros coe-ficientes do Cepstrum. Esses coecoe-ficientes serão uma estimativa da fonte geradora devido a sua alta fre-qüência.

Nesse trabalho foram extraídos apenas os 12 primei-ros coeficientes, as quais serão a entrada da rede neu-ral.

Coeficientes de Predição Linear (LPC) e Modelo Auto-Regressivo (AR)

A extração de Coeficientes de Predição Linear (LPC, Linear Predictive Coding) consiste em rela-cionar determinado sinal de voz, através de combina-ções lineares entre as amostras de voz passadas atra-vés da minimização do quadrado da diferença entre a amostra atual e as obtidas, resultando em uma função de transferência sem pólos

Os coeficientes de um preditor linear de i-ésima or-dem poor-dem ser representados pela equação 5, na qual x é o sinal e a(i) é o i-ésimo Coeficiente LPC. ) ( ) 1 ( ... )... 2 ( ) 3 ( ) 1 ( ) 2 ( ) ( ˆ i n x i a n x a n x a n x         (5)

A estimativa de um Modelo Auto-Regressivo (AR) é um método bastante semelhante ao anterior, porém possui a diferença de construir uma função de trans-ferência sem zeros.

A função de transferência discreta pode ser represen-tada pela equação 6, na qual H(z) é a função de

trans-ferência em Z do modelo AR, an é i-ésimo coeficiente estimado do modelo AR.

i z a z a z a a      i1  3 3 1 2 1 ... e = H(z) (6)

Neste trabalho fez-se a Transformada de Fourier do sinal de voz e retirou-se apenas a primeira metade do sinal no domínio da frequência.

Tanto o sinal de voz no domínio da freqüência quan-to o sinal de voz no domínio do tempo foram dividi-do em cinco partes iguais e de cada parte foi extrain-do 10 coeficientes AR e 10 LPC, totalizanextrain-do 50 coe-ficientes AR do sinal no tempo e no domínio da fre-quência e 50 coeficientes LPC do sinal no tempo e no domínio da frequência.

Esses coeficientes foram normalizados segundo a equação 7 (BRANDÃO, 2005). 1 )) ( min( )) ( max( )) ( min( ) ( 2 = y(n)    n x n x n x n x (7)

Ao final da extração das características obtiveram-se os seguintes parâmetros (tabela 1):

Tabela1 – Características extraídas Características Número de coeficientes Rede Neural CC 12 1 LPC 50 2 AR 50 3 FFTAR 50 4 FFTLPC 50 5

As siglas FFTAR e FFTLPC indicam os parâmetros extraídos do sinal de voz na freqüência.

O algoritmo utilizou 5 RNAs diferentes, sendo uma para cada característica presente na tabela 1

3.4 Treinamentos das Redes

O modelo de Redes Neurais Artificiais (RNA) utilizado é a estrutura MLP (Multi-Layer Percep-trons, Perceptrons Multicamadas) de 3 camadas, com função de ativação tansig para as camadas ocultas e purelin para a camada de saída. O algoritmo de trei-namento utilizado foi o Levenberg-Marquardt back-propagation, devido a sua convergência rápida. Para cada característica presente na tabela 1 criou-se uma rede, com o objetivo de, posteriormente, fazer um pós-processamento. Foram retirados 20% dos dados para validação e outros 20% para teste. Criou-se um programa de treinamento de Rede Neu-ral envolvendo a técnica de Early Stop. Esse progra-ma gerou, randomicamente, o número de neurônios de cada camada e treinou as redes, de forma que a

(5)

RNA que tivesse o menor erro quadrático médio era gravada.

3.5 Pós - Processamento

Devido à saída do sistema ser uma resposta de cinco redes neurais, foi necessário a um pós-processamento para reduzir os erros de resposta das Redes Neurais.

Nessa etapa verificou-se o erro quadrático entre a resposta da rede e o seu valor de convergência. Reti-rou-se das respostas neurais apenas aquelas com er-ros menores que 0,025 e logo após, o sistema deter-minava o número de respostas do mesmo comando. Assim, a resposta de maior ocorrência seria a respos-ta do sistema e em caso de resposrespos-tas iguais o sistema tem como saída a seguinte mensagem: “sem respos-ta”.

4 Resultados e Discussões

4.1 Programas Implementados

Foram implementados três programas diferentes: - Reconhecimento de Comandos (figura 5): ao clicar em ‘Gravar’ o sistema reconhece o comando falado pelo usuário;

- Reconhecimento de Comandos em Tempo Real: o programa não necessita do clique para o reconheci-mento, é necessário apenas que o usuário diga o co-mando próximo ao microfone;

- Reconhecimento de Comandos em Tempo Real Acoplado ao Protótipo: o programa tem o mesmo funcionamento que o anterior diferenciando apenas que este comanda o protótipo.

Figura 5. Programa de Reconhecimento de Comandos

4.2 Protótipo

Como a finalidade é demonstrar a aplicação de-sejada, o protótipo da cadeira de rodas teve caracte-rísticas bem simples, conforme é exemplificado a seguir.

Para a comunicação do computador protótipo, utili-zou-se o microcontrolador PIC modelo 18F4450 da Microchip®, devido a sua praticidade em comunica-ção USB. Esse componente faz a comunicacomunica-ção lógica do programa criado com a ponte H L298, o qual por sua vez, controla a rotação dois pequenos motores de corrente contínua 12 V o qual é acoplados a cadeira. A figura esquemática do circuito básico é apresenta-da a seguir (figura 6):

Figura 6. O protótipo da cadeira de rodas

4.3 Resultados dos Treinamentos das Redes

Foram testadas 300 configurações de redes dife-rentes para cada característica, obtendo-se os melho-res melho-resultados, os quais são mostrados a seguir:

Tabela 2. Resultados do Treinamento

Características Erro quadrático Neurônio camada oculta

1° 2° 3° CC 0.0717 8 18 4 LPC 0.0268 9 11 16 AR 0.0142 15 8 9 FFTAR 0.0089 8 9 13 FFTLPC 0.1236 13 15 9

Devido aos baixos erros, pose observar o que de-sempenho do dos coeficientes FFTAR, AR, LPC é alto;

4.4 Validação do Programa

Foram feitos vários testes com os programas fi-nais. Esses testes envolveram pessoas presentes e não presentes no banco de dados. Obteve-se assim, um acerto em torno de 87 % para pessoas do banco de dados e 75 % para pessoas que não participaram do banco de dados.

5 Conclusão

Esse trabalho apresentou um sistema de Reco-nhecimento de Comandos com Locutores Restritos

(6)

em um pequeno vocabulário. O sistema identificou o comando dado pelo locutor para acionar um protóti-po de uma cadeira de rodas.

Para extração das características do sinal de voz utili-zou-se de várias técnicas de modelagem conjugadas como os Coeficientes de Predição Linear (LPC), Cepstrais (CC), Modelo Auto-Regressivo (AR), a fim de minimizar ruídos e interferência. Utilizou-se, tam-bém, para reconhecimento de padrões as redes neu-rais artificiais.

O sistema implementado mostrou-se bem eficiente com relação ao reconhecimento de comandos para controle do protótipo, reconhecendo, paras pessoas presentes no banco de dados 87 % das vezes.

Agradecimentos

Os autores agradecem à FAPEMG, à CAPES, ao CNPq e à FUNARBE pelo apoio financeiro.

Referências Bibliográficas

BRANDÃO, A. S., et al. Redes Neurais Artificiais Aplicadas ao Reconhecimento de Comandos de Voz.VII International Conference On Industrial Applications – 2006.

BRANDÃO, A. S. Redes Neurais Artificiais Aplicadas ao Reconhecimento de Comandos de Voz. Trabalho de Conclusão de Curso. Engenharia Elétrica, Universidade Federal de Viçosa – UFV – 2005.

HOMAYOUNPOUR, M. M., CHOLLET, G. Neural Net approaches to speaker verification: comparison with second order statistic measure. In: ICASSP – 1995.

HUANG, X., ACERO, A., HON, H. Spoken Language Processing: a guide to theory, algorithm, and system development. Ed. Prentice Hall PTR – 2001.

MAFRA, A. T. Reconhecimento Automático de Locutor em Modo Independente de Texto por Self-Organizing Maps. Dissertação de Mestrado. Escola Politécnica da Universidade de São Paulo – 2002.

NIQUINI, F. M. M., Reconhecimento de Comandos de voz com Verificação de Locutores e Vocabulário Restrito Utilizando Redes Neurais Artificiais (2007)

OLIVEIRA, L. E. S., MORITA, M. E. Introdução aos Modelos Escondidos de Markov (HMM). Pontifícia Universidade Católica do Paraná – PUC-Pr – 2005.

PARREIRA, W. D. Reconhecimento de Locutor pela Voz usando o Classificador Polinomial e Quantização Vetorial. Faculdade de Engenharia THE MATHWORKS INC. Neural Network

Toolbox, User’s Guide for use with Matlab – 2002a.

THE MATHWORKS INC. Signal Processing Toolbox, User’s Guide for use with Matlab – 2002b.

TIMOSZCZUK, A. P. Reconhecimento Automático do Locutor com Redes Neurais Pulsadas. Tese de Doutorado. Escola Politécnica da USP – SP . São Paulo – 2004. Elétrica, Universidade Federal de Uberlândia – UFU – 2005.

Referências

Documentos relacionados

Os Oficiais de Registro Civil das Pessoas Na- turais do Estado de São Paulo também têm competência para os atos notariais de reconhecimento de firma, autenticação de cópia

A assistência da equipe de enfermagem para a pessoa portadora de Diabetes Mellitus deve ser desenvolvida para um processo de educação em saúde que contribua para que a

servidores, software, equipamento de rede, etc, clientes da IaaS essencialmente alugam estes recursos como um serviço terceirizado completo...

forficata recém-colhidas foram tratadas com escarificação mecânica, imersão em ácido sulfúrico concentrado durante 5 e 10 minutos, sementes armazenadas na geladeira (3 ± 1

Our contributions are: a set of guidelines that provide meaning to the different modelling elements of SysML used during the design of systems; the individual formal semantics for

Combinaram encontrar-se às 21h

Idealmente, a melhor comparação para as UC tratadas viria do grupo de UC tratadas, ou seja, o grupo que receberam as ações de EE, mas na situação em que eles não tivessem

3 Mecanismos que visam garantir que o grupo de controle não receba as ações de EE são fundamentais para que a contaminação do grupo de controle não inviabilize a