[PYTHON] Als ich versuchte, die Computer Vision API von Microsoft zu verwenden, erkannte ich das Galapagos-Zeichen "Stop".

Neueste Bilderkennungsfähigkeit - MSs neueste Forschungsergebnisse Die Computer Vision API wurde in Python verwendet

Wenn Sie den obigen Artikel lesen, werden Sie die Details verstehen.

#!/usr/bin/python
# -*- coding: utf-8 -*-
#
#Demo der Microsoft Computer Vision API
# Python 2 /3 Wird in beiden Systemen betrieben
#
#
# Usage: python ms_cv_api_exp.py (image_url)
#
#Referenz
# http://qiita.com/kosfuji/items/621cbedfad0eb68b2f5d
# https://dev.projectoxford.ai/docs/services/56f91f2d778daf23d8ec6739/operations/56f91f2e778daf14a499e1fa
#

from __future__ import print_function

import sys
PY3 = sys.version_info[0] == 3

if PY3:
    from urllib.parse import urlencode
    from http.client import HTTPSConnection
else:
    from urllib import urlencode
    from httplib import HTTPSConnection

def main(image_url):
    headers = {
        'Content-Type': 'application/json',
        'Ocp-Apim-Subscription-Key': '(Geben Sie hier den Abonnementschlüssel ein)',
    }
    params = urlencode({'visualFeatures': 'Description'})
    try:
        conn = HTTPSConnection('api.projectoxford.ai')
        conn.request("POST", "/vision/v1.0/analyze?%s" % params,
                     "{'url': '%s'}" % image_url,
                     headers)
        response = conn.getresponse()
        data = response.read()
        print(data)
        conn.close()
    except Exception as e:
        print("[Errno {0}] {1}".format(e.errno, e.strerror))

if __name__ == '__main__':
    if len(sys.argv) < 2:
        print("Usage: {} url".format(sys.argv[0]))
    main(sys.argv[1])

Wenn Sie einen Abonnementschlüssel haben, können Sie mit den oben genannten Tools eine Menge URL-Analysen durchführen.

Dies ist Monets "Impression / Sunrise"

Impression_Sunrise.png

Ergebnis ist ……

{
  "description": {
    "tags": [
      "building",
      "water",
      "street",
      "red",
      "light",
      "sunset",
      "painting",
      "large",
      "city",
      "white",
      "bus",
      "standing",
      "rain",
      "walking",
      "traffic",
      "colorful",
      "man",
      "blurry",
      "riding",
      "parked",
      "people",
      "river",
      "night"
    ],
    "captions": [
      {
        "text": "a painting of a river",
        "confidence": 0.6266185233006358
      }
    ]
  },
  "requestId": "f4ead5ca-0c3c-4e41-97ef-df5d8e2e566d",
  "metadata": {
    "width": 1000,
    "height": 776,
    "format": "Png"
  }
}

Ich habe es sogar mit einem großartigen impressionistischen Gemälde beurteilt

Dies ist auch Monets "Capucine Boulevard"

The_Boulevard_des_Capucines.jpg

Ergebnis ist ……

{
  "description": {
    "tags": [
      "outdoor",
      "tree",
      "snow",
      "mountain",
      "covered",
      "group",
      "standing",
      "large",
      "water",
      "riding",
      "field"
    ],
    "captions": [
      {
        "text": "a view of a mountain",
        "confidence": 0.41440203405943216
      }
    ]
  },
  "requestId": "a41ea71a-6e1d-416f-b34e-aa19b98c03e0",
  "metadata": {
    "width": 736,
    "height": 1000,
    "format": "Jpeg"
  }
}

Eh, Berg ...? (´ ・ ω ・ `)

Es ist eine etwas chaotische API, aber ich persönlich fand es unten "großartig"

"Stoppschild Tomare.png

Ergebnis ist ……

{
  "description": {
    "tags": [
      "building",
      "sign",
      "outdoor",
      "red",
      "stop",
      "street",
      "pole",
      "front",
      "traffic",
      "sitting",
      "black",
      "city",
      "white",
      "close",
      "side",
      "large",
      "blue",
      "standing",
      "train"
    ],
    "captions": [
      {
        "text": "a red stop sign sitting on the side of a building",
        "confidence": 0.8758533311779192
      }
    ]
  },
  "requestId": "2b687702-9442-45cd-bd5c-7de6be37440d",
  "metadata": {
    "width": 1000,
    "height": 1334,
    "format": "Png"
  }
}

Ich treffe ~

Wie ich aus Gesprächen mit anderen Menschen gelernt habe, ist das japanische Stoppschild eine Art Galapagos.

Der internationale Standard ist ein achteckiges Verkehrszeichen "Stop (Pause)". Warum wurde es in Japan zu einem umgekehrten Dreieck?

Um "ein rotes Stoppschild" mit dieser Zahl zu beurteilen, ist es daher notwendig, solche Japaner in die Trainingsdaten aufzunehmen. Es scheint, dass es richtig in den Trainingsdaten ist.

Diesmal war es kostenlos, weil es eine Vorschau war. Laut Beschreibung "5.000 Transaktionen pro Monat, 20 pro Minute". Es ist schwierig, es bei der Arbeit ernsthaft zu verwenden, aber es reicht aus, um auf diesem Niveau zu spielen.

Die Preisgeschichte ist hier. https://www.microsoft.com/cognitive-services/en-us/pricing

Recommended Posts

Als ich versuchte, die Computer Vision API von Microsoft zu verwenden, erkannte ich das Galapagos-Zeichen "Stop".
Ich habe versucht, die Google Cloud Vision-API zu verwenden
Ich habe versucht, die checkio-API zu verwenden
Ich habe versucht, die BigQuery-Speicher-API zu verwenden
Ich habe versucht, die API von Sakenowa Data Project zu verwenden
[Python] Ich habe versucht, Daten mit der API von Wikipedia zu sammeln
Ich habe die Google Cloud Vision-API zum ersten Mal ausprobiert
[Für Anfänger] Ich habe versucht, die Tensorflow-Objekterkennungs-API zu verwenden
Ich habe die Naro-Roman-API 2 ausprobiert
Ich habe die neuartige API von Naruro ausprobiert
Ich habe versucht, die COTOHA-API zu verwenden (es gibt auch Code auf GitHub).
Ich habe versucht, YOUTUBE Data API V3 zu verwenden
Ich habe versucht, die UnityCloudBuild-API von Python zu verwenden
Ich habe versucht, verschiedene Sätze mit der automatischen Zusammenfassungs-API "summpy" zusammenzufassen.
Bei der Einführung der Google Cloud Vision-API in Schienen habe ich die Dokumentation befolgt.
Ich habe versucht, die COTOHA-API zu berühren
Ich habe in der Bibliothek nach der Verwendung der Gracenote-API gesucht
Ich habe versucht, Remote API mit GAE / J zu verwenden
Ich habe versucht, die Qiita-API von Anfang an zu aktivieren
vprof - Ich habe versucht, den Profiler für Python zu verwenden
Ich habe "License OCR" mit der Google Vision API ausprobiert
Ich habe versucht, PyCaret mit der schnellsten Geschwindigkeit zu verwenden
Ich habe versucht, das Datetime-Modul von Python zu verwenden
Ich habe "Receipt OCR" mit der Google Vision API ausprobiert
Ich habe versucht, den Bildfilter von OpenCV zu verwenden
Ich habe versucht, die funktionale Programmierbibliothek toolz zu verwenden
Eine Geschichte, die praktisch war, als ich versuchte, das Python-IP-Adressmodul zu verwenden
Ich habe versucht, das Update von "Werde ein Romanautor" mit "IFTTT" und "Werde ein Romanautor API" zu benachrichtigen.
Ich habe versucht, die Syntax zu bewerten, die mit der COTOHA-API zu humorvoll und humorvoll war.
Ich habe versucht, mit der Cloud Vision API von GCP automatisch erotische Bilder von Twitter zu sammeln
Grundeinstellungen bei Verwendung der foursquare-API mit Python
[Linux] Ich habe versucht, die genetische Statistiksoftware PLINK zu verwenden
Ich habe versucht, EKG-Daten mit der K-Shape-Methode zu gruppieren
Ich habe versucht, die Sündenfunktion mit Chainer zu approximieren
Ich habe APN (Remote-Benachrichtigung) mithilfe der Parse.com-REST-API ausprobiert
Ich habe versucht, die Sprache mit CNN + Melspectogram zu identifizieren
Ich habe versucht, das Wissensdiagramm mit OpenKE zu ergänzen
Ich habe versucht, die API mit dem Python-Client von echonest zu erreichen
Ich habe versucht, das Bild mithilfe von maschinellem Lernen zu komprimieren
[Für diejenigen, die TPU verwenden möchten] Ich habe versucht, die Tensorflow Object Detection API 2 zu verwenden
Ich habe versucht, die Erstellung einer praktischen Umgebung mithilfe der SoftLayer-API der IBM Cloud zu automatisieren
Ich habe versucht, parametrisiert zu verwenden
Ich habe versucht, Argparse zu verwenden
Ich habe versucht, Mimesis zu verwenden
Ich habe versucht, anytree zu verwenden
Ich habe versucht, aiomysql zu verwenden
Ich habe versucht, Summpy zu verwenden
Ich habe versucht, Coturn zu verwenden
Ich habe versucht, Pipenv zu verwenden
Ich habe versucht, Matplotlib zu verwenden
Ich habe versucht, "Anvil" zu verwenden.
Ich habe versucht, Hubot zu verwenden
Ich habe versucht, ESPCN zu verwenden
Ich habe versucht, openpyxl zu verwenden
Ich habe versucht, Ipython zu verwenden
Ich habe versucht, PyCaret zu verwenden
Ich habe versucht, Cron zu verwenden