计算机视觉分析(微软)

2018-12-21  本文已影响0人  元苍子

API 文档
https://docs.microsoft.com/zh-cn/azure/cognitive-services/computer-vision/

代码示例

import requests

# If you are using a Jupyter notebook, uncomment the following line.
# %matplotlib inline
import matplotlib.pyplot as plt
import json
from PIL import Image
from io import BytesIO

# Replace <Subscription Key> with your valid subscription key.
subscription_key = "<Subscription Key>"
assert subscription_key

# You must use the same region in your REST call as you used to get your
# subscription keys. For example, if you got your subscription keys from
# westus, replace "westcentralus" in the URI below with "westus".

# Free trial subscription keys are generated in the "westus" region.
# If you use a free trial subscription key, you shouldn't need to change
# this region.
vision_base_url = "https://westcentralus.api.cognitive.microsoft.com/vision/v2.0/"

analyze_url = vision_base_url + "analyze"


def parser_image(image_url):
    # Set image_url to the URL of an image that you want to analyze.
    # image_url = "https://upload.wikimedia.org/wikipedia/commons/thumb/1/12/" + \
    #     "Broadway_and_Times_Square_by_night.jpg/450px-Broadway_and_Times_Square_by_night.jpg"

    headers = {'Ocp-Apim-Subscription-Key': subscription_key }
    params = {'visualFeatures': 'Categories,Description,Color'}
    data = {'url': image_url}
    response = requests.post(analyze_url, headers=headers, params=params, json=data)
    response.raise_for_status()

    # The 'analysis' object contains various fields that describe the image. The most
    # relevant caption for the image is obtained from the 'description' property.
    analysis = response.json()
    # print(json.dumps(response.json()))
    # image_caption = analysis["description"]["captions"][0]["text"].capitalize()

    # Display the image and overlay it with the caption.
    # image = Image.open(BytesIO(requests.get(image_url).content))
    # plt.imshow(image)
    # plt.axis("off")
    # _ = plt.title(image_caption, size="x-large", y=-0.1)
    # plt.show()

    # print("Analysis finish")
    return analysis


if __name__ == '__main__':
    image_url = "http://img4.imgtn.bdimg.com/it/u=4020056921,51126977&fm=200&gp=0.jpg"
    analysis = parser_image(image_url)
    description = analysis.get("description")
    print(description["tags"])
上一篇下一篇

猜你喜欢

热点阅读