Sphinx Speech API

2 respostas
cesarvargas00

Pessoal,
Seguinte:
Estou fazendo um aplicativo de reconhecimento de voz. Ele deveria fazer o seguinte:
1 - Reconhece o que o usuário diz (qualquer palavra dentro de um dicionário),
2 - Procura na web o que foi dito,
3 - Exibe o resultado do google.

Simples né?NADA!!

Eu to usando o Sphinx para a tarefa, e ele reconhece numa boa QUALQUER palavra que existe no dicionário, e eu defino previamente no .gram
mas o meu problema é o seguinte: Queria fazer um grammar( arquivo .gram de gramática ), que reconhecesse qualquer palavra
da língua inglesa (do dicionário incluso). Vou explicar melhor:
se no grammar eu coloco, por exemplo:

public <hello> = hello;

ele reconhece perfeitamente quando eu digo em voz alta “hello”.
Mas se eu coloco algo genérico do tipo:

public <frase> = <palavra><frase>; public <palavra> = <letra>*<palavra>; <letra> = (<consoante>|<vogal>); <consoante>=(b|c|d|f|g|h|j|k|l|m|n|p|q|r|s|t|v|x|w|y|z); <vogal>=(a|e|i|o|u);

eu recebo o seguinte ao dizer “hello” :

l o >>> Letra “L” e a letra “O”

Pelo que entendi, ele não tá juntando as letras… Acho que é sintaxe… Alguém tem alguma luz?

Obrigado!

*obs:Apesar de o Sphinx usar a JSGF para definir grammars, ele não é uma implementação da Java Speech.
**ps: JSGF para quem estiver disposto a me ajudar, e quem gosta de desafio :twisted: http://java.sun.com/products/java-media/speech/forDevelopers/JSGF/JSGF.html#16587

2 Respostas

davidbuzatto

Oi Cesar,

Eu não tenho experiência com a parte técnica nem teórica do reconhecimento de fala, mas o pouco que aprendi durante alguns meses mexendo com isso foi trabalhar com o Julius, que é outro sistema de reconhecimento.

Nele, quando queremos reconhecer uma série de frases conhecidas, nós precisamos criar uma gramática a partir dessas frases e usá-la, em conjunto com um modelo acústico.
Quando queremos um reconhecimento genérico como o que você está buscando, a gramática não resolve o problema, então temos que usar um modelo de linguagem no seu lugar.

Então fico pensando se o que vc precisa é realmente uma gramática ou um modelo de linguagem. Me parece que é a segunda opção.

[]'s

cesarvargas00

David,
Obrigado pela ajuda, mas acho que o modelo acústico já está implementado no dicionário do engine ( pelo menos na língua inglesa ). Esse modelo acústico, tem todas as pronúncias das palavras que o dicionário possui. O meu problema é só na gramática mesmo. Na verdade só tenho certeza disso porque isso seria um trabalho da faculdade, e o professor me disse que é possível sim, fazer isso dessa forma…

Mas Obrigado pela resposta mesmo assim!

[]`s

Criado 14 de março de 2011
Ultima resposta 15 de mar. de 2011
Respostas 2
Participantes 2