Πίνακας περιεχομένων:

Αναγνώριση ομιλίας χρησιμοποιώντας το Google Speech API και την Python: 4 βήματα
Αναγνώριση ομιλίας χρησιμοποιώντας το Google Speech API και την Python: 4 βήματα

Βίντεο: Αναγνώριση ομιλίας χρησιμοποιώντας το Google Speech API και την Python: 4 βήματα

Βίντεο: Αναγνώριση ομιλίας χρησιμοποιώντας το Google Speech API και την Python: 4 βήματα
Βίντεο: Tutorial: Google Cloud Speech-to-Text API Using Python 2024, Νοέμβριος
Anonim
Αναγνώριση ομιλίας χρησιμοποιώντας το Google Speech API και την Python
Αναγνώριση ομιλίας χρησιμοποιώντας το Google Speech API και την Python

Αναγνώρισης ομιλίας

Η Αναγνώριση Λόγου είναι μέρος της Επεξεργασίας Φυσικής Γλώσσας που αποτελεί υποπεδίο της Τεχνητής Νοημοσύνης. Για να το πούμε απλά, η αναγνώριση ομιλίας είναι η ικανότητα ενός λογισμικού υπολογιστή να αναγνωρίζει λέξεις και φράσεις στην ομιλούμενη γλώσσα και να τις μετατρέπει σε αναγνώσιμο από τον άνθρωπο κείμενο. Χρησιμοποιείται σε διάφορες εφαρμογές όπως συστήματα φωνητικών βοηθών, αυτοματισμού σπιτιού, φωνητικά chatbots, ρομπότ φωνητικής αλληλεπίδρασης, τεχνητή νοημοσύνη κ.λπ.

Υπάρχουν διαφορετικά API (Διεπαφή προγραμματισμού εφαρμογών) για την αναγνώριση ομιλίας. Προσφέρουν υπηρεσίες είτε δωρεάν είτε επί πληρωμή. Αυτά είναι:

  • CMU Sphinx
  • Αναγνώριση ομιλίας Google
  • Google Cloud Speech API
  • Wit.ai
  • Microsoft Bing Voice Recognition
  • Houndify API
  • Ομιλία σε κείμενο της IBM
  • Snowboy Hotword Detection

Θα χρησιμοποιούμε την Αναγνώριση Λόγου Google εδώ, καθώς δεν απαιτεί κανένα κλειδί API. Αυτό το σεμινάριο στοχεύει να παρέχει μια εισαγωγή σχετικά με τον τρόπο χρήσης της βιβλιοθήκης Αναγνώρισης ομιλίας Google σε Python με τη βοήθεια εξωτερικού μικροφώνου όπως το ReSpeaker USB 4-Mic Array από το Seeed Studio. Αν και δεν είναι υποχρεωτική η χρήση εξωτερικού μικροφώνου, μπορεί να χρησιμοποιηθεί ακόμη και ενσωματωμένο μικρόφωνο φορητού υπολογιστή.

Βήμα 1: ReSpeaker USB 4-Mic Array

ReSpeaker USB 4-Mic Array
ReSpeaker USB 4-Mic Array
ReSpeaker USB 4-Mic Array
ReSpeaker USB 4-Mic Array
ReSpeaker USB 4-Mic Array
ReSpeaker USB 4-Mic Array

Το ReSpeaker USB Mic είναι μια συσκευή τεσσάρων μικροφώνων σχεδιασμένη για AI και φωνητικές εφαρμογές, η οποία αναπτύχθηκε από το Seeed Studio. Διαθέτει 4 υψηλής απόδοσης, ενσωματωμένα πολυκατευθυντικά μικρόφωνα σχεδιασμένα για να παίρνουν τη φωνή σας από οπουδήποτε στο δωμάτιο και 12 προγραμματιζόμενες ενδείξεις LED RGB. Το μικρόφωνο USB ReSpeaker υποστηρίζει λειτουργικά συστήματα Linux, macOS και Windows. Λεπτομέρειες μπορείτε να βρείτε εδώ.

Το ReSpeaker USB Mic έρχεται σε ένα ωραίο πακέτο που περιέχει τα ακόλουθα στοιχεία:

  • Οδηγός χρήσης
  • ReSpeaker USB Mic Array
  • Καλώδιο Micro USB σε USB

Είμαστε λοιπόν έτοιμοι να ξεκινήσουμε.

Βήμα 2: Εγκαταστήστε τις απαιτούμενες βιβλιοθήκες

Για αυτό το σεμινάριο, υποθέτω ότι χρησιμοποιείτε Python 3.x.

Ας εγκαταστήσουμε τις βιβλιοθήκες:

pip3 εγκαταστήστε το SpeechRecognition

Για macOS, πρώτα θα πρέπει να εγκαταστήσετε το PortAudio με το Homebrew και, στη συνέχεια, να εγκαταστήσετε το PyAudio με το pip3:

brew install portaudio

Εκτελούμε την παρακάτω εντολή για να εγκαταστήσουμε το pyaudio

pip3 εγκατάσταση pyaudio

Για Linux, μπορείτε να εγκαταστήσετε το PyAudio με apt:

sudo apt-get install python-pyaudio python3-pyaudio

Για Windows, μπορείτε να εγκαταστήσετε το PyAudio με pip:

pip εγκατάσταση pyaudio

Δημιουργήστε ένα νέο αρχείο python

nano get_index.py

Επικόλληση στο get_index.py παρακάτω απόσπασμα κώδικα:

εισαγωγή pyaudio

p = pyaudio. PyAudio () info = p.get_host_api_info_by_index (0) numdevices = info.get ('deviceCount') for i in range (0, numdevices): if (p.get_device_info_by_host_api_device_index (0, i).get ('maxInput '))> 0: print ("Input Device id", i, " -", p.get_device_info_by_host_api_device_index (0, i).get (' name '))

Εκτελέστε την ακόλουθη εντολή:

python3 get_index.py

Στην περίπτωσή μου, η εντολή δίνει την ακόλουθη έξοδο στην οθόνη:

Αναγνωριστικό συσκευής εισόδου 1 - ReSpeaker 4 Mic Array (UAC1.0)

Αναγνωριστικό συσκευής εισόδου 2 - Μικρόφωνο MacBook Air

Αλλάξτε το device_index σε αριθμό ευρετηρίου σύμφωνα με την επιλογή σας στο παρακάτω απόσπασμα κώδικα.

εισαγωγή ομιλίας_αναγνώρισης ως sr

r = sr. Recognizer () ομιλία = sr. Μικρόφωνο (device_index = 1) με ομιλία ως πηγή: εκτύπωση ("πες κάτι! …") ήχος = r.adjust_for_ambient_noise (πηγή) ήχος = r. listenen (πηγή) try: recog = r.recognize_google (audio, language = 'el-US') print ("Είπατε:" + recog) εκτός από sr. UnknownValueError: print ("Google Speech Recognition could not understand audio") εκτός από sr. RequestError as e: print ("Δεν ήταν δυνατό να ζητηθούν αποτελέσματα από την υπηρεσία Αναγνώρισης ομιλίας Google. {0}". Μορφή (ε))

Ο δείκτης συσκευής επιλέχθηκε 1, επειδή το ReSpeaker 4 Mic Array θα είναι η κύρια πηγή.

Βήμα 3: Μετατροπή κειμένου σε ομιλία σε Python With Pyttsx3 Library

Υπάρχουν πολλά διαθέσιμα API για τη μετατροπή κειμένου σε ομιλία σε python. Ένα από αυτά τα API είναι το pyttsx3, το οποίο είναι το καλύτερο διαθέσιμο πακέτο κειμένου σε ομιλία κατά τη γνώμη μου. Αυτό το πακέτο λειτουργεί σε Windows, Mac και Linux. Ελέγξτε την επίσημη τεκμηρίωση για να δείτε πώς γίνεται αυτό.

Εγκαταστήστε το πακέτο Χρησιμοποιήστε pip για να εγκαταστήσετε το πακέτο.

pip εγκατάσταση pyttsx3

Εάν βρίσκεστε στα Windows, θα χρειαστείτε ένα πρόσθετο πακέτο, το pypiwin32 το οποίο θα χρειαστεί για πρόσβαση στο εγγενές API ομιλίας των Windows.

pip εγκατάσταση pypiwin32

Μετατροπή κειμένου σε σενάριο python ομιλίας Παρακάτω είναι το απόσπασμα κώδικα για κείμενο σε ομιλία χρησιμοποιώντας το pyttsx3:

εισαγωγή pyttsx3

κινητήρας = pyttsx3.init ()

engine.setProperty («ποσοστό», 150) # Ποσοστό ταχύτητας

engine.setProperty («όγκος», 0,9) # Τόμος 0-1

engine.say ("Γεια σου, κόσμο!")

engine.runAndWait ()

Βήμα 4: Το βάζουμε όλα μαζί: Δημιουργία αναγνώρισης ομιλίας με Python χρησιμοποιώντας API αναγνώρισης ομιλίας Google και βιβλιοθήκη Pyttsx3

Ο παρακάτω κώδικας είναι υπεύθυνος για την αναγνώριση της ανθρώπινης ομιλίας χρησιμοποιώντας την Αναγνώριση ομιλίας Google και τη μετατροπή του κειμένου σε ομιλία χρησιμοποιώντας τη βιβλιοθήκη pyttsx3.

εισαγωγή ομιλίας_αναγνώρισης ως sr

εισαγωγή pyttsx3 engine = pyttsx3.init () engine.setProperty ('rate', 200) engine.setProperty ('volume', 0.9) r = sr. Recognizer () speech = sr. Microphone (device_index = 1) με πηγή την ομιλία: audio = r.adjust_for_ambient_noise (source) audio = r.listen (source) try: recog = r.recognize_google (audio, language = 'en-US') print ("You said:" + recog) engine.say (" Είπατε: " + recog) engine.runAndWait () εκτός από sr. UnknownValueError: engine.say (" Η αναγνώριση ομιλίας Google δεν κατάλαβε τον ήχο ") engine.runAndWait () εκτός από το sr. RequestError ως e: engine.say (" Δεν μπόρεσα ζητήστε αποτελέσματα από την υπηρεσία Αναγνώρισης ομιλίας Google. {0} ". format (e)) engine.runAndWait ()

Εκτυπώνει την έξοδο στο τερματικό. Επίσης, θα μετατραπεί επίσης σε λόγο.

Είπατε: Το Λονδίνο είναι η πρωτεύουσα της Μεγάλης Βρετανίας

Ελπίζω να έχετε τώρα καλύτερη κατανόηση του τρόπου λειτουργίας της αναγνώρισης ομιλίας γενικά και το πιο σημαντικό, πώς να το εφαρμόσετε χρησιμοποιώντας το Google Speech Recognition API με την Python.

Εάν έχετε οποιεσδήποτε ερωτήσεις ή σχόλια; Αφήστε ένα σχόλιο παρακάτω. Μείνετε συντονισμένοι!

Συνιστάται: