Artikel zur Transkription von Sprache mit der Google Cloud Speech API als eines der Mittel zum Speichern aufgezeichneter Tonquellen als Textdaten durch Teilnahme an englischen Vorträgen und Konferenzen items / 659bde4cdc8ce5c78e29) war hilfreich, daher werde ich die folgende Prozedur neu organisieren (Prozedurnotiz).
Da in diesem Verfahren Google Cloud Platform verwendet wird, wird davon ausgegangen, dass das Projekt nach Abschluss der allgemeinen Service-Edition (P9-P20) von Easy Start Guide für Google Cloud Platform erstellt wurde. Ich werde.
Es wird davon ausgegangen, dass bereits eine Tonquelle erstellt wurde, die in das folgende Format konvertiert wurde (Referenz: Audio-Konvertierungssite, Tatsächliche Tonquelle (PyConJP2017 Deutsch) Grundsatzrede)).
Mono
Wechseln Sie zur URL der Google Cloud-Plattform (https://cloud.google.com/?hl=ja) und drücken Sie Konsole öffnen, um den Konsolenbildschirm aufzurufen.
Anmeldebildschirm der Google Cloud Platform-Konsole:
Konsolenbildschirm:
Wählen Sie oben links im Konsolenbildschirm Tools & Services> APIs & Services> Libraries aus, wählen Sie Speech API aus der Liste der APIs aus und klicken Sie auf Enable, um die Google Speech API zu aktivieren.
API-Listenbildschirm
API aktivieren ([Deaktivieren] wird angezeigt, da es bereits aktiviert ist)
Sie können die Aktivierung der Google Speech-API unter [APIs und Dienste]> [Dashboard] überprüfen:
Wählen Sie links [API und Dienste]> [Anmeldeinformationen]> [Anmeldeinformationen erstellen]> [Dienstkontoschlüssel] aus, legen Sie einen geeigneten [Dienstkontonamen] fest (hier als arkbbb angenommen) und klicken Sie auf die Schaltfläche Erstellen. Drücken Sie, um die JSON-Datei herunterzuladen.
Bildschirm zur Erstellung des Dienstkontoschlüssels:
Starten Sie Google Cloud Shell mit der Schaltfläche Google Cloud Shell oben rechts auf dem Konsolenbildschirm der Google Cloud Platform, laden Sie den in 3. erhaltenen JSON hoch und legen Sie ihn in der Umgebungsvariablen fest.
Google Cloud Shell-Schaltfläche:
JSON-Upload:
Befehl zum Einstellen der Umgebungsvariablen
$ export GOOGLE_APPLICATION_CREDENTIALS=[3.JSON-Name erhalten in].json
Laden Sie die vorbereiteten Sprachdaten in Google Cloud Storage hoch. Wählen Sie zunächst oben links auf dem Bildschirm [Extras und Dienste]> [Speicher]> [Browser] aus, erstellen Sie einen Bucket mit [Bucket erstellen], doppelklicken Sie auf den erstellten Bucket und klicken Sie auf [Datei hochladen] für Audiodaten. Hochladen.
Wechseln Sie zum Bildschirm "Google Cloud Storage":
Erstellen eines Buckets (Bucket-Name und andere Einstellungen sind im Text enthalten):
Hochladen von Dateien in den Bucket:
Erstellen Sie ein Python-Skript für die Transkriptionsausführung in Google Cloud Shell.
Python-Dateibearbeitungsbefehl (Editor nach Belieben)
$ nano transcribe.py
Python-Skript für die Transkription (für englische Stimme):
transcribe.py
# !/usr/bin/env python
# coding: utf-8
import argparse
import io
import sys
import codecs
import datetime
import locale
def transcribe_gcs(gcs_uri):
from google.cloud import speech
from google.cloud.speech import enums
from google.cloud.speech import types
client = speech.SpeechClient()
audio = types.RecognitionAudio(uri=gcs_uri)
config = types.RecognitionConfig(
sample_rate_hertz=16000,
encoding=enums.RecognitionConfig.AudioEncoding.FLAC,
language_code='en-US')
operation = client.long_running_recognize(config, audio)
print('Waiting for operation to complete...')
operationResult = operation.result()
d = datetime.datetime.today()
today = d.strftime("%Y%m%d-%H%M%S")
fout = codecs.open('output{}.txt'.format(today), 'a', 'shift_jis')
for result in operationResult.results:
for alternative in result.alternatives:
fout.write(u'{}\n'.format(alternative.transcript))
fout.close()
if __name__ == '__main__':
parser = argparse.ArgumentParser(
description=__doc__,
formatter_class=argparse.RawDescriptionHelpFormatter)
parser.add_argument(
'path', help='GCS path for audio file to be recognized')
args = parser.parse_args()
transcribe_gcs(args.path)
Wenn Sie Japanisch transkribieren möchten, ändern Sie die folgende Zeile:
language_code='en-US')
↓
language_code='ja-JP')
Führen Sie die Transkription mit dem folgenden Befehl in der Google Cloud Console aus.
$ python transcribe.py gs://Eimername/Name der Sprachdaten.flac
Wenn Sie die mit dem Befehl ls in der Google Cloud Console erstellte Datei nach der Ausführung überprüfen, wird eine Textdatei mit dem Namen [output * .txt] erstellt, damit Sie sie öffnen und das Ergebnis überprüfen können. Das Ergebnis für die ersten 1-2 Minuten war unten. Wenn Sie es zusammen mit [Tonquelle] anhören (https://drive.google.com/file/d/0B3tWAndMrYtoSGdRcGtJbnA1SW8/view?usp=sharing), gibt es einige Fehler, aber Sie können sehen, dass es größtenteils transkribiert ist.
and not.
We have just attended this big Tatum Outlet
and we held a pydata event it was actually the first I did it
and some of these slides are actually problem, says talk to and so at strata we saw many people talking about the Duke talking about Big Data there were looking at using Java in a management
and there was a whole lot of our versus Python language rewards on Facebook
the Travis and I were not content with the state of things we saw that python to play a very significant role Travis made the slide that's from The Little Prince that shows a snake swallowing the open
he was also talking about using compilers make python faster
it was also not that pilot event that we were very fortunate to have weido been awesome stopping by and we talked to him about things like the matrix multiplication operator we talked about coding expressions and things like that
and so this actually his picture show does Travis and West McKinney who's the greater pandas and Guido van Rossum
add
and we ask we don't fix the packaging problem he told us that we should do it ourselves
and so we did and that's how it came up with Honda and Anaconda which I think quite elegantly solves the difficult packaging problems for the Scientific Games
so we accepted the challenge and so for those who don't know what Anaconda is very quickly I'll give you it is basically a very simple way and very reliable way to get final versions of many very popular typical to build packages in libraries in the python ecosystem
Die tatsächlichen Ergebnisdaten sind übrigens hier
Recommended Posts