Conversão de fala em texto: um aplicativo de PNL

Conteúdo

Esta postagem foi lançada como parte do Data Science Blogathon

Introdução

A fala é o meio de comunicação mais típico e também a maior parte da população do mundo depende da fala para falar entre si.. Um sistema de acreditação de voz traduz idiomas falados em texto. Existem vários exemplos da vida real de sistemas de acreditação de voz. como um exemplo, O Apple SIRI reconhece a fala e a transforma em texto. El sistema Speech-To-Text (STT) pegue uma emissão de voz humana como entrada e uma sequência de palavras é necessária como saída. O único objetivo deste sistema é extrair, caracterizar e reconhecer informações sobre a fala.

CONTENTE

1.Diagrama de blocos do sistema

2.Como funciona o credenciamento de voz?

3.Converter um arquivo de áudio em texto

4. Que tal converter para diferentes idiomas de áudio?

5.Microfone para texto de fala

6.Formulários

7. conclusão

Diagrama de blocos do sistema

diagrama de blocos do sistema |  conversão de fala em texto

Fonte

1.Modelo acústico

Para reconhecer a fala, um motor de acreditação de voz usa o modelo acústico. Para criar um modelo acústico, precisamos fazer gravações de áudio da fala e suas transcrições de texto, e usamos software para criar representações estatísticas dos sons que compõem cada palavra.

2.Modelo de linguagem

Um modelo de linguagem é um arquivo que inclui as probabilidades de sequências de palavras. Usamos modelos de linguagem para aplicativos de ditado, enquanto as gramáticas são usadas em aplicativos de tipo de resposta de voz interativa (IVR) ou comando e controle de desktop ou telefonia.

3.Motor de voz

Um mecanismo de voz é o coração do sistema de acreditação de voz. Este é o software que dá ao seu computador a capacidade de reproduzir texto em voz falada (comumente conhecido como text-to-speech ou TTS).

Como funciona o credenciamento de voz?

Figura |  conversión de voz a texto |  conversão de fala em texto

Procedimento de credenciamento de voz

Modelo de Markov Oculto para Procedimento de Credenciamento de Voz (HMM), modelos de redes neurais profundas costumam converter áudio em texto.

HMM (MODELO DE MARKOV OCULTO) é o modelo estatístico que produziu a saída como uma sequência de símbolos ou quantidades. A lógica por trás do uso de HMMs como uma ferramenta de acreditação de voz é sua capacidade de tratar a acreditação de voz como um sinal estacionário em partes ou um sinal estacionário de curta duração.. Em uma escala de tempo curta (como um exemplo, 10 milissegundos), a fala pode ser aproximada como um procedimento estacionário.

Livro de código HMM

Fonte

Neste blog, Estou demonstrando uma maneira de converter fala em texto usando python. Isso será feito com a ajuda da API “Acreditação de voz” e a biblioteca “PyAudio”. A API Voice Accreditation oferece suporte a várias APIs, Durante este blog, usei a API Google Voice Accreditation.

Bibliotecas Python

!pip install SpeechRecognition

Converter um arquivo de áudio em texto

Aqui estão as próximas etapas para converter arquivos de áudio em texto:

Passos:

  1. Importar Biblioteca de Credenciamento de Voz

  2. Inicializando a classe do reconhecedor para reconhecer fala. Estamos usando o credenciamento de voz do Google.

  3. Os arquivos de áudio compatíveis com um sistema de credenciamento de voz incluem wav, AIFF, AIFF-C, FLAC. Usé el 'wav’ entrar en esta instancia.

  4. Aquí usamos los clipes de audio de la película 'Taken’ que diz “Sem sé quién eres, no sé qué te interesaría si buscas un rescate. Puedo decirte que no tengo dinero”.

  5. Por padrão, el reconocedor de Google lee en inglés.

Código

#import library
import speech_recognition as sr
# Aula de reconhecimento inicial (para reconhecer o discurso)
r = sr. Reconhecedor()
# Leitura do arquivo áudio como fonte
# listening to the audio file and store in audio_text variable
with sr.AudioFile("Eu não sei.wav) como fonte:
    audio_text = r.listen(fonte)
# se a API estiver inalcançável, o recoginize_() método vai jogar um erro de solicitação, hence using exception handling
    try:
        # using google speech recognition
        text = r.recognize_google(audio_text)
        imprimir('Convertendo transcrições de áudio em texto...')
        imprimir(texto)
    exceto:
         imprimir(Desculpe- me.. executar novamente...')

Produção

saída1 |  conversão de fala em texto

Que tal converter para diferentes idiomas de áudio?

O inglês é uma das línguas mais comuns. Mas, e se quisermos converter de diferentes idiomas como, Alemão e francês? A partir deste sistema fala-texto (STT), você pode converter sua voz de qualquer idioma em texto. Vamos ver como

Como um exemplo, se quisermos ler um arquivo de áudio em francês, então precisamos adicionar uma opção de idioma em recogonize_google. O código restante permanece o mesmo.

#Adding french language option
text = r.recognize_google(audio_text, linguagem = "fr-FR")

Produção

Saída 2

Novamente, a opção de idioma necessária é adicionada em Recogn_google () para credenciamento de idiomas. Estou falando em Tâmil., Línguas indianas e adicionando “ta-IN” na opção idioma.

# Adicionando "Língua tâmil"
imprimir("Texto: "+r.recognize_google(audio_text, linguagem = "ta-IN"))

Eu apenas disse “Como está” em Tamil e imprimir o texto em Tamil com precisão.

Produção

saída3

Voz do microfone no texto

Microfones são usados ​​para receber áudio como entrada de usuários. Existem muitas bibliotecas diferentes disponíveis para converter a fala do microfone em texto. Aqui usamos PyAudio para esta conversão.

Passos:

  1. Devemos instalar a biblioteca PyAudio que é usada para receber entrada e saída de áudio através do microfone e alto-falante. Ajuda a extrair nossa voz através do microfone.

! pip instalar PyAudio

  1. Temos que usar a aula de microfone, en lugar de una fuente de archivo de áudio. Los pasos restantes filho los mismos.

Código

#import library
import speech_recognition as sr
# Aula de reconhecimento inicial (para reconhecer o discurso)
r = sr. Reconhecedor()
# Microfone de leitura como fonte
# listening to the speech and store in audio_text variable
with sr.Microphone() como fonte:
    imprimir("Falar")
    audio_text = r.listen(fonte)
    imprimir("Acabou o tempo, Obrigado")
# recoginize_() método vai jogar um erro de solicitação se a API é inalcançável, hence using exception handling
    try:
        # using google speech recognition
        print("Texto: "+r.recognize_google(audio_text))
    exceto:
         imprimir("Desculpe, Eu não consegui isso.")

Acabo de hablar “¿Cómo estás?”

Produção

salida4

APLICACIONES

  1. Sistemas en el automóvil

  2. Cuidados de saúde

  3. Militar

  4. Treinamento de controladores de tráfego aéreo

  5. Telefonia e outros domínios

  6. Uso na educação e na vida diária.

conclusão:

A API Google Speech Accreditation é uma maneira simples de converter voz em texto, mas precisa de uma conexão online para funcionar. Neste blog, vimos uma maneira de converter voz em texto usando a API de credenciamento de voz do Google. Isso pode ser muito útil para projetos de PNL., especialmente para tratamento de dados de transcrições de áudio. Se você tem algo a apontar, Sinta-se livre para deixar um comentário! Obrigado pela leitura. Continue aprendendo e fique ligado para mais!!

A mídia mostrada nesta postagem não é propriedade da DataPeaker e é usada a critério do autor.

Assine a nossa newsletter

Nós não enviaremos SPAM para você. Nós odiamos isso tanto quanto você.