文档

增加相似图样本

本文介绍了如何使用Python SDK,将指定的相似图图片添加到对应图库。

功能描述

添加相似图样本时,您可以为图片设置标签。如果样本图片在检索时被命中,其标签信息也会被返回。关于参数的详细说明,请参见增加样本图片API文档

您需要使用内容安全的API接入地址,调用本SDK接口。关于API接入地址的信息,请参见接入地址(Endpoint)

前提条件

传入URL示例代码

# coding=utf-8
# 以下示例以 Python 3.x 为例,Python 2.x 类似
import json
import uuid

from aliyunsdkcore import client
from aliyunsdkcore.profile import region_provider
from aliyunsdkgreen.request.v20180509 import AddSimilarityImageRequest

# 注意:此处实例化的client尽可能重复使用,提升检测性能。避免重复建立连接。
# 常见获取环境变量方式:
# 获取RAM用户AccessKey ID:os.environ['ALIBABA_CLOUD_ACCESS_KEY_ID']
# 获取RAM用户AccessKey Secret:os.environ['ALIBABA_CLOUD_ACCESS_KEY_SECRET']
clt = client.AcsClient("建议从环境变量中获取RAM用户AccessKey ID", "建议从环境变量中获取RAM用户AccessKey Secret", "cn-shanghai")
region_provider.modify_point('Green', 'cn-shanghai', 'green.cn-shanghai.aliyuncs.com')
# 每次请求时需要新建Request,请勿复用Request对象。
request = AddSimilarityImageRequest.AddSimilarityImageRequest()
request.set_accept_format('JSON')

task = {
    "dataId": str(uuid.uuid1()),
    "url": "https://example.com/test1.jpg",
    "tag": ["自定义标签1", "自定义标签2", "自定义标签3"]
}
request.set_content(json.dumps({"tasks": [task]}))
response = clt.do_action_with_exception(request)
print(response)

传入本地文件示例代码

# coding=utf-8
# 以下示例以 Python 3.x 为例,Python 2.x 类似
import json
import uuid

from aliyunsdkcore import client
from aliyunsdkcore.profile import region_provider
from aliyunsdkgreen.request.v20180509 import AddSimilarityImageRequest
from aliyunsdkgreenextension.request.extension import ClientUploader

# 注意:此处实例化的client尽可能重复使用,提升检测性能。避免重复建立连接。
# 常见获取环境变量方式:
# 获取RAM用户AccessKey ID:os.environ['ALIBABA_CLOUD_ACCESS_KEY_ID']
# 获取RAM用户AccessKey Secret:os.environ['ALIBABA_CLOUD_ACCESS_KEY_SECRET']
clt = client.AcsClient("建议从环境变量中获取RAM用户AccessKey ID", "建议从环境变量中获取RAM用户AccessKey Secret", "cn-shanghai")
region_provider.modify_point('Green', 'cn-shanghai', 'green.cn-shanghai.aliyuncs.com')
# 每次请求时需要新建Request,请勿复用Request对象。
request = AddSimilarityImageRequest.AddSimilarityImageRequest()
request.set_accept_format('JSON')

clientUploader = ClientUploader.getImageClientUploader(clt)
url = clientUploader.uploadFile("/Users/Documents/tmp.jpg")

task = {
    "dataId": str(uuid.uuid1()),
    "url": url,
    "tag": ["自定义标签1", "自定义标签2", "自定义标签3"]
}
request.set_content(json.dumps({"tasks": [task]}))
response = clt.do_action_with_exception(request)
print(response)
  • 本页导读 (0)
文档反馈