Reconhecimento de voz com java

2 respostas
U

Olá, não tenho muita experiência com java mas estou tentando desenvolver um programa com reconhecimento de voz em java utilizando alguma técnica de I.A. para meu tcc.

Pesquisei um pouco e pelo que li vi que deveria conseguir fazer isso usando a api speech e com o viaVoice.

Tentei usar esse tutorial: http://aquilesburlamaqui.wikidot.com/javaspeech mas não consegui.

No passo 6, não consegui executar a classe para a instalação. Tentei copiar as dll para o system (to usando windows) e fazer algum exemplo, mas não deu certo. Quando compilo sempre da excessão na parte que

o código que to usando como exemplo é o seguinte:

package teste;

import javax.speech.*;
import javax.speech.synthesis.*;
import java.util.*;
import sun.swing.PrintColorUIResource;

public class teste {

    public static void main(String[] args) {
	try {
		Calendar calendar = new GregorianCalendar();
		String sayTime = "Its " +
		calendar.get(Calendar.HOUR) + " " +
calendar.get(Calendar.MINUTE) + " " +
(calendar.get(Calendar.AM_PM)== 0 ? "AM" : "PM");

Synthesizer synth = Central.createSynthesizer(null);
		synth.allocate();
		synth.resume();

		synth.speakPlainText(sayTime,null);

		synth.waitEngineState(Synthesizer.QUEUE_EMPTY);
		synth.deallocate();

	} catch (Exception e) {
		e.printStackTrace();
	}
    }
}

E estou usando o NetBeans.

O erro que ele acusa é o seguinte:

run:

java.lang.NullPointerException

at teste.teste.main(teste.java:19)

CONSTRUÍDO COM SUCESSO (tempo total: 2 segundos)

Alguém tem alguma ideia do que pode estar acontecendo para que não de certo eu utilizar essa api?

Teria outra maneira de fazer o que eu quero?

Desde já agradeço e fico no aguardo.

2 Respostas

J

Pelo que eu estou vendo ae não tem tecnica nenhuma de IA. Você está usando a api java speech pronta.

Leia esses artigos


Dê uma pesquisada cno code project
http://www.codeproject.com/info/search.aspx?artkw=speech+recognition

U

Mas sobre a utilização da speech mesmo, descobri que o objeto synth criado pela parte:

Synthesizer synth = Central.createSynthesizer(null);

é null.

Tem alguma configuração que preciso fazer para que ele não seja nulo? Algo que precisava ter feito antes da utilização dela? Acredito que o problema está ai.

Criado 2 de dezembro de 2010
Ultima resposta 3 de dez. de 2010
Respostas 2
Participantes 2