Home

Leia em pdf

image

Contents

1. 48 5 DESENVOLVIMENTO DOS M DULOS DE CONTROLE DE VOZ DO ROBODECK ssa somsasnsisinasasosanisanissiiaaacan Sosa Dias SU snapin sis andan sos suo rasas D aidara 50 5 1 M dulo de Controle Interno span nannan nanan nnmnnn ennnen nnen 50 5 1 1 Funcionamento do CVOiC CONtrOI ccccccccccccccccccceeeececeeeeeeeeeeeeeeeeeeseeeeess 53 5 1 1 1 M dulo de calibragem do microfone 53 5 1 1 2 M dulo de edi o de modelo na 54 5 1 1 3 M dulo de ativa o do CVoiceControl ii eeeeereenaaene 57 5 2 M dulo de Controle Externo ees sec ceeeeeeeeaeaaaaanaaanaaaaaanaa 57 6 EXPERIMENTOS REALIZADOS wssicicsscesessvciessisccenssonsstsveievsunseusvseeseecesinvennsenedsins 64 6 1 Experimento 1 Movimenta es b sicas via m dulo de controle de voz externo RPPS CREDO PRIRESES TOMEI SD a cas RSS a ea PAS RSRS RE ORI RR 64 DEAD IVO Sanear ae Ada a ad ae ia ate 64 Gl 2 AMIN E SICO E seconacosasbs iosaio sado sas seios so sado sana ado dano See sao sca aa 64 6 1 3 Recursos tecnol gicos utilizados na 65 6 1 4 Comandos rob ticos utilizados arena 66 DA OMIMMDICMCM ACAD sas and a Sa e e e dd e e 67 6 1 6 An lise do tempo de processamento 74 6 1 7 Senten as reconhecidas pelo Voice Search 74 6 1 8 Dificuldades Encontradas e An lise dos Resultados 84 6 2 Experimento 2 Girar
2. girard1 124 condi o para executar o comando gire no pr prio eixo 90 graus a esquerda if linha Comando Equals esquerda 90 comando gire no pr prio eixo 90 graus a esquerda girarei System Threading Thread Sleep 1600 para a execu o em 1500 milisegundos parari condi o para executar o comando gire no pr prio eixo 90 graus a direita if linha Comando Equals direita 90 comando gire no proprio eixo 9 graus a direita girardi System Threading Thread Sleep 1550 para a execu o em 1500 milisegundos parari condi o para executar o m todo obj if linha Comando Equals objeto obj condi o para executar o m todo venha if linha Comando Equals venha venha condi o para executar o comando andar no circuito em forma de um quadrado if linha Comando Equals circuito comando andar no circuito em forma de um quadrado moverf1 mova System Threading Thread Sleep 5000 para a execu o em 5000 milisegundos parari parar girare1 girar esquerda System Threading Thread Sleep 1500 para a execu o em 1500 milisegundos parari parar moverf1 mova System Threading Thread Sleep 50 0 para a execu o em 5000 milisegundos parari parar girarei girar esquerda System Threading Thread Sleep 1500 para a execu o em 1500 milisegundos parar1 parar moverf1 mova
3. O WO N venha E N2 acertos P1 Ei N acertos P2 E N2 acertos P3 Gr fico 21 Amostras de dados da senten a que faz o rob se movimentar at a pessoa via Voice Search em um ambiente sem ru dos sonoros A senten a venha conseguiu uma m dia de acertos de 93 no reconhecimento de fala em um ambiente sem ru dos sonoros Seguem no Gr fico 22 as amostras de dados da senten a de fala venha num ambiente com ru do sonoro 96 Ambiente com ru dos venha EH N acertos Pl N acertos P2 mB N acertos P3 Gr fico 22 Amostras de dados da senten a que faz o rob se movimentar at a pessoa via Voice Search em um ambiente com ru dos sonoros A senten a venha adquiriu uma m dia de acertos de 76 no ambiente com ru do sonoro 6 4 7 Dificuldades Encontradas e An lise dos Resultados Constataram se duas dificuldades manter o RoboDeck em linha reta no comando para frente pois conforme ele se movimentava ocorria um pequeno deslocamento esquerda sendo notado que ap s v rios testes e an lise dos resultados o problema estava no alinhamento das rodas do rob definir a dist ncia correta para que o rob n o se colidisse com objeto ou pessoa pois foi necess rio levar em considera o o tempo que o RoboDeck precisava para responder aos comandos Inicialmente foram definidos 50 cent
4. para EH N acertos P1 E N acertos P2 m N acertos P3 Gr fico 27 Amostras de dados da senten a que faz o rob parar via CvoiceControl em um ambiente sem ru dos sonoros A senten a para teve uma m dia de acertos de 76 no reconhecimento de fala em um ambiente sem ru dos sonoros O Gr fico 28 ilustra as amostras de dados da senten a de fala para num ambiente com ru do sonoro Ambiente com ru dos para E N acertos P1 Ei N acertos P2 E N2 acertos P3 Gr fico 28 Amostras de dados da senten a que faz o rob se movimentar para frente via CvoiceControl em um ambiente com ru dos sonoros 109 A senten a para conseguiu uma m dia de acertos de 56 no ambiente com ru do sonoro No Gr fico 29 verificam se as amostras de dados das senten as de fala esquerda num ambiente sem ru do sonoro Ambiente sem ru dos 10 m 9 O e N A A A HA NGO O esquerda E N 2 acertos P1 E N acertos P2 E N 2 acertos P3 Gr fico 29 Amostras de dados da senten a que faz o rob virar esquerda via CvoiceControl em um ambiente sem ru dos sonoros A senten a esquerda mostrou uma m dia de acertos de 90 no reconhecimento de fala em um ambiente sem ru dos sonoros O Gr fico 30 exp e as amostras de dados da senten
5. programa o a ser executado no rob no evento do Timer a cada 1000ms private void timer1_Tick object sender EventArgs e try dsBD comandosRow linha null dsBD comandosDataTable tb null faz um select no banco de dados para verificar dos pr ximos comandos tb comandosTableAdapter1 GetDataByStatusVazio percorre todas as linhas retornandas no select acima for int i i lt le uma linha da tabela e armazena na vari vel linha linha tb i tb Count i listBox1 Items Add Comando linha Comando linha DataHora altera o status do comando para executado comandosTableAdapter1 ExecutaComando linha CodComando condi o para executar o m todo moverfi executado as 128 if linha Comando Equals mova linha Comando Equals mover linha Comando Equals para frente linha Comando Equals para cima moverf1 condi o para executar o m todo movert1 if linha Comando Equals para tr s linha Comando Equals para traz linha Comando Equals traz linha Comando Equals mover para traz linha Comando Equals re linha Comando Equals r linha Comando Equals atr s movert1 condi o para executar o m todo parar1 if linha Comando Equals pare linha Comando Equals parar linha Comando Equals robo pare parari condi o para
6. C digo fonte das condi es para executar o m todo parar1 70 Figura 36 C digo fonte do m todo virare 70 Figura 37 C digo fonte das condi es para executar o m todo virare1 71 Figura 38 C digo fonte do m todo virard1 71 Figura 39 C digo fonte das condi es para executar o m todo virard1 72 Figura 40 C digo fonte do m todo girare 72 Figura 41 C digo fonte das condi es para executar o m todo girare1 73 Figura 42 C digo fonte do m todo girard1 73 Figura 43 C digo fonte das condi es para executar o m todo girard1 74 Figura 44 C digo fonte da condi o para executar o experimento girar 90 graus elsto Dis o E RERUM RSS PRP RBS RD RDI DR O GRUNGE PRO PR PR 85 Figura 45 C digo fonte da condi o para executar o experimento girar 90 graus direta it E TE TD een chiens ats ena oped 86 Figura 46 C digo fonte da condi o para executar o experimento circuito 90 Figura 47 Foto do RoboDeck parando pr ximo da pessoa 92 Figura 48 C digo fonte dos m todos lersensorf e lersenfron 93 Figura 49 C digo fonte do m todo venha 94 Figura 50 C digo fonte da condi o para e
7. Verificam se tamb m as utiliza es dos comandos roboDeckinfo openConnection para estabelecer a conex o com MAP roboDeckinfo openSession para iniciar a sess o com o mesmo e roboDeckMoving moveRobot para mover o rob para frente 5 1 1 Funcionamento do CVoiceControl O CVoiceControl utiliza tr s m dulos v microphone config v model editor v cvoicecontrol Ao iniciar o CVoiceControl pela primeira vez o usu rio deve calibrar o microfone para us lo no reconhecimento de voz atrav s do m dulo microphone config Depois que a placa de som estiver preparada o usu rio precisa criar os modelos com as senten as faladas e associ las aos comandos que deseja realizar no Linux atrav s do m dulo model editor esses s o os principais objetos necess rios para o processo de reconhecimento de voz KIECZA 2002 5 1 1 1 M dulo de calibragem do microfone O Microphone config primeiro m dulo a ser configurado respons vel por calibrar o microfone que receber o comando de voz do usu rio Seu processo de calibragem realizado em cinco etapas v Select Mixer Device v Select Audio Device v Adjust Mixer Levels v Calculate Recording Thresholds v Estimate Characteristics of Recording Channel As duas primeiras etapas Select Mixer Device e Select Audio Device servem para selecionar a placa de som ou o dispositivo de audio que o software usar no 54 caso dos equipamentos com d
8. a escassez dos pacotes de reconhecimento de fala em L ngua Portuguesa Realizou se portanto um estudo entre os diversos sistemas de reconhecimento de fala e dois se destacaram o CvoiceControl e o Voice Search O CvoiceControl foi usado no desenvolvimento do m dulo de controle por voz interno por ser compat vel com o sistema operacional Linux utilizado pelo RoboDeck Por m surgiram algumas limita es como a necessidade de treinar o locutor para o seu uso o que impedia a utiliza o por qualquer pessoa sem antes capturar as refer ncias de voz e associ las aos comandos o acionamento dos comandos de fala ocorrer somente por um microfone conectado ao RoboDeck fixando a dist ncia entre a pessoa e o rob Diante dessa realidade observou se a necessidade de criar um segundo m dulo de controle por voz s que externo visando a possibilitar o acionamento dos comandos por voz a qualquer dist ncia do rob atrav s de dispositivo m vel como um celular desde que tivesse acesso Internet e o Voice Search instalado Com o emprego desse sistema resolveu se a quest o de treinamento dos locutores porque o Voice Search dispensa o e reconhece mais de 28 l nguas diferentes inclusive o Portugu s 118 A nica restri o do m dulo de controle de voz externo a indispens vel utiliza o de um computador ou um notebook como servidor o dispositivo m vel Celular tem de se conectar p gina de reconhecimento de Fala
9. o do programa Para tanto digita se root debian cvoice apt get install libncurses5 dev Na sequ ncia instala se o pacote MAKE com o comando root debian cvoice apt get install make Outro pacote que precisa ser instalado o KMIX ligado mixagem de som e usado pelo Microphone config se isso n o ocorrer no momento da execu o do comando Microphone config aparecer a seguinte mensagem 130 No mixer devices available Please purchase a sound card and install it Esse erro ocorre mesmo se o seu computador estiver com o som funcionando normalmente pois ele acontece por falta de um dispositivo de Mixagem instalado para instalar o Kmix digite root debian cvoice apt get install kmix OBS Para instalar tais pacotes necess rio estar conectado a internet e com o CD de instala o do Debian no Cd Rom Depois da instala o de todos os pacotes deve se abrir a pasta cvoicecontrol 0 9alpha e executar o comando configure para gerar o arquivo Makefile Deve se tamb m usar os comandos make e make install os quais compilar o e instalar o o CVoiceControl Veja o exemplo abaixo root debian cvoice cd cvoicecontrol 0 9alpha rodando o comando configure root debian cvoice cvoicecontrol 0 9alpha configure rodando o comando make root debian cvoice cvoicecontrol 9alpha make rodando o comando make install root debian cvoice cvoicecontrol 9alpha make install Calibrando o micro
10. a de fala esquerda num ambiente com ru do sonoro Ambiente com ru dos esquerda E N acertos P1 tig N acertos P2 E N acertos P3 Gr fico 30 Amostras de dados da senten a que faz o rob virar esquerda via CvoiceControl em um ambiente com ru dos sonoros 110 A senten a esquerda atingiu uma m dia de acertos de 73 no ambiente com ru do sonoro No Gr fico 31 est o as amostras de dados das senten as de fala direita num ambiente sem ru do sonoro Ambiente sem ru dos 10 9 9 direita EH N acertos P1 ig N acertos P2 Ei N acertos P3 Gr fico 31 Amostras de dados da senten a que faz o rob virar direita via CvoiceControl em um ambiente sem ru dos sonoros A senten a direita apresentou uma m dia de acertos de 93 no reconhecimento de fala em um ambiente sem ru dos sonoros Seguem no Gr fico 32 as amostras de dados da senten a de fala direita num ambiente com ru do sonoro Ambiente com ru dos direita E N acertos P1 Ei N acertos P2 E N 2 acertos P3 Gr fico 32 Amostras de dados da senten a que faz o rob virar direita via CvoiceControl em um ambiente com ru dos sonoros 111 A senten a direita obteve
11. comandos 89 6 3 Experimento 3 Movimenta o em circuito via m dulo de controle de voz externo 6 3 1 Objetivo Demonstrar a movimenta o do RoboDeck num circuito com formato quadrado via reconhecimento de fala por meio de um aparelho m vel Nesse experimento o rob sai de um ponto movimentando se para frente por um tempo para gira no pr prio eixo 90 graus esquerda para volta a se movimentar para frente por um mesmo tempo repetindo tal sequ ncia at completar o circuito 6 3 2 Ambiente f sico Ocorreu no mesmo local com iguais condi es do experimento 1 6 3 3 Recursos tecnol gicos utilizados Utilizaram se os quatro recursos j descritos no experimento1 um notebook um celular um roteador Sem fio e um RoboDeck 6 3 4 Comandos rob ticos utilizados Tr s comandos rob ticos de movimenta o do SDK Giga de Testes j descritos no experimento 1 robodeck brake robodeck move e robodeck roll voltaram a ser aplicados 6 3 5 Implementa o Usaram se tr s m todos presentes no experimento 1 moverf1 parar1 e girare1 O experimento utilizou uma sequencia de m todos ja desenvolvidos nos experimentos 1 e 2 cumprindo a seguinte rotina mover o rob para frente com intensidade de 32760 por 5000 milissegundos em seguida parar girar o RoboDeck no seu pr prio eixo esquerda com intensidade de 15000 por um tempo de 1500 milissegundos atingindo o ngul
12. prio rob ou por meio de uma interface m vel como um celular Considerando se que a fala uma propriedade natural do homem torna se suficientemente motivador o incremento desse tipo de comunica o Outro fato importante que os sistemas de reconhecimento de fala ao proporcionarem melhor acessibilidade s maquinas ampliam as possibilidades de uso permitindo que pessoas com defici ncia f sica por exemplo comandem uma cadeira de rodas robotizada e se locomovam atrav s de comandos simples de fala movimentar se direita esquerda entre outros Pode se tamb m usar a integra o de uma interface de voz para comandar rob s em diversas outras situa es como v Realizar tarefas dom sticas em resid ncias usando um aspirador de p ou um cortador de grama robotizados Y Controlar e patrulhar ambientes utilizando se rob s m veis com c meras y Transportar cargas atrav s do uso de plataformas rob ticas m veis v Resgatar ou explorar ambientes hostis como no caso das viagens interplanet rias onde os rob s m veis fazem o conhecimento de lugares em condi es adversas ao ser humano 15 1 4 Caracteriza o do Problema Com base na plataforma RoboDeck notou se que integra o interna deve ser realizada no MAP M dulo de Alta Performance do rob caracterizando se os seguintes problemas O MAP M dulo de Alta Performance do RoboDeck permite somente a integra o de sistemas computacionais compa
13. s fases sendo que a primeira a aquisi o do sinal de voz a segunda o pr processamento consistente na extra o de par metros e o terceiro o processamento que far o reconhecimento do padr o Dessa maneira cada uma dessas fases realiza transforma es nos dados recebidos conforme ilustra a Figura 2 Som Anal gico 1 Busca de Sinais Som Digitalizado perth 4 Ry gt A 3 2 Pr Processamento 3 Processamento Verifica o de Resultados y Wh ee hans j rhea Figura 2 Fases empregadas para o reconhecimento de fala HUGO 1995 Na primeira fase faz se a captura do sinal de voz ou seja a fala humana por meio de um microfone o qual est ligado em uma placa de som digitalizadora que converte em sinal digital pois para o computador armazenar o som ou manipular os sons na mem ria o formato da informa o precisa ser alterado Na segunda fase realizado o pr processamento de sinais respons vel por gerar o vetor caracter stico do padr o tamb m conhecido como feature number onde realizada a extra o de par metros eliminando os sinais redundantes ou insignificantes por meio de sele o ou transforma o visando a organizar ou ajustar os sinais capturados deixando os adequados para a fase de processamento 26 Na terceira e ltima fase realizado o processamento reconhecimento de padr es com a interpreta o dos dados permitindo a extra o
14. 00000000 00 00 2 stack Abortado O programa tem um bug e para resolv lo necess rio apagar ou comentar as linhas 1073 home getenv HOME e a 1103 free home do arquivo microphone config c abra a pasta cvoicecontrol root debian cvoice cvoicecontrol 9alpha cd cvoicecontrol Digite vi microphone config c para abrir o modo de edi o do arquivo root debian cvoice cvoicecontrol 0 9alpha cvoicecontrol vi microphone config c Posteriormente pressionam se as teclas esc wq para gravar as altera es feitas no arquivo microphone_config c e recopila o programa novamente atrav s dos comandos Make e Make Install conseguindo se finalmente executar o comando microphone config root debian cvoice cvoicecontrol 0 9alpha microphone config Seleciona se a op o Select Mixer Device para escolher o dispositivo Mixer e sua placa de som dev mixer 132 c 2000 Daniel Kiecza Please Select Select Mixer Selecione se a op o Select Audio Device para definir o dispositivo da sua placa de som dev dsp Select Mixer Seleciona se a op o Adjust Mixer Levels para ajustar automaticamente o volume do seu microfone atrav s do mixer c 2000 Daniel Kie onfiguration Tool until ress any key to start 133 Ao pressionar qualquer tecla obt m se as telas ilustradas abaixo momento em que se deve falar em voz alta diante o microfone risadas altas colaboram p
15. Figura 20 Tela do CVoiceControl exibido a lista de modelos criados 56 Figura 21 C digo fonte da P gina de web Reconhecimento de Fala com o AV AS ONDE eri aeara Sa een Ras ote nus ature ara ares ott e Una can Arne A E nana nas 59 Figura 22 P gina de web Reconhecimento de Fala 60 Figura 23 Descri o da tabela comandos do banco de dados FalaBD 60 Figura 24 Arquitetura Geral do m dulo de voz por controle externo ao RoboDeck 61 Figura 25 Tela para habilitar ou desabilitar verifica o de novas entradas de COMANdOS to cocsocete o aa natn ad Sana AOL aaa Ena E asa ia duna AEE Danca pd 62 Figura 26 Tela para pesquisar todos os comandos executados no Banco de Dados STEMMED E el ite al al ele etl ne 62 Figura 27 C digo fonte do m todo movertl 63 Figura 28 Foto do RoboDeck na oficina da empresa Xbot 65 Figura 29 Foto do Celular conectado na p gina de web acionando o Voice Search e DD Da 66 Figura 30 C digo fonte do m todo moverfl en 67 Figura 31 C digo fonte das condi es para executar o m todo moverf1 68 Figura 32 C digo fonte do m todo moverti 68 Figura 33 C digo fonte das condi es para executar o m todo movert1 69 Figura 34 C digo fonte do m todo parari 69 Figura 35
16. NR SIRI RN INR RN 20 2 2 Reconhecimento OE Palas sais a a a ee ie ide 21 2 2 1 M todos para o Reconhecimento de Fala ccccceeeeeeeeeeeeeneeeeeeeeeeeeeees 23 2 2 2 Reconhecimento de Padr es de Fala eae 26 2 2 3 Reconhecimento Autom tico de Fala raras 28 2 3 Aplica es da Tecnologia de Reconhecimento de Fala 29 3 BIBLIOTECAS DE INTERFACE DE VOZ essere 31 DEE Ae VOC Cr ri a a ich na eel nici 31 3 2 PESUVElSDOCCI a ELO a hace ele a a a aa na Gia 32 3 3 Dragon Naturally Speaking rara 33 ode S m K ser RER PRA E A A E RP ANE RP CAR PRESA PRADA RPA RR AR 35 io Transcribe EE RD RARO SORP e E SRP ee hae 36 3 6 IBM ViaVoice 9 ts eae efa e a bate rednverncesbnaterecnrererenhencnpe 36 3 7 VOICE ONO crase iei ans Rai CRESC R casaria tarada 38 DO MOICE DEAN nei ni E aaa e asia 39 3 9 Compara es entre as bibliotecas de interface de vozZ 40 4 PLATAFORMAS DE ROB TICA M VEL enem 42 At Robot Reale cat eere ee CO bb O o rees 42 4 2 LEGO Mindstorms NXT sacana scunporaG0GAsraa SEL aa UnGo cas EL E AE 43 4 3 MobileRobots Inc Pionner Bis seas sas he geo Sea gua aa og Sua go a Saga Sua Be 44 AAO DOWAOQDOUECK unia A 45 4 4 1 Estrutura interna do RODODGCK sssssessseeeesseeesesssesseesssesseeeeeseeeseeeeees 47 4 5 Compara es entre as plataformas de rob tica m vel
17. System Threading Thread Sleep 50 0 para a execu o em 5000 milisegundos parari parar girarei girar esquerda System Threading Thread Sleep 1500 para a execu o em 1500 milisegundos parar1 moverf1 mova 125 System Threading Thread Sleep 5000 para a execu o em 5000 milisegundos parari parar girare1 girar esquerda System Threading Thread Sleep 1500 para a execu o em 1500 milisegundos parari catch Exception ex MessageBox Show Ocorreu o erro ao consultar ex Message habilita a verifica o no banco private void btnHabilita_Click_1 object sender EventArgs e timer1 Enabled true btnHabilita Enabled false btnDesabilita Enabled true desabilita a verifica o no banco private void btnDesabilita_Click_1 object sender EventArgs e timer1 Enabled false btnHabilita Enabled true btnDesabilita Enabled false faz uma pesquisa no banco de dados exibindo todos os comandos que j foram executados private void btnPesquisar_Click object sender EventArgs e try comandosTableAdapter1 Fill dsBD1 comandos catch Exception ex MessageBox Show ex Message 126 7 Web config Tem a fun o de conectar o SDK Giga de Testes ao banco de dados falabd lt xml version 1 0 gt lt For more information on how to configure your ASP NET application please visit http go microsoft com fwli
18. apresenta as amostras de dados das senten as de fala esquerda 90 em um ambiente sem ru do sonoro Ambiente sem ru dos 10 9 9 esquerda 90 EH N acertos P1 E N acertos P2 W N acertos P3 Gr fico 15 Amostras de dados das senten as que giram o rob no pr prio eixo 90 graus esquerda via Voice Search em um ambiente sem ru dos sonoros A senten a esquerda 90 atingiu uma m dia de acertos de 93 no reconhecimento de fala em um ambiente sem ru dos sonoros 87 Encontram se no Gr fico 16 as amostras de dados das senten as de fala esquerda 90 num ambiente com ruido sonoro Ambiente com ruidos esquerda 90 E N acertos P1 tg N acertos P2 E N acertos P3 Gr fico 16 Amostras de dados das senten as que giram o rob no pr prio eixo 90 graus esquerda via Voice Search em um ambiente com ru dos sonoros A senten a esquerda 90 alcan ou uma m dia de acertos de 86 no reconhecimento de fala em um ambiente com ru do sonoro O Gr fico 17 exp e as amostras de dados das senten as de fala direita 90 num ambiente sem ru do sonoro Ambiente sem ru dos 10 10 10 direita 90 E N acertos P1 bi N acertos P2 Ei N acertos P3 Gr fico 17 Amostras de dados das s
19. char argv roboDeckInfo openConnection localhost 2000 robo roboDeckInfo opensSession robo bool virouRobo roboDeckMoving turnRobot 32 15000 15000 robo cout lt lt Robot Comunication Protocol Version lt lt roboDeckInfo getRobotProtocolVersion robo lt lt endl roboDeckInfo closeSession robo return 0 Figura 59 C digo fonte do controlador Direita Observando essa Figura verifica se o uso do comando roboDeckinfo openConnection para estabelecer a conex o com MAP do comando roboDeckinfo openSession para iniciar a sess o com o mesmo e do comando roboDeckMoving turnRobot que possui como par metros o ngulo a intensidade do motor da direita e a intensidade do motor da esquerda As intensidades foram configuradas em 15000 e o ngulo em 32 sendo que os ngulos suportados no comando rob tico roboDeckMoving turnRobot variam de 32 at 32 com os ngulos negativos referindo se esquerda e os positivos direita Essa configura o move o rob para frente com metade da sua pot ncia virando direita com o ngulo m ximo suportado 6 6 6 Senten as reconhecidas pelo CvoiceControl Para obter uma amostragem de dados utilizaram se tr s pessoas sendo dois homens P1 e P2 e uma mulher P3 Cada pessoa tinha de repetir vinte vezes uma mesma senten a para a movimenta o do rob a qual foi dividida em dois ambientes sonoros dez sen
20. comandosTableAdapterl GetDataByStatusVazio for int i i lt tb Count im i linha tb i listBox1 Items Add Comando linha Comando executado as linha DataHora comandosTableAdapter1 ExecutaComando linha CodComando if linha Comando Equals para tr s linha Comando Equals para traz linha Comando Equals traz linha Comando Equals mover para traz linha Comando Equals re linha Comando Equals r linha Comando Equals atras movert1 Figura 33 C digo fonte das condi es para executar o m todo movert1 Importante destacar a necessidade de reconhecer os comandos tr s com s e o traz com z mesmo que o traz com z perten a ao verbo trazer pois dependendo da maneira que o locutor fale o Voice Search pode reconhecer a palavra tras ou traz Desta forma o m todo movert1 possui mais op es de fala para ser executado diminuindo o percentual de erros no reconhecimento da senten a falada O terceiro m todo foi parart que tem a fun o de parar qualquer movimenta o do RoboDeck alinhando as rodas na posi o de O grau A Figura 34 mostra o c digo fonte de sua implementa o parar public void parari report robodeck brake new GigaCallback this actionCallback Figura 34 C digo fonte do m todo parar1 executado se a linha comando do banco de
21. completamente distintos variando de milissegundos a alguns segundos em virtude de a API Voice Search biblioteca usada no reconhecimento da senten a depender da disponibilidade do servidor da Google algo imposs vel prever 6 1 7 Senten as reconhecidas pelo Voice Search Para obter uma amostragem de dados utilizaram se tr s pessoas sendo dois homens P1 e P2 e uma mulher P3 Cada pessoa tinha de repetir vinte vezes uma mesma senten a para a movimenta o do rob a qual foi dividida em dois ambientes sonoros dez senten as num ambiente sem ru do sonoro e as outras dez com ru dos Assim fez se uma amostragem de dados com os n meros de senten as reconhecidas e n o reconhecidas pelo Voice Search O Gr fico 1 traz as amostras de dados das senten as de fala mover para cima mova e para frente num ambiente sem ru do sonoro J 75 Ambiente sem ruidos 10 10 10 10 rR O e N fF U AN OO OO mover para cima mova para frente E N acertos P1 bi N acertos P2 bl Ne acertos P3 Gr fico 1 Amostras de dados das senten as de movimenta o do rob para frente via Voice Search em um ambiente sem ru dos sonoros Observa se que as senten as tiveram uma m dia de acertos de mover 80 para cima 90 mova 80 e para frente 100 nos seus reconhecimentos Dessa forma a senten a para cima obteve a mel
22. considerably in recent years the use of expanding mobile robot the tasks of man and thus increasing the need for an improved communication interface between them As a result men have been seeking more practical ways of interacting with the robots such as speech recognition interface a technique quite comfortable especially compared with the traditional means of keyboards or buttons Given this reality this work is based on the study and the context of speech recognition packages and platforms for mobile robotics relating these themes in the development of two modules of voice control internal and external to the robot In the internal module has integrated speech recognition program in high performance card CVoiceControl mobile robotics platform named RoboDeck from Xbot company thus controlling the robot by speech whose commands involved basic movements forward backward turn left turn right and stop In the external module was integrated into the SDK called Giga Test a voice control allowing through speech commanding the robot through any mobile device with Voice Search installed and connected to the Internet as well as running applications to pre defined activities Keywords speech recognition mobile robotics RoboDeck LISTA DE FIGURAS Figura 1 N veis do sistema de compreens o da linguagem falada Devilliers 1996 edi A q e en ea Re A q E a 24 Figura 2 Fases empregadas para o reconhecimento de fala HU
23. dados falaBD for igual pare ou parar ou robo pare Assim o m todo parar1 possui mais op es de fala para ser executado diminuindo o percentual de erros no reconhecimento da senten a falada conforme a Figura 35 70 private void timeri Tick object sender EventArgs e try dsBD comandosRow linha null dsBD comandosDataTable tb null tb comandosTableAdapter1 GetDataByStatusVazio for int i 0 i lt tb Count i linha tb i listBox1 Items Add Comando linha Comando executado as linha DataHora comandosTableAdapter1 ExecutaComando linha CodComando if linha Comando Equals pare linha Comando Equals parar linha Comando Equals robo pare pararl Figura 35 C digo fonte das condi es para executar o m todo parar1 O quarto m todo foi virare1 com a fun o de virar o RoboDeck a esquerda A Figura 36 exibe o c digo fonte de sua implementa o virar a esquerta public void virarel sbyte angle 32 short intensity 15000 ou 32760 report robodeck turn angle intensity new GigaCallback this actionCallback Figura 36 C digo fonte do m todo virare1 A intensidade foi configurada em 15000 e o ngulo em 32 sendo que os ngulos suportados no comando rob tico robodeck turn variam de 32 at 32 e os negativos referem se esquerda enquanto
24. em formato estruturado no padr o XML com suporte transcri o em m ltiplas l nguas O programa possui c digo aberto para mudan as e permite carregar arquivos de udio de diferentes formatos como WAV MP3 OGG entre outros Para a sua an lise permite selecionar determinada parte do udio distinguindo m sica de voz admitindo ainda que o usu rio modifique aspectos do texto depois de terminado o processo como tipo de letra cor e formato GEOFFROIS et al 2011 File Edit Signal Segmentation Options Help report E speakers Yeah speaker 1 inhale He s hilarious laugh speaker 2 He s great speaker 1 speaker 2 1 inhale He s really a trip 2 I know But it really shows you speaker 2 I mean you know you really don t have to put up with the Anthony s of the world speaker 1 I You know what Ann it s like I mean exhale speaker 1 speaker 2 DS waj sj iij Dl o gt il il know E Resolution report speaker s speaker speaker 2 speaker 1 speaker 1 speaker 1 s speakerg speak inhale finhale mean you know you 1 You know just didn t know And the thing is 4 You know laugh laugh at I know the world mean exhale E know __ laugh 4 just gt d T T ao 2i SS am cursor 0 Figura 8 Tela do editor de anota o do Transcriber Fonte
25. esquerda 70 e vire esquerda 56 nos seus reconhecimentos Portanto a senten a esquerda conseguiu a melhor m dia de acertos em um ambiente sem ru dos sonoros No Gr fico 8 visualizam se as amostras de dados das senten as de fala esquerda virar esquerda para esquerda e vire esquerda num ambiente com ru do sonoro Ambiente com ru dos rR O e N U A aa 0NA O esquerda virar esquerda para esquerda vire esquerda E N acertos P1 bi N acertos P2 E N acertos P3 Gr fico 8 Amostras de dados das senten as que viram o rob esquerda via Voice Search em um ambiente com ru dos sonoros 80 As senten as atingiram uma m dia de acertos de esquerda 83 virar A esquerda 66 para esquerda 63 e vire esquerda 56 nos seus reconhecimentos Desse modo a senten a esquerda obteve a melhor m dia de acertos em um ambiente com ru dos sonoros O Gr fico 9 exibe as amostras de dados das senten as de fala direita virar a direita para direita e vire direita num ambiente sem ru do sonoro Ambiente sem ru dos 10 ps 9 8 7 6 5 4 3 2 1 U direita virar direita para direita vire direita E N2 acertos P1 E N acertos P bi N acertos P3 Gr fico 9 Amostras de dados das senten as que viram o rob direita via Voice
26. hospedada em um computador que encaminha os comandos de movimenta o para o RoboDeck via rede sem fio utilizando o SDK Giga de Testes Nesse contexto o m dulo de controle por voz externo resolveu os problemas da necessidade de treinar um locutor e da limita o de dist ncia entre a pessoa e o rob tornando o processo de reconhecimento de fala pr tico e interativo mas exigiu a presen a de um computador externo para funcionar E o m dulo de controle por voz interno que n o necessita de dispositivo externo depende de pr treinamento toda vez que uma nova pessoa for utilizar o rob transformando esse m dulo pouco usual Como trabalho futuro fica o desafio de integrar o m dulo de controle por voz externo dentro do RoboDeck dispensando o uso de computador adicional Para isso ser necess rio instalar na placa de alta performance do rob um servidor de Internet e um servidor de banco de dados al m de migrar todo o SDK Giga de Testes para o Sistema Operacional Linux Debian produzido no Visual Studio 2010 em Cf produto da Microsoft 114 REFER NCIAS BIBLIOGR FICAS ADEPT MobilerRobots Specification Manual Pionner 3 AT 2011 Dispon vel em lt http www mobilerobots com Libraries Downloads Pioneer3AT P3AT RevA sflb ashx gt Acesso em 14 out 2011 BEKET G A Autonomous Robots From Biological Inspiration to Implementation and Control In Cambridge USA The MIT Press 2005 BOERSMA P Pr
27. index php content manual gt Acesso em 16 out 2011 HUGO Marcel Uma Interface de Reconhecimento de Voz para o Sistema de Gerenciamento de Central de Informa o de Fretes In Disserta o de Mestrado Universidade Federal de Santa Catarina 1995 IBM Manual do usu rio do IBM ViaVoice 9 2008 115 IROBOT iRobot Create Owner s guide 2006 Dispon vel em lt http www irobot com filelibrary pdfs hrd create Create 20Manual_Final pdf gt Acesso em 14 out 2011 KIECZA Daniel CVoiceControl on line documentation 2002 Dispon vel em lt http www kiecza net daniel linux cvoicecontrol index html gt Acesso em 02 out 2011 LEGO LEGO Mindstorms User Guid 2009 Dispon vel em lt http cache lego com upload contentT emplating Mindstorms2BuildingInstructions oth erfiles downloadAOB7 A698E231D3E619C43ECCFFE2F27F pdf gt Acesso em 15 out 2011 MACIEL A M A Investiga o de um Ambiente para o processamento de voz utilizando VoiceXML In Disserta o de mestrado Universidade Federal de Pernambuco Pernambuco 2007 MOREIRA F Lu s Reconhecimento Autom tico de Fala Cont nua 2006 Dispon vel em lt http Avww ipb pt fmoreira ltens RecFalaCont pdf gt Acesso em 09 set 2011 MUNOZ S Mauro Projeto do software do RoboDeck Vers o 0 2 S o Carlos 2011 NUANCE Communications Dragon NaturllySpeaking Home on line documentation 2011 Dispon vel em lt http Avww nuance com for individuals
28. modo importante utilizar v rios locutores com diferentes caracter sticas ling sticas como idade sexo n vel sociocultural entre outros fatores para o treinamento Por m se outro locutor tiver um timbre de voz parecido com os padr es ac sticos mesmo que ele n o tenha participado do treinamento o sistema poder reconhecer algumas palavras ou comandos Assim quanto mais locutores forem treinados no sistema maior ser a chance de reconhecer um locutor gen rico Os sistemas de reconhecimento de fala independentes do locutor podem ser definidos como aqueles que n o est o presos s caracter sticas espec ficas da voz do usu rio S o capazes de reconhecer a fala de qualquer locutor sem a necessidade de obter padr es de refer ncias de modelos ac sticos atrav s de treinamento Segundo Campbell 1997 existem alguns fatores externos a um ambiente ou humanos que contribuem para erros em um sistema de reconhecimento de fala Y Erro de locu o ou leitura das frases Estado emocional Varia o da posi o do Microfone Ambiente Ac stico inadequado ou inconsistente com ru dos Erro de sincronia de microfones SONO See EN Idade do locutor j que o trato vocal pode sofrer altera es com o tempo Mencionados fatores s o importantes e dependendo da situa o mesmo que o algoritmo de reconhecimento de fala seja de boa qualidade o erro humano pode limitar o desempenho Portando um bom projeto de reconhecimen
29. os positivos direita essa configura o faz o rob mover para frente com metade da sua pot ncia virando esquerda com ngulo m ximo suportado executado se a linha comando do banco de dados falaBD for igual para esquerda ou esquerda ou vire esquerda ou virar a esquerda ou virar esquerda ou virar esquerda ou vire esquerda ou vire a esquerda Dessa forma o m todo virare1 possui mais op es de fala para ser executado diminuindo o percentual de erros no reconhecimento da senten a falada em conformidade com a Figura 37 71 private void timerl Tick object sender EventArgs e try dsBD comandosRow linha null dsBD comandosDataTable tb null tb comandosTableAdapter1 GetDataByStatusVazio for int i i lt tb Count i linha tb i listBoxl Items Add Comando linha Comando executado as linha DataHora comandosTableAdapter1 ExecutaComando 1inha CodComando if linha Comando Equals para esquerda linha Comando Equals esquerda linha Comando Equals vire esquerda linha Comando Equals virar a esquerda linha Comando Equals virar esquerda linha Comando Equals virar esquerda linha Comando Equals vire esquerda linha Comando Equals vire a esquerda virarel Figura 37 C digo fonte das condi es para executar o m todo
30. pessoa capturada com ru dos diversos tosse e at mesmo outras vozes incluindo tamb m mensagens compostas na fala y Cont nuas falas geralmente utilizadas na leitura de um texto apresentando um vocabul rio normalmente grande S o mais dif ceis de serem implementadas porque complexo localizar o in cio e o fim de cada palavra devido tend ncia das l nguas de unirem o ltimo fonema de cada palavra ao primeiro da palavra seguinte v Ligadas ou ativadas falas usadas com frequ ncia em sistemas de comando e controle por fala que possuem um conjunto de sinais obtido por meio de uma entrada de udio comparada atrav s de um pequeno vocabul rio v Palavras isoladas falas que empregam um processo com pausas antes e depois de cada palavra e depende de um vocabul rio espec fico e pequeno O grau de depend ncia do locutor como o estilo de fala ou mesmo a forma de pron ncia da senten a falada al m do tamanho do vocabul rio de 22 reconhecimento de fala levam a restri es na escolha do hardware e software a serem empregados De acordo com Roe et al 1994 poss vel classificar um sistema de reconhecimento de fala pelas caracter sticas de depend ncia do locutor sendo que tais caracter sticas ajudar o na forma de implementa o do sistema de reconhecimento de fala Os sistemas dependentes de locutor s o caracterizados por serem treinados para obedecerem s caracter sticas da voz dos seus usu rios Desse
31. sonoros 95 Gr fico 22 Amostras de dados da senten a que faz o rob se movimentar at a pessoa via Voice Search em um ambiente com ru dos sonoros 96 Gr fico 23 Amostras de dados da senten a que faz o rob desviar de um objeto via Voice Search em um ambiente sem ru dos sonoros 100 Gr fico 24 Amostras de dados da senten a que faz o rob desviar de um objeto via Voice Search em um ambiente com ru dos sonoros 101 Gr fico 25 Amostras de dados da senten a que faz o rob se movimentar para frente via CvoiceControl em um ambiente sem ru dos sonoros 107 Gr fico 26 Amostras de dados da senten a que faz o rob se movimentar para frente via CvoiceControl em um ambiente com ru dos sonoros 107 Gr fico 27 Amostras de dados da senten a que faz o rob parar via CvoiceControl em um ambiente sem ru dos SONOSOS cceccseeeceseeeeseeeeeeeeee 108 Gr fico 28 Amostras de dados da senten a que faz o rob se movimentar para frente via CvoiceControl em um ambiente com ru dos sonoros 108 Gr fico 29 Amostras de dados da senten a que faz o rob virar esquerda via CvoiceControl em um ambiente sem ru dos SONOMOS ccccceeeceeeeeeeeeeeeeeeeees 109 Gr fico 30 Amostras de dados da senten a que faz o rob virar esquerda via CvoiceControl em um amb
32. tocar novamente no cone de microfone POZZEBON 2012 3 9 Compara es entre as bibliotecas de interface de voz A tabela 1 mostra as bibliotecas de interface de voz e faz uma compara o entre sistemas operacionais compat veis bibliotecas que possuem c digo aberto para mudan as idiomas de reconhecimento ou s ntese de fala tecnologia de voz utilizada e as ltimas atualiza es dispon veis Os dados contidos nesta tabela foram estabelecidos de acordo com a documenta o fornecida pelos fabricantes Tabela 1 Bibliotecas de interface de voz 41 Bibliotecas Sistemas C digo Idiomas Tecnologias de ltimas Atualiza es de interface Operacionais Aberto Voz de Voz XVoice Linux Sim Ingl s Reconhecimento de XVoice0 9 6 2 ano de fala 2007 Festival Linux OSX Sim Ingl s e S ntese de fala Festival Speech Speech Windows Espanhol vers o 2 1 Novembro de 2010 Dragon Microsoft N o Ingl s Reconhecimento de Dragon Naturally Windows fala NaturallySpeaking 11 5 Speahing agosto 2011 Praat Windows Sim Ingl s An lise de fonemas Praat 5 2 44 23 Linux setembro de 2011 Macintosh Transcriber Windows XP Sim Franc s Transcrigao e TranscriberAG julho de Mac OS Xe Ingl s segmenta o de 2011 Linux Russo grava es de voz Arabe e Chin s IBM Via Windows e N o Ingl s Reconhecimento e IBM Via Voice 11 Voice Mac OS X Portugu s S ntese de fala Portugu s Millennium Edition Standar Ano
33. try dsBD comandosRow linha null dsBD comandosDataTable tb null tb comandosTableAdapterl GetDataByStatusVazio for int i 0 i lt tb Count i linha tb i listBox1 Items Add Comando linha Comando executado as linha DataHora comandosTableAdapter1 ExecutaComando linha CodComando if linha Comando Equals mova linha Comando Equals mover linha Comando Equals para frente linha Comando Equals para cima moverf1 Figura 31 Codigo fonte das condi es para executar o m todo moverf1 O segundo m todo foi o m todo movert1 cuja fun o mover o RoboDeck para tr s A Figura 32 mostra o c digo fonte de sua implementa o public void movert1 l short intensity 32760 report robodeck move intensity new GigaCallback this actionCallback Figura 32 C digo fonte do m todo movert1 Observando a Figura nota se que a intensidade foi configurada em 32760 movendo o rob mover para tr s com pot ncia m xima executado se a linha comando do banco de dados falaBD for igual para tr s ou para traz ou traz ou mover para traz ou re ou r ou ainda atr s de acordo com a Figura 33 69 private void timer1_Tick object sender EventArgs e try dsBD comandosRow linha null dsBD comandosDataTable tb null tb
34. uma m dia de acertos de 73 no ambiente com ruido sonoro 6 6 7 Dificuldades Encontradas e Analise dos Resultados A dificuldade constituiu se em visualizar o comportamento real do Robodeck para cada comando de movimenta o pois o experimento foi realizado numa m quina que simulava o rob obtendo se apenas os endere os enviados e recebidos por todos os comandos executados 112 7 CONCLUS O No momento existem no Brasil poucos trabalhos de pesquisa envolvendo reconhecimento de fala aplicada na rob tica m vel contribuindo a presente disserta o para aumentar as linhas de pesquisa afins Os m dulos de reconhecimento de voz desenvolvidos permitiram executar comandos para movimentar o Robodeck atrav s da fala oferecendo um potencial enorme rea que est em grande expans o mediante a cria o de rob s com v rias finalidades na ind stria em opera es militares na vigil ncia no entretenimento e at nos trabalhos de limpeza Com uma interface de reconhecimento de fala o homem pode comandar o rob usando sua pr pria voz a qual transformada em comandos reconhecidos por ele proporcionando melhor acessibilidade e permitindo que pessoas com defici ncia f sica por exemplo controlem um rob m vel atrav s de comandos simples de fala Com base na plataforma rob tica m vel RoboDeck e por se tratar de um rob fabricado no Brasil era essencial que o mesmo reconhecesse comandos em Portugu s o obst culo
35. 3 nos seus reconhecimentos Assim a senten a parar alcan ou a melhor m dia de acertos em um ambiente sem ru dos sonoros O Gr fico 6 aponta as amostras de dados das senten as de fala parar pare e rob pare num ambiente com ru do sonoro Ambiente com ru dos ps 9 8 7 6 5 4 3 2 Hs pare robo pare E N acertos P1 W N acertos P2 W N acertos P3 Gr fico 6 Amostras de dados das senten as que param a movimenta o do rob via Voice Search em um ambiente com ru dos sonoros Observa se uma m dia de acertos das senten as de parar 83 pare 26 e rob pare 20 nos seus reconhecimentos Dessa forma a senten a parar manteve uma m dia alta de acertos mesmo no ambiente com ru do sonoro O Gr fico 7 traz as amostras de dados das senten as de fala esquerda virar esquerda para esquerda e vire esquerda num ambiente sem ru do sonoro 79 Ambiente sem ru dos 10 10 p 9 8 7 6 5 4 3 2 1 0 esquerda virar esquerda para esquerda vire esquerda BH N acertos P1 bi N acertos P2 bi N acertos P3 Gr fico 7 Amostras de dados das senten as que viram o rob esquerda via Voice Search em um ambiente sem ru dos sonoros As senten as alcan aram uma m dia de acertos de esquerda 100 virar a esquerda 96 para
36. 49 apresenta o c digo fonte do m todo venha public void venha lersensorf executar leitura do sensor frontal while sensorf gt 5 enquanto a distancia for maior que 5 centimetros moverfl mova para frente System Threading Thread Sleep 100 para a execu o em 100 milisegundos lersensorf executar leitura do sensor frontal pararl para o Robodeck Figura 49 C digo fonte do m todo venha executado se a linha comando do banco de dados falaBD for igual venha de acordo com a Figura 50 private void timeri Tick object sender EventArgs e try dsBD comandosRow linha null dsBD comandosDataTable tb null tb comandosTableAdapter1 GetDataByStatusVazio for int i 0 i lt tb Count i t linha tb i listBox1 Items Add Comando linha Comando executado as linha DataHora comandosTableAdapter1 ExecutaComando 1linha CodComando if linha Comando Equals venha venha Figura 50 C digo fonte da condi o para executar o m todo venha 95 6 4 6 Senten a reconhecida pelo Voice Search Os crit rios para obter as amostras de dados nesse experimento foram os mesmos j descritos no Experimento O Gr fico 21 exp e as amostras de dados da senten a de fala venha num ambiente sem ru do sonoro Ambiente sem ru dos 10 10 9 9 w Pw HA
37. D364E35 gt lt handlers gt lt system webServer gt lt runtime gt lt assemblyBinding appliesTo v2 0 50727 xmlns urn schemas microsoft com asm v1 gt lt dependentAssembly gt lt assemblyIdentity name System Web Extensions publicKeyToken 31bf3856ad364e35 gt lt bindingRedirect oldVersion 1 0 0 0 1 1 0 0 newVersion 3 5 0 0 gt lt dependentAssembly gt lt dependentAssembly gt lt assemblyIdentity name System Web Extensions Design publicKeyToken 31bf3856ad364e35 gt lt bindingRedirect oldVersion 1 0 0 0 1 1 0 0 newVersion 3 5 0 0 gt lt dependentAssembly gt lt assemblyBinding gt lt runtime gt lt configuration gt 129 ANEXO Instala o do CvoiceControl 9 alpha Para instalar o CvoiceControl a partir dos fontes deve se criar uma pasta com o nome cvoicecontrol e nela efetuar o download com o comando wget como no exemplo abaixo aluno debian su Senha root debian home aluno cd root debian home cd root debian cd root debian mkdir cvoice root debian cd cvoice root debian cvoice wget http www kiecza net daniel linux cvoicecontrol 0 9alpha tar gz Ap s o download deve se descompactar o arquivo cvoicecontrol 0 9alpha tar gz com o comando tar zxvf nome do arquivo tar como no exemplo abaixo root debian cvoice tar zxvf cvoicecontrol 0 9alpha tar gz Em seguida necess rio instalar os pacotes libncurses5 dev e MAKE utilizados na instala
38. Estrutura interna do RoboDeck O RoboDeck permite adicionar perif ricos rob ticos como garras bra os sensores entre outros Ele formado por dois hardwares essencial e opcional O hardware essencial composto por dois microcontroladores o primeiro respons vel pelo gerenciamento dos sensores e atuadores possui um software chamado de MCR M dulo de Controle Rob tico que faz o rob trabalhar como escravo executando sequencialmente os comandos O segundo respons vel pelo gerenciamento da comunica o de controle do rob e tamb m por manter a sua identidade A implementa o da comunica o de controle realizada pelo MCC M dulo de Controle de Comunica o atrav s do protocolo Zigbee A implementa o da identidade ocorre pelo MCS M dulo de Controle de Sess o que implementa o conceito de sess o aos comandos provenientes dos controladores do rob impedindo lhe responder a dois controladores simultaneamente al m de ser respons vel pela identifica o e autentica o dos controladores Os softwares que comp em esse hardware s o escritos em linguagem C e n o s o baseados em Sistema Operacional MUNOZ 2011 Com o hardware opcional poss vel carregar aplicativos rob ticos feitos pelos usu rios por meio de um software chamado MAP M dulo de Alta Performance 48 permitindo controlar o rob e fornecer lhe autonomia Os aplicativos mencionados possibilitam controlar o hardware essencial do rob a
39. GO 1995 25 Figura 3 Tela do AV OICO aan taint ale atin nes al A ee 32 Figura 4 Tela de demonstra o interativa do sintetizador de voz Festival on line A AA A EPEA AA ETETEA ATETEA 33 Figura 5 Tela do DragonPad do Dragon een 34 Figura 6 Tela do Manage Users do Dragon eee 34 Figura 7 Tela do Praat 5 2 44 para MAC OSX 35 Figura 8 Tela do editor de anota o do Transcriber eeeeeeeeeeeeeeeeeeeeeeeeeeneen 36 Figura 9 Tela do assistente do IBM ViaVoice 9 0 para Windows 37 Figura 10 Tela do CVoiceControl exibindo o comando associado senten a 38 Figura 11 Tela do Voice Search sendo executado pelo icone do microfone 40 Figura 12 Rob m vel Create da empresa IRobot 43 Figura 13 Rob m bel Mindstorms NTX 2 0 da empresa LEGO 44 Figura 14 Rob m vel Pioneer 3 da empresa MobileRobots 45 Figura 15 Rob m vel RoboDeck da empresa Xbot cccceeeeeeeeeeeeeeeeetneeeeeeeees 47 Figura 16 Principais divis es de hardware e software do RoboDeck Mu oz 2011 a 48 Figura 17 Integra o entre o CVoiceControl os Aplicativos e o MAP 51 Figura 18 C digo fonte do controlador Ande 52 Figura 19 Tela de configura o do comando mova do CVoiceControl 56
40. I Interface de Programa o de Aplicativos desenvolvida por Orlandini 2012 com a fun o de acionar os controles f sicos do rob como os motores Tal acionamento feito via MAP atrav s de uma conex o com ele iniciando uma sess o Ap s o rob executa o controlador respons vel pela movimenta o desejada A Figura 18 mostra o c digo fonte do controlador Ande cuja fun o mover o rob para frente finclude lt iostream gt include lt stdio h gt finclude RoboDeckMoving hh finclude RoboDeckInfo hh using namespace std RoboDeckMoving roboDeckMoving RoboDeckInfo roboDeckInfo RoboDeck robo int main int argc char argv roboDeckInfo openConnection localhost 2000 robo roboDeckInfo openSession robo bool moveuRobo roboDeckMoving moveRobot 32000 0 robo cout lt lt Robot Comunication Protocol Version lt lt roboDeckInfo getRobotProtocolVersion robo lt lt endl roboDeckInfo closeSession robo return 0 Figura 18 Codigo fonte do controlador Ande Observa se que o c digo fonte ficou reduzido pois inclui duas Bibliotecas desenvolvidas por Orlandini 2012 a primeira RoboDeckInfo hh tem a fun o de 53 estabelecer a conex o e iniciar uma sess o com o MAP Modulo de Alta Performance do RoboDeck para envio de comandos A segunda RoboDeckMoving hh tem a finalidade de enviar os comandos respons veis pela movimenta o do rob ao MAP
41. Model editar o modelo atual Edit Speaker Model e salv lo com o Save Modelo Speaker KIECZA 2002 O editor de modelo Edit Speaker Model mostra os itens de refer ncia atual em forma de tabela exibindo os em linhas Nele o usu rio pode adicionar um item com uma nova refer ncia editar um item destacado ou exclu lo no momento em que se adicionar um novo modelo de comando o sistema exibir uma tela onde o usu rio ter de informar seu t tulo e edit lo para ser executado Ap s defini o do comando o usu rio dever gravar uma refer ncia de voz para ele Visando a garantir uma qualidade no reconhecimento da fala torna se necess rio repetir essa opera o no m nimo quatro vezes Em seguida o sistema apresentar uma lista com as refer ncias de voz informando a data e a hora em que foi capturada a fala pelo microfone KIECZA 2002 A Figura 19 mostra um exemplo cujo t tulo do comando mova com a fun o de executar o controlador ande que faz o RoboDeck Mover para frente 56 Edit Speaker Model Item Label gt mova Command T Number of samples 5 r record sample d delete sample enter pi samp b back to model menu edit label c TA op Figura 19 Tela de configura o do comando mova do CVoiceControl Ao iniciar a grava o das refer ncias de voz necess rio o usu rio esperar um segundo ou mais antes de come ar a falar porque o buffer de udio precisa ser preenchido ante
42. Option name Compilerversion value v3 5 gt lt providerOption name WarnAsError value false gt lt compiler gt lt compilers gt lt system codedom gt lt system webServer gt lt validation validateIntegratedModeConfiguration false gt lt modules gt lt remove name ScriptModule gt lt add name ScriptModule preCondition managedHandler type System Web Handlers ScriptModule System Web Extensions Version 3 5 0 0 Culture neutral PublickKeyToken 31BF3856AD364E35 gt lt modules gt lt handlers gt lt remove name WebServiceHandlerFactory Integrated gt lt remove name ScriptHandlerFactory gt lt remove name ScriptHandlerFactoryAppServices gt lt remove name ScriptResource gt lt add name ScriptHandlerFactory verb path asmx preCondition integratedMode type System Web Script Services ScriptHandlerFactory 128 System Web Extensions Version 3 5 0 0 Culture neutral PublicKeyToken 31BF3856AD364E35 gt lt add name ScriptHandlerFactoryAppServices verb path AppService axd preCondition integratedMode type System Web Script Services ScriptHandlerFactory System Web Extensions Version 3 5 0 0 Culture neutral PublicKeyToken 31BF3856AD364E35 gt lt add name ScriptResource verb GET HEAD path ScriptResource axd preCondition integratedMode type System Web Handlers ScriptResourceHandler System Web Extensions Version 3 5 0 0 Culture neutral PublicKeyToken 31BF3856A
43. Search em um ambiente sem ru dos sonoros Nota se que as senten as tiveram uma m dia de acertos de direita 96 virar direita 93 para direita 80 e vire direita 70 nos seus reconhecimentos Ent o a senten a direita atingiu a melhor m dia de acertos em um ambiente sem ru dos sonoros O Gr fico10 exp e as amostras de dados das senten as de fala direita virar direita para direita e vire direita num ambiente com ru do sonoro 81 Ambiente com ru dos Hm O e N WwW BH AN wD O direita virar direita para direita vire direita E N acertos Pl td N acertos P2 ld N acertos P3 Gr fico 10 Amostras de dados das senten as que viram o rob direita via Voice Search em um ambiente com ru dos sonoros As senten as mostraram uma m dia de acertos de direita 96 virar direita 76 para direita 73 e vire direita 66 nos seus reconhecimentos Assim a senten a direita foi nica que manteve a mesma m dia de acertos em um ambiente com ru dos sonoros No Gr fico 11 encontram se as amostras de dados das senten as de fala girar esquerda gire esquerda girar esquerda e gire esquerda num ambiente sem ru do sonoro Ambiente sem ru dos ja O e NU FUN AN w WY girar a esquerda gire e
44. Search em rela o ao CVoiceControl utilizado no m dulo de controle de voz interno dispensar o pr treinamento dos locutores Al m disso o Voice Search n o precisa ser instalado no sistema operacional Android porque todos os celulares com esse sistema operacional s o aptos ao seu uso Recentemente a Google lan ou uma vers o do Voice Search compat vel com iPhone iPod touch e iPad Requires iOS 4 2 ou posterior A nica limita o do Voice Search a necessidade de uma conex o com a Internet para funcionar pois ele s reconhece a fala por meio de um servi o fornecido pela Google fato pouco relevante nos dias de hoje diante da quase totalidade dos propriet rios desse tipo de celular possuir acesso internet Ao realizar um estudo mais aprofundado do Voice Search notou se que ele acionado atrav s de qualquer p gina da web que possua um TextBox ou caixa de texto Dessa forma o primeiro passo foi gerar uma p gina de web em html com um TextBox para acionar o Voice Search Para automatizar a execu o dos comandos de fala reconhecidos criou se nessa p gina um JavaScript objetivando verificar a cada 1000ms novas entradas no TextBox A Figura 21 mostra o c digo fonte da p gina de web Reconhecimento de Fala com o JavaScript utilizado para automatizar o envio dos comandos de fala reconhecidos pelo Voice Search vide ap ndice para maiores detalhes 59 I lt HTML gt lt HEAD gt lt TITLE gt Reconhec
45. Universidade Metodista de Piracicaba P Faculdade de Ci ncias Exatas e da Natureza Mestrado em Ci ncia da Computa o Arquitetura para Integra o de M dulos de Reconhecimento de Fala em Plataforma Rob tica M vel Tarcisio Jorge Bezerra Orientador Prof Dr Luiz Eduardo G Martins Piracicaba SP 2012 Universidade Metodista de Piracicaba 2 q Faculdade de Ci ncias Exatas e da Natureza Mestrado em Ci ncia da Computa o Arquitetura para Integra o de M dulos de Reconhecimento de Fala em Plataforma Rob tica M vel Tarcisio Jorge Bezerra Orientador Prof Dr Luiz Eduardo G Martins Trabalho de Disserta o apresentado ao Mestrado em Ci ncia da Computa o da Faculdade de Ci ncias Exatas e da Natureza da Universidade Metodista de Piracicaba UNIMEP como parte dos requisitos para obten o do T tulo de Mestre em Ci ncia da Computa o Piracicaba SP 2012 Bezerra Tarcisio Jorge Arquitetura para Integra o de M dulos de Reconhecimento de Fala em Plataforma Rob tica M vel Piracicaba 2012 140 p Orientador Prof Dr Luiz Eduardo Galv o Martins Disserta o Mestrado Universidade Metodista de Piracicaba Faculdade de Ci ncias Exatas e da Natureza Programa de P s Gradua o em Ci ncia da Computa o 1 Reconhecimento de fala 2 Rob tica m vel 3 RoboDeck Arquitetura para Integra o de M dulos de Reconhecimento de Fala em Plataforma Rob tica M vel Au
46. a operacional Linux que tivesse c digo aberto para mudan as e que reconhecesse falas em Portugu s J para integrar um aplicativo de reconhecimento de fala ao SDK chamado Giga de Testes era necess ria uma biblioteca de interface de voz que pudesse ser acessada atrav s de um celular ou PC que reconhecesse a fala de qualquer locutor sem a necessidade de um treinamento e que fosse compat vel a qualquer plataforma Partindo dessas caracter sticas foram encontradas as seguintes bibliotecas 3 1 XVoice O XVoice permite que o usu rio fa a um ditado utilizando fala cont nua e comando de voz para a maioria dos aplicativos Para converter a fala dos usu rios em texto ele usa o IBM ViaVoice que distribu do separado do software Em modo de ditado o XVoice envia o texto direto para o aplicativo que o usu rio estiver utilizando No modo de comando ele reconhece a fala e executa o conforme o comando pr definido pelo usu rio A desvantagem desse sistema a IBM n o disponibilizar mais os pacotes que permitiam a sua instala o em Sistemas Operacionais Linux Portanto sem o pacote ViaVoice SDK que era distribu do separado do XVoice o programa n o tem utilidade pois fica sem o m dulo para reconhecimento de fala CREEMER D et al 1999 A Figura 3 mostra uma sess o t pica do XVoice em que a fala reconhecida visualizada no painel direito Os vocabul rios atualmente ativos s o listados 32 esquerda O apli
47. a para ser executado diminuindo o percentual de erros no reconhecimento da senten a falada conforme mostra a Figura 41 73 private void timeri Tick object sender EventArgs e try dsBD comandosRow linha null dsBD comandosDataTable tb null tb comandosTableAdapter1 GetDataByStatusVazio for int i i lt tb Count i linha tb i listBoxl Items Add Comando linha Comando executado as linha DataHora comandosTableAdapter1 ExecutaComando 1inha CodComando if linha Comando Equals gire esquerda linha Comando Equals girar a esquerda linha Comando Equals girar esquerda linha Comando Equals girar esquerda linha Comando Equals gire esquerda linha Comando Equals gire a esquerda girarel Figura 41 C digo fonte das condi es para executar o m todo girare1 O s timo e ltimo m todo utilizado nesse experimento foi girard1 o qual tem a fun o de girar o RoboDeck no seu pr prio eixo direita A Figura 42 apresenta o c digo fonte de sua implementa o girar a direita public void girardi t short intensity 15000 ou 3276 report robodeck roll rdsdk Side RIGHT intensity new GigaCallback this actionCallback k Figura 42 C digo fonte do m todo girard1 A intensidade foi configurada em 15000 e o rdsgk Side em RIGHT essa configura o faz o rob girar no p
48. aat a system for doing phonetics by computer In Glot International v 5 9 10 p 341 345 2001 CAMPBELL J P Speaker Recognition In Proceedings of the IEEE 85 1437 1462 1997 CHENGALVARAYAN R Hierarchical Subband Linear Predictive Cepstral Features for HMM Basead Speech Recognition In International Conference on Acoustics and Signal Processing 1999 CALEY Richard BLACK W Alan TAYLOR Paul System manual documentation Edition 1 4 1999 Dispon vel em lt http www cstr ed ac uk projects festival manual gt Acesso em 06 out 2011 CREEMER David Z DORIS Tom CRAFT Brian Xvoice is Copyright c on line documentation 1999 Dispon vel em lt http xvoice sourceforge net gt Acesso em 15 out 2011 DEVILLIERS E M Implementing Voice Recognition And Natural Language Processing In The NPSNET Networked Virtual Environment In Naval Postgraduate school California 1996 DODDINGTON G R Speaker rcognition Idetifying People by their Voices In Proccedings of the IEEE Vol 73 No11 pages 1651 1664 1985 FECHINE M Joseana Reconhecimento Automatico de Identidade Vocal utilizando Modelagem H brida Param trica e Estat stica In Tese de Doutorado Universidade Federal da Par ba 2000 FURUI S Digital Speech Processing Synthesis and Recognition Marcel Dekker New York 1989 Geoffrois Edouard Boudahmane Karim TranscriberAG user manual 2011 Dispon vel em lt http ftransag sourceforge net
49. ai ta cave ve cave ca nace NEAR ESPREITAR RARE NEAR 93 6 4 3 Recursos tecnol gicos utilizados ss 2 cus aii attains 93 6 4 4 Comandos rob ticos utilizados arena 93 6 4 5 Implementa o sec sas coheed rare eee ada SOS cede raid aa na SE ete DRE nara Asia ana Orar nani da neee 93 6 4 6 Senten a reconhecida pelo Voice Search ia 95 6 4 7 Dificuldades Encontradas e An lise dos Resultados 96 6 5 Experimento 5 Desviar de um objeto via m dulo de controle de voz externo 97 RE TOD CUVO nan RR RR E RR ER Re RR RR PR DER AR AR SRD ER Re 97 6 5 2 AMDIENE TES ICO es en a Ea aaa aa aiaia a 97 6 5 3 Recursos tecnol gicos utilizados aa 98 6 5 4 Comandos rob ticos utilizados e arrernaa 98 GO oimplementa o sapata ioeot topa ee ett eee cts tek elo tls R 98 6 5 6 Senten a reconhecida pelo Voice Search 100 6 5 7 Dificuldades Encontradas e An lise dos Resultados 101 i O PR AR RR IRS SNI tnd arin aii vate bbl eee alin tied eG A A 102 6 6 6 gt hc ninnu nnn N re Steer ate eer RE 102 6 6 2 Ambiente MSICO puto ie 102 6 6 3 Recursos tecnol gicos utilizados ira 103 6 6 4 Comandos rob ticos utilizados anamaria eines einai ceara 103 6 5 o lmplementacdO ali nie asi A ea RO AR a ER 103 6 6 6 Senten as reconhecidas pelo CvoiceControl 106 6 6 7 Dificuldades Encontradas e An lise do
50. apter1 GetDataByStatusVazio for int i i lt tb Count i linha tb i listBox1 Items Add Comando linha Comando executado as linha DataHora comandosTableAdapter1 ExecutaComando 1inha CodComando if linha Comando Equals objeto obj Figura 54 C digo fonte da condi o para executar o m todo obj 6 5 6 Senten a reconhecida pelo Voice Search Os crit rios para obter as amostras de dados nesse experimento foram os mesmos j descritos no Experimento No Gr fico 23 visualizam se as amostras de dados da senten a de fala objeto num ambiente sem ru do sonoro Ambiente sem ru dos 10 10 objeto E N acertos P1 Ei N acertos P2 E N acertos P3 Gr fico 23 Amostras de dados da senten a que faz o rob desviar de um objeto via Voice Search em um ambiente sem ru dos sonoros A senten a objeto atingiu uma m dia de acertos de 96 no reconhecimento de fala em um ambiente sem ru dos sonoros 101 O Gr fico 24 traz as amostras de dados da senten a de fala objeto num ambiente com ru do sonoro Ambiente com ru dos 10 n N OO O eal w of N objeto E N 2 acertos P1 Ei N acertos P2 E N 2 acertos P3 Gr fico 24 Amostras de dados da senten a que faz o rob desviar de um ob
51. ara a avalia o do volume no Mixer Esse procedimento realizado para encontrar o melhor n vel de volume de seu microfone no ambiente que se encontra Seleciona se Calculate Recording Thresholds para encontrar o nivel do sinal sonoro m nimo com objetivo de iniciar a captura de udio Na primeira fase deve se permanecer em sil ncio para a capta o de todos os sons externos proporcionados no ambiente Na segunda deve se sustentar uma conversa at que o ciclo seja conclu do com sucesso 134 ing Device Figuration Adjust alculate ReciiS asiu Goan know t ophone I m d 135 keep on talking y stop talking now The thresholds been defined Press any key to return to menu Seleciona se Estimative Characteristics of Recording Channel para encontrar o n vel m nimo do volume do microfone atrav s da an lise dos ru dos do ambiente Para efetuar essa verifica o deve se permanecer em sil ncio novamente com a finalidade de capta o de todos os sons externos proporcionados no ambiente c 2000 Daniel Kiecza Recording Device Configuration Tool annel silent until I say I m Press any key to 136 Pressiona se ENTER na op o Write Configuration para salvar a calibra o do microfone e logo ap s seleciona se Exit para sair desse m dulo Antes de aparecer a tela de configura es salvas com sucesso Save Configuration Success surgir um erro exibindo
52. bjetivando minimizar o tempo computacional na etapa de classifica o Os sistemas de reconhecimento t m usado diversas caracter sticas como formantes particularmente importantes na determina o da fala intensidade e coeficientes obtidos a partir dos m todos de extra o de par metros De certo modo a forma o das vogais se d praticamente pela altera o das regi es form nticas e a escolha das caracter sticas implica a qualidade do reconhecimento Uma das mais importantes t cnicas para an lise de voz segundo Vieira 1984 a an lise dos Coeficientes por Predi o Linear LPC usada para estimar os par metros b sicos da voz fornecendo estimativas extremamente corretas 27 desses par metros com uma boa velocidade computacional Eles s o estimados por minimiza o do erro quadr tico entre a amostra corrente e a sua predi o O princ pio da predi o linear a de que um valor de uma amostra pode ser aproximado por combina o linear aos valores das amostras anteriores com base na correla o entre elas Muitos sistemas de reconhecimento de fala t m utilizado os par metros obtidos na an lise LPC devido s vantagens proporcionadas em termos de generaliza o da envolt ria espectral e sua habilidade para modelar os picos espectrais Fechine 2000 aponta que os m todos de reconhecimento de voz de modo geral diferenciam se na forma como os par metros extra dos s o utilizados na constru o dos
53. by product dragon for pc home version index htm gt Acesso em 06 out 2011 ORLANDINI Guilherme Desenvolvimento de Aplicativos Baseados em T cnicas de Vis o Computacional para Rob M vel Aut nomo In Disserta o de mestrado Universidade Metodista de Piracicaba Piracicaba 2012 PIZZOLATO E B Reconhecimento de Fala Conceitos Fundamentos e T cnicas In Inicia o Cient fica Universidade Federal de S o Carlos S o Carlos 2001 POZZEBON R Google Voice Search Dispon vel em lt http www oficinadanet com br artigo internet google voice search gt Acesso em 28 maio 2012 RABINER L R Applications of Voice Processing to Telecommunications In Proceedings of IEEE Vol 82 Issue 2 1994 XBOT Manual do usu rio RoboDeck Vers o 1 0 S o Carlos 2011 ROE D B WILPON J G Voice communication between humans and machines In National Academy of Sciences 1994 116 SIM ES O Flavio Implementa o de um sistema de convers o Texto Fala para o portugu s do Brasil In Disserta o de mestrado Universidade estadual de Campinas Campinas 1999 TATHAM M Speech Recognition Dispon vel em lt http www essex ac uk speech teaching erasmus recognit html gt Acesso em 15 Jul 2011 VIEIRA M N M dulo Frontal para um Sistema de reconhecimento Autom tico de Voz In Disserta o de Mestrado Universidade estadual de Campinas Campinas 1984 ZELTER D JOHNSON MB Interacting with Virtual Environm
54. ca fundamentada em livros e artigos sobre o estado da arte da rea de reconhecimento de fala com o intuito de adquirir uma base te rica das tecnologias de voz assim como suas aplica es Na segunda etapa notou se a necessidade de pesquisar os pacotes de reconhecimento e s ntese de fala A partir dos pacotes encontrados verificou se a conveni ncia de estabelecer uma compara o entre eles com o objetivo de identificar o sistema mais compat vel para se obter uma integra o do aplicativo escolhido a uma plataforma rob tica m vel Ap s essa pesquisa e compara o observou se que os dois sistemas de reconhecimento de fala mais compat veis com o prop sito do trabalho seriam o CVoiceControl para o desenvolvimento do m dulo de voz interno e o Voice Search para o m dulo externo Na terceira etapa produziu se um estudo relacionado s plataformas de rob tica m vel fazendo tamb m uma compara o entre os rob s m veis fabricados e comercializados em especial os que possuem prot tipos ou kits para desenvolvimento com o intuito de facilitar a integra o da interface de voz a eles Verificou se que entre as plataformas rob ticas somente o RoboDeck era 100 brasileiro sendo desenvolvido e fabricado no interior de S o Paulo na cidade de S o Carlos fato que motivou a escolha desse rob Na quarta etapa desenvolveram se dois M dulos de Controle de Voz para o RoboDeck um M dulo de reconhecimento de fala interno integrad
55. cativo para onde os comandos est o sendo enviados e aparecem listados na parte superior CREEMER D et al 1999 xvwoice E File Grammars Help Application Command emacs xvoice xml Vocabularies command mode editor commands on go to e mail compose new mail IdleVvocab dictate mode this is a test windowmanagers message stop dictation command CommandYocab mode funknown mail commands emacs on send mail exit mail standardemacs funknown funknown command mode editor commands on open file x victor oscar india charlie echo unknown dot x mike lima return Microphone Push To Talk Figura 3 Tela do XVoice Fonte lt http xvoice sourceforge net gt 3 2 Festival Speech O Framework Festival um projeto desenvolvido pela University of Edinburgh consistente na convers o de frase no formato de texto em voz um software capaz de fazer um discurso artificial no lugar de um ser humano real al m de ser o mais completo sistema de s ntese de uso geral dispon vel com licen a gratuita usado por sites de pesquisas e outros projetos em todo o mundo O sistema todo desenvolvido em C sob licen a do X11 que permite uso comercial e n o comercial de forma irrestrita Por outro lado existem dois fatores negativos o primeiro a l ngua utilizada pois no site oficial est o presentes pacotes de dois narradores sendo um para o Ingl s americano britanico e um para o Espanhol n o possu
56. ch em um ambiente com ru dos sonoros 84 As senten as expuseram uma m dia de acertos de girar direita 33 gire direita 36 girar direita 46 e gire direita 20 nos seus reconhecimentos Ent o todas as senten as adquiriram um percentual maior de erros no ambiente com ru do sonoro sendo que a senten a girar direita ficou com a menor m dia de erros 54 6 1 8 Dificuldades Encontradas e An lise dos Resultados A dificuldade averiguada foi manter o RoboDeck em linha reta nos comandos para frente e para tr s pois conforme ele se movimentava ocorria um pequeno deslocamento para a esquerda Ap s realizar v rios testes e analisar os resultados obtidos constatou se que o problema estava no alinhamento das rodas do rob 6 2 Experimento 2 Girar no pr prio eixo em 90 graus via m dulo de controle de voz externo 6 2 1 Objetivo Demonstrar a movimenta o do RoboDeck girando no pr prio eixo em um ngulo de 90 graus esquerda e direita Nesse experimento o rob girou no pr prio eixo esquerda at atingir o ngulo de 90 graus e parou alinhando as rodas Da mesma forma o rob girou no pr prio eixo direita at atingir o ngulo de 90 graus e parou alinhando as rodas 6 2 2 Ambiente f sico Realizou se no mesmo local com iguais condi es do experimento 1 6 2 3 Recursos tecnol gicos utilizados Foram utilizados os mesmo quatro recursos j descritos no experim
57. conex es do Create IROBOT 2006 poss vel controlar o Rob Create atrav s de pequenas rotinas j prontas ou programar um novo comportamento aplicando as linguagens de programa o C ou C mediante uma interface serial do computador Esse rob tamb m possui 32 sensores integrados 43 S 2 rodas motorizadas S 10 comportamentos programados x 1 porta de entrada sa da expans vel para sensores e atuadores personalizados S 1 zona de carga com pontos de montagem Figura 12 Rob m vel Create da empresa IRobot Fonte lt http uncrate com stuff irobot create gt 4 2 LEGO Mindstorms NXT O rob MINDSTORMS NXT um produto da LEGO que possui um bloco de controle computacional inteligente ideal para os desenvolvedores ou estudantes personalizarem o rob com novos modelos de programa o O Rob combina a versatilidade do sistema de constru o LEGO com as novas tecnologias rob ticas pois vem com 612 pe as permitindo que o usu rio crie diversas configura es rob ticas Seu bloco inteligente NXT LEGO formado por um microcontrolador ARM 32 bits um grande display de matriz 4 portas de entrada e 3 de sa da Bluetooth al m de USB Atrav s do Toolkit do LabVIEW o usu rio pode desenvolver programas e descarregar diretamente no bloco NXT Com conversores anal gico digital ADCs de 10 bits como entradas o bloco pode se comportar como uma unidade de aquisi o de dados capa
58. crocontrolador com sistema ARCOS ADEPT 2011 O microcontrolador respons vel por gerenciar os controles de baixo n vel do rob tais como Y Controle dos diversos sensores e atuadores Y Gerenciamento da velocidade dos motores v Ativa o dos sonares v Leitura de dados de sensores v Encoder das rodas Figura 14 Rob m vel Pioneer 3 da empresa MobileRobots Fonte lt http www mobilerobots com researchrobots researchrobots p3at aspx gt 4 4 Xbot RoboDeck A Xbot uma empresa brasileira localizada na cidade de S o Carlos estado de Sao Paulo que fabrica e comercializa rob s m veis para as areas da educa o e do entretenimento Ela surgiu de um projeto de pesquisa e desenvolvimento na rea de rob tica tendo apoio financeiro do programa de fomento para pequenas empresas da FAPESP 46 Seu objetivo disponibilizar ferramentas para melhorar o ensino e o aprendizado dos estudantes de praticamente todas as faixas et rias desde o Ensino Fundamental at a P s Gradua o O RoboDeck um rob m vel desenvolvido pela empresa C Associados Desenvolvimento Tecnol gico Ltda e comercializado pela empresa Xbot Com finalidade educacional apresenta se como uma plataforma rob tica com ambiente de programa o baseado na linguagem C C e possui um kit de desenvolvimento de software SDK para teste fornecendo toda liberdade para os usu rios desenvolverem aplica es utilizando as bibliotecas exist
59. da Computa o estudo de algoritmos eficientes para a implementa o de softwares usados em sistemas de reconhecimento de fala Y Segundo Rabiner 1978 a rea de processamento de voz possui v rias aplica es e pode ser dividida em diferentes reas individuais conforme suas aplica es ou tecnologias O reconhecimento de palavras utiliza o comando de voz para identificar qual a o o sistema deve tomar tem como caracter stica processar apenas um pequeno trecho de fala tornando o processamento simples pois o sistema j sabe quais comandos est o dispon veis ao usu rio Um bom exemplo encontra se em algumas centrais de atendimento telef nico em que o usu rio pode usar a voz ao inv s das teclas do telefone O reconhecimento de fala natural ou cont nua envolve uma ou mais frases ou seja v rias palavras que tenham um sentido sem ntico A fala reconhecida processada e transformada em texto essa tecnologia muito usada para pronunciar palavras em qualquer editor de texto ou mesmo em um simples e mail possibilitando seu uso por pessoas com alguma defici ncia f sica que impossibilite a digita o com as m os 20 A s ntese de voz transforma um texto no formato digital em ondas sonoras fazendo o processo inverso do reconhecimento da fala frequentemente utilizado por deficientes visuais atrav s de programas que replicam o texto digitado em voz alta A autentica o utiliza o princ pio de que cada indiv duo po
60. das caracter sticas relevantes desses objetos e criando um agrupamento de objetos semelhantes dentro de uma determinada classe ou categoria 2 2 2 Reconhecimento de Padr es de Fala Um dos pontos chave no reconhecimento de fala a compara o dos padr es momento em que s o confrontados os par metros ou caracter sticas de um sinal de voz capturado com os padr es de refer ncias j armazenados no sistema O objetivo determinar o grau de similaridade entre dois padr es ou a dist ncia entre eles Segundo Doddington 1985 quando um locutor pronuncia uma palavra ou uma frase durante o treinamento um conjunto de vetores de padr es estabelecido e os segmentos ac sticos s o convertidos em caracter sticas representativas de cada senten a A partir da o vetor de padr es de teste comparado com todos os padr es de refer ncia armazenados para escolher o mais parecido produzindo uma sa da correspondente aquela refer ncia Se no momento da compara o existirem outras refer ncias semelhantes o sistema pode adiar a decis o e solicitar que o locutor repita seu padr o Chengalvarayan 1999 descreve que um sistema de reconhecimento de fala consiste na extra o e sele o dos par metros vocais seguido pelo processo de classifica o com o uso de um vetor de caracter sticas que deve conter toda informa o relevante do sinal de voz ignorar as informa es irrelevantes e ainda possuir uma pequena dimens o o
61. de 2010 CvoiceContr Linux Sim Qualquer Reconhecimento de CVoiceControl ol fala 0 9Alpha novembro de 2002 Voice Windows iOS N o Qualquer Reconhecimento de Voice Search 2 0 0 Search 4 2 e Android fala 23 maio de 2012 Analisando a tabela observa se que as bilbiotecas XVoice Dragon Naturally Speaking IBM ViaVoice CVoiceControl e Voice Search s o as nicas que possuem a tecnologia de reconhecimento de fala Entre elas apenas as bibliotecas IBM ViaVoice CVoiceControl e Voice Search reconhecem comandos de fala em Portugu s mas somente o CVoiceControl compat vel com o Sistema Operacional Linux configurando se portanto a biblioteca mais adequada para a integra o interna com a plataforma rob tica m vel Para a integra o externa ao SDK da plataforma rob tica a biblioteca com melhor compatibilidade foi o Voice Search uma vez que pode ser usado por v rios locutores sem a necessidade de treinamento Pelo fato de ser compat vel com os sistemas operacionais Windows e Android apresenta se como a biblioteca ideal para controlar o rob pela fala atrav s de um dispositivo m vel como os celulares 42 4 PLATAFORMAS DE ROB TICA M VEL A rob tica uma rea em grande expans o que movimentando bilh es de d lares gera novos mercados de trabalho Entre as suas reas pode se destacar a rob tica m vel atualmente utilizada na cria o de rob s com v rias finalidades como na i
62. de fala realizado de quatro formas b sicas em que o sistema recebe uma entrada de voz e traduz em ortografia normal de acordo com o idioma e a gram tica utilizada As quatro formas b sicas s o Baseada em Modelos o sistema recebe uma entrada de voz e compara com os modelos j armazenados tentando encontrar um que mais se aproxime da entrada de voz Baseada em Conhecimento utiliza t cnica de intelig ncia artificial e racioc nio baseado em casos para simular o conhecimento humano a fim de reconhecer a voz Estoc stica utiliza as propriedades da estat stica da ocorr ncia de sons de voz individuais Conexionista aplica a teoria dos grafos que trabalha com redes de um grande n mero de n s simples interconectados representando fonemas e suas conex es treinados para reconhecer a fala 24 J Pizzolato 2001 cita tr s m todos distintos para o reconhecimento de fala o ac stico o reconhecimento de padr es e a intelig ncia artificial O ac stico baseado na teoria da ac stica e fon tica utilizando a exist ncia de um conjunto finito e distinto de unidades fon ticas em uma linguagem atrav s das propriedades presentes na fala O reconhecimento de padr es trabalha com duas fases a primeira consiste no treinamento e a segunda no reconhecimento No treinamento armazenada uma quantidade consider vel de padr es sendo poss vel obter as varia es de cada unidade sonora de um grupo de usu rios No reconhecime
63. di girar a direita System Threading Thread Sleep 1556 para parari parar o robo moverf1 mover para frente system Threading Thread Sleep 3ee0 para parari parar o robo girarei girar a esquerda System Threading Thread Sleep 1700 para parari parar o robo moverfi mover para frente System Threading Thread Sleep 5e00 para parari parar o robo girarei girar a esquerda System Threading Thread Sleep 1900 para parari parar o robo moverfi mover para frente execu o em execu o em execu o em execu o em execu o em em 180 milisegundos 1558 milisegundos 3000 milisegundos 1786 milisegundos 500 milisegundos 1988 milisegundos System Threading Thread Sleep 3 00 para a execu o em 3080 milisegundos parari parar o robo girardi girar a direita System Threading Thread Sleep 100 para a execu o em 1908 milisegundos parari parar o robo moverf1 mover para frente System Threading Thread Sleep 19000 para a execu o em 18eee milisegundos parari parar o robo Figura 53 C digo fonte do m todo obj objeto conforme a Figura 54 executado se a linha comando do banco de dados falaBD for igual a 100 private void timeri Tick object sender EventArgs e try dsBD comandosRow linha null dsBD comandosDataTable tb null tb comandosTableAd
64. do Possui atalhos por voz o que permite criar e mail compromissos agenda e pesquisar na Web usando comandos de voz simples O programa tem suporte para a l ngua inglesa ditado em ritmo de fala normal cujo processo de treinamento demora em m dia 4 minutos Assim o usu rio estar apto a ditar o texto para a m quina com se estivesse numa conversa normal tendo as palavras ditadas 99 de precis o NUANCE 2011 34 A Figura 5 mostra a tela do DragonPad um editor de texto do Dragon Naturally Speaking Preium Editon 11 Winds Eu mai H Ame erin gr Coe Borsa 2S Ada eve Cormimasmad Dictation Bos Figura 5 Tela do DragonPad do Dragon Fonte lt http voice recognition software review toptenreviews com 3060 screenshots htm gt O Dragon tamb m permite criar v rias contas de usu rio que podem ser adaptadas a estilos espec ficos de falar A Figura 6 mostra o Manage Users um programa que gerencia os usu rios de Dragon Naturally Speaking Premium Edition 11 anage Users User Dan Location of user files D esa amp DragonBar Normal mode Figura 6 Tela do Manage Users do Dragon Fonte http voice recognition software review toptenreviews com 3060 screenshots htm 35 As desvantagens do Dragon Naturally Speaking s o o n o reconhecimento da L ngua Portuguesa a incompatibilidade com o Sistema Operacional Linux a n o gratuidade da licen a para seu u
65. do a senten a atr s obteve a melhor m dia de acertos em um ambiente sem ru dos sonoros O Gr fico 4 exp e as amostras de dados das senten as de fala para tr s atr s e mover para tr s num ambiente com ru do sonoro 77 Ambiente com ruidos a O e N U A a 0AN O para tr s atr s mover para traz E N acertos Pl bi N acertos P2 MN acertos P3 Gr fico 4 Amostras de dados das senten as de movimenta o do rob para tr s via Voice Search em um ambiente com ru dos sonoros Constata se que as senten as apresentaram uma m dia de acertos de para tr s 43 atr s 73 e mover para tr s 46 nos seus reconhecimentos A senten a para tr s obteve uma m dia maior de erros 57 em raz o dos ru dos sonoros enquanto a senten a atr s atingiu uma m dia maior de acertos Est o no Gr fico 5 as amostras de dados das senten as de fala parar pare e rob pare num ambiente sem ru do sonoro Ambiente sem ru dos 10 HR NW e wu A 6 pare robo pare Bi N acertos P1 b N acertos P2 bi Ne acertos P3 Gr fico 5 Amostras de dados das senten as que param a movimenta o do rob via Voice Search em um ambiente sem ru dos sonoros 78 As senten as mostraram uma m dia de acertos de parar 90 pare 43 e rob pare 2
66. e classifica o importante ficar atento ao intervalo de tempo entre as observa es do sinal evitando perder as informa es entre os vetores de caracter sticas sucessivos No m dulo de classifica o realiza se uma convers o do vetor de caracter sticas numa sess o de s mbolos lingu sticos que pertencem a um vocabul rio T Gama relacionado com as classes padr o MOREIRA 2006 2 3 Aplica es da Tecnologia de Reconhecimento de Fala Existem in meras aplica es que aplicam a tecnologia de reconhecimento de fala tanto nos computadores quanto nos celulares Tais como v Tetrapl gicos que utilizam o comando de voz para manipular o computador y Motoristas que usam o comando de voz para mudar a m sica do radio ou falar o endere o de seu destino para um GPS sem ter de digitar permanecendo atento ao tr nsito y Alguns escritores que ditam seus livros para um computador o qual transcreve as palavras com precis o v A Google que tem investido fortemente em comandos de voz para seu sistema operacional m vel o Android Por outro lado a oferta de sistemas de reconhecimento de fala em Portugu s para celulares e computadores quase nula O Android da Google por exemplo cuja tecnologia de reconhecimento de voz Voice Actions s interpreta comandos em Ingl s Maciel 2007 destaca as aplica es de reconhecimento de fala em duas amplas reas a telecomunica es e a de neg cios Na rea de telecom
67. ecidos pela m quina permitindo um di logo direto entre eles ao inv s de enviar comando de texto por meio de uma interface baseada em teclado ou bot es 1 2 Objetivo O objetivo deste trabalho est dividido em duas etapas A primeira consiste na integra o de um aplicativo de reconhecimento de fala ao MAP M dulo de Alta Performance do rob m vel RoboDeck que utiliza o sistema operacional Linux distribui o Debian para comandar o rob por meio da voz Os comandos que dever o ser reconhecidos e executados com velocidade cont nua s o 1 para frente 2 parar 3 virar esquerda e 4 virar direita A segunda refere se ao controle do rob pela fala atrav s de qualquer dispositivo m vel que possua Internet e um navegador da Google como por 14 exemplo um celular com Sistema Operacional Android ou um notebook com o navegador Chorme e a API Voice Search Nesta etapa al m do rob reconhecer todos os comandos b sicos de movimenta o atrav s da fala ele tamb m poder girar direita ou esquerda no seu pr prio eixo em 90 graus desviar de objetos ir at o usu rio e se movimentar em um circuito de formato quadrado 1 3 Justificativa Os rob s m veis est o sendo utilizados progressivamente em diversos lugares fato que torna fundamental o homem ter uma comunica o mais natural com eles Integrar uma interface de voz ao rob possibilitar ao homem comand lo pela fala atrav s do pr
68. efinir comandos que n o gerem conflitos ou prejudiquem o seu Sistema Operacional 5 1 1 3 M dulo de ativa o do CVoiceControl Ap s conclus o dos dois m dulos o usu rio pode iniciar o processo de reconhecimento de fala do CVoiceControl fazendo o Linux obedecer aos comandos de voz para tanto necess rio digitar o comando cvoicecontrol nome arquivo do modelo isto o nome do modelo que se deseja usar no console do Linux como no exemplo abaixo cvoicecontrol teste cvc O reconhecedor de fala entra em modo de grava o autom tica e o usu rio deve certificar se de que nenhum aplicativo precisa de acesso ao dispositivo de som pois neste momento como na maioria dos dispositivos de som s se permite acesso exclusivo KIECZA 2002 Para encerrar o programa o usu rio deve pressionar a tecla Ctrl C no console e digitar o comando killall cvoicecontrol 5 2 M dulo de Controle Externo Para o desenvolvimento do m dulo de controle externo de voz foi escolhida a biblioteca de reconhecimento de fala Voice Search da empresa Google pelo fato de 58 ser compativel com qualquer celular que tenha o Sistema Operacional Android e com qualquer microcomputador que possua o navegador Chrome instalado A escolha dessa biblioteca tamb m aconteceu porque ela reconhece palavras em Portugu s o que n o ocorre na maioria dos sistemas de reconhecimento limitada compreens o de comandos em Ingl s A grande vantagem do Voice
69. em Write Configuration ficar dispon vel para que o usu rio possa salvar a calibragem do microfone Ao salv lo gera se um arquivo chamado Config que possui as configura es da calibragem o qual ser gravado no diret rio do CVoiceControl 5 1 1 2 M dulo de edi o de modelo O Model Editor segundo m dulo a ser configurado realiza o aprendizado de comandos e o controle atrav s do reconhecimento de fala podendo o usu rio associar refer ncias sonoras a um determinado comando Linux cada comando deve ter no m nimo quatro refer ncias de voz KIECZA 2002 Este m dulo composto por um n mero variado de elementos de refer ncia cada item corresponde a um comando que pode ser reconhecido Um item de 55 refer ncia consiste num r tulo uma transcri o do que dito em um comando Linux executado no momento do reconhecimento desse item Dessa forma para reconhecer um comando de voz esse componente compara a fala do usu rio com todos os itens de refer ncia de voz dos modelos ativos se uma das refer ncias de voz for semelhante express o de entrada escolhe se tal item como resultado do reconhecimento e executa se o comando associado a ele O Model editor formando por quatro fun es Y New Speaker Model Load Speaker Model Edit Speaker Model Save Speaker Model Atrav s dessas fun es o usu rio pode redefinir o modelo atual New Speaker Model carregar um modelo existente Load Speaker
70. embly System Web Extensions Version 3 5 0 0 Culture neutral PublicKeyToken 31BF3856AD364E35 gt lt add tagPrefix asp namespace System Web UI WebControls assembly System Web Extensions Version 3 5 0 0 Culture neutral PublicKeyToken 31BF3856AD364E35 gt lt controls gt lt pages gt lt httpHandlers gt lt remove verb path asmx gt lt add verb path asmx validate false type System Web Script Services ScriptHandlerFactory System Web Extensions Version 3 5 0 0 Culture neutral PublicKeyToken 31BF3856AD364E35 gt lt add verb path AppService axd validate false type System Web Script Services ScriptHandlerFactory System Web Extensions Version 3 5 0 0 Culture neutral PublicKeyToken 31BF3856AD364E35 gt lt add verb GET HEAD path ScriptResource axd validate false type System Web Handlers ScriptResourceHandler System Web Extensions Version 3 5 0 0 Culture neutral PublicKeyToken 31BF3856AD364E35 gt lt httpHandlers gt lt httpModules gt lt add name ScriptModule type System Web Handlers ScriptModule System Web Extensions Version 3 5 0 0 Culture neutral PublicKeyToken 31BF3856AD364E35 gt lt httpModules gt lt system web gt lt system codedom gt lt compilers gt lt compiler language c cs csharp extension cs type Microsoft CSharp CSharpCodeProvider System Version 2 0 0 0 Culture neutral PublickeyToken b77a5c561934e089 warningLevel 4 gt lt provider
71. enamento em uma vari vel 6 4 5 Implementa o Cinco m todos foram aplicados moverf1 e parart descritos no experimento 1 lersensorf e lersenfron tiveram de ser criados para executar a leitura no sensor de ultrassom frontal do RoboDeck e armazenar o valor obtido em uma vari vel chamada sensorf A Figura 48 mostra o c digo fonte dos m todos lersensorf e lersenfron ler sensor frontal float sensorf public void lersensorf report robodeck getUltrasonicSensors readFrontDistance new GigaCallback this lersenfron public void lersenfron sensorf sensorf robodeck getUltrasonicSensors getFrontDistance statusStripLabel Text Comando executado Figura 48 C digo fonte dos m todos lersensorf e lersenfron 94 E o quinto m todo venha criado atrav s da utiliza o dos m todos lersensorf moverf1 e parar1 Sua fun o executar a leitura do sensor frontal armazenando a na vari vel sensorf sendo que essa vari vel representa a dist ncia que o rob est do objeto ou da pessoa Dessa maneira enquanto o valor da vari vel sensorf for maior que 50 cent metros executa se o m todo moverfi movendo se o rob para frente e quando a dist ncia do objeto ou pessoa for menor executa se o m todo parar1 vide ap ndice para maiores detalhes A Figura
72. enten as que giram o rob no pr prio eixo 90 graus direita via Voice Search em um ambiente sem ru dos sonoros 88 A senten a direita 90 teve uma m dia de acertos de 100 no reconhecimento de fala em um ambiente sem ru dos sonoros No Gr fico 18 visualizam se as amostras de dados das senten as de fala direita 90 num ambiente com ru do sonoro Ambiente com ru dos direita 90 E N acertos P1 ld N acertos P2 bi N acertos P3 Gr fico 18 Amostras de dados das senten as que giram o rob no pr prio eixo 90 graus direita via Voice Search em um ambiente com ru dos sonoros Verifica se que a senten a direita 90 apresentou uma m dia de acertos de 90 em um ambiente com ru do sonoro 6 2 7 Dificuldades Encontradas e An lise dos Resultados Houve dificuldade em definir o tempo de execu o do m todo girard1 ou girare1 uma vez que esse tempo tinha de ser exato para que o rob pudesse atingir o ngulo de 90 graus pois o ngulo desejado era obtido em fun o do tempo de acionamento do motor Mas se a intensidade fosse alterada o tempo necess rio para se conseguir o ngulo tamb m deveria ser modificado Depois de realizar v rios testes e analisar os resultados obtidos compreendeu se a necessidade de levar em considera o al m da intensidade de 15000 do m todo o tempo que o RoboDeck precisava para responder aos
73. entes para comandar o rob Trata se de uma plataforma rob tica m vel universal de c digo aberto O RoboDeck cont m uma Giga de testes para verificar se os comandos est o sendo executados com sucesso Al m disso disponibiliza v rios recursos como Y Camera para fotografar e transmitir imagens em tempo real Y GPS para informar dados como altitude latitude longitude velocidade sentido data e hora Y Wi fi que possibilita controlar o rob a uma dist ncia de at 100 metros v ZigBee que permite a comunica o com o rob a uma dist ncia de at 1000 metros oferecendo boa resist ncia aos ru dos por se tratar de uma rede mais robusta A Giga tamb m capaz de v Informar leituras de dist ncia dos sensores ultrass nicos e infravermelhos v Medir temperatura e umidade v Informar o norte atrav s de uma b ssola Um sensor ultrass nico possibilita que o rob localize obst culos de at 6 metros de dist ncia dentro de um raio de alcance de aproximadamente 45 auxiliando o rob a n o se colidir com poss veis objetos Os sensores infravermelhos localizam se nas laterais do rob e conseguem detectar a presen a de objetos em at 70 cm de dist ncia XBOT 2011 47 Conex o Wi Fi Sensores C mera com ore Ultra s nicos interface USB a Sensores Infra vermelhos Figura 15 Rob m vel RoboDeck da empresa Xbot Fonte lt http www xbot com br educacional robodeck gt 4 4 1
74. ento1 ou seja um notebook um celular um roteador Sem fio e um RoboDeck 85 6 2 4 Comandos rob ticos utilizados Os dois comandos rob ticos de movimenta o do SKD Giga de Testes mencionados no experimento 1 o robodeck brake e o robodeck roll tornaram a ser empregados 6 2 5 Implementa o Usaram se os tr s m todos citados no experimento 1 girare1 girard1 e parar Para girar o RoboDeck no seu pr prio eixo esquerda at atingir o ngulo de 90 graus e parar alinhando as rodas foi necess rio executar o m todo girare por um tempo 1600 milissegundos sendo que esse m todo j estava configurado numa intensidade de 15000 e na sequencia foi executado o m todo para Observando a Figura 44 nota se que esse experimento era executado se a linha comando do banco de dados falaBD fosse igual esquerda 90 private void timeri Tick object sender EventArgs e t try dsBD comandosRow linha null dsBD comandosDataTable tb null tb comandosTableAdapter1 GetDataByStatusVazio for int i i lt tb Count i linha tb i listBox1 Items Add Comando linha Comando executado as linha DataHora comandosTableAdapter1 ExecutaComando linha CodComando if linha Comando Equals esquerda 90 i girarel m todo girar esquerda System Threading Thread Sleep 1600 parar a execu o em 1500 m
75. ents In Ed John Wiley amp Sons New York 1994 117 AP NDICE A seguir apresentam se listados os c digos fontes usados para o desenvolvimento do m dulo de controle de voz externo 1 app config Tem a fun o de conectar o SDK Giga de Testes ao banco de dados falabd lt xml version 1 0 encoding utf 8 gt lt configuration gt lt configSections gt lt configSections gt lt connectionStrings gt lt add name GigaDeTestes Properties Settings ConexaoBD connectionString server localhost User Id root password 1234 Persist Security Info True database falabd providerName MySql Data MySqlClient gt lt connectionStrings gt lt configuration gt 2 dsDB xsd DataSet Tipado da aplica o ControladorRobo O data table comandos representa a tabela no banco de dados O comandos TableAdapter executa os comandos SQL no banco de dados O m todo ExecutaComando executa um update no banco dados onde alterado o status para executado O m todo FilByStatusVazio executa um select para consultar os comandos dispon veis realiza o dos movimentos do rob T CodComando Comando DataHora Status Sa Fill GetData sy ExecutaComando Original_CodComando au FillByStatusVazio GetDataByStatusVazio 3 dsDB xsd DataSet Tipado da aplica o WebRobo O m todo inclus o pega o comando reconhecido pela fala e armazena no banco de dados juntamente co
76. es A Figura 24 demonstra a intera o entre o dispositivo m vel a p gina de web o Voice Search o banco de dados o SDK Giga de Testes e o RoboDeck O usu rio acessa o Voice Search pelo cone do microfone atrav s da p gina de web O Voice Search reconhece o comando de fala e envia para a p gina Acessa a p gina de Web Reconhecimento de Fala que est hospedada no ss p A p gina grava o comando reconhecido pelo Voice Search no Banco de Dados que est instalado no Notebook O SDK conecta e inicia uma sess o no RoboDeck via rede Sem Fio e envia os comandos de movimenta o para o rob O SDK conecta no Banco de Dados e recebe os comandos Figura 24 Arquitetura Geral do m dulo de voz por controle externo ao RoboDeck Ainda dentro do SDK gerou se um recurso com a fun o de habilitar ou desabilitar a verifica o de nova entrada no campo comando do banco de dados falaDB impedindo se necess rio a entrada de comandos n o autorizados Esse 62 recurso tamb m disponibiliza uma visualiza o dos ltimos comandos verificados e executados no SDK admitindo se necess rio pesquisar todos os comandos armazenados no banco de dados informando a data a hora e o status vide ap ndice para maiores detalhes As Figuras 25 e 26 ilustram as telas dos recursos citados es Movimenta o JoyPad Sensores 1 Sensores 2 GPS Expan
77. es todas com velocidades pr definidas Para frente v Virar esquerda v Virar direita v Parar 6 6 2 Ambiente fisico Para realizar esse experimento havia a necessidade de instalar o CvoiceControl e seus pacotes dependentes no Sistema Operacional Debian do RoboDeck fato que alteraria as configura es de um sistema j em uso Como se tratava de um rob cedido pela Escola Polit cnica da USP os testes no m dulo de voz interno ocorreram de forma simulada numa sala fechada em um computador que possu a o CVoiceControl e o MAP M dulo de Alta Performance do RoboDeck Figura 55 Foto da sala e da maquina que foi simulado este experimento 108 6 6 3 Recursos tecnol gicos utilizados Usou se um microcomputador para simular o funcionamento do RoboDeck com o Sistema Operacional Debian onde foram instalados e configurados o sistema de reconhecimento de fala CvoiceControl e o MAP M dulo de Alta Performance do rob 6 6 4 Comandos rob ticos utilizados Foram utilizadas duas Bibliotecas desenvolvidas por Orlandini 2012 a RoboDeckinfo hh cujas fun es s o estabelecer a conex o e iniciar uma sess o com o MAP Modulo de Alta Performance do RoboDeck para envio de comandos e a RoboDeckMoving hh com a finalidade de enviar os comandos respons veis pela movimenta o do rob ao MAP 6 6 5 Implementa o Desenvolveram se quatro controladores internos chamados atrav s do CvoiceCon
78. executar o m todo virarei if linha Comando Equals para esquerda linha Comando Equals esquerda linha Comando Equals vire esquerda linha Comando Equals virar a esquerda linha Comando Equals virar esquerda linha Comando Equals virar esquerda linha Comando Equals vire esquerda linha Comando Equals vire a esquerda virare1 condi o para executar o m todo virardi if linha Comando Equals para direita linha Comando Equals direita linha Comando Equals vire direita linha Comando Equals virar a direita linha Comando Equals virar direita linha Comando Equals virar direita linha Comando Equals vire direita linha Comando Equals vire a direita virardi condi o para executar o m todo girarei if linha Comando Equals gire esquerda linha Comando Equals girar a esquerda linha Comando Equals girar a esquerda linha Comando Equals girar esquerda linha Comando Equals gire esquerda linha Comando Equals gire a esquerda girarei condi o para executar o m todo girard1 if linha Comando Equals gire direita linha Comando Equals girar a direita linha Comando Equals girar direita linha Comando Equals gire direita linha Comando Equals girar direita linha Comando Equals gire a direita
79. fala por meio de um aparelho m vel Nesse experimento foram realizadas as seguintes movimenta es todas com velocidades pr definidas v Ro So eA OSOS Para frente Para tras Virar a esquerda Virar a direita Parar Girar no proprio eixo para a esquerda Girar no proprio eixo para a direita 6 1 2 Ambiente fisico Oficina da empresa Xbot onde o piso era de ceramica com algumas irregularidades O ru do sonoro era elevado pois o ambiente tinha acesso rua e havia v rios funcion rios trabalhando 65 Figura 28 Foto do RoboDeck na oficina da empresa Xbot 6 1 3 Recursos tecnol gicos utilizados Quatro recursos foram usados um notebook um celular um roteador Sem Fio e um RoboDeck O notebook teve as seguintes fun es y Servidor da p gina de web Reconhecimento de Fala enviar a p gina para qualquer dispositivo m vel via rede sem fio empregando o Software UtiDev Web Server Y Servidor do banco de dados falaBD receber os comandos da p gina de web utilizando o Sistema gerenciador de Banco de Dados MySQL Server 5 1 v Execu o do novo SDK Giga de Testes com o m dulo de controle por voz receber o comando do banco de dados falaBD conectando se via rede sem fio com o RoboDeck iniciando uma sess o e enviando os comandos de movimenta o As fun es do celular consistiram em conectar se no servidor de web via rede sem fio iniciando a p gina de web de Reconhec
80. fico 4 Amostras de dados das senten as de movimenta o do rob para tras via Voice Search em um ambiente com ru dos sonoros s 77 Gr fico 5 Amostras de dados das senten as que param a movimenta o do rob via Voice Search em um ambiente sem ru dos sonoros 77 Gr fico 6 Amostras de dados das senten as que param a movimenta o do rob via Voice Search em um ambiente com ru dos sonoros s 78 Gr fico 7 Amostras de dados das senten as que viram o rob esquerda via Voice Search em um ambiente sem ru dos SONMOSOS ccceeeeeeeeeeeeeeeeeeeeeeeeees 79 Gr fico 8 Amostras de dados das senten as que viram o rob a esquerda via Voice Search em um ambiente com ru dos SONOSOS cccceeeeeeeeeeeeeeeeeeeeeeees 79 Gr fico 9 Amostras de dados das senten as que viram o rob a direita via Voice Search em um ambiente sem ru dos sonoros e 80 Gr fico 10 Amostras de dados das senten as que viram o rob direita via Voice Search em um ambiente com ru dos sonoros nennen 81 Gr fico 11 Amostras de dados das senten as que giram o rob no pr prio eixo esquerda via Voice Search em um ambiente sem ru dos sonoros 81 Gr fico 12 Amostras de dados das senten as que giram o rob no pr prio eixo esquerda via Voice Search em um ambiente com ru dos sonoros 82 Gr fico 13 Amost
81. fone O CvoiceControl composto de 3 bin rios microphone config model editor cvoicecontrol No primeiro passo deve se calibrar o microfone para o recurso de reconhecimento de voz atrav s do microphone config Ap s utiliza se o programa model editor para criar modelos de voz comandos Conclu dos esses passos encontram se presentes os dois principais objetos para efetuar o processo de reconhecimento de voz por meio do programa 131 CVoiceControl respons vel por reconhecer e executar o comando microphone config O problema verificado que ao executar o microphone config gravar as configura es do microphone config e gerar o arquivo Config no diret rio cvoice cvoicecontrol 0 9alpha cvoicecontrol aparece a mensagem abaixo w p 00024000 08 01 1638560 lib tls i686 cmov libm 2 10 1 s0 00e47000 00e63000 r xp 00000000 08 01 1622039 lib libgcc_s so 1 00e63000 00e64000 r p 0001b000 08 01 1622039 lib libgcc_s so 1 00e64000 00e65000 rw p 0001c000 08 01 1622039 lib libgcc_s so 1 00e7e000 00e7f000 r xp 00000000 00 00 4 vdso 08048000 08051000 r xp 00000000 08 01 2009468 usr local bin microphone_config 08051000 08052000 r p 00008000 08 01 2009468 usr local bin microphone_config 08052000 08053000 rw p 00009000 08 01 2009468 usr local bin microphone_config 095a1000 095ca000 rw p 00000000 00 00 e heap b77c7000 b77c9000 rw p 00000000 00 00 4 b77e3000 b77e5000 rw p 00000000 00 00 e bfbea000 bfc1e00 rw p
82. hor m dia de acertos em um ambiente sem ru dos sonoros O Gr fico 2 apresenta as amostras de dados das senten as de fala mover para cima mova e para frente num ambiente com ru do sonoro Ambiente com ru dos kB O e N A aA N O O para cima mova para frente E N acertos P1 bi N acertos P2 E N acertos P3 Gr fico 2 Amostras de dados das senten as de movimenta o do rob para frente via Voice Search em um ambiente com ru dos sonoros 76 Verifica se uma m dia de acertos das senten as de mover 73 para cima 80 mova 60 e para frente 70 nos seus reconhecimentos Portanto a senten a para cima obteve a melhor m dia de acertos e a senten a para frente uma baixa devido aos ru dos sonoros O Gr fico 3 exibe as amostras de dados das senten as de fala para tr s atr s e mover para tr s num ambiente sem ru do sonoro Ambiente sem ru dos ps 9 8 7 6 5 4 3 2 Hs para tr s atr s mover para traz E N acertos P1 hi N acertos P2 W N acertos P3 Gr fico 3 Amostras de dados das senten as de movimenta o do rob para tr s via Voice Search em um ambiente sem ru dos sonoros As senten as obtiveram uma m dia de acertos nos seus reconhecimentos de para tr s 60 atr s 80 e mover para tr s 60 Desse mo
83. ida por um processo inverso ao da produ o ignorando os ru dos obtidos na fase de transmiss o J Sim es 1999 descreve a fala como uma representa o dos conjuntos de sons da voz de um ser humano com o intuito de se comunicar Dessa forma a fala tem o objetivo de compreender uma determinada informa o a fim de armazenar o que foi pronunciado transmitindo o sinal de voz por meio de canais e extraindo os 21 par metros ou informa es da fala para manipular o sinal nos mais diversificados fins 2 2 Reconhecimento de Fala Um sistema de reconhecimento de fala basicamente tem a fun o de reconhecer uma senten a falada respondendo de forma correta ao que est sendo dito Para isso necess rio comparar os padr es ac sticos de voz associados a um conjunto de s mbolos que codificam uma mensagem al m de ser essencial que os sinais de entrada que ser o comparados n o apresentem muitas varia es facilitando o processo de compara o dos padr es Para esse processo necessita se tamb m considerar v rias formas de reconhecer o sinal de fala do ponto de vista do usu rio pois de acordo com a pron ncia das palavras e frases poss vel conseguir uma compara o pr xima O m todo de reconhecimento depende de caracter sticas gen ricas do sinal de fala que se pretende reconhecer e podem ser classificadas como FURUI 1989 v Espont neas falas reconhecidas em situa es reais do cotidiano em que a fala da
84. iente com ru dos SONOMOS ccccseeeceseeeeeseeeeeeeeees 109 Gr fico 31 Amostras de dados da senten a que faz o rob virar direita via CvoiceControl em um ambiente sem ru dos sonoros is 110 Gr fico 32 Amostras de dados da senten a que faz o rob virar direita via CvoiceControl em um ambiente com ru dos SONOMOS ccccceeeceseeeeeseeeeeeeeees 110 LISTA DE SIGLAS E ABREVIATURAS API Application Programming Interface ASR Automatic Speech Recognition GPS Global Positioning System HMM Hidden Markov Models LPC Linear Predictive Coding MAP M dulo de Alta Performance MCC M dulo de Controle de Comunica o MCS M dulo de Controle de Sess o QV Quantiza o Vetorial SDK Software Development Kit USB Universal Serial Bus SUM RIO LE INTRODU O siena ses A EEE 13 1 41 GOnte xp aliZaCaO sr eke cabana eighth AeA bee A 13 yea o EIV AAA ne ae eee RE ee ee RN eee eee 13 Obese CIE APNG A POE RE ap tence cette escent crete tect abe eared abet O SN 14 1 4 Caracteriza o do Problema serena 15 1 5 Metodologia do Erabalho asim ster piedade e UA a E UR tobs 15 1 6 Organiza o do Trabalho cesta sie oe ctece eee ste ot bebehe cepeevee ou dsb viana doa be sai abuse sis aBaiana 16 2 TECNOLOGIAS DE VO Z isiiicai scssavstenntizcveetatsevsvnntieniweutesstvsstevubnnatvestesstveshuntcentwentyes 18 DN APA RAR RS RR RD RN SIRI RR SIR
85. ile sensorf gt 50 moverfi1 mova System Threading Thread Sleep 100 para a execu o em 100 milisegundos lersensorf executar leitura do sensor frontal parari para m todo objeto public void obj milisegundos milisegundos lersensorf executar leitura do sensor frontal while sensorf gt 50 moverf1 mova System Threading Thread Sleep 100 para a execu o lersensorf executar leitura do sensor frontal parari para girard1 System Threading Thread parari moverfi1 mova System Threading Thread parari girarei System Threading Thread parari moverfi1 mova System Threading Thread parari girarei System Threading Thread parari moverfi1 mova System Threading Thread parari girard1 System Threading Thread parari moverfi1 mova System Threading Thread parari Sleep 1550 para Sleep 3000 para Sleep 1700 para Sleep 5000 para Sleep 1900 para execu o execu o execu o execu o execu o em em em em em 122 em 1000 1550 5000 1700 5000 1900 milisegundos milisegundos milisegundos milisegundos milisegundos Sleep 3000 para a execu o em 3000 milisegundos Sleep 100 para a execu o em 100 milisegundos Sleep 10000 para a execu o em 10000
86. ilisegundos parari m todo parar Figura 44 C digo fonte da condi o para executar o experimento girar 90 graus esquerda Para girar o RoboDeck no seu pr prio eixo direita at atingir o ngulo de 90 graus e parar alinhando as rodas executou se o m todo girard por um tempo 1550 milissegundos estando tamb m esse m todo configurado com uma intensidade de 15000 e na sequencia foi executado o m todo parai Com base na Figura 45 verifica se que esse experimento era executado se a linha comando do banco de dados falaBD fosse igual direita 90 86 private void timeri Tick object sender EventArgs e i try dsBD comandosRow linha null dsBD comandosDataTable tb null tb comandosTableAdapter1 GetDataByStatusVazio for int i i lt tb Count i linha tb i listBox1 Items Add Comando linha Comando executado as linha DataHora comandosTableAdapter1 ExecutaComando 1inha CodComando if linha Comando Equals direita 90 girardi m todo girar direita System Threading Thread Sleep 1550 para a execu o em 1500 milisegundos parari m todo parar Figura 45 C digo fonte da condi o para executar o experimento girar 90 graus direita 6 2 6 Senten as reconhecidas pelo Voice Search Os crit rios para obter as amostras de dados nesse experimento foram os mesmos j descritos no Experimento1 O Gr fico 15
87. imento de Fala e acionando o Voice Search j instalado no mesmo para o reconhecimento dos comandos falados 66 A Figura 29 mostra o celular conectado na p gina de web acionando o reconhecimento de fala via Voice Search Fale agora g Figura 29 Foto do Celular conectado na pagina de web acionando o Voice Search O Roteador Sem Fio teve a fungao de receber a internet na porta WAN e distribuir via rede Sem Fio al m de ter sido utilizado como meio de interliga o entre o Notebook o Celular e o RoboDeck Por fim o RoboDeck recebia os comandos via rede sem fio do SDK que estava sendo executado no Notebook e iniciava sua movimenta o 6 1 4 Comandos rob ticos utilizados Utilizaram se quatro comandos rob ticos de movimenta o do SKD Giga de Testes robodeck move para criar dois m todos mover o RoboDeck para frente com a intensidade configurada em um valor positivo de 32760 mover o rob para tr s onde a intensidade foi configurada num valor negativo de 32760 v robodeck brake para criar o m todo com a fun o de parar a movimenta o do RoboDeck posicionando suas rodas em linha reta com um ngulo de O grau 67 v robodeck turn para criar dois m todos virar o RoboDeck esquerda onde a intensidade foi configurada em um valor positivo de 15000 e o ngulo em um valor negativo de 32 virar o rob direita com intensidade e ngulo configurados em um valor positiv
88. imento de Falta lt TITLE gt E lt SCRIPT gt inicio do script funcao javascript para verifica o de texto no campo function verificaCampos form variavel que recebe a referencia do campo no formulario var campo form campo verifica se o campo esta vazio if campo value envia o foco cursor de volta ao campo campo focus else submete o formulario para a pagina processa aspx form submit funcao recursiva que chama novamente a funcao verificaCampos a cada 1000ms setTimecut verificaCampos form 1000 lt SCRIPT gt lt HEAD gt lt BODY onLoad verificaCampos form gt lt FORM id form action processa aspx gt lt hi gt Reconhecimento de Fala lt h1 gt Fale o comando desejado lt BR gt lt INPUT name Campo gt nbsp amp nbsp lt FORM gt lt BODY gt lt HTML gt i Figura 21 C digo fonte da P gina de web Reconhecimento de Fala com o JavaScript A Figura 22 apresenta a p gina de web com o TextBox recebendo o comando de fala via Voice Search 60 C ft O 10 0 0 32 WebRobc Ops O Google Chro http www kiecza n gt Inter Reconhecimento de Fala Fale o comando deseje 50000 e agora Cancelar j Figura 22 P gina de web Reconhecimento de Fala No pr ximo passo produziu se um banco de dados em MySQL chamado falaBD que possui uma tabela denominada comandos com os campos Codcomando Comando DataHora e Status cu
89. indo nenhum narrador para o Portugu s o segundo o projeto Festival n o possuir sistema de reconhecimento de voz incluso limitando se s ntese de voz CALEY R et al 1999 1X11 uma licen a utiliza em software livre que permite a reutiliza o de software licenciado em programas livres ou propriet rios 33 A Figura 4 representa uma demonstra o do Festival em que o usu rio pode sintetizar suas pr prias senten as on line atrav s do Site que se destina a permitir um controle mais rigoroso dos resultados de diferentes m todos de s ntese As vozes s o faladas no presente com uma indica o da quantidade de dados de fala usados para construir a voz CALEY R et al 1999 Festival Online Demo Mozilla Firefox Arquivo Editar Exibir Hist rico Favoritos Ferramentas Ajuda EM Festival Online Demo e od tr ed ac uk projects fest MM The Centre for Speech Technology Research aT The University of Edinburgh R Home People News Research Publications Opportunities Downloads festival intranet Festival Text to Speech Online Demo Technical Select a Voice Type the text to synthesise max 70 chars Alan Edinburgh Type your text here say it Unit selection method Alan Edinburgh Nick 1 English RP 1 Nick 2 English RP speech synthesiser which is software capable of making artificial speech in place of a real H Nina English RP female 2 prultilingual general pur
90. ja fun o receber armazenar os comandos da p gina de web e envi los para o SDK Na sequ ncia foi estabelecida uma conex o entre a p gina e o banco de dados empregada para enviar e armazenar no banco de dados falaBD todo comando de fala reconhecido pelo Voice Search dentro do campo Comando o campo DataHora registrou a data e a hora em que o comando foi gravado no banco de dados e o campo Status manteve uma mensagem dizendo se o comando foi armazenado com sucesso A Figura 23 mostra a descri o da tabela comandos do banco de dados falaBD Name Type Null Default Extra Comment FE CodComando int 11 No auto incre gt IC o varchar 255 Yes gt DataHora datetime Yes gt Status varchar 20 Yes Figura 23 Descri o da tabela comandos do banco de dados FalaBD 61 Passou se utiliza o do SDK Kit de desenvolvimento de Software fornecido pela empresa Xbot consistente num sistema chamado Giga de testes que usa a linguagem C O SDK possibilita conectar se ao RoboDeck atrav s de um computador e iniciar uma sess o no MAP M dulo de Alta Performance para enviar comandos destinados a movimentar o rob ou ler seus sensores Dentro do SDK criou se uma conex o com o banco de dados falaBD cujo objetivo era receber do banco de dados os comandos de fala reconhecidos no Voice Search atrav s da p gina de web vide ap ndice para maiores detalh
91. jeto via Voice Search em um ambiente com ru dos sonoros A senten a objeto alcan ou uma m dia de acertos de 76 no ambiente com ru do sonoro 6 5 7 Dificuldades Encontradas e An lise dos Resultados Tr s dificuldades ocorreram manter o RoboDeck em linha reta no comando para frente pois conforme ele se movimentava ocorria um pequeno deslocamento esquerda observando se que ap s realizar v rios testes e analisar os resultados o problema estava no alinhamento das rodas do rob definir a dist ncia correta para que o rob n o se colidisse com o objeto levando se em considera o o tempo que o RoboDeck precisava para responder aos comandos estabelecendo se em princ pio 50 cent metros de dist ncia mas deixando o depois dos testes e an lises em torno de 30 cent metros devido ao tempo de resposta do rob fazer o RoboDeck desviar do objeto e continuar se movimentando para frente em linha reta buscando determinar o tempo exato de execu o em todos os m todos utilizados pois o rob tem uma pequena varia o na intensidade da pot ncia e na velocidade de realiza o de cada m todo influenciando seus ngulos 102 6 6 Experimento 6 Movimenta es b sicas via m dulo de controle de voz interno 6 6 1 Objetivo Demonstrar as movimenta es b sicas do RoboDeck via reconhecimento de fala por meio de um microfone conectado no rob Nesse experimento demonstraram se as seguintes movimenta
92. l a sua utiliza o em Sistemas Operacionais que n o fossem os da Microsoft A Oralux Association lan ou o Voxin que foi uma forma de vender licen as individuais do IBM ViaVoice para o Linux entretanto com um custo maior ao que era vendido pela IBM O software era parecido com o da IBM por m a Oralux Association acabou abandonando o projeto de expandir o programa para novos idiomas por motivos financeiros Iterative Usability Testing Continuous Feed rara Que a usanidoue seja possivel dis realmente adotada por n mero absoli participantes em testes de usabilidade Cada caso um caso Usability for the Masses lara gue a usabilidade seja realmente adotada aor todas de metodos de querrilh ainda mais baratos Figura 9 Tela do assistente do IBM ViaVoice 9 0 para Windows Fonte lt http usabilidoido com br assistentes do ibm viavoice html gt 38 3 7 CVoiceControl O CVoiceControl um programa de reconhecimento de fala compat vel com o sistema Operacional Linux permitindo dessa maneira o usu rio mapear comando de voz para comandos LINUX O programa automaticamente detecta a entrada da fala no microfone e processa o sinal se o reconhecimento tiver sucesso o comando correspondente executado importante destacar que o CVoiceControl uma atualiza o do KVoiceControl KDE VoiceContro KIECZA 2002 Ele n o possui um dicion rio com comandos preestabelecidos diferen
93. lt http www superdownloads com br imagens telas transcriber 126087 2 jpg gt 3 6 IBM ViaVoice 9 O IBM ViaVoice 9 um software de reconhecimento e sintetiza o de voz da IBM com suporte a diversas l nguas como o Portugu s do Brasil para sistemas Operacionais da Microsoft Ele permite que o usu rio fale ao inv s de digitar e escute ao inv s de ler um texto Assim usando a fala o usu rio pode ditar textos nos aplicativos da Microsoft como o Outlook Excel e Word 37 O ViaVoice 9 executa tamb m comandos de voz permitindo que o usu rio controle o Windows por meio de instru es dadas ao microfone como por exemplo abrir fechar executar programas etc Uma caracter stica muito interessante desse software est na sua capacidade de aperfei oamento conforme o seu uso cont nuo sendo que seu vocabul rio b sico para L ngua Portuguesa tem aproximadamente 60 mil palavras ou seja medida que o usu rio dita uma nova palavra ela se armazena no banco de dados aumentando o n mero de palavras de seu vocabul rio O tempo de treinamento leva em m dia 15 minutos para a leitura de um texto padr o Em seguida pode ser feito o ditado citando as palavras e a pontua o A vers o IBM ViaVoice 9 n o compat vel com o sistema Operacional Linux e o c digo n o aberto IBM 2008 Por algum tempo a IBM disponibilizou a vers o do ViaVoice para o Linux mas interrompeu a disponibiliza o e o suporte tornando invi ve
94. m a data e a hora da execu o 118 CodComando Comando DataHora Status 8 comandosTableAdapter Fill GetData ET FillByComandoVazio GetDataByComandoVazio 24 Inclusao Comando DataHora 4 index htm C digo fonte do index htm referente pagina de reconhecimento de fala contendo o JavaScript para verifica o a cada 1000ms lt HTML gt lt HEAD gt lt TITLE gt Reconhecimento de Fala lt TITLE gt lt SCRIPT gt inicio do script fun o javascript para verifica o de texto no campo function verificaCampos form vari vel que recebe a referencia do campo no formulario var campo form campo verifica se o campo esta vazio if campo value envia o foco cursor de volta ao campo campo focus else submete o formul rio para a pagina processa aspx form submit fun o recursiva que chama novamente a fun o verificaCampos a cada 1000ms setTimeout verificaCampos form 1000 lt SCRIPT gt lt HEAD gt lt BODY onLoad verificaCampos form gt lt FORM id form action processa aspx gt lt h1 gt Reconhecimento de Fala lt h1 gt Fale o comando desejado lt BR gt lt INPUT name campo gt amp nbsp amp nbsp lt FORM gt lt BODY gt lt HTML gt 119 5 processa aspx C digo fonte do processa aspx cuja fun o receber o formul rio da p gina de index htm e realizar a inclus o no banco de dados using System using System Collection
95. ma do banco de dados falaBD MainForm cs Design Pees Sas eee GigaDeTestes MainForm comando para reconhecimento da fala m todo mover para frente public void moverf1 i M todo moverf1 short intensity 32766 report robodeck move intensity new GigaCallback this actionCallback Condi o que chama o m todo moverf1 se o campo do Banco de dados for igual a mova ou mover ou para frente ou para cima if linha Comando Equals mova linha Comando Equals mover linha Comando Equals para frente linha Comando Equals para cima moverf1 Figura 27 C digo fonte do m todo moverf1 Mediante an lise dessa Figura nota se que o m todo moverf1 utilizou o comando rob tico do SDK robodeck move e a intensidade foi configurada em 32766 fazendo o rob mover se para frente com pot ncia m xima 64 6 EXPERIMENTOS REALIZADOS Esse cap tulo relata os experimentos realizados com os m dulos de voz desenvolvidos para a plataforma RoboDeck a fim de testar e analisar os resultados obtidos em cada experimento Foram realizados experimentos com os m dulos de voz interno e externo aplicando os m todos e controladores implementados 6 1 Experimento 1 Movimenta es b sicas via m dulo de controle de voz externo 6 1 1 Objetivo Demonstrar as movimenta es b sicas do RoboDeck via reconhecimento de
96. mento de voz associou se bastante tecnologia dos computadores e passou a ser desenvolvido com base em sofisticados m todos e algoritmos FECHINE 2000 Para que um sistema de reconhecimento de voz homem m quina seja bem sucedido importante o pesquisador ter conhecimento e experi ncia em diferentes reas como v Processamento de sinal extra o de uma informa o relevante em um sinal de fala de maneira eficiente v F sica Ac stica ci ncia que estuda as rela es entre os mecanismos produtores da fala e da audi o pelos quais a fala percebida 19 Y Reconhecimento de Padr es conjunto de algoritmos usados para agrupar dados criando padr es de um conjunto de dados que s o comparados mediante as caracter sticas dos padr es v Teoria da Comunica o e Informa o m todos para detectar a presen a de um padr o de fala particular conjunto de algoritmos modernos de codifica o e decodifica o incluindo programa o din mica e algoritmos est ticos usados para encontrar o melhor caminho correspondente a melhor sequ ncia de palavras reconhecidas v Lingu stica rela o entre sons sintaxe e sem ntica consistente nas informa es necess rias para o entendimento na comunica o v Fisiologia estudo do funcionamento do sistema que produz a fala e a audi o nos seres humanos Muitas t cnicas modernas tendem a colocar esse tipo de conhecimento dentro de redes neurais artificiais v Ci ncia
97. metros de dist ncia mas depois de v rios testes e an lise dos resultados verificou se que a dist ncia real ficava em torno de 30 cent metros devido ao tempo de resposta do rob 97 6 5 Experimento 5 Desviar de um objeto via m dulo de controle de voz externo 6 5 1 Objetivo Demonstrar a movimenta o do Robodeck em linha reta desviando de um objeto quando necess rio e voltando para seu curso tamb m em linha reta Assim o rob deve mover se para frente enquanto a dist ncia do objeto for maior que 50 cent metros e quando menor parar girar no pr prio eixo 90 graus direita parar voltar a se movimentar para frente por um determinado tempo parar girar no pr prio eixo 90 graus esquerda parar voltar a se movimentar para frente por um mesmo tempo parar girar novamente no pr prio eixo 90 graus esquerda parar voltar a se movimentar para frente por um mesmo tempo parar girar novamente no pr prio eixo 90 graus direita parar e voltar a se movimentar para frente Figura 51 Foto do RoboDeck desviando do objeto 6 5 2 Ambiente f sico Realizou se esse experimento no p tio da Escola de Engenharia Civil da Polit cnica de S o Paulo onde o piso possu a algumas irregularidades e o ru do sonoro era elevado porque havia v rios alunos nesse local 98 Figura 52 Foto do Robodeck no P tio da Escola Polit cnica 6 5 3 Recursos tecnol gicos utilizados Os quatro recursos descrito
98. mover para traz public void moverti short intensity 12276 ou 32760 report robodeck move intensity new GigaCallback this actionCallback parar public void parari report robodeck brake new GigaCallback this actionCallback virar a esquerta public void virarei sbyte angle 32 short intensity 15000 ou 32760 report robodeck turn angle intensity new GigaCallback this actionCallback virar a direita public void virard1 sbyte angle 32 short intensity 15000 ou 32760 report robodeck turn angle intensity new GigaCallback this actionCallback 121 girar a esquerda public void girarei short intensity 15000 ou 32760 report robodeck rol1 rdsdk Side LEFT intensity new GigaCallback this actionCallback girar a direita public void girardi short intensity 15000 ou 3276 report robodeck rol1 rdsdk Side RIGHT intensity new GigaCallback this actionCallback ler sensor frontal float sensorf public void lersensorf report robodeck getUltrasonicSensors readFrontDistance new GigaCallback this lersenfron public void lersenfron sensorf Q sensorf robodeck getUltrasonicSensors getFrontDistance statusStripLabel Text Comando executado m todo venha public void venha lersensorf executar leitura do sensor frontal wh
99. nd stria nas opera es militares na vigil ncia no entretenimento e at mesmo em trabalhos de limpeza Um rob m vel um dispositivo mec nico montado sobre uma base m vel que pode ser usado em ambientes terrestres a reos ou aqu ticos Ele se move atrav s de comandos de um sistema computacional equipado com sensores e atuadores que permitem interagir com o ambiente BEKET 2005 O controle do rob m vel geralmente realizado atrav s de comandos por meio de uma interface baseada em teclado ou bot es Dessa forma ao integrar uma interface de reconhecimento de fala em um rob m vel o meio de comunica o entre o homem e o rob ser mais pr tico e c modo A exist ncia de diversas plataformas de rob tica m vel propicia uma compara o entre os rob s m veis fabricados e comercializados no mundo em especial os que possuem prot tipos ou kits para desenvolvimento porque facilita integrar lhes uma interface de voz 4 1 IRobot Create O Rob Create foi criado pela empresa IRobot com base no Rob Roomba Trata se de um kit completo para o desenvolvimento rob tico contendo uma plataforma de programa o rob tica onde desenvolvedores e estudantes podem acessar v rios sensores e atuadores do rob por meio de uma interface aberta Essa plataforma possibilita controlar o rob por meio de aplicativos rob ticos feitos pelos usu rios bem como instalar novos componentes como bra os usando as interfaces de
100. ndo linha Comando executado as linha DataHora comandosTableAdapter1 ExecutaComando linha CodComando if linha Comando Equals para direita linha Comando Equals direita linha comando Equals vire direita linha comando Equals virar a direita linha Comando Equals virar dircita linha Comando Equals virar dircita linha Comando Equals vire cireita linha Comando Fquals vire a direita virardi Figura 39 C digo fonte das condi es para executar o m todo virard1 O sexto m todo foi girare1 com a fun o de girar o RoboDeck no seu pr prio eixo esquerda A Figura 40 exibe o c digo fonte dessa implementa o girar a esquerda public void girarel short intensity 15000 ou 32760 report robodeck roll rdsdk Side LEFT intensity new GigaCallback this actionCallback Figura 40 C digo fonte do m todo girare1 V se que a intensidade foi configurada em 15000 e o rdsgk Side em LEFT essa configura o faz o rob girar no pr prio eixo esquerda com metade da sua pot ncia executado se a linha comando do banco de dados falaBD for igual gire esquerda ou girar a esquerda ou girar esquerda ou girar esquerda ou gire a esquerda ou gire a esquerda Assim o m todo girare1 possui mais op es de fal
101. nk LinkId 169433 gt lt configuration gt lt configSections gt lt sectionGroup name system web extensions type System Web Configuration SystemwWebExtensionsSectionGroup System Web Extensions Version 3 5 0 0 Culture neutral PublicKeyToken 31BF3856AD364E35 gt lt sectionGroup name scripting type System Web Configuration ScriptingSectionGroup System Web Extensions Version 3 5 0 0 Culture neutral PublicKeyToken 31BF3856AD364E35 gt lt section name scriptResourceHandler type System Web Configuration ScriptingScriptResourceHandlerSection System Web Extensions Version 3 5 0 0 Culture neutral PublicKeyToken 31BF 3856AD364E35 requirePermission false allowDefinition MachineToApplication gt lt sectionGroup name webServices type System Web Configuration ScriptingwebServicesSectionGroup System Web Extensions Version 3 5 0 0 Culture neutral PublicKeyToken 31BF3856AD364E35 gt lt section name jsonSerialization type System Web Configuration ScriptingJsonSerializationSection System Web Extensions Version 3 5 0 0 Culture neutral PublicKeyToken 31BF 3856AD364E35 requirePermission false allowDefinition Everywhere gt lt section name profileService type System Web Configuration ScriptingProfileServiceSection System Web Extensions Version 3 5 0 0 Culture neutral PublicKeyToken 31BF3856AD364E35 requirePermission false allowDefinition MachineToApplication gt lt section name authenticati
102. no pr prio eixo em 90 graus via m dulo de controle de VOZ OXLONNO auciaii im inniinn iani aei ad ima dana dadas dana dida da dada 84 G2 WiODICUVO ns assina hotbed Ian DU Ol Qd dE 84 6 212 ana e cla SALES 6 9 PAU a GE SR RS RS RSS ER E 84 6 2 3 Recursos tecnol gicos utilizados e rreeaa 84 6 2 4 Comandos rob ticos utilizados eee eeeeeeeeeeeeeeeeeeeeeeeeneeeeeeeeeeeeeees 85 E 2 S IMPICMOEN GCAO snn Rates ent ne irae aaa ra 85 6 2 6 Senten as reconhecidas pelo Voice Search 86 6 2 7 Dificuldades Encontradas e An lise dos Resultados 88 6 3 Experimento 3 Movimenta o em circuito via m dulo de controle de voz OXTCIN Os iain iya aaia aaa aaa ei dar dal ap gra bl Ea rd aja a id aj Ea rd da dia 89 6 3 UOBICUIVO roiie edad SO e Ee atm tia ise E E adobe eebmnine 89 6 3 2 Ambiente T SICO casa siga SIGO SIGO ST doca a dd GUS 6S dd a a SS ge 89 6 3 3 Recursos tecnol gicos utilizados aerea 89 6 3 4 Comandos rob ticos utilizados 89 6 3 5 Implementa o AN ett th NT ER NE aaan 89 6 3 6 Senten a reconhecida pelo Voice Search 90 6 3 7 Dificuldades Encontradas e An lise dos Resultados 92 6 4 Experimento 4 Mover para frente at chegar na pessoa via m dulo de controle CE VOZ EXIGM IO ton RIR RAR RAR RR RAR RR AR RR mupentneneben cnet 92 BA OBICIVO e aaa a atada 92 B42 IAIMDI ORG TISICO cries Ais cave hee v
103. nos expandindo a utiliza o dos rob s m veis nos afazeres do homem e consequentemente elevando a necessidade de uma melhor interface de comunica o entre eles Em raz o disso o homem vem buscando formas mais pr ticas de intera o com os rob s como a interface de reconhecimento de fala uma t cnica bastante confort vel principalmente em compara o com as tradicionais atrav s de teclados ou bot es Diante dessa realidade o presente trabalho tem como base o estudo e a contextualiza o dos pacotes de reconhecimento de fala e das plataformas de rob tica m vel relacionando esses temas no desenvolvimento de dois m dulos de controle por voz interno e externo ao rob No m dulo interno integrou se o programa de reconhecimento de fala CVoiceContro na placa de alto desempenho da plataforma rob tica m vel denominada RoboDeck da empresa Xbot possibilitando controlar o rob pela fala cujos comandos envolveram movimentos b sicos para frente para tr s virar esquerda virar direita e parar No m dulo externo foi integrado ao SDK chamado Giga de Testes um controle por voz permitindo por meio da fala comandar o rob atrav s de qualquer dispositivo m vel com o Voice Search instalado e conectado Internet bem como executar aplicativos para realiza o de atividades pr definidas Palavras Chave Reconhecimento de fala Rob tica m vel RoboDeck ABSTRACT The field of mobile robotics has grown
104. nto os padr es de entrada s o comparados com os padr es armazenados A intelig ncia artificial re ne os conhecimentos ac sticos l xico sint tico sem ntico e pragm tico O conhecimento de ac stica utiliza evid ncias sonoras para detectar unidades fon ticas o l xico permite combinar evid ncias ac sticas de tal forma a construir palavras de acordo com um dicion rio o sint tico possibilita construir senten as a partir de combina es corretas de palavras o sem ntico tem a capacidade de entender o dom nio da frase e verificar a consist ncia da mesma e por fim o pragm tico permite resolver ambiguidades Devilliers 1996 estabelece um nivel de intera o entre os sistemas compostos de reconhecimento de voz assim como a distin o de suas partes conforme mostra a Figura 1 abaixo N vel de Compreens o Reconhecimento de An lise L xica Fala An lise Ac stica Figura 1 N veis do sistema de compreens o da linguagem falada DEVILLIERS 1996 25 Observa se que para compreender uma frase falada por uma pessoa o software reconhecedor precisa resolver e interpretar as an lises pragm tica sem ntica sint tica e morfol gica Vale observar que o software depende integralmente do m dulo intermedi rio Middleware que faz a analise l xica e de outros servi os de hardware para conseguir a an lise ac stica Segundo Hugo 1995 a tarefa de reconhecimento de falas deve ser realizada em tr
105. o bool virouRobo roboDeckMoving turnRobotl 32 15000 15000 robo cout lt lt Robot Comunication Protocol Version lt lt roboDeckInfo getRobotProtocolVersion robo lt lt endl roboDeckInfo closeSession robo return 0 Figura 58 Codigo fonte do controlador Esquerda A Figura mostra a utiliza o do comando roboDeckInfo openConnection para estabelecer a conex o com MAP do comando roboDeckInfo openSession para iniciar a sess o com o mesmo e do comando roboDeckMoving turnRobot que tem como par metros o ngulo a intensidade do motor da direita e a intensidade do motor da esquerda As intensidades foram configuradas em 15000 e o ngulo em 32 sendo que os ngulos suportados no comando rob tico roboDeckMoving turnRobot variam de 32 at 32 onde os ngulos negativos referem se esquerda e os positivos direita Assim tal configura o move o rob para frente com metade da sua pot ncia virando esquerda com o ngulo m ximo suportado O quarto e ltimo controlador Direita respons vel por virar o rob direita associou se refer ncia de fala Direita A Figura 59 exp e o c digo fonte de sua implementa o 106 finclude lt iostream gt finclude lt stdio h gt finclude RoboDeckMoving hh include RoboDeckInfo hh using namespace std RoboDeckMoving roboDeckMoving RoboDeckInfo roboDeckInfo RoboDeck robo int main int argc
106. o com comandos preestabelecidos diferente de outros sistemas de reconhecimento em que ocorre na maioria dos casos a limita o de s reconhecer comandos em Ingl s no CVoiceControl o usu rio grava uma senten a e faz sua associa o a um comando em Linux independente da l ngua empregada Al m disso o CVoiceControl foi desenvolvido em linguagem C a mesma usada no SDK Software Development Kit do RoboDeck para cria o e inclus o de aplica es dentro do pr prio rob Outra justificativa n o ter a necessidade de instalar ou configurar o CVoiceControl em um ambiente com interface gr fica ideal para a implementa o no RoboDeck que trabalha com o Sistema Operacional Debian e n o possui essa interface mas somente linhas de comando CLI Interpretador de Linha de Comandos 51 A nica limita o do CVoiceControl a aus ncia de uma boa documenta o pois o projeto foi descontinuado pelo seu criador Daniel Kiecza assim como as pesquisas e o desenvolvimento do mesmo o programa n o possui nenhuma atualiza o desde 11 de novembro de 2002 Por outro lado importa salientar que o c digo fonte est dispon vel possibilitando novas atualiza es e evolu o do pacote Diante do exposto instalou se e configurou se o CVoiceControl no sistema operacional Linux vers o Debian do RoboDeck como uma biblioteca de reconhecimento de fala Realizando um estudo mais aprofundado da arquitetura interna do RoboDeck inicio
107. o de 15000 e 32 respectivamente v robodeck roll para criar dois m todos girar o RoboDeck no seu pr prio eixo esquerda onde a intensidade foi configurada em um valor positivo de 15000 e o rdsdk Side foi ajustado em LEFT girar o rob no seu pr prio eixo direita com a intensidade tamb m configurada num valor positivo de 15000 mas rdsdk Side ajustado em RIGHT 6 1 5 Implementa o Foram desenvolvidos sete m todos que eram chamados atrav s dos comandos recebidos pelo banco de dados falaBD vide ap ndice para maiores detalhes O primeiro foi o m todo moverfi com a fun o de mover o RoboDeck para frente A Figura 30 mostra o c digo fonte de sua implementa o mover para frente public void moverfi short intensity 32760 report robodeck move intensity new GigaCallback this actionCallback Figura 30 C digo fonte do m todo moverf1 Observando a Figura verifica se a intensidade configurada em 32760 movendo o rob para frente com pot ncia m xima executado se a linha comando do banco de dados falaBD for igual mova ou mover ou para frente ou para cima Ent o o m todo moverf1 possui mais op es de fala para ser executado diminuindo o percentual de erros no reconhecimento da senten a falada conforme a Figura 31 68 private void timeri Tick object sender EventArgs e
108. o de 90 graus e parar alinhando as rodas Essa sequencia foi repetida at completar o quadrado 90 A Figura 46 relata a quantidade de sequencias necess ria para completar o quadrado e que o experimento era executado se a linha comando do banco de dados falaBD fosse igual a circuito comando andar no circuito em forma de um quadrado if linha Comando Equals circuito moverfi para frente System Threading Thread Sleep 5 para a execu o em 5000 milisegundos parari parar girarel girar esquerda System Threading Thread Sleep 1500 para a execu o em 1500 milisegundos pararl parar moverfi para frente System Threading Thread Sleep 5000 para a execu o em 5000 milisegundos pararl parar girarel girar esquerda System Threading Thread Sleep 1500 para a execu o em 1500 milisegundos parari parar moverfi para frente System Threading Thread Sleep 5000 para a execu o em 5000 milisegundos parari parar girarel girar esquerda System Threading Thread Sleep 15 para a execu o em 1500 milisegundos parari moverfl para frente System Threading Thread Sleep 5000 para a execu o em 5000 milisegundos pararl parar girarel girar esquerda System Threading Thread Sleep 15 para a execu o em 1500 milisegundos parari Figura 46 C digo fonte da condi o para executar o experimento circui
109. o diretamente ao MAP M dulo de Alta Performance do rob e um m dulo externo integrado ao SDK Giga de Testes possibilitando controlar o rob pela fala por meio de qualquer dispositivo m vel com acesso Internet Na quinta etapa foram realizados seis experimentos cinco utilizaram o m dulo de controle de voz externo e um o m dulo interno permitindo observar e analisar os resultados do comportamento do RoboDeck aos comandos de movimenta o via fala 1 6 Organiza o do Trabalho O presente trabalho se inicia com a contextualiza o do desenvolvimento do reconhecimento de fala e da rob tica m vel relacionando os dois temas que perfazem o Cap tulo1 O Cap tulo 2 apresenta o levantamento das refer ncias 17 bibliogr ficas das tecnologias de voz abordando os conceitos aplica es e estado da arte da rea O Cap tulo 3 exibe as caracter sticas e as funcionalidades dos pacotes de Reconhecimento de Fala com nfase no software CVoiceControl e Voice Search O Cap tulo 4 mostra as plataformas da rob tica m vel com nfase no RoboDeck O Cap tulo 5 exp e o desenvolvimento dos m dulos de controle de voz interno e externo O Cap tulo 6 descreve os experimentos realizados e a an lise dos resultados obtidos E o Cap tulo 7 relata a conclus o do estudo e indica o de trabalhos futuros 18 2 TECNOLOGIAS DE VOZ H muito tempo o homem busca formas de interagir com as m quinas As tecnologias de voz pr
110. obots Xbot RoboDeck Rob tica M vel Plus Command MINDSTORMS Inc Pioneer 3 Module NXT Base Set Velocidade do 18 MHz 48 MHz 50 MHz 250MHZ e um de Processador 500MHZ opcional da placa de alta performance Interface RS232 1 porta Nenhuma 3 portas 1 porta Entradas e 25 DIO Ale AO 4 portas de Barramento Placa de alta Sa das entrada e 3 externo de 8 bits performance portas de sa da para opcional 1 Entrada E S at 16 COM 1 dispositivos 3 Entradas USB PC104 1 Entrada de Audio 1 Entrada de Microfone 1 Entrada de Rede 1 Entrada de V deo VGA Armazenamento 144 KB 256 KB 1 Mb Opcional da placa nao volatil de alta performance HD Flash Disk 8GB Ambientes Ambientes Ambientes Ambientes Ambientes internos Compativeis internos piso internos piso Internos chao de habilita o liso 2 27 liso 3 kg de obst culos de 70 2mm 10kg de kg de carga carga at 2 5 cm de carga altura rampas compat veis com cadeira de rodas com cargas de 14 a 23kg Sensores Sim Sim Sim Sim integrados Observa se que tais plataformas de rob tica m vel possuem caracter sticas gerais muito pr ximas No entanto o RoboDeck se destaca em virtude do seu processador interno com maior velocidade e da op o de incluir uma placa de alta performance Outro ponto de destaque do RoboDeck que utilizando a placa de alta performance o mesmo ter um n mero maior de interfaces de entrada e sa da al m de um incremento na ca
111. onService type System Web Configuration ScriptingAuthenticationServiceSection System Web Extensions Version 3 5 0 0 Culture neutral PublicKeyToken 31BF 3856AD364E35 requirePermission false allowDefinition MachineToApplication gt lt section name roleService type System Web Configuration ScriptingRoleServiceSection System Web Extensions Version 3 5 0 0 Culture neutral PublicKeyToken 31BF3856AD364E35 requirePermission false allowDefinition MachineToApplication gt lt sectionGroup gt lt sectionGroup gt lt sectionGroup gt lt configSections gt lt connectionStrings gt lt add name conexaoBD connectionString server localhost User Id root password 1234 Persist Security Info True database falabd providerName MySql Data MySqlClient gt lt connectionStrings gt lt system web gt lt compilation debug true gt lt assemblies gt lt add assembly System Core Version 3 5 0 0 Culture neutral PublicKeyToken B77A5C561934EQ 89 gt 127 lt add assembly System Web Extensions Version 3 5 0 0 Culture neutral PublicKeyToken 31BF3856AD364E35 gt lt add assembly System Xml Ling Version 3 5 0 0 Culture neutral PublicKeyToken B77A5C561934E089 gt lt add assembly System Data DataSetExtensions Version 3 5 0 0 Culture neutral PublickKeyToken B77A5C561934E 89 gt lt assemblies gt lt compilation gt lt pages gt lt controls gt lt add tagPrefix asp namespace System Web UI ass
112. oporcionam uma f cil adapta o do usu rio ao sistema aliada a uma grande capacidade de transmitir informa es dispensando qualquer intera o f sica com o equipamento Dessa forma as novas gera es de interfaces homem m quina ser o de f cil aprendizado e de alta acessibilidade destacando o uso das interfaces de voz que atrav s do reconhecimento e da s ntese de fala proporcionam maior mobilidade permitindo que os olhos ou as m os estejam livres para realizarem outras tarefas al m de ser uma forma mais intuitiva de comunica o pois o ser humano j utiliza a voz para se comunicar ZELTER et al 1994 importante destacar que com o uso das interfaces de voz na m quina ocorrer um consumo maior de recursos computacionais memoria processamento e espa o em disco em virtude da aloca o dos processos de reconhecimento e s ntese de voz e da necessidade de incorpor los ao ambiente Assim os processos e recursos simples realizados na m quina como consultar ou visualizar informa es acabam disputando processos e exigindo um grande poder de processamento Em 1952 come aram as primeiras pesquisas com m quinas que podiam reconhecer as pron ncias de determinadas palavras J nos anos 60 com a descoberta de algumas propriedades da voz e as novas facilidades que os computadores digitais proporcionavam ocorreu um grande crescimento nas pesquisas sobre o assunto A partir da d cada de 70 o desenvolvimento de reconheci
113. pacidade de armazenamento n o vol til Com base nessa an lise o RoboDeck usando a placa de alta performance torna se a melhor alternativa entre as plataformas de rob tica m vel comparadas para receber a interface de reconhecimento de fala 50 5 DESENVOLVIMENTO DOS M DULOS DE CONTROLE DE VOZ DO ROBODECK Este cap tulo apresenta como foram desenvolvidos os dois m dulos de controle de voz para o Robodeck o interno e o externo destacando suas vantagens e desvantagens No m dulo interno integrou se uma biblioteca de reconhecimento de fala ao MAP M dulo de Alta Performance do RoboDeck dispensando qualquer dispositivo externo para controlar o rob por meio da fala No m dulo externo foi integrada uma biblioteca de reconhecimento de fala ao SDK fornecido pelo fabricante do rob que utiliza um computador para acessar e controlar o RoboDeck essa integra o possibilitou controlar o rob pela fala atrav s de um dispositivo m vel como um celular 5 1 M dulo de Controle Interno Para o desenvolvimento do m dulo de controle interno de voz foi escolhida a biblioteca de reconhecimento de fala CVoiceControl por ser compat vel com o Sistema Operacional Linux em especial a vers o Debian fato incomum uma vez que a maioria dos sistemas de reconhecimento de fala s o compat veis apenas com os Sistemas Operacionais da Microsoft Outro fator importante na escolha desse software a inexist ncia de um dicion ri
114. padr es Assim podem ser divididos em dois grupos os param tricos e os estat sticos Nos m todos param tricos a compara o de padr es baseada em medidas de dist ncia das amostras A principal t cnica utilizada por esse m todo a Quantiza o Vetorial QV que a convers o de um vetor de caracter sticas em um c digo relacionado a vetores de mesma dimens o previamente treinados Essa t cnica muito til no reconhecimento de fala pois proporciona uma eficiente taxa de redu o de dados dentro da parametriza o de voz otimizando o espa o de mem ria usada A principal vantagem da QV a produ o de um dicion rio que serve para identificar a similaridade entre as elocu es de uma mesma senten a e as diferen as entre os locutores Nos m todos estat sticos a cria o dos padr es realizada atrav s de modelos como os de Markov Escondidos HMMs Nesse m todo n o realizada uma compara o direta de padr es e a decis o feita atrav s de c lculos de probabilidades associadas aos modelos Os par metros s o extra dos com o aux lio da teoria das probabilidades e s o representados por modelos estoc sticos obtendo se uma redu o impl cita de dados Um sistema de reconhecimento autom tico de fala pode ser implementado usando um ou at mesmo uma combina o dos dois m todos citados Fechine 2000 utiliza t cnicas param tricas e estat sticas para modelagem das caracter sticas vocais do
115. pose synthesis system available It is used by numerous research g ased method information is available on the Festival project page Roger HTS 2010 British English male U RJS HTS 2010 British English male lpage gives access to many more voices which have been developed for Festival This is i Anna HTS 2010 British English female __ different synthesis methods and different subsystems at various stages of development 1 UVIGO HTS 2010 Spanish male an indication of the amount of speech data used to build the voice Leo HTS 2010 Austrian male BDL HTS 2010 JMK HTS 2010 Korin TIMIT 20mins SLT HTS 2010 CLB TS onto a ARCTIC BDL ARCTIC JMK ARCTIC RMS HTS 2010 E Alan HTS 2007 h this demo BDL HTS 2007 both the 2005 and 2007 systems native approach CLB HTS 2007 a Figura 4 Tela de demonstra o interativa do sintetizador de voz Festival on line Fonte lt http www cstr ed ac uk projects festival onlinedemo html gt 3 3 Dragon Naturally Speaking O Dragon Naturally Speaking um dos primeiros sistemas de reconhecimento de voz natural desenvolvido pela Nuance Communications Inc detentora de um monop lio no ramo de reconhecimento de voz j que alguns concorrentes como a Philips e a Lernout amp Hauspie deixaram o mercado al m de possuir tamb m a propriedade do IBMViaVoice Atrav s do Dragon o usu rio consegue criar documentos relat rios ou mensagens apenas falan
116. possuam o Sistema Operacional Android Recentemente a Google lan ou a vers o do Voice Search 2 0 0 tamb m compat vel com iPhone iPod touch e iPad com Sistema Operacional iOS 4 2 ou posterior Ele n o precisa treinar um locutor para o seu uso isto pode ser utilizado por v rios locutores com uma precis o dos resultados bastante eficiente reconhecendo palavras complicadas e tamb m termos compostos por mais de uma palavra importante destacar que esta biblioteca requer conex o com a Internet para funcionar pois ela reconhece a fala por meio de um servi o fornecido pela Google Atualmente o Voice Search consegue reconhecer mais de 28 L nguas diferentes entre elas varia es do Ingl s brit nico sul africano e estadunidense do Espanhol europeu mexicano argentino e do restante da Am rica Latina e o Portugu s do Brasil 40 4 Reconhecimento de Falta CTH e C ft 10 0 0 32 WebRobo Ops O Google Chro http www kiecza n bp Interr Reconhecimento de Fala Fale o comando deseja eme Figura 11 Tela do Voice Search sendo executado pelo icone do microfone Para acionar seu recurso de reconhecimento de fala basta iniciar o navegador e clicar no cone do microfone o qual exibir conforme a Figura 11 um alerta Fale agora Depois da fala da senten a pelo usu rio ela ser reconhecida e os resultados imediatamente apresentados Caso o usu rio deseje falar uma nova senten a ele dever
117. r prio eixo direita com metade da sua pot ncia executado se a linha comando do banco de dados falaBD for igual gire direita ou girar a direita ou girar direita ou girar direita ou gire direita ou gire a direita Desse modo o m todo girard1 possui mais op es de fala para ser executado diminuindo o percentual de erros no reconhecimento da senten a falada em conformidade com a Figura 43 74 private void timer1_Tick object sender EventArgs e i try dsBD comandosRow linha null dsBD comandosDataTable tb null tb comandosTableAdapterl GetDataByStatusVazio for int i 0 i lt tb Count i linha tb i listBox1 Items Add Comando linha Comando executado as linha DataHora comandosTableAdapter1 ExecutaComando 1inha CodComando if linha Comando Equals gire direita linha Comando Equals girar a direita linha Comando Equals girar direita linha Comando Equals gire direita linha Comando Equals girar direita linha Comando Equals gire a direita girardi Figura 43 C digo fonte das condi es para executar o m todo girard1 6 1 6 An lise do tempo de processamento Foram realizados v rios testes utilizando as mesmas velocidade de conex o de internet 2Mb s e senten a de fala para frente em cada dia obtiveram se tempos de processamento
118. ras de dados das senten as que giram o rob no pr prio eixo direita via Voice Search em um ambiente sem ru dos sonoros 83 Gr fico 14 Amostras de dados das senten as que giram o rob no pr prio eixo direita via Voice Search em um ambiente com ru dos sonoros 83 Gr fico 15 Amostras de dados das senten as que giram o rob no pr prio eixo 90 graus esquerda via Voice Search em um ambiente sem ru dos sonoros 86 Gr fico 16 Amostras de dados das senten as que giram o rob no pr prio eixo 90 graus esquerda via Voice Search em um ambiente com ru dos sonoros 87 Gr fico 17 Amostras de dados das senten as que giram o rob no pr prio eixo 90 graus direita via Voice Search em um ambiente sem ru dos sonoros 87 Gr fico 18 Amostras de dados das senten as que giram o rob no pr prio eixo 90 graus direita via Voice Search em um ambiente com ru dos sonoros 88 Gr fico 19 Amostras de dados da senten a que faz o rob se movimentar no circuito via Voice Search em um ambiente sem ru dos sonoros 91 Gr fico 20 Amostras de dados da senten a que faz o rob se movimentar no circuito via Voice Search em um ambiente com ru dos sonoros 91 Gr fico 21 Amostras de dados da senten a que faz o rob se movimentar at a pessoa via Voice Search em um ambiente sem ru dos
119. rria um pequeno deslocamento esquerda sendo detectado ap s v rios testes que o problema estava no alinhamento das rodas do rob definir o tempo de execu o do m todo girare1 pois o tempo tinha de ser exato para o rob atingir o ngulo de 90 graus Portanto foi necess rio levar em considera o al m da intensidade de 15000 do m todo o tempo que o RoboDeck precisava para responder aos comandos 6 4 Experimento 4 Mover para frente at chegar na pessoa via m dulo de controle de voz externo 6 4 1 Objetivo Demonstrar o uso do sensor de ultrassom frontal a fim de impedir que o RoboDeck se colida com alguma pessoa ou objeto Nesse experimento o rob deve mover se para frente enquanto a dist ncia do objeto ou pessoa for maior que 50 cent metros e parar quando for menor Figura 47 Foto do RoboDeck parando pr ximo da pessoa 93 6 4 2 Ambiente f sico Mesmo local com id nticas condi es ao experimento 1 6 4 3 Recursos tecnol gicos utilizados Novamente os quatro recursos j descritos no experimento1 um notebook um celular um roteador Sem fio e um RoboDeck 6 4 4 Comandos rob ticos utilizados Tr s comandos rob ticos do SKD Giga de Testes sendo dois de movimenta o j descritos no experimento 1 robodeck brake e robodeck move e um chamado robodeck getUltrasonicSensors utilizado para criar o m todo respons vel pela leitura do sensor de ultrassom frontal e armaz
120. rtos e erros foi a girar esquerda O Gr fico 13 representa as amostras de dados das senten as de fala girar a direita gire direita girar direita e gire a direita num ambiente sem ru do sonoro 83 Ambiente sem ru dos m 9 8 7 6 5 4 3 2 Q girar a direita gire direita girar direita gire a direita E N acertos P1 td N acertos P2 ld N acertos P3 Gr fico 13 Amostras de dados das senten as que giram o rob no pr prio eixo direita via Voice Search em um ambiente sem ru dos sonoros As senten as atingiram uma m dia de acertos de girar a direita 53 gire direita 63 girar direita 66 e gire a direita 43 nos seus reconhecimentos Desse modo a senten a girar direita obteve uma m dia maior de acertos e a senten a gire a direita uma m dia maior de erros 57 em um ambiente sem ru dos sonoros No Gr fico 14 exibem se as amostras de dados das senten as de fala girar a direita gire direita girar direita e gire a direita num ambiente com ru do sonoro Ambiente com ru dos Oo rRPN WwW SFU AN Ww YW girar a direita gire direita girar direita gire a direita E N acertos P1 b N acertos P2 bi N acertos P3 Gr fico 14 Amostras de dados das senten as que giram o rob no pr prio eixo direita via Voice Sear
121. s o Comandos de Fala Habilita Verifica o Verifica o timos Comando verificados e exeg Sess o fechada Porta serial fechada Desconectado da rede Threads de monitoramento paradas Figura 25 Tela para habilitar ou desabilitar verifica o de novas entradas de comandos ZigBee Wifi Sess o Motores Movimenta o JoyPad Sensores 1 Sensores 2 GPS Expans o C mera Comandos de Fala Verifica o Pesquisa todos comandos executados CodComando Comando circuito circuito circuito circuito para frente 31 05 2012 9 48 parar 31 05 2012 9 48 para frente 31 05 2012 9 49 parar 31 05 2012 9 50 para frente 31 05 2012 9 50 parar 31 05 2012 9 51 para frente 31 05 2012 9 51 parar 31 05 2012 9 52 para frente 31 05 2012 9 53 Porta serial fechada Desconectado da rede Threads de monitoramento paradas Figura 26 Tela para pesquisar todos os comandos executados no Banco de Dados falaBD 63 No ltimo passo elaborou se dentro do SDK um m todo para cada comando recebido pelo banco de dados vide ap ndice para maiores detalhes A Figura 27 mostra o c digo fonte do m todo moverf1 cnamado quando o SDK recebe os comandos mova ou mover para frente ou para ci
122. s Generic using System Ling using System Web using System Web UI using System Web UI WebControls namespace FalaWeb public partial class Default2 System Web UI Page protected void Page Load object sender EventArgs e try declara e instancia um objeto para inclusdo do comando no BD FalaWeb dsBDTableAdapters comandosTableAdapter tb new FalaWeb dsBDTableAdapters comandosTableAdapter declara a variavel campo que recebe o valor digitado da pagina index html string campo Request campo se o campo NAO for vazio if campo Equals executa o m todo de inclus o no BD passando o comando recebido e a data hora atual if tb Inclusao campo DateTime Now gt 0 redireciona a pagina de volta para o index html Response Redirect index htm else se nao conectar ao banco exibe a mensagem abaixo 1lblComando Text N o foi inserido no BD catch Exception ex em caso de qualquer erro exibe a mensagem abaixo lblComando Text Ocorreu o seguinte erro ex Message 120 6 MainForm cs C digo fonte de todas as altera es realizadas no formul rio principal do SDK Giga de Testes do RoboDeck para implementar o Comandos de Fala comando para reconhecimento da fala mover para frente public void moverfi short intensity 12276 ou 32760 report robodeck move intensity new GigaCallback this actionCallback
123. s Resultados 111 T CONCLUS O na DD aaae eataa 112 REFERENCIAS BIBLIOGRAPFICAG sscsssessssessesessesesseseeneseeteseeseeeeatsneseaeeneeses 114 AP NDICE iai uso sa da sopa das due da cassada saia 117 13 1 INTRODU O 1 1 Contextualiza o Com o crescente desenvolvimento tecnol gico as interfaces homem computador est o cada vez mais complexas exigindo constantemente novas tecnologias de acesso para que a intera o homem m quina ocorra em um n vel de acessibilidade sempre eficiente A fala os gestos a linguagem de sinais a linguagem escrita e o tato s o formas utilizadas pelo homem para comunicar se com o seu semelhante Dentre essas formas de comunica o a mais usada ainda a fala desde que os interlocutores n o apresentem nenhum problema auditivo A l ngua tamb m pode ser um obst culo para a comunica o entre duas pessoas de idiomas diferentes No entanto tem se a L ngua Inglesa atualmente considerada universal Nos sistemas computacionais tradicionais o homem se comunica com a m quina atrav s de comandos acionados por entrada de texto ou por op es oferecidas pelos bot es Nos sistemas computacionais que utilizam interface de reconhecimento e s ntese de voz a comunica o pode ser feita atrav s da fala da seguinte maneira os comandos da m quina s o sintetizados em voz para serem entendidos pelo homem e a fala do homem transformada em comandos reconh
124. s locutores a medida de distor o obtida atrav s do uso da Quantiza o Vetorial seguida da probabilidade obtida pelo HMM empregado como par metro de refinamento para o processo de identifica o 28 2 2 3 Reconhecimento Autom tico de Fala O reconhecimento autom tico de fala Automatic Speech Recognition ASR um processo de extra o autom tica das informa es lingu sticas de um sinal de voz baseado na identifica o de padr es de fala obtidos atrav s do treino do sistema pelo orador Portanto importante tomar certos cuidados na prepara o de um sistema para reconhecimento da fala pois al m da relev ncia da utiliza o de um orador conhecido com um vocabul rio finito poss vel obter padr es diferentes para ambientes diferentes Para Hugo 1995 as informa es lingu sticas contidas em um sinal de voz devem estar codificadas de forma que mesmo ocorrendo uma grande varia o do sinal causada pelo ambiente e pelo locutor praticamente n o interfira na percep o da informa o pelo homem Em testes aplicados por Hugo 1995 notou se que a acur cia no reconhecimento de fala chega at 90 de certeza na maioria dos casos em condi es triviais de uso A acur cia de uma estimativa uma medida da correla o entre o valor estimado e os valores das fontes de informa o ou seja mede o quanto a estimativa obtida relacionada com o valor real do par metro Ela informa a proximidade do
125. s no experimento1 um notebook um celular um roteador Sem fio e um RoboDeck 6 5 4 Comandos rob ticos utilizados Foram utilizados quatro comandos rob ticos do SKD Giga de Testes descritos nos experimentos 1 e 4 robodeck brake robodeck move robodeck roll e robodeck getUltrasonicSensors 6 5 5 Implementa o Sete m todos participaram sendo seis descritos nos experimentos 1 e 4 moverf1 parar1 girard1 girare1 lersensorf lersenfron e o S timo m todo obj com a fun o de executar a leitura do sensor frontal armazenando a na vari vel sensorf a qual representa a dist ncia entre o rob e o objeto Desse modo enquanto o valor da vari vel sensorf for maior que 50 cent metros executa se o m todo moverf1 movendo se o rob para frente mas quando a dist ncia do objeto ou pessoa for menor emprega se o m todo 99 parar1 Ap s o rob parar executada uma sequencia de m todos para desviar do objeto e continuar movendo se para frente vide ap ndice para maiores detalhes Na Figura 53 encontra se o c digo fonte do m todo obj public void obj lersensorf executar leitura do sensor frontal while sensorf gt 50 moverfi mover para frente system Threading Thread Sleep 100 para a execu o lersensorf executar leitura do sensor frontal parari para girar
126. s que a fala do usu rio seja capturada e gravada Uma grande vantagem do CVoiceControl permitir que o usu rio crie v rios modelos expondo uma lista com os nomes das refer ncias de voz e os comandos associados a eles A Figura 20 mostra uma lista de quatro modelos de refer ncias de voz associados aos controladores respons veis pela movimenta o do rob ande pare esquerda e direita Edit Speaker Modei Number of items 4 Label pare parar esquerda 7esquerda direita direita a add iten delete iten Enter edit itea b back to main nenu Figura 20 Tela do CVoiceControl exibido a lista de modelos criados 57 Depois disso o usu rio dever salv los atrav s da op o Save Speaker Model atribuindo um nome ao arquivo com extens o cvc adotada pelo sistema KIECZA 2002 importante destacar que o reconhecimento da fala executado em primeiro plano ou seja se algum usu rio quiser utilizar a sa da da placa de som o sistema de reconhecimento de fala ser interrompido at que ela seja liberada comportamento necess rio porque muitas placas de som n o permitem gravar e reproduzir ao mesmo tempo KIECZA 2002 Outro fator relevante que se um modelo de refer ncia de voz for reconhecido o comando associado a ele ser executado pois o CVoiceControl nao verifica se a execu o daquele comando ir prejudicar o Sistema Operacional tornando se responsabilidade de cada usu rio d
127. so e a inexist ncia de c digo aberto NUANCE 2011 3 4 Praat O Praat um programa para an lise de fonemas com recursos para avalia o de udio Utilizado a partir de um arquivo de voz gravado cria uma imagem de espectrograma baseada nas varia es de timbre da grava o do arquivo de udio Possui vers es para Windows Linux Macintosh e demais sistemas UNIX Al m disso a licen a gratuita e o c digo fonte est dispon vel para modifica es O programa possui documenta o consistente com explica es das principais an lises sobre udio a espectral espectrogramas e a formal entre outras Para o estudo de padr es fon ticos o sistema oferece t cnicas de intelig ncia artificial como redes neurais Seu nico ponto negativo n o haver suporte ao reconhecimento de fala BOERSMA 2001 Praat Help m99 Wed 11 25am 4 O O 1 Sound Fon Man E c left O inches 2 Spectrogram Iron Man inches 66656667 Inches J885888888855889 inches m 3 6 ELLILLINELIRE inches i 1a O hi LE Wit ill 1 nr MT TETO Ad A croup DP 760m mim Figura 7 Tela do Praat 5 2 44 para MAC OSX Fonte http www superdownloads com br imagens telas praat mac 117673 2 jpg 36 3 5 Transcriber O Transcriber uma ferramenta espec fica para a transcri o e segmenta o de grava es de voz de longa dura o Realiza uma transcri o dos sinais de udio em formato de texto utilizando dados
128. squerda girar esquerda gire a esquerda E N acertos P1 tg N acertos P2 E N acertos P3 Gr fico 11 Amostras de dados das senten as que giram o rob no pr prio eixo esquerda via Voice Search em um ambiente sem ru dos sonoros 82 As senten as apresentaram uma m dia de acertos de girar esquerda 40 gire esquerda 23 girar esquerda 56 e gire esquerda 26 nos seus reconhecimentos Dessa forma a senten a girar esquerda obteve uma m dia maior de acertos em um ambiente sem ru dos sonoros Seguem no Gr fico 12 as amostras de dados das senten as de fala girar a esquerda gire esquerda girar esquerda e gire esquerda num ambiente com ru do sonoro Ambiente com ru dos Ha 9 8 7 6 5 4 3 2 1 0 girar a esquerda gire esquerda girar esquerda gire a esquerda EH N acertos P1 b N acertos P2 bi N acertos P3 Gr fico 12 Amostras de dados das senten as que giram o rob no pr prio eixo esquerda via Voice Search em um ambiente com ru dos sonoros As senten as alcan aram uma m dia de acertos de girar a esquerda 26 gire esquerda 16 girar esquerda 50 e gire a esquerda 23 nos seus reconhecimentos Portanto quase todas as senten as tiveram um percentual maior de erros no ambiente com ru do sonoro sendo que a nica a manter a m dia de ace
129. ssiona se R visando a gravar uma amostragem de voz para o comando atual Repete se esta opera o no m nimo quatro vezes 139 Command fir Nurber of ID any key to cancel Internet Firefox Nunber of samples 4 ID Mon Jun 13 1534131 mple d Conmand firefox sw google a add item lete item Enter edit item back to rain Agora seleciona se a op o Save Speaker Model para salvar os comandos inseridos e ou alterados 140 c 2000 Daniel Speaker Model Editor Hodel none Please enter file name c 2000 Daniel turn to menu a Nesse exemplo os comandos foram salvos com o nome comandos cvc Para testar o seu Linux obedecendo se os comandos de voz basta executar o CVoiceControl lt nome arquivo de comandos gt conforme demonstra o abaixo root debian cvoice cvoicecontrol 0 9alphak cvoicecontrol comandos cvc
130. ssui caracter sticas nicas de voz capazes de identific lo e de controlar o acesso 2 1 Fala A fala um processo t o natural para os seres humanos que nem sempre se questiona como ela acontece Segundo Moreira 2006 existe um modelo de comunica o conhecido como cadeia de fala o qual descreve a comunica o em tr s fases produ o transmiss o e recep o da fala A fase de produ o formada basicamente por dois processos sendo que no primeiro a pessoa que est falando transforma a informa o que pretende transmitir em s mbolos de uma estrutura ling stica e no segundo processo consolida os em unidades ac sticas Isso ocorre atrav s da associa o dos m sculos necess rios gera o do fluxo de ar dos pulm es quando ocorre uma redu o desse fluxo atrav s da geometria das cordas vocais produzindo uma onda de press o ac stica importante destacar que a realimenta o do sinal feita pela pr pria pessoa que est falando atrav s de seu aparelho auditivo possibilitando ent o uma avalia o e controle do processo de produ o de sua fala Na fase de transmiss o o sinal de fala pode sofrer a interven o de diversos tipos de ru dos como a fala de outras pessoas ou at distor es em um canal de transmiss o via telefone entre outros Na fase de recep o da fala a pessoa que est ouvindo recebe a onda de press o ac stica pelo ouvido tentando extrair as informa es nela cont
131. t veis com a plataforma Linux em especial a vers o Debian Al m disso por se tratar de um Rob fabricado no Brasil essencial que o mesmo reconhe a comandos em portugu s Atualmente s o escassos os pacotes de reconhecimento de fala compat veis com o Sistema Operacional Linux e que permitam o reconhecimento da L ngua Portuguesa Isso ocorre em virtude do dom nio da Microsoft no mercado de Sistemas Operacionais e do Ingl s ser uma l ngua universal diferentemente do Portugu s Para a integra o da fala em uma interface m vel observou se a necessidade de adotar um sistema de reconhecimento de fala que dispensasse treinar o locutor antes de sua utiliza o Assim integrou se ao SDK Kit de Desenvolvimento de Software que acompanha a plataforma RoboDeck um software de reconhecimento de fala que entendesse qualquer locutor em portugu s por meio de um PC ou de um celular gerando maior flexibilidade e mobilidade ao usu rio 1 5 Metodologia do Trabalho A metodologia adotada foi dividida em seis etapas Vv Revis o bibliogr fica Y Compara o entre os pacotes de reconhecimento e s ntese de fala Y Compara o entre plataformas de rob tica m veis dispon veis no mercado v Desenvolvimento dos M dulos de Controle de Voz do RoboDeck M dulos interno e externo v Realiza o de experimentos v An lise e Discuss o dos Resultados 16 Na primeira etapa do trabalho foi realizada uma revis o bibliogr fi
132. t iostream gt finclude lt stdio h gt finclude RoboDeckMoving hh finclude RoboDeckInfo hh using namespace std RoboDeckMoving roboDeckMoving RoboDeckInfo roboDeckInfo RoboDeck robo int main int argc char argv roboDeckInfo openConnection localhost 2000 robo roboDeckInfo openSession robo bool moveuRobo robopeciaoving moveRobor 0 o robo 5 cout lt lt Robot Comunication Protocol Version lt lt roboDeckInfo getRobotProtocolVersion robo lt lt endl roboDeckInfo closeSession robo return 0 Ps Figura 57 Codigo fonte do controlador Parar Baseado nessa Figura constata se o emprego do comando roboDeckinfo openConnection para estabelecer a conex o com MAP do comando roboDeckinfo openSession para iniciar a sess o com o mesmo e do comando roboDeckMoving moveRobot com intensidade zero objetivando parar o rob O terceiro controlador chamou se Esquerda respons vel por virar o rob a esse lado foi associado refer ncia de fala Esquerda Na Figura 58 visualiza se o c digo fonte de sua implementa o 105 finclude lt iostream gt finclude lt stdio h gt finclude RoboDeckMoving hh finclude RoboDeckInfo hh using namespace std RoboDeckMoving roboDeckMoving RoboDeckInfo roboDeckInfo RoboDeck robo int main int argc char argv roboDeckInfo openConnection localhost 2000 robo roboDeckInfo openSession rob
133. temente dos outros sistemas de reconhecimento nos quais existe na maioria dos casos a limita o de s reconhecer comandos em Ingl s Nele o pr prio usu rio grava uma senten a e faz sua associa o a um comando em LINUX independente da l ngua usada na senten a Figura 10 Tela do CVoiceControl exibindo o comando associado senten a Al m disso o CVoiceControl foi desenvolvido em linguagem C e possui c digo aberto mudan as Seu nico problema n o conter uma boa documenta o pois o projeto foi descontinuado pelo seu criador Daniel Kiecza assim como as pesquisas e o aperfei oamento o programa n o tem nenhuma atualiza o desde 11 de novembro de 2002 39 O CVoiceControl utiliza tr s m dulos v microphone config v model editor v cvoicecontrol Ao iniciar o CVoiceControl pela primeira vez o usu rio deve calibrar o microfone para o reconhecimento de voz usando o m dulo microphone config Depois que a placa de som estiver preparada o usu rio deve criar os modelos com as senten as faladas e associ las aos comandos que deseja realizar no Linux atrav s do model editor esses s o os principais objetos necess rios para o processo de reconhecimento de fala KIECZA 2002 3 8 Voice Search O Voice Search ou Buscar por Voz um sistema de reconhecimento de fala desenvolvido pela Google podendo ser utilizado em qualquer microcomputador que tenha o navegador Chrome instalado ou em celulares que
134. ten as em um ambiente sem ru do sonoro e as outras dez com ru dos Assim fez se uma amostra de dados com os n meros de senten as reconhecidas e n o reconhecidas pelo CvoiceControl O Gr fico 25 apresenta as amostras de dados da senten a de fala mova num ambiente sem ru do sonoro 107 Ambiente sem ru dos Now FB ma Nyy W pa mova E N acertos P1 ta N acertos P2 mi N 2 acertos P3 Gr fico 25 Amostras de dados da senten a que faz o rob se movimentar para frente via CvoiceControl em um ambiente sem ru dos sonoros A senten a mova obteve uma m dia de acertos de 73 no reconhecimento de fala em um ambiente sem ru dos sonoros No Gr fico 26 encontram se as amostras de dados da senten a de fala mova num ambiente com ru do sonoro Ambiente com ru dos mova EH N acertos P1 Ei N acertos P2 E N acertos P3 Gr fico 26 Amostras de dados da senten a que faz o rob se movimentar para frente via CvoiceControl em um ambiente com ru dos sonoros A senten a mova atingiu uma m dia de acertos de 63 no ambiente com ru do sonoro 108 O Gr fico 27 exibe as amostras de dados das senten as de fala para num ambiente sem ru do sonoro Ambiente sem ru dos
135. to 6 3 6 Senten a reconhecida pelo Voice Search Os crit rios para obter as amostras de dados nesse experimento foram os mesmos j descritos no Experimento1 O Gr fico 19 exibe as amostras de dados da senten a de fala circuito num ambiente sem ru do sonoro 91 s P Ambiente sem ru dos 10 10 10 9 8 7 6 al 5 4 3 2 1 0 1 circuito E N acertos P1 bd N acertos P2 E NY acertos P3 Gr fico 19 Amostras de dados da senten a que faz o rob se movimentar no circuito via Voice Search em um ambiente sem ru dos sonoros A senten a circuito atingiu uma m dia de acertos de 96 no reconhecimento de fala em um ambiente sem ru dos sonoros O Gr fico 20 ilustra as amostras de dados da senten a de fala circuito num ambiente com ru do sonoro Ambiente com ru dos circuito E N acertos P1 mi N acertos P2 m N acertos P3 Gr fico 20 Amostras de dados da senten a que faz o rob se movimentar no circuito via Voice Search em um ambiente com ru dos sonoros 92 A senten a circuito teve uma m dia de acertos de 73 no ambiente com ru do sonoro 6 3 7 Dificuldades Encontradas e An lise dos Resultados Duas dificuldades foram percebidas manter o RoboDeck em linha reta no comando para frente pois conforme ele se movimentava oco
136. to de fala deve procurar diminuir ao m ximo poss veis erros externos e utilizar t cnicas que possam representar eficientemente as caracter sticas vocais das senten as 23 2 2 1 M todos para o Reconhecimento de Fala Basicamente o reconhecimento de fala funciona a partir da convers o do sinal ac stico voz em um sinal digital de udio atrav s de um hardware placa de som e microfone Com o passar dos anos os m todos de reconhecimento de fala evolu ram admitindo que os usu rios efetuem ditados de forma cont nua ao computador mas apesar disso as taxas de acerto n o passam dos 95 De acordo com Hugo 1995 existem dois m todos para o reconhecimento de fala o global e o anal tico que podem ser complementares entre si a fim de solucionar o problema de reconhecimento O m todo global de reconhecimento de palavras que emprega a t cnica de compara o global das palavras para reconhecer as diversas formas de refer ncia armazenadas e o seu tratamento ac stico bem simples pois as mensagens identificadas s o consideradas como uma forma nica n o ocorrendo problemas de segmenta o n o devendo ser utilizado em grandes vocabul rios ou em falas cont nuas O m todo anal tico segmenta a mensagem dividindo os elementos fonemas s labas e outros identificando cada elemento e reconstruindo a frase pronunciada por etapas fon tica l xica e sint tica Tatham 1995 sugere outro m todo de reconhecimento
137. tor Tarcisio Jorge Bezerra Orientador Prof Dr Luiz Eduardo G Martins Disserta o de Mestrado apresentada em 10 de agosto 2012 Banca Examinadora constitu da pelos Professores Prof Dr Luiz Eduardo Galv o Martins UNIFESP Orientador Prof Dr Pl nio Roberto Souza Vilela ESEG Prof Dr Antonio Val rio Netto Xbot Profa Dra Sandra Maria Boscolo Brienza UNIMEP DEDICAT RIA minha esposa Renata e minha filha Sofia pelo tempo que ficaram sozinhas AGRADECIMENTOS A Deus meu guia por estar presente em todos os momentos de minha vida minha querida esposa pela compreens o Ao professor Luiz Eduardo Galv o Martins pela orienta o e principalmente incentivo e aten o dispensados no desenvolvimento deste trabalho Ao professor Edvaldo Sim es da Fonseca Junior da POLI USP por emprestar a plataforma rob tica para a realiza o dos experimentos professora Carmen Faraco Ao professor Guilherme Henrique de Souza A todos que colaboraram e acreditaram na realiza o desta disserta o muito obrigado Tudo tem seu apogeu e seu decl nio natural que seja assim todavia quando tudo parece convergir para o que supomos o nada eis que a vida ressurge triunfante e bela Novas folhas novas flores na indefinida b n o do recome o Chico Xavier de Carlos A Baccelli RESUMO A rea de rob tica m vel tem crescido muito nos ltimos a
138. trav s de comandos enviados diretamente ao MCS podendo ser utilizados para expandir os comandos rob ticos ao implementar comandos acess veis pelos controladores do rob O MAP admite comunica o com os controladores atrav s de adaptadores USB para Bluetooth ou Wi Fi e funciona em qualquer placa microprocessada desde que seja compat vel com o sistema operacional Linux e possua interfaces serial e USB essa caracter stica viabiliza ao MAP utilizar novas tecnologias de circuitos integrados permitindo que o rob sempre esteja atualizado MUNOZ 2011 A Figura 16 oferece uma vis o geral da arquitetura de software do rob mostrando sua rela o com os hardwares essencial e opcional As setas indicam a depend ncia entre os m dulos PaA USB Bluetooth Opcional EE en EE s Essencial Placa Rob tica i do nana i i Placa de Comunica o Figura 16 Principais divis es de hardware e software do RoboDeck MUNOZ 2011 4 5 Compara es entre as plataformas de rob tica m vel A tabela 2 mostra quatro plataformas de rob tica m vel que s o utilizadas para pesquisa e desenvolvimento e faz uma compara o entre suas principais caracter sticas Os dados mostrados nesta tabela foram estabelecidos de acordo com a documenta o fornecida pelos fabricantes 49 Tabela 2 Compara o entre as Plataformas de Rob tica M vel Analisadas Plataformas de iRobot Create LEGO MobileR
139. trol estando cada um associado uma refer ncia de fala O primeiro controlador denominou se Ande respons vel pela movimenta o do rob para frente e associado refer ncia de fala Mova A Figura 56 mostra o c digo fonte de sua implementa o include lt iostream gt include lt stdio h gt include RoboDeckMoving hh include RoboDeckInfo hh using namespace std RoboDeckMoving roboDeckMoving RoboDeckInfo roboDeckInfo RoboDeck robo int main int argc char argv roboDeckInfo openConnection localhost 2000 robo roboDeckInfo openSession robo bool moveuRobo roboDeckifoving moverabot 32000 p robo cout lt lt Robot Comunication Protocol Version lt lt roboDeckInfo getRobotProtocolVersion robo lt lt endl roboDeckInfo closeSession robo return 0 Figura 56 C digo fonte do controlador Ande 104 Observando se a Figura nota se a utiliza o do comando roboDeckinfo openConnection para estabelecer a conex o com MAP do comando roboDeckinfo openSession para iniciar a sess o com o mesmo e do comando roboDeckMoving moveRobot para mover o rob para frente cuja intensidade foi configurada em 32000 movendo o com pot ncia m xima O segundo controlador foi Parar respons vel pela parada da movimenta o do rob associado refer ncia de fala Pare A Figura 57 exibe o c digo fonte de sua implementa o finclude l
140. u se o estudo pelo M dulo de Controle Rob tico passando pelo M dulo de Controle de Comunica o e terminou no MAP M dulo de Alta Performance do rob Constatou se a necessidade de criar controladores respons veis pelas movimenta es do rob e que cada um deles fosse acionado a uma refer ncia de fala por meio do CvoiceControl A Figura 17 demonstra a intera o entre os comandos de fala reconhecidos os controladores desenvolvidos e o MAP M dulo de Alta Performance do rob Reconhece o comando de fala do usu rio e executa o controlador associado a fala Associa o comando correspondente ao aplicativo especifico e executa o no MAP fazendo com que o rob se movimente Figura 17 Integra o entre o CVoiceControl os Aplicativos e o MAP 52 Os quatro controladores desenvolvidos cada um associado a uma refer ncia de fala no CvoiceControl s o y Controlador Ande respons vel pela movimenta o do rob para frente associou se refer ncia de fala Mova y Controlador Parar respons vel por parar a movimenta o do rob associou se refer ncia de fala Pare v Controlador Esquerda respons vel por virar o rob esquerda associou se refer ncia de fala Esquerda y Controlador Direita respons vel por virar o rob direita associou se refer ncia de fala Direita Esses controladores foram criados mediante utiliza o de uma biblioteca ou AP
141. uas ou mais placas Caso o equipamento possua apenas uma placa de som prov vel que o sistema identifique a automaticamente concluindo se essas duas etapas KIECZA 2002 A terceira etapa Adjust Mixer Levels ajusta o n vel de intensidade do microfone ou seja determina automaticamente o seu volume no ponto m ximo Ao iniciar esse processo o usu rio deve falar e dar risadas em voz alta diante do microfone cada vez que o processo realizado reduz se o n vel do microfone sendo necess rio repeti lo v rias vezes at que seu n vel de entrada fique na faixa de 60 a 95 KIECZA 2002 A quarta etapa Calculate Recording Thresholds encontra o n vel do sinal sonoro m nimo para iniciar a captura de udio No primeiro momento necess rio que o usu rio permane a em sil ncio para serem capturados todos os sons externos proporcionados pelo ambiente J no segundo momento o usu rio deve sustentar uma conversa at que o ciclo seja conclu do com sucesso Assim calculam se os n veis de intensidade ideal para que a grava o possa ser iniciada e parada KIECZA 2002 A quinta etapa Estimate Characteristics of Recording Channel visa a novamente estabelecer o n vel m nimo do volume do microfone atrav s da an lise dos ru dos do ambiente Para efetuar essa verifica o o usu rio deve ficar em sil ncio para capturar todos os sons externos como o ru do de fundo entre outros KIECZA 2002 Realizadas essas etapas o it
142. uma mensagem de que o diret rio home n o foi localizado e que o arquivo Config ser gravado no diret rio tmp config devendo ent o teclar ENTER Dessa forma o arquivo Config que possui as configura es de calibra o do microfone estar salvo no diret rio tmp Faz se necess rio copiar o arquivo config desse diret rio para o cvoice cvoicecontrol 0 9alpha cvoicecontrol com o comando CP origem destino root debian cvoice cvoicecontrol 9alpha cp tmp config cvoice cvoicecontrol 9alpha cvoicecontrol ou debian tmp cp config root cvoicecontrol Confirma se a c pia do arquivo para o destino se todas estas etapas foram conclu das o microfone foi calibrado com sucesso 137 Aprendizado de comandos e controle atrav s do reconhecimento de voz Aprendizado de comandos e controle atrav s do reconhecimento de voz Nessa etapa ser o associadas amostragens sonoras a um determinado comando Linux Unix cada comando deve possuir no M NIMO quatro amostragens root debian cvoice cvoicecontrol 0 9alphai model editor Ao executar o comando model editor deve se selecionar a op o Edit Speaker Model como no exemplo abaixo Speaker Model Editor el none Pressiona se ENTER para editar o novo modelo de comando 138 Label Command New Command Nunber of samples O le d d 1 menu 1 Internet Command firefox www google com br Nunber of samples 0 ID Pre
143. unica es citada a interface de reconhecimento de voz para sistemas de menu de telefones em que o usu rio pode falar a op o desejada 30 ao inv s de pressionar bot es com o n mero correspondente Tamb m as requisi es de informa es de lista telef nica por voz que proporcionam aos usu rios uma forma natural de intera o com uma base complexa de informa o Na rea de neg cios destacam se os sistemas de reconhecimento de fala para preencher formul rios geralmente usando vocabul rios de tamanhos pequenos entre dez a duzentas palavras o que torna esse tipo de sistema bastante eficaz e de reserva ou consulta de passagens a reas situa o em que o usu rio pode consultar a disponibilidade de voos falando o nome da cidade dia e hor rio 31 3 BIBLIOTECAS DE INTERFACE DE VOZ O estado da arte em reconhecimento e s ntese de voz tem evolu do bastante nas ltimas d cadas tornando vi vel integrar a voz em diversos tipos de aplica es A exist ncia de diversos sistemas de reconhecimento e s ntese de voz exige que se estabele a uma compara o para identificar o sistema mais compat vel na integra o do aplicativo escolhido a uma plataforma rob tica m vel Para integrar um aplicativo de reconhecimento de fala ao MAP M dulo de Alta Performance do rob m vel RoboDeck era necess ria uma biblioteca de interface de voz que possu sse um sistema de reconhecimento de fala compat vel com o sistem
144. valor estimado ao valor real e fornece a confiabilidade daquela ao valor Uma condi o trivial de uso pode ser determinada quando um orador realiza o treino pronunciando as palavras sem interrup o de modo que a captura do som seja feita em um lugar onde n o exista interfer ncia de outros sons Entretanto em situa es onde o vocabul rio pequeno e o microfone n o reconhece os ru dos o reconhecimento pode ultrapassar os 98 de acur cia Na fala cont nua o processo de reconhecimento mais dif cil pois quanto maior for o vocabul rio maiores ser o as semelhan as entre as palavras e seus fonemas tornando mais complexa a an lise das palavras realmente ditadas De acordo com Moreira 2006 o reconhecimento autom tico de fala possui dois m dulos fundamentais um correspondente an lise do sinal e o outro sua classifica o No m dulo de an lise feita uma convers o do sinal de entrada tornando o um sinal adequado para o processo de classifica o Os componentes do vetor de 29 caracter sticas devem ser formados com pouca varia o das caracter sticas dentro de cada classe mas que tenha uma grande varia o entre as classes diferentes para que possa ser feita uma discrimina o entre elas Al m disso esse m dulo gera uma representa o menor que o sinal original permitindo o uso de algoritmos mais poderosos que normalmente ocupam mais espa o mas proporcionam uma acelera o no processo d
145. virare1 O quinto m todo foi virard1 que tem a fun o de virar o RoboDeck direita A Figura 38 mostra o c digo fonte de sua implementa o virar a direita public void virardi sbyte angle 32 short intensity 15000 ou 32760 report robodeck turn angle intensity new GigaCallback this actionCallback Figura 38 Codigo fonte do m todo virard1 Observando essa Figura constata se que a intensidade foi configurada em 15000 e o angulo em 32 lembrando se que os angulos suportados no comando rob tico robodeck turn variam de 32 at 32 essa configura o faz o rob mover para frente com metade da sua pot ncia virando direita no ngulo m ximo suportado executado se a linha comando do banco de dados falaBD for igual para direita ou direita ou vire direita ou virar a direita ou virar direita ou virar direita ou vire direita ou vire a direita Diante disso o m todo virard1 possui mais op es de fala para ser executado diminuindo o percentual de erros no reconhecimento da senten a falada de acordo com a Figura 39 72 private void timer1_Tick object sender EventArgs e try dsBD comandosRow linha null dsBD comandosDataTable tb null tb comandosTableAdapter1 GetDataByStatusVazio for int i i lt tb Count i linha tb i listBox1 Items Add Coma
146. xecutar o m todo venha 94 Figura 51 Foto do RoboDeck desviando do objeto 97 Figura 52 Foto do Robodeck no P tio da Escola Polit cnica 98 Figura 53 C digo fonte do m todo Obj n n 99 Figura 54 C digo fonte da condi o para executar o m todo obj 100 Figura 55 Foto da sala e da maquina que foi simulado este experimento 102 Figura 56 C digo fonte do controlador Ande 103 Figura 57 C digo fonte do controlador Parar 104 Figura 58 C digo fonte do controlador Esquerda cccceceeeeeeeeeeeeeeeeeeeeeeeeee Figura 59 C digo fonte do controlador Direita LISTA DE TABELAS Tabela 1 Bibliotecas de interface de voZ ra Tabela 2 Compara o entre as Plataformas de Rob tica M vel Analisadas LISTA DE GR FICOS Gr fico 1 Amostras de dados das senten as de movimenta o do rob para frente via Voice Search em um ambiente sem ru dos sonoros is 75 Gr fico 2 Amostras de dados das senten as de movimenta o do rob para frente via Voice Search em um ambiente com ru dos sonoros 75 Gr fico 3 Amostras de dados das senten as de movimenta o do rob para tr s via Voice Search em um ambiente sem ru dos sonoros s 76 Gr
147. z de controlar mais de 3 motores e contadores de rota o 44 Encontram se tamb m no rob 3 servomotores e 4 sensores sendo 1 sensor de ultrassom 2 de toque e 1 de Cor o qual cont m 3 funcionalidades distinguir cores configurar luz e funcionar como l mpada LEGO 2009 Figura 13 Rob mobel Mindstorms NTX 2 0 da empresa LEGO Fonte lt http www tuvie com lego mindstorms nxt 2 0 review gt 4 3 MobileRobots Inc Pionner 3 O rob Pionner 3 uma plataforma rob tica m vel da empresa MobileRobots o qual possui um kit para desenvolvedores denominado Pioneer SDK Pioneer Software Development Kit formado por um conjunto completo de aplicativos rob ticos e bibliotecas que aceleram o desenvolvimento de projetos de rob tica Ele cont m 4 rodas pode atingir velocidades de 0 8 metros por segundo transportar uma carga til de at 12 kg e pode ser utilizado em projetos ao ar livre ou em pisos irregulares Sua arquitetura do tipo cliente servidor ou seja composto por um microcomputador cliente que funciona com o Sistema Operacional Linux e um microcontrolador servidor que possui um sistema pr prio chamado ARCOS cuja comunica o realiza se atrav s de uma interface serial 45 Dessa maneira os aplicativos rob ticos feitos pelos usu rios s o carregados no cliente microcomputador que possui a plataforma Linux e por meio da interface serial o cliente envia e recebe dados do servidor mi

Download Pdf Manuals

image

Related Search

Related Contents

Niles Audio Niles OS3 User's Manual  Ficha Técnica MI 3210 TeraOhm XA 10kV  Nouveautés livres au CDI  Banner AG4 Series Safety Laser Scanner Checkout Procedures  車両取扱説明書(2014/7~)(24.6MB)  Radio Controlled Clock  06-10-TP200 201-6key user manual.cdr  K610 - Consort  User Manual  instrucciones de seguridad  

Copyright © All rights reserved.
Failed to retrieve file