Casa > Q > Quais São Os Passos Para Fazer Um Sistema De Síntese Texto-Fala (Tts) A Partir Do Zero?

Quais são os passos para fazer um sistema de síntese texto-fala (TTS) a partir do zero?

Há muitas coisas que vão para fazer um sistema TTS a partir do zero e você precisa ter algum conhecimento de baixo nível para fazer a parte da fala funcionar. Eu dividi os passos em uma pequena lista simples que cobre o básico do que você precisaria fazer.

P>Passo 1: Texto para palavras.
Isso pode parecer algo muito fácil de se fazer, mas lembre-se, um computador é extremamente burro e faz exatamente o que nós mandamos. A linguagem escrita é muito ambígua. Temos palavras que soam diferentes mesmo quando têm as mesmas letras, por exemplo, ler e ler. ( Eu li este post, você vai ler minha resposta.)

Passo 2: Palavras para fonemas
Phonemes - qualquer uma das unidades perceptualmente distintas de som em uma determinada língua que distingue uma palavra de outra, por exemplo p, b, d, e t nas palavras inglesas pad, pat, bad, e bat. Compare com allophone.
Existem apenas 26 letras no alfabeto inglês, mas mais de 40 fonemas. O que faz com que todos os diferentes sons usados no discurso real.

>p>passo 3: Phonemes to Sound
Existem três abordagens diferentes. Uma é usar gravações de humanos dizendo os fonemas, outra é o computador gerar os próprios fonemas gerando frequências sonoras básicas (um pouco como um sintetizador de música), e uma terceira abordagem é imitar o mecanismo da voz humana.
Primeira opção é o que o Dragon Speak usa, segunda opção é usada pelo motor TTS da Microsoft, terceira opção é usada pelo Cortana.

Passo 4: Colocando tudo junto
Agora você precisa construir tudo isso e colocá-lo em uma biblioteca para poder ligar mais tarde quando for necessário.

Bom sorte nas suas aventuras, eu mesmo pensei em fazer isso em um ponto. Decidi ficar com as versões Mono / .Net Framework porque eu sou preguiçoso.

De Crispin

Os raios podem passar por luzes que estão desligadas? :: Qual é o melhor discurso para aplicação de texto ou motor?