[PYTHON] Essayez l'API de visage de Microsoft Cognitive Services

Microsoft Cognitive Services Il semble que vous puissiez l'essayer, je vais donc l'utiliser immédiatement.

-Utiliser Microsoft Cognitive Services

développement de

programme

Je l'ai fait une fonction et l'ai appelé. Pour keyFaceapi, définissez la clé d'abonnement que vous avez vous-même enregistrée.

 -*- encoding:utf-8 -*-
 ----------------------------------------------------------------------
# ■ Réglage initial
 ----------------------------------------------------------------------

# Importation de bibliothèque
 ------------------------------
import requests
import urllib
import json

# Paramètres de l'API Bing Face
 ------------------------------
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'


 ----------------------------------------------------------------------
# ■ Analyse d'image (API Bing Face) pour python 3.x
 ----------------------------------------------------------------------
def useFaceapi(url, key, ret, image):

 # Requête serveur
    # ------------------------------
    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 = []

 # Valeur de retour
    # ------------------------------
    return jsnResponse


 ----------------------------------------------------------------------
# ■ Exécution de l'analyse
 ----------------------------------------------------------------------

# Utiliser l'API Bing Face
 ------------------------------
resFaceapi = useFaceapi(urlFaceapi, keyFaceapi, retFaceapi, imgFaceapi)
print(resFaceapi)

Courir

Mettez votre photo de visage "faceimage.jpg " dans le même dossier que le fichier d'exécution et exécutez-la

python3 pyFaceapi.py

Résultat d'exécution

Ci-dessous, les résultats de l'analyse

[
    {
        '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
        }
    }
]

Vérifiez le résultat

Vérifiez le résultat.

Je l'ai essayé avec la coopération d'autres personnes, mais il semble que l'âge soit jugé jeune dans l'ensemble S'il y a deux personnes ou plus sur l'image, vous pouvez analyser le nombre de personnes.

Avis suivant (python)

Raspberry Pi est amusant! Je me sens comme du travail électronique pour adultes En plus de l'API Face introduite cette fois, diverses API (Google, IBM, etc. autres que Microsoft) sont ouvertes au public, j'aimerais donc les essayer!

Recommended Posts

Essayez l'API de visage de Microsoft Cognitive Services
[Python] Utilisez l'API Face de Microsoft Cognitive Services
Essayez d'utiliser l'API Twitter
Essayez d'utiliser l'API Twitter
Essayez d'utiliser l'API PeeringDB 2.0
Essayez d'utiliser l'API Wunderlist en Python
Essayez d'utiliser l'API Kraken avec Python
Essayez de faire face à la somme partielle
Essayez rapidement l'API Face de Microsoft en Python
Essayez d'accéder à l'API Spotify dans Django.
Essayez d'utiliser l'API BitFlyer Ligntning en Python
Essayez d'accéder à l'API YQL directement depuis Python 3
Essayez d'utiliser l'API DropBox Core avec Python
Essayez l'API C ++ de NNabla
Essayez d'utiliser l'API Twitter rapidement et facilement avec Python
Pour le moment, essayez d'utiliser l'API de dialogue de discussion docomo
J'ai essayé de vérifier l'identification du locuteur par l'API de reconnaissance du locuteur d'Azure Cognitive Services avec Python. # 1
J'ai essayé de vérifier l'identification du locuteur par l'API de reconnaissance du locuteur d'Azure Cognitive Services avec Python. # 2