Google Cloud Vision API-Beispiel für Python

Dieser Artikel enthält einen Beispielcode und eine Erklärung zur Verwendung der Google Cloud Vision-API. Dieser Beispielcode soll durch Importieren mit anderem Python-Code verwendet werden.

Wenn Sie den Vorgang selbst überprüfen möchten, kommentieren Sie den Teil unter ## main aus und führen Sie den Komponententest durch.

Zunächst müssen Sie den API-Schlüssel der Google Cloud Vision-API abrufen, um dieses Beispiel ausführen zu können. Speichern Sie außerdem das Beispielbild, das Sie analysieren möchten, als data / sample.png in derselben Hierarchie wie das Programm, das im Voraus vorbereitet und ausgeführt werden soll.

Wenn dieser Code ausgeführt wird, werden die Bilddaten an die Google Cloud Vision-API gesendet, das zurückgegebene Ergebnis wird auf dem Bildschirm angezeigt und der Beschreibungswert wird in tmp gespeichert.

Als Anwendung können Sie überprüfen, ob der Unterschied aufgetreten ist, indem Sie True nur zurückgeben, wenn der von der update_json_file-Methode zurückgegebene JSON-Wert unterschiedlich ist. Mit diesem Wert können Sie ihn als Bot verwenden und wie Twitter, Line oder Slack murmeln.

googlecv.py


# -*- coding: utf-8 -*-

import requests
import json
import base64
import os

GOOGLE_CLOUD_VISION_API_URL = 'https://vision.googleapis.com/v1/images:annotate?key='
API_KEY = 'YOUR-GOOGLE-CLOUD-VISION-API-KEY'
def goog_cloud_vison (image_content):
    api_url = GOOGLE_CLOUD_VISION_API_URL + API_KEY
    req_body = json.dumps({
        'requests': [{
            'image': {
                'content': image_content
            },
            'features': [{
                'type': 'LABEL_DETECTION',
                'maxResults': 10,
            }]
        }]
    })
    res = requests.post(api_url, data=req_body)
    return res.json()

def img_to_base64(filepath):
    with open(filepath, 'rb') as img:
        img_byte = img.read()
    return base64.b64encode(img_byte)

def get_descs_from_return(res_json):
    labels = res_json['responses'][0]['labelAnnotations']
    descs = []
    for value in labels:
        descs.append(value['description'])

    return json.dumps(descs)

def update_json_file(json_desc):
    fname = '/tmp/descs.json'
    if os.path.isfile(fname)==True:
        with open('/tmp/descs.json', 'r') as f:
            f_desc = json.load(f)
    else:
        f_desc = ''

    if json_desc != f_desc:
        with open('/tmp/descs.json', 'w') as f:
            json.dump(json_desc, f, sort_keys=True, indent=4)
        return True
    else:
        return False

##
## main
##
#dir = os.path.dirname(os.path.abspath(__file__))
#filename = os.path.join(dir, 'data', 'sample.png')
#print filename
#img = img_to_base64(filename)
#res_json = goog_cloud_vison(img)
#json_desc = get_descs_from_return(res_json)
#print json_desc
#update_json_file(json_desc)

Recommended Posts

Google Cloud Vision API-Beispiel für Python
Verwenden Sie die Google Cloud Vision-API von Python
Ich habe die Google Cloud Vision-API zum ersten Mal ausprobiert
Textextraktion mit GCP Cloud Vision API (Python3.6)
Ich habe versucht, die Google Cloud Vision-API zu verwenden
Tweet (API 1.1) mit Google App Engine für Python
Python ruft die Google Cloud Vision API von LINE BOT über AWS Lambda auf
Sprachtranskriptionsverfahren mit Python und Google Cloud Speech API
[Python] Beispielcode für die Python-Grammatik
Google Drive API-Tipps (Python)
Beispielbild eines Python-API-Servers für EC2 (öffentliches AMI)
Versuchen Sie, Lebensmittelfotos mithilfe der Google Cloud Vision-API zu beurteilen
Abrufen von Daten aus der Analyse-API mit Google API Client für Python
[Python] Klicken Sie auf die Google Übersetzungs-API
[Python3] Google übersetzt Google Übersetzung ohne Verwendung von API
Boto3 (Python) API-Beispiel, das ich oft benutze
Verwenden Sie die Google Analytics-API von Python
Streamen Sie die Spracherkennung mithilfe der gRPC-API von Google Cloud Speech mit Python3 auf dem Mac!
Bis Sie die Google Cloud Vision-API ausprobieren (Erkennung schädlicher Bilder)
Lassen Sie uns vorerst Googles Vision API von Python berühren
[SEO] Flow / Beispielcode bei Verwendung der Google Analytics-API in Python
[google-oauth] [python] Google APIs-Clientbibliothek für Python
Streaming-Spracherkennung mit der Google Cloud Speech API
PHP / Python / Ruby-Beispiel für die Pfad-API
Holen Sie sich Google Fit API-Daten in Python
Versuchen Sie, Python mit Google Cloud-Funktionen zu verwenden
Sprachtranskriptionsverfahren mit der Google Cloud Speech API
[GCP] Betreiben Sie Google Cloud Storage mit Python
Beispiel für den Umgang mit EML-Dateien in Python
Verwendung der Cloud Vision API von GCP
Erstellen einer Google-Tabelle mit der Python / Google Data-API
Implementierter Python-Wrapper für Qiita API v2
Ich habe versucht, Zeichen aus Untertiteln zu extrahieren (OpenCV: Google Cloud Vision API)
Bei der Einführung der Google Cloud Vision-API in Schienen habe ich die Dokumentation befolgt.
Erkennen Sie japanische Zeichen anhand von Bildern mithilfe der Cloud Vision-API von Google mit Python
Folie bearbeiten (Powerpo für Google) mit Python (kostengünstiger RPA-Fall mit Google API und Python)
2016-10-30 sonst für Python3> für:
Python [für mich]
Probleme mit den Ausgabeergebnissen mit der Cloud Vision-API von Google
Erstellt einen Python-Wrapper für die Qiita-API
Datenerfassung von der Analytics-API mit dem Google API-Client für die Python Part 2-Webanwendung
Ich habe "License OCR" mit der Google Vision API ausprobiert
Führen Sie die Google Analytics-API (Core v3) in Python aus
Python-Abschlussbeispiel
Automatische Sprachtranskription mit Google Cloud Speech API
Tipps zum Erreichen der ATND-API mit Python
Verwendung der Google Cloud Translation API
Verwendung von OAuth und API für Dienstkonten mit Google API Client für Python
Ich habe "Receipt OCR" mit der Google Vision API ausprobiert
[GoogleCloudPlatform] Verwenden Sie die Google Cloud-API mit der API-Clientbibliothek
Berühren Sie die Beispiel-v20-Python-Beispiele der OANDA v20-REST-API-Wrapper-Bibliothek für Python
kabu Station® API - Aktualisierter Python-Wrapper für die PUSH-API
Erhalten Sie Datenbeschriftungen, indem Sie bei der Vorschau von Bildern mit Rails eine Verknüpfung mit der Google Cloud Vision-API herstellen
[BigQuery] Verwendung der BigQuery-API für die Python-Tabellenerstellung-
Laden Sie eine JPG-Datei mit der Google Drive-API in Python hoch
Spezifischer Beispielcode für die Arbeit mit SQLite3 in Python
Liste der Verteilungsseiten für Beispielprogramme für Python-Bücher
[Python] Abrufen von Insight-Daten mithilfe der Google My Business-API