Lidando com diferentes tipos de áudio

Processamento de Linguagem Falada em Python

Daniel Bourke

Machine Learning Engineer/YouTube Creator

Qual idioma?

# Crie uma classe Recognizer
recognizer = sr.Recognizer()

# Passe o áudio em japonês para recognize_google text = recognizer.recognize_google(japanese_good_morning, language="en-US")
# Imprima o texto print(text)
Ohio gozaimasu
Processamento de Linguagem Falada em Python

Qual idioma?

# Crie uma classe Recognizer
recognizer = sr.Recognizer()

# Passe o áudio em japonês para recognize_google text = recognizer.recognize_google(japanese_good_morning, language="ja")
# Imprima o texto print(text)
おはようございます
Processamento de Linguagem Falada em Python

Áudio sem fala

# Importe o arquivo de áudio do rugido do leopardo
leopard_roar = sr.AudioFile("leopard_roar.wav")

# Converta AudioFile para AudioData with leopard_roar as source: leopard_roar_audio = recognizer.record(source)
# Reconheça o AudioData recognizer.recognize_google(leopard_roar_audio)
UnknownValueError:
Processamento de Linguagem Falada em Python

Áudio sem fala

# Importe o arquivo de áudio do rugido do leopardo
leopard_roar = sr.AudioFile("leopard_roar.wav")

# Converta AudioFile para AudioData with leopard_roar as source: leopard_roar_audio = recognizer.record(source)
# Reconheça o AudioData com show_all ativado recognizer.recognize_google(leopard_roar_audio, show_all=True)
[]
Processamento de Linguagem Falada em Python

Mostrando tudo

# Reconhecendo áudio em japonês com show_all=True
text = recognizer.recognize_google(japanese_good_morning, 
                                   language="en-US",
                                   show_all=True)
# Imprima o texto
print(text)
{'alternative': [{'transcript': 'Ohio gozaimasu', 'confidence': 0.89041114},
  {'transcript': 'all hail gozaimasu'},
  {'transcript': 'ohayo gozaimasu'},
  {'transcript': 'olho gozaimasu'},
  {'transcript': 'all Hale gozaimasu'}],
 'final': True}
Processamento de Linguagem Falada em Python

Vários locutores

# Importe um arquivo de áudio com vários locutores
multiple_speakers = sr.AudioFile("multiple-speakers.wav")

# Converta AudioFile para AudioData with multiple_speakers as source: multiple_speakers_audio = recognizer.record(source)
# Reconheça o AudioData recognizer.recognize_google(multiple_speakers_audio)
one of the limitations of the speech recognition library is that it doesn't
recognise different speakers and voices it will just return it all as one block 
of text
Processamento de Linguagem Falada em Python

Vários locutores

# Importe arquivos de áudio separadamente
speakers = [sr.AudioFile("s0.wav"), sr.AudioFile("s1.wav"), sr.AudioFile("s2.wav")]

# Transcreva cada locutor individualmente for i, speaker in enumerate(speakers): with speaker as source: speaker_audio = recognizer.record(source) print(f"Text from speaker {i}: {recognizer.recognize_google(speaker_audio)}")
Text from speaker 0: one of the limitations of the speech recognition library
Text from speaker 1: is that it doesn't recognise different speakers and voices
Text from speaker 2: it will just return it all as one block a text
Processamento de Linguagem Falada em Python

Áudio com ruído

  • Se você tem dificuldade para ouvir a fala, as APIs também terão
# Importe o arquivo de áudio com ruído de fundo
noisy_support_call = sr.AudioFile(noisy_support_call.wav)

with noisy_support_call as source: # Ajuste para ruído ambiente e grave recognizer.adjust_for_ambient_noise(source, duration=0.5) noisy_support_call_audio = recognizer.record(source)
# Reconheça o áudio recognizer.recognize_google(noisy_support_call_audio)
hello ID like to get some help setting up my calories
Processamento de Linguagem Falada em Python

Vamos praticar!

Processamento de Linguagem Falada em Python

Preparing Video For Download...