Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Reconhecimento maluco dos números ditos

Aparentemente ninguém mais se queixou disso e, caso sim e eu não tenha visto, peço desculpas.

Acho que este problema não vem do código e sim do software que reconhece a voz, mas vocês me dirão, pois não faço ideia.

Quando eu falo os números existem comportamentos malucos do programa em determinadas situações:

  • Números múltiplos de mil. Se eu digo 49 mil ele escreve '49.000' e este algarismo não passa pela minha validação de 'numeroForaDoRange(numero)'. No caso de 49001 ele não insere o ponto e aceita normal, fazendo funcionar a minha function.

  • Números entre 1 e 9 (quando reconhecidos) são escritos por extenso e não são afetados pelo 'const numero = +chute;'. O mesmo vale para dois milhões. Logo, o programa não reage como deveria.

  • Alguns números não são reconhecidos quando falados, geralmente os números de 1 a dez, quando não vêm por extenso, e também o número mil.

Sei que tentei números esdrúxulos mas deveria funcionar, certo? Alguém faz ideia de como isso é possível?

Agradeço infinitamente pelo seu tempo dedicado a essa doideira.

2 respostas
solução!

Oi, Pedro, tudo bem?

Muito obrigado por levantar essas questões, seu feedback importante para aprimorar o desenvolvimento dos nossos conteúdos e poder levar experiências repletas de aprendizado para nossos alunos e alunas.

O software responsável por fazer o reconhecimento de voz tem algumas limitações. Além do software, o equipamento que utilizamos para captar o áudio pode influenciar como a transcrição dos números ocorre no nosso projeto. Abaixo deixo algumas possíveis soluções para os problemas mencionados na sua mensagem:

  • Para número entre 1 e 9, você pode tentar falar o zero (0) antes do número, por exemplo, "02" (zero dois).
  • O número mil, pode ser falado como número individuais, por exemplo, "um zero zero zero" (1000).
  • Da mesma forma, número maiores que mil, você pode adotar a mesma estratégia em dizer os números que compõem o número que eu quero, por exemplo, "quatro nove zero zero zero" (49000)

Essas são algumas formas de contornar as limitações da ferramenta, você pode pensar em diferentes formas para realizar o reconhecimento de voz e ver o que melhor se adapta ao seu cenário.

Espero ter ajudado. Caso tenha dúvidas, conte com o fórum. Abraços!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

Estou muito contente de não ser o responsável pelo erro desta vez.

Muito obrigado, Rodrigo!