Exemplo de uma Calculadora Usando a JLaPSAPI 1

Propaganda
Exemplo de uma Calculadora Usando a JLaPSAPI
Este tutorial traz uma simples aplicação utilizando a JLaPSAPI, que têm o objetivo de controlar
uma calculadora através de voz.
1- Cadastrar reconhecedor Coruja na JVM
Crie um arquivo chamado speech.properties na home do usuário, por exemplo:
/home/fulano/speech.properties
Neste arquivo, insira a seguinte linha:
PSAPIRecognizerEngineCentral=br.ufpa.laps.jlapsapi.jsapi.JLaPSAPIEngineCentral
Este passo é necessário para que a JVM possa identificar os reconhecedores JSAPI
disponíveis na máquina. Com a falta deste passo a chamada para o reconhecedor Coruja dará
erro devido ao reconhecedor não estar registrado.
2 – Baixando os modelos acústico e de linguagem do Coruja
Baixe-os na página da JlaPSAPI, tenha cuidado para baixar a mesma versão da
JLaPSAPI e dos modelos(1.5 ou 1.7.x) para que tudo funcione corretamente. Em seguida,
descompacte-os na home do usuário e cheque se a pasta está nomeada como coruja_jlapsapi,
não podem haver subpastas.
3 – Baixando o Projeto e rodando pela linha de comando:
Primeiramente você precisa baixar o projeto que está em nossa página, com o título
“MyCalcJLAPSAPI”. Extraia os arquivos em seu workspace, mas se não possuir o eclipse faça
do destino de sua extração a sua home.
Para rodar o projeto pela linha de comando primeiramente você precisa ir até o diretório
em que estão os arquivos que serão compilados.
Para quem tem workspace: /home/fulano/workspace/MyCalcJLAPSAPI/src
Para quem utilizou a home: /home/fulano/MyCalcJLAPSAPI/src
Obs: No arquivo recognize.java existe um caminho para achar o arquivo que contém os
comandos chamado Calc.grammar. Por default o caminho está configurado para quem está
usando o eclipse, mas se você estiver usando apenas a sua home para o projeto utilize este
caminho:
System.getProperty("user.home")+"/MyCalcJLAPSAPI/Calc.grammar"
Após entrar no diretório correto compile o projeto com o comando abaixo(é tudo só em
uma linha):
javac -classpath ../lib/jsapi.jar:../lib/jlapsapi.jar CalcListener.java JPanel.java
Main.java Recognize.java RecoListener.java Translator.java
Com os arquivos compilados é necessário executar o projeto, use o comando abaixo(só
em uma linha):
java -classpath ../lib/jsapi.jar:../lib/jlapsapi.jar:. Main
Obs: se você mudar o código, o projeto terá que ser compilado novamente.
4 – Rodando com o Eclipse
3.1 – Importação do projeto no Eclipse
1- No menu File, procure pela opção Import e clique nela.
2 - Na pasta General, selecione a opção Existing Projects into Workspace e Next.
3- Selecione o diretório da MyCalcJLAPSAPI e clique em Finish.
3.2 – Execução do projeto
A execução do projeto no eclipse é simples, primeiramente você precisa procurar no projeto
“MyCalcJLaPSAPI”(a esquerda, no project explorer) o arquivo Main.java, abra esse arquivo
clicando duas vezes e após isso execute utilizando o botão verde do eclipse, na figura abaixo a
seta do mouse mostra este botão.
5 – Observações e explicações
O funcinamento da calculadora é muito simples: o usuário primeiramente precisa dizer qual o
primeiro número que ele deseja usar no cálculo, dizer a operação, o segundo número para que
no final seja possível requerer o resultado da operação. Para formar um número qualquer é
necessário montá-lo ditando um algarismo por vez e assim ir construindo este número.
Aqui vemos os comandos implementos:
Comando Implementado
O que realiza
“Zero”, “Um”, “Dois”, “Três … “Nove”
Mostra na tela o algarismo correspondente
“Subtrair”
Usa o operador “-” ou transforma um número
em negativo se for dito antes do primeiro
número a ser ditado.
“Multiplicar”
Usa o operador “*”
“Dividir”
Usa o operador “/”
“Somar”
Usa o operador “+”
“Resultado”
Usa o operador “=”
“Zerar”
Zera a tela da calculadora, semelhante ao
botão “ce” de uma calculadora comum
“Apagar”
Apaga da tela um algarismo apenas
“Ponto”
Coloca um ponto para a criação de números
decimais
Os comandos que estão sendo utilizados no projeto foram testados e tiveram uma melhor
taxa de acerto.
Caso não funcione, procure pelo arquivo JuliusLog no diretório /tmp do SO e mande
para a lista de discussão para podermos ajudá-lo, além da mensagem no terminal.
Em caso de dúvidas sobre o projeto ou qualquer outro tipo de dificuldade fique livre
para enviar à lista de discurssão o que você precisa.
E-mail do grupo: [email protected]
Download