Reconnaissance vocale Python: comment traduire la parole en texte?

Ce blog couvre le concept de la reconnaissance vocale en python avec un exemple de programme qui traduit la parole en texte à l'aide de la reconnaissance vocale.

La parole est le moyen de communication le plus courant dans le monde. La plupart des habitants du monde dépendent de la parole pour communiquer entre eux. Supposons que nous construisions un modèle et qu'au lieu d'une approche écrite, nous voulons que notre système réponde à la parole, cela devient assez difficile et nécessite beaucoup de données à traiter. Un système de reconnaissance vocale surmonte cet obstacle en traduisant la parole en texte. Dans ce blog, nous passerons par la reconnaissance vocale module en python . Voici la liste des mêmes:



Comment fonctionne la reconnaissance vocale?

Le système de reconnaissance vocale traduit essentiellement les énoncés parlés en texte. Il existe divers exemples réels de système de reconnaissance vocale. Par exemple, siri, qui prend le discours comme entrée et le traduit en texte.



L'avantage d'utiliser un système de reconnaissance vocale est qu'il surmonte la barrière de l'alphabétisation. Un modèle de reconnaissance vocale peut également servir un public alphabétisé et analphabète, car il se concentre sur les énoncés parlés.

Nous pouvons également faire un inventaire de toutes les langues menacées dans le monde à l'aide d'un système de reconnaissance vocale. Bien qu'il semble assez intrigant et pas du tout complexe, un système de reconnaissance vocale est confronté à de nombreux défis en cours d'élaboration.



Les défis de la reconnaissance vocale Système

Un système de reconnaissance vocale devient difficile à réaliser car nous avons tellement de sources de variabilité en matière de parole.

Style de parole

Chaque personne a un style de parole varié, y compris des accents. Comme nous le savons tous, nous avons également des accents différents pour parler anglais. Il y a l'anglais américain, l'anglais britannique et tant d'autres accents lorsqu'il s'agit de parler la langue la plus courante au monde. La prononciation rend également difficile pour un système de reconnaissance vocale la traduction complète du discours.



Environnement

L'environnement ajoute également beaucoup de bruit de fond au système. Une pièce isolée par rapport à un auditorium aura une grande variabilité des bruits de fond. Même l'écho peut également ajouter beaucoup de bruit dans le système.

Caractéristiques des enceintes

La voix d’une personne âgée peut ne pas être la même que celle d’un bébé. Les caractéristiques du discours d’une personne dépendent de nombreux facteurs, y compris la dureté et la clarté.

Contraintes linguistiques

Certains énoncés parlés peuvent ne pas avoir de sens viable en matière de traduction.

Après avoir surmonté ces défis, il est assez possible pour tout système de reconnaissance vocale de traduire la parole en texte. Maintenant que nous savons comment fonctionne la reconnaissance vocale, jetons un œil à différents disponibles pour la reconnaissance vocale en python.

Packages disponibles pour la reconnaissance vocale en python

  • apiai

  • Reconnaissance de la parole

  • Google_speech_cloud

  • assemblage

  • Pochesphinx

  • Watson_developer_cloud

  • blanc

    C ++ itératif fibonacci

Nous allons passer en revue les détails du package SpeechRecognition dans ce blog, jetons également un coup d'œil dans la mémoire pour comprendre comment les systèmes de reconnaissance vocale ont évolué au fil des ans.

Le tout premier prototype de la reconnaissance vocale était en fait un jouet, nommé radio rex qui est venu vers les années 1920. Il y avait un chien assis dans une niche qui sortait dès que quelqu'un prononçait le mot rex.

Le seul problème avec le modèle était que le ressort était attaché à un électroaimant sensible à une énergie d'environ 500 Hz. Étant purement un détecteur de fréquence, il pourrait être appelé à distance un modèle de reconnaissance vocale.

En 1962, IBM a proposé un boîte à chaussures modèle qui était capable de reconnaître des mots isolés et d'effectuer également quelques opérations arithmétiques.

Puis vint HARPIE de CMU, qui a pu reconnaître la parole connectée à partir d'un vocabulaire de 1000 mots. Dans les années 1980, les gens ont commencé à utiliser des modèles statistiques et l'un des paradigmes d'apprentissage automatique les plus utilisés était le modèle de markov caché.

cast un double en int

Après l'introduction des réseaux de neurones profonds, la plupart des modèles de reconnaissance vocale fonctionnent sur les réseaux de neurones. Les possibilités sont inimaginables avec les réseaux de neurones, le vocabulaire peut aller jusqu'à 10 000 mots et plus.

Comment installer SpeechRecognition en Python?

Pour installer le package SpeechRecognition est python, exécutez la commande suivante dans le terminal et il sera installé sur votre système.

installation-reconnaissance vocale python-edureka

Une autre approche à cela peut être d'ajouter le package à partir de l'interpréteur de projet si vous utilisez

Le package a une classe Recognizer qui est essentiellement là où la magie opère. C'est fondamentalement une classe qui sert à reconnaître le discours. Voici sept méthodes permettant de lire diverses sources audio à l'aide de différentes API.

  • identifier_bing ()
  • Recogn_google ()
  • Recogn_google_cloud ()
  • reconnaitre_houndify ()
  • reconnaît_ibm ()
  • identifier_wit ()
  • reconnaitre_sphinx ()

Maintenant, Recogn_sphinx peut également être utilisé pour exécuter le système de reconnaissance vocale hors ligne. Il nécessite l'installation de Pocketsphinx.

importer la reconnaissance vocale en tant que sr #instance de la classe de reconnaissance r = sr.Recognizer ()

Prise d'entrée des microphones

Pour utiliser les microphones, nous devrons également installer le module pyaudio. Nous utilisons la classe microphone pour obtenir la parole d'entrée du microphone au lieu de toute autre méthode d'entrée comme un fichier audio.

Pour la plupart des projets, nous pouvons utiliser les microphones par défaut. Mais si vous ne souhaitez pas utiliser le microphone par défaut, vous pouvez obtenir la liste des noms de microphones en utilisant la méthode list_microphone_names.

Pour capturer l'entrée du microphone, nous utilisons la méthode d'écoute.

importer la reconnaissance vocale en tant que sr r = sr.Recognizer () avec sr.Microphone () comme source: audio = sr.listen (source)

Comment installer Pyaudio en Python?

Pour installer Pyaudio en python, exécutez la commande suivante dans le terminal ou si vous utilisez pycharm, ajoutez le package à partir de l'interpréteur de projet dans les paramètres.

Cas d'utilisation

Nous allons créer un programme en utilisant le module speechrecognition en python pour reconnaître la parole et exécuter ce qui suit:

  1. convertir le discours en texte
  2. ouvrir une URL à l'aide du module de navigateur Web
  3. passer une requête à l'aide de la reconnaissance vocale pour effectuer une recherche dans l'url

Voici le programme pour l'énoncé de problème ci-dessus:

import speech_recognition as sr import webbrowser as wb r1 = sr.Recognizer () r2 = sr.Recognizer () r3 = sr.Recognizer () avec sr.Microphone () comme source: print ('[search edureka: search youtube]') print ('speak now') audio = r3.listen (source) if 'edureka' in r2.recognize_google (audio): r2 = sr.Recognizer () url = 'https://www.edureka.co/' avec sr .Microphone () comme source: print ('recherchez votre requête') audio = r2.listen (source) essayez: get = r2.recognize_google (audio) print (get) wb.get (). Open_new (url + get) sauf sr.UnknownValueError: print ('error') sauf sr.RequestError comme e: print ('failed'.format (e)) if' video 'in r1.recognize_google (audio): r1 = sr.Recognizer () url =' https://www.youtube.com/results?search_query= 'avec sr.Microphone () comme source: print (' rechercher une vidéo ') audio = r2.listen (source) essayez: get = r1.recognize_google (audio ) print (get) wb.get (). open_new (url + get) sauf sr.UnknownValueError: print ('n'a pas pu comprendre') sauf sr.RequestError comme e: print (impossible d'obtenir les résultats '' .format (e) )

Vous obtiendrez la sortie telle qu'elle est montrée dans l'image. Si vous dites edureka, cela vous demandera de dire la requête que vous souhaitez rechercher dans l'url edureka que nous avons écrite dans la variable url. Si vous dites python, la page Web suivante sera ouverte dans le navigateur.

Dans ce blog, nous avons expliqué comment utiliser la reconnaissance vocale en python pour traduire la parole en texte à l'aide du package speechrecognition. est devenu le besoin de l'heure pour des concepts comme la reconnaissance vocale ou l'abattement des objets, avec le qui offrent des possibilités inimaginables aux systèmes de reconnaissance vocale où nous pouvons entraîner et tester d'énormes données vocales pour construire un système. pour les réseaux de neurones profonds pour maîtriser vos compétences et démarrer votre apprentissage.

avez des questions? mentionnez-les dans les commentaires, nous vous recontacterons.