[PYTHON] Probieren Sie die Microsoft Cognitive Services Face-API aus

Microsoft Cognitive Services Es scheint, dass Sie es versuchen können, also werde ich es sofort verwenden.

Entwicklung von

Programm

Ich habe es zu einer Funktion gemacht und es genannt. Legen Sie für keyFaceapi den Abonnementschlüssel fest, den Sie selbst registriert haben.

 -*- encoding:utf-8 -*-
 ----------------------------------------------------------------------
# ■ Grundeinstellung
 ----------------------------------------------------------------------

# Bibliotheksimport
 ------------------------------
import requests
import urllib
import json

# Einstellungen für die Bing Face API
 ------------------------------
imgFaceapi = 'faceimage.jpg'
urlFaceapi = 'https://api.projectoxford.ai/face/v1.0/detect'
keyFaceapi = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
retFaceapi = 'age,gender,headPose,smile,facialHair,glasses,emotion,hair,makeup,occlusion,accessories,blur,exposure,noise'


 ----------------------------------------------------------------------
# ■ Bildanalyse (Bing Face API) für Python 3.x.
 ----------------------------------------------------------------------
def useFaceapi(url, key, ret, image):

 # Serverabfrage
    # ------------------------------
    headers = {
        'Content-Type': 'application/octet-stream',
        'Ocp-Apim-Subscription-Key': key,
        'cache-control': 'no-cache',
    }
    params = {
        'returnFaceId': 'true',
        'returnFaceLandmarks': 'false',
        'returnFaceAttributes': ret,
    }
    data = open(image, 'rb').read()

    try:
        jsnResponse = requests.post(url ,headers=headers, params=params, data=data)
        if(jsnResponse.status_code != 200):
            jsnResponse = []
        else:
            jsnResponse = jsnResponse.json()
    except requests.exceptions.RequestException as e:
        jsnResponse = []

 # Rückgabewert
    # ------------------------------
    return jsnResponse


 ----------------------------------------------------------------------
# ■ Analyseausführung
 ----------------------------------------------------------------------

# Verwenden Sie die Bing Face API
 ------------------------------
resFaceapi = useFaceapi(urlFaceapi, keyFaceapi, retFaceapi, imgFaceapi)
print(resFaceapi)

Lauf

Legen Sie Ihr Gesichtsfoto "faceimage.jpg " in denselben Ordner wie die Ausführungsdatei und führen Sie es aus

python3 pyFaceapi.py

Ausführungsergebnis

Unten die Analyseergebnisse

[
    {
        'faceAttributes': {
            'blur': {
                'value': 0.29,
                'blurLevel':
                'medium'
            },
            'smile': 0.0,
            'headPose': {
                'roll': -2.5,
                'pitch': 0.0,
                'yaw': -15.3
            },
            'hair': {
                'invisible': False,
                'hairColor': [
                    {
                        'color': 'black',
                        'confidence': 1.0
                    },
                    {
                        'color': 'brown',
                        'confidence': 0.98
                    },
                    {
                        'color': 'other',
                        'confidence': 0.17
                    },
                    {
                        'color': 'red',
                        'confidence': 0.12
                    },
                    {
                        'color': 'gray',
                        'confidence': 0.05
                    },
                    {
                        'color': 'blond',
                        'confidence': 0.03
                    }
                ],
                'bald': 0.01
            },
            'age': 31.7,
            'emotion': {
                'anger': 0.002,
                'surprise': 0.0,
                'contempt': 0.049,
                'neutral': 0.853,
                'disgust': 0.002,
                'happiness': 0.0,
                'sadness': 0.094,
                'fear': 0.0
            },
            'gender': 'male',
            'occlusion': {
                'eyeOccluded': False,
                'foreheadOccluded': False,
                'mouthOccluded': False
            },
            'noise': {
                'value': 0.11,
                'noiseLevel': 'low'
            },
            'facialHair': {
                'beard': 0.0,
                'moustache': 0.0,
                'sideburns': 0.1
            },
            'exposure': {
                'value': 0.43,
                'exposureLevel': 'goodExposure'
            },
            'makeup': {
                'lipMakeup': True,
                'eyeMakeup': False
            },
            'glasses': 'NoGlasses',
            'accessories': []
        },
        'faceId': 'dafdf8f1-c910-45ee-aef3-2247b446ea1d',
        'faceRectangle': {
            'height': 98,
            'width': 98,
            'top': 248,
            'left': 380
        }
    }
]

Überprüfen Sie das Ergebnis

Überprüfen Sie das Ergebnis.

--Gender ist männlich (männlich) ist richtig!

Ich habe es in Zusammenarbeit mit anderen Menschen versucht, aber es scheint, dass das Alter insgesamt als jung beurteilt wird Wenn das Bild zwei oder mehr Personen enthält, können Sie die Anzahl der Personen analysieren.

Nächster Hinweis (Python)

Raspberry Pi macht Spaß! Ich fühle mich wie erwachsene elektronische Arbeit (lacht) Zusätzlich zu der diesmal eingeführten Face-API sind verschiedene APIs (Google, IBM usw. außer Microsoft) für die Öffentlichkeit zugänglich, daher würde ich sie gerne ausprobieren!

Recommended Posts

Probieren Sie die Microsoft Cognitive Services Face-API aus
[Python] Verwenden Sie die Face-API von Microsoft Cognitive Services
Versuchen Sie es mit der Twitter-API
Versuchen Sie es mit der Twitter-API
Versuchen Sie es mit der PeeringDB 2.0-API
Versuchen Sie es mit der Wunderlist-API in Python
Versuchen Sie, die Kraken-API mit Python zu verwenden
Versuchen Sie, sich der Teilsumme zu stellen
Probieren Sie schnell die Microsoft Face API in Python aus
Versuchen Sie, die Spotify-API in Django zu aktivieren.
Versuchen Sie es mit der BitFlyer Ligntning API in Python
Versuchen Sie, direkt von Python 3 aus auf die YQL-API zuzugreifen
Versuchen Sie, die DropBox Core-API mit Python zu verwenden
Probieren Sie die C ++ - API von NNabla aus
Versuchen Sie, mit Python schnell und einfach auf die Twitter-API zuzugreifen
Versuchen Sie vorerst, die Docomo-Chat-Dialog-API zu verwenden
Ich habe versucht, die Sprecheridentifikation mithilfe der Sprechererkennungs-API von Azure Cognitive Services mit Python zu überprüfen. # 1
Ich habe versucht, die Sprecheridentifikation mithilfe der Sprechererkennungs-API von Azure Cognitive Services in Python zu überprüfen. # 2