Difference between revisions of "Automated Speech Recognition"

From Engineered Arts Wiki
Jump to navigation Jump to search
Line 5: Line 5:
 
==Introduction==
 
==Introduction==
  
Automated speech recognition is the process of turning sound picked up by the robot's microphone into text.  The text may then be passed on to, for example, a chat subsystem which interprets the text as the human side of a conversation with the robot. The robot may reply using its [[Text-to-Speech| text to speech]] capability.  
+
Automated speech recognition is the process of turning sound picked up by the robot's microphone into meaningful text.  The text may be interpreted as the human side of a conversation with the robot by a chat sub-system. The robot replies using the reverse process, [[Text-to-Speech| text-to-speech]], which turns text into an audio signal to send to the loudspeaker.  
  
 
Speech to text is provided by the [[Tritium Node - Speech Recognition|Speech Recognition]] Tritium node.  The actual recognition is done by a configurable backend, with Google's Cloud Speech-to-Text API as the default (and currently only) option.
 
Speech to text is provided by the [[Tritium Node - Speech Recognition|Speech Recognition]] Tritium node.  The actual recognition is done by a configurable backend, with Google's Cloud Speech-to-Text API as the default (and currently only) option.
Line 11: Line 11:
 
==Google Cloud Speech-to-Text API==
 
==Google Cloud Speech-to-Text API==
  
Google's [https://cloud.google.com/speech-to-text/ Cloud Speech-to-Text] is probably the best service available of its kind.  Using highly trained neural networks it reliably converts audio into meaningful text.  Compared to other similar services, it does a good job of transcribing the text correctly.
+
Google's [https://cloud.google.com/speech-to-text/ Cloud Speech-to-Text] is probably the best service available of its kind.  Using highly trained neural networks it reliably converts audio into well-formed text.  Compared to other similar services, it does a good job of transcribing the text correctly.
  
 
To use the Google API the Tritium node must provide authentication credentials, created using the API management web application.   
 
To use the Google API the Tritium node must provide authentication credentials, created using the API management web application.   

Revision as of 09:41, 4 June 2018

Introduction

Automated speech recognition is the process of turning sound picked up by the robot's microphone into meaningful text. The text may be interpreted as the human side of a conversation with the robot by a chat sub-system. The robot replies using the reverse process, text-to-speech, which turns text into an audio signal to send to the loudspeaker.

Speech to text is provided by the Speech Recognition Tritium node. The actual recognition is done by a configurable backend, with Google's Cloud Speech-to-Text API as the default (and currently only) option.

Google Cloud Speech-to-Text API

Google's Cloud Speech-to-Text is probably the best service available of its kind. Using highly trained neural networks it reliably converts audio into well-formed text. Compared to other similar services, it does a good job of transcribing the text correctly.

To use the Google API the Tritium node must provide authentication credentials, created using the API management web application.

The process to create new credentials is as follows

  1. Create a Google Cloud API project
  2. Generate a private service account key JSON file
  3. Download the JSON file, saving it on the robot as...
/opt/tritium/nodes/speech_recognition/google_application_credentials.json

The Before You Begin section of the Quickstart: Using Client Libraries tutorial covers this process. (You do not need to follow the rest of the tutorial.)