云服务器内容精选

  • SDK列表及指导文档(通用版) API Explorer 能根据需要动态生成SDK代码功能,降低您使用SDK的难度,推荐使用。 SDK中心 https://sdkcenter.developer.huaweicloud.com/zh-cn提供服务SDK依赖引入的方式。 表1 提供了各个云服务支持的SDK列表,您可以在GitHub仓库查看SDK更新历史、获取安装包以及查看指导文档进行配置。 表1 SDK列表 编程语言 github地址 指导文档 视频指导 JAVA huaweicloud-sdk-java-v3 Java SDK使用指导 Java SDK视频指导 PYTHON huaweicloud-sdk-python-v3 Python SDK使用指导 Python SDK视频指导 .NET huaweicloud-sdk-net-v3 .Net SDK使用指导 - GO huaweicloud-sdk-go-v3 Go SDK使用指导 -
  • 主体识别示例 本章节对主体识别AK/SK方式使用SDK进行示例说明。 主体识别示例代码只需将AK/SK信息替换为实际AK/SK,代码中可以使用初始化ImageMainObjectDetectionReq中的Image或Url配置图像信息(image和url参数二选一),示例中以url为例,配置完成后运行即可。 endpoint是华为云各服务应用区域和各服务的终端节点,详情请查看 地区和终端节点 。 主体识别调用示例代码如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 package main import ( "fmt" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" image "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/image/v2" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/image/v2/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/image/v2/region" ) func main() { // 认证用的ak和sk硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件或者环境变量中密文存放,使用时解密,确保安全; // 本示例以ak和sk保存在环境变量中来实现身份验证为例,运行本示例前请先在本地环境中设置环境变量HUAWEICLOUD_SDK_AK和HUAWEICLOUD_SDK_SK。 ak := os.Getenv("HUAWEICLOUD_SDK_AK") sk := os.Getenv("HUAWEICLOUD_SDK_SK") auth := basic.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). Build() client := image.NewImageClient( image.ImageClientBuilder(). WithRegion(region.ValueOf("cn-north-4")). //此处替换为您开通服务的区域 WithCredential(auth). Build()) request := &model.RunImageMainObjectDetectionRequest{} thresholdImageMainObjectDetectionReq:= float32(30) urlImageMainObjectDetectionReq:= "https://XXX.jpg" //此处替换为公网可以访问的图片地址 request.Body = &model.ImageMainObjectDetectionReq{ Threshold: &thresholdImageMainObjectDetectionReq, Url: &urlImageMainObjectDetectionReq, } response, err := client.RunImageMainObjectDetection(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } } 识别结果输出到控制台表示执行成功。相关参数说明请参考主体识别API。 1 RunImageMainObjectDetectionResponse {"result":[{"label":"bounding_box","location":{"height":327.77,"top_left_x":3.7,"top_left_y":1.72,"width":463.03},"confidence":"95.73"},{"label":"main_object_box","location":{"height":328.35,"top_left_x":3.22,"top_left_y":1.5,"width":456.63},"confidence":"88.35"}]} 父主题: 使用SDK(GO)
  • 图像标签示例 本章节对图像标签AK/SK方式使用SDK进行示例说明。 图像标签示例代码只需将AK/SK信息替换为实际AK/SK,代码中可以使用初始化ImageTaggingReq中的url或image配置图像信息(image和url参数二选一),示例中以url为例,配置完成后运行即可。 endpoint是华为云各服务应用区域和各服务的终端节点,详情请查看 地区和终端节点 。 图像标签调用示例代码如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 # coding: utf-8 from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdkcore.http.http_config import HttpConfig from huaweicloudsdkimage.v2 import ImageClient,RunImageTaggingRequest,ImageTaggingReq from huaweicloudsdkimage.v2.region.image_region import ImageRegion if __name__ == "__main__": # 认证用的ak和sk硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件或者环境变量中密文存放,使用时解密,确保安全; # 本示例以ak和sk保存在环境变量中来实现身份验证为例,运行本示例前请先在本地环境中设置环境变量HUAWEICLOUD_SDK_AK和HUAWEICLOUD_SDK_SK。 ak = os.getenv("HUAWEICLOUD_SDK_AK") sk = os.getenv("HUAWEICLOUD_SDK_SK") credentials = BasicCredentials(ak, sk) client = ImageClient.new_builder() \ .with_credentials(credentials) \ .with_region(ImageRegion.value_of("cn-north-1")) \ //此处替换为您开通服务的区域 .build() try: request = RunImageTaggingRequest() request.body = ImageTaggingReq( limit=50, threshold=95, language="zh", url="https://XXX.jpg" //此处替换为公网可以访问的图片地址 ) response = client.run_image_tagging(request) print(response.status_code) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg) 执行示例代码,控制台返回200即表示程序执行成功。相关参数说明请参考图像标签API。 1 2 3 200 {"result": {"tags": [{"confidence": "98.00", "type": "树", "tag": "树", "i18n_tag": {"zh": "树", "en": "Tree"}, "i18n_type": {"zh": "树", "en": "Tree"}, "instances": []}]}} Process finished with exit code 0 父主题: 使用SDK(Python)
  • 图像标签示例 本章节对图像标签AK/SK方式使用SDK进行示例说明。 图像标签示例代码只需将AK/SK信息替换为实际AK/SK,代码中可以使用初始化ImageTaggingReq中的Image或Url配置图像信息(image和url参数二选一),示例中以url为例,配置完成后运行即可。 endpoint是华为云各服务应用区域和各服务的终端节点,详情请查看 地区和终端节点 。 图像标签调用示例代码如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 package main import ( "fmt" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" image "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/image/v2" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/image/v2/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/image/v2/region" ) func main() { // 认证用的ak和sk硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件或者环境变量中密文存放,使用时解密,确保安全; // 本示例以ak和sk保存在环境变量中来实现身份验证为例,运行本示例前请先在本地环境中设置环境变量HUAWEICLOUD_SDK_AK和HUAWEICLOUD_SDK_SK。 ak := os.Getenv("HUAWEICLOUD_SDK_AK") sk := os.Getenv("HUAWEICLOUD_SDK_SK") auth := basic.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). Build() client := image.NewImageClient( image.ImageClientBuilder(). WithRegion(region.ValueOf("cn-north-1")). //此处替换为您开通服务的区域 WithCredential(auth). Build()) request := &model.RunImageTaggingRequest{} limitImageTaggingReq:= int32(50) thresholdImageTaggingReq:= float32(95) languageImageTaggingReq:= "zh" urlImageTaggingReq:= "https://XXX.jpg" //此处替换为公网可以访问的图片地址 request.Body = &model.ImageTaggingReq{ Limit: &limitImageTaggingReq, Threshold: &thresholdImageTaggingReq, Language: &languageImageTaggingReq, Url: &urlImageTaggingReq, } response, err := client.RunImageTagging(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) }} 识别结果输出到控制台表示执行成功。相关参数说明请参考图像标签API。 1 2 RunImageTaggingResponse {"result": {"tags": [{"confidence": "98.01", "type": "树", "tag": "树", "i18n_tag": {"zh": "树", "en": "Tree"}, "i18n_type": {"zh": "树", "en": "Tree"}, "instances": []}]}} Process exiting with code: 0 父主题: 使用SDK(GO)
  • 名人识别示例 本章节对名人识别AK/SK方式使用SDK进行示例说明。 名人识别示例代码只需将AK/SK信息替换为实际AK/SK,代码中可以使用CelebrityRecognitionReq中的url或image方法配置图像信息(image和url参数二选一),示例中以url为例,配置完成后运行即可。 endpoint是华为云各服务应用区域和各服务的终端节点,详情请查看 地区和终端节点 。 名人识别调用示例代码如下: using System; using System.Collections.Generic; using HuaweiCloud.SDK.Core; using HuaweiCloud.SDK.Core.Auth; using HuaweiCloud.SDK.Image; using HuaweiCloud.SDK.Image.V2; using HuaweiCloud.SDK.Image.V2.Model; using Newtonsoft.Json; namespace RunCelebrityRecognitionSolution { class Program { static void Main(string[] args){ //认证用的ak和sk硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件或者环境变量中密文存放,使用时解密,确保安全 //本示例以ak和sk保存在环境变量中来实现身份验证为例,运行本示例前请先在本地环境中设置环境变量HUAWEICLOUD_SDK_AK和HUAWEICLOUD_SDK_SK string accessKey= Environment.GetEnvironmentVariable("HUAWEICLOUD_SDK_AK", EnvironmentVariableTarget.Machine); string secretKey= Environment.GetEnvironmentVariable("HUAWEICLOUD_SDK_SK", EnvironmentVariableTarget.Machine); var config = HttpConfig.GetDefaultConfig(); config.IgnoreSslVerification = true; var auth = new BasicCredentials(ak, sk); var client = ImageClient.NewBuilder() .WithCredential(auth) .WithRegion(ImageRegion.ValueOf("cn-north-1")) //此处替换为您开通服务的区域 .WithHttpConfig(config) .Build(); var req = new RunCelebrityRecognitionRequest { }; req.Body = new CelebrityRecognitionReq() { Threshold = 0.48, Url = "https://XXX.jpg" //此处替换为公网可以访问的图片地址 }; try { var resp = client.RunCelebrityRecognition(req); var respStatusCode = resp.HttpStatusCode; Console.WriteLine(respStatusCode); Console.WriteLine(JsonConvert.DeserializeObject(resp.HttpBody)); } catch (RequestTimeoutException requestTimeoutException) { Console.WriteLine(requestTimeoutException.ErrorMessage); } catch (ServiceResponseException clientRequestException) { Console.WriteLine(clientRequestException.HttpStatusCode); Console.WriteLine(clientRequestException.ErrorCode); Console.WriteLine(clientRequestException.ErrorMsg); } catch (ConnectionException connectionException) { Console.WriteLine(connectionException.ErrorMessage); } } } } 执行示例代码文件,控制台输出名人识别结果即表示程序执行成功。相关参数说明请参考名人识别API。 1 2 3 4 5 6 7 8 9 10 11 12 13 200 { 'result': [{ 'confidence': 0.9990678852332598, 'face_detail': { 'h': 510, 'w': 357, 'x': 260, 'y': 201 }, 'label': '迈克尔·杰克逊' }] } 父主题: 使用SDK(.NET)
  • 图像标签示例 本章节对图像标签AK/SK方式使用SDK进行示例说明。 图像标签示例代码只需将AK/SK信息替换为实际AK/SK,代码中可以使用初始化ImageTaggingReq中的url或image配置图像信息(image和url参数二选一),示例中以url为例,配置完成后运行即可。 endpoint是华为云各服务应用区域和各服务的终端节点,详情请查看 地区和终端节点 。 图像标签调用示例代码如下: using System; using System.Collections.Generic; using HuaweiCloud.SDK.Core; using HuaweiCloud.SDK.Core.Auth; using HuaweiCloud.SDK.Image; using HuaweiCloud.SDK.Image.V2; using HuaweiCloud.SDK.Image.V2.Model; using Newtonsoft.Json; namespace RunImageTaggingSolution { class Program { static void Main(string[] args) { //认证用的ak和sk硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件或者环境变量中密文存放,使用时解密,确保安全 //本示例以ak和sk保存在环境变量中来实现身份验证为例,运行本示例前请先在本地环境中设置环境变量HUAWEICLOUD_SDK_AK和HUAWEICLOUD_SDK_SK string accessKey= Environment.GetEnvironmentVariable("HUAWEICLOUD_SDK_AK", EnvironmentVariableTarget.Machine); string secretKey= Environment.GetEnvironmentVariable("HUAWEICLOUD_SDK_SK", EnvironmentVariableTarget.Machine); var config = HttpConfig.GetDefaultConfig(); config.IgnoreSslVerification = true; var auth = new BasicCredentials(ak, sk); var client = ImageClient.NewBuilder() .WithCredential(auth) .WithRegion(ImageRegion.ValueOf("cn-north-1")) //此处替换为您开通服务的区域 .WithHttpConfig(config) .Build(); var req = new RunImageTaggingRequest { }; req.Body = new ImageTaggingReq() { Limit = 50, Threshold = 95, Language = "zh", Url = "https://XXX.jpg" //此处替换为公网可以访问的图片地址 }; try { var resp = client.RunImageTagging(req); var respStatusCode = resp.HttpStatusCode; Console.WriteLine(respStatusCode); Console.WriteLine(JsonConvert.DeserializeObject(resp.HttpBody)); } catch (RequestTimeoutException requestTimeoutException) { Console.WriteLine(requestTimeoutException.ErrorMessage); } catch (ServiceResponseException clientRequestException) { Console.WriteLine(clientRequestException.HttpStatusCode); Console.WriteLine(clientRequestException.ErrorCode); Console.WriteLine(clientRequestException.ErrorMsg); } catch (ConnectionException connectionException) { Console.WriteLine(connectionException.ErrorMessage); } } } } 执行示例代码,控制台返回200即表示程序执行成功。相关参数说明请参考图像标签API。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 200 { "result": { "tags": [ { "confidence": "98.01", "type": "树", "tag": "树", "i18n_tag": { "zh": "树", "en": "Tree" }, "i18n_type": { "zh": "树", "en": "Tree" }, "instances": [ ] } ] } } 父主题: 使用SDK(.NET)
  • 主体识别示例 本章节对主体识别AK/SK方式使用SDK进行示例说明。 主体识别示例代码只需将AK/SK信息替换为实际AK/SK,代码中可以使用初始化ImageMainObjectDetectionReq中的url或image配置图像信息(image和url参数二选一),示例中以url为例,配置完成后运行即可。 endpoint是华为云各服务应用区域和各服务的终端节点,详情请查看 地区和终端节点 。 主体识别调用示例代码如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 # coding: utf-8 from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdkimage.v2.region.image_region import ImageRegion from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdkimage.v2 import * if __name__ == "__main__": # 认证用的ak和sk硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件或者环境变量中密文存放,使用时解密,确保安全; # 本示例以ak和sk保存在环境变量中来实现身份验证为例,运行本示例前请先在本地环境中设置环境变量HUAWEICLOUD_SDK_AK和HUAWEICLOUD_SDK_SK。 ak = os.getenv("HUAWEICLOUD_SDK_AK") sk = os.getenv("HUAWEICLOUD_SDK_SK") credentials = BasicCredentials(ak, sk) \ client = ImageClient.new_builder() \ .with_credentials(credentials) \ .with_region(ImageRegion.value_of("cn-north-4")) \ //此处替换为您开通服务的区域 .build() try: request = RunImageMainObjectDetectionRequest() request.body = ImageMainObjectDetectionReq( threshold=30, url="https://XXX.jpg" //替换为公网可以访问的图片地址 ) response = client.run_image_main_object_detection(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg) 执行示例代码文件,控制台输出主体识别结果即表示程序执行成功。相关参数说明请参考主体识别API。 1 2 3 4 5 6 7 8 { "result": [{ "label": "bounding_box", "location": {"height": 327.77, "top_left_x": 3.7, "top_left_y": 1.72, "width": 463.03}, "confidence": "95.73"}, {"label": "main_object_box", "location": {"height": 328.35, "top_left_x": 3.22, "top_left_y": 1.5, "width": 456.63}, "confidence": "88.35"}] } 父主题: 使用SDK(Python)
  • 名人识别示例 本章节对名人识别AK/SK方式使用SDK进行示例说明。 名人识别示例代码只需将AK/SK信息替换为实际AK/SK,代码中可以使用初始化CelebrityRecognitionReq中的url或image配置图像信息(image和url参数二选一),示例中以url为例,配置完成后运行即可。 endpoint是华为云各服务应用区域和各服务的终端节点,详情请查看 地区和终端节点 。 名人识别调用示例代码如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 # coding: utf-8 from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdkcore.http.http_config import HttpConfig from huaweicloudsdkimage.v2 import ImageClient,RunCelebrityRecognitionRequest,CelebrityRecognitionReq from huaweicloudsdkimage.v2.region.image_region import ImageRegion if __name__ == "__main__": # 认证用的ak和sk硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件或者环境变量中密文存放,使用时解密,确保安全; # 本示例以ak和sk保存在环境变量中来实现身份验证为例,运行本示例前请先在本地环境中设置环境变量HUAWEICLOUD_SDK_AK和HUAWEICLOUD_SDK_SK。 ak = os.getenv("HUAWEICLOUD_SDK_AK") sk = os.getenv("HUAWEICLOUD_SDK_SK") credentials = BasicCredentials(ak, sk) client = ImageClient.new_builder() \ .with_credentials(credentials) \ .with_region(ImageRegion.value_of("cn-north-1")) \ //此处替换为您开通服务的区域 .build() try: request = RunCelebrityRecognitionRequest() request.body = CelebrityRecognitionReq( threshold=0, url="https://XXX.jpg" //此处替换为公网可以访问的图片地址 ) response = client.run_celebrity_recognition(request) print(response.status_code) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg) 执行示例代码文件,控制台输出名人识别结果即表示程序执行成功。相关参数说明请参考名人识别API。 1 2 3 4 200 {'result': [{'confidence': 0.9990678852332598, 'face_detail': {'h': 510, 'w': 357, 'x': 260, 'y': 201}, 'label': '迈克尔·杰克逊'}]} 父主题: 使用SDK(Python)
  • 主体识别示例 本章节对主体识别AK/SK方式使用SDK进行示例说明。 主体识别示例代码只需将AK/SK信息替换为实际AK/SK,代码中可以使用ImageMainObjectDetectionReq中的url或image方法配置图像信息(image和url参数二选一),示例中以url为例,配置完成后运行即可。 endpoint是华为云各服务应用区域和各服务的终端节点,详情请查看 地区和终端节点 。 主体识别调用示例代码如下: using System; using System.Collections.Generic; using HuaweiCloud.SDK.Core; using HuaweiCloud.SDK.Core.Auth; using HuaweiCloud.SDK.Image; using HuaweiCloud.SDK.Image.V2; using HuaweiCloud.SDK.Image.V2.Model; namespace RunImageMainObjectDetectionSolution { class Program { static void Main(string[] args) { //认证用的ak和sk硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件或者环境变量中密文存放,使用时解密,确保安全 //本示例以ak和sk保存在环境变量中来实现身份验证为例,运行本示例前请先在本地环境中设置环境变量HUAWEICLOUD_SDK_AK和HUAWEICLOUD_SDK_SK string accessKey= Environment.GetEnvironmentVariable("HUAWEICLOUD_SDK_AK", EnvironmentVariableTarget.Machine); string secretKey= Environment.GetEnvironmentVariable("HUAWEICLOUD_SDK_SK", EnvironmentVariableTarget.Machine); var config = HttpConfig.GetDefaultConfig(); config.IgnoreSslVerification = true; var auth = new BasicCredentials(ak, sk); var client = ImageClient.NewBuilder() .WithCredential(auth) .WithRegion(ImageRegion.ValueOf("cn-north-4")) //此处替换为您开通服务的区域 .WithHttpConfig(config) .Build(); var req = new RunImageMainObjectDetectionRequest { }; req.Body = new ImageMainObjectDetectionReq() { Threshold = 30, Url = "https://XXX.jpg" //替换为公网可以访问的图片地址 }; try { var resp = client.RunImageMainObjectDetection(req); var respStatusCode = resp.HttpStatusCode; Console.WriteLine(respStatusCode); } catch (RequestTimeoutException requestTimeoutException) { Console.WriteLine(requestTimeoutException.ErrorMessage); } catch (ServiceResponseException clientRequestException) { Console.WriteLine(clientRequestException.HttpStatusCode); Console.WriteLine(clientRequestException.ErrorCode); Console.WriteLine(clientRequestException.ErrorMsg); } catch (ConnectionException connectionException) { Console.WriteLine(connectionException.ErrorMessage); } } } } 执行示例代码文件,控制台输出主体识别结果即表示程序执行成功。相关参数说明请参考主体识别API。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 { "result": [{ "confidence": "95.73", "label": "bounding_box", "location": { "height": 327.77, "top_left_x": 3.7, "top_left_y": 1.72, "width": 463.03}}, { "confidence": "88.35", "label": "main_object_box", "location": { "height": 328.35, "top_left_x": 3.22, "top_left_y": 1.5, "width": 456.63} }] } 父主题: 使用SDK(.NET)
  • 名人识别示例 本章节对名人识别AK/SK方式使用SDK进行示例说明。 名人识别示例代码只需将AK/SK信息替换为实际AK/SK,代码中可以使用初始化CelebrityRecognitionReq中的Image或Url配置图像信息(image和url参数二选一),示例中以url为例,配置完成后运行即可。 endpoint是华为云各服务应用区域和各服务的终端节点,详情请查看 地区和终端节点 。 名人识别调用示例代码如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 package main import ( "fmt" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" image "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/image/v2" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/image/v2/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/image/v2/region" ) func main() { // 认证用的ak和sk硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件或者环境变量中密文存放,使用时解密,确保安全; // 本示例以ak和sk保存在环境变量中来实现身份验证为例,运行本示例前请先在本地环境中设置环境变量HUAWEICLOUD_SDK_AK和HUAWEICLOUD_SDK_SK。 ak := os.Getenv("HUAWEICLOUD_SDK_AK") sk := os.Getenv("HUAWEICLOUD_SDK_SK") auth := basic.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). Build() client := image.NewImageClient( image.ImageClientBuilder(). WithRegion(region.ValueOf("cn-north-1")). //此处替换为您开通服务的区域 WithCredential(auth). Build()) request := &model.RunCelebrityRecognitionRequest{} thresholdCelebrityRecognitionReq:= float32(0.48) urlCelebrityRecognitionReq:= "https://XXX.jpg" //此处替换为公网可以访问的图片地址 request.Body = &model.CelebrityRecognitionReq{ Threshold: &thresholdCelebrityRecognitionReq, Url: &urlCelebrityRecognitionReq, } response, err := client.RunCelebrityRecognition(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } } 识别结果输出到控制台表示执行成功。相关参数说明请参考名人识别API。 1 2 RunCelebrityRecognitionResponse {"result":[{"confidence":0.9990679,"face_detail":{"h":510,"w":357,"x":260,"y":201},"label":"迈克尔·杰克逊"}]} Process exiting with code: 0 父主题: 使用SDK(GO)
  • 响应参数 状态码: 200 表4 result 参数 参数类型 描述 result Array of ImageMainObjectDetectionInstance objects 主体列表集合。 表5 ImageMainObjectDetectionInstance 参数 参数类型 描述 label String 主体的类别,现阶段分为:main_object_box(主要主体)和bounding_box(边缘主体)。 location location object 目标检测框位置信息,包括4个值: width:检测框区域宽度 height:检测框区域高度 top_left_x:检测框左上角到垂直轴距离 top_left_y:检测框左上角到水平轴距离 confidence String 主体框的置信度。将Float型置信度转为String类型返回,Float取值范围(0~100)。 状态码: 400 表6 响应Body参数 参数 参数类型 描述 error_code String 调用失败时的错误码,具体请参见错误码。 调用成功时无此字段。 error_msg String 调用失败时的错误信息。 调用成功时无此字段。
  • 响应示例 状态码: 200 成功响应结果 { "result" : [ { "label" : "bounding_box", "location" : { "height" : 133.32, "top_left_x" : 53.13, "top_left_y" : 254.21, "width" : 117.58 }, "confidence" : "92.38" }, { "label" : "main_object_box", "location" : { "height" : 261.32, "top_left_x" : 256.13, "top_left_y" : 85.21, "width" : 139.58 }, "confidence" : "66.38" } ] } 状态码: 400 失败响应结果 { "error_code" : "AIS.0005", "error_msg" : "The service does not exist." }
  • 请求示例 “endpoint”即调用API的请求地址,不同服务不同区域的“endpoint”不同,具体请参见终端节点。 例如,服务部署在“华北-北京四”区域的“endpoint”为“image.cn-north-4.myhuaweicloud.com”,请求URL为“https://image.cn-north-4.myhuaweicloud.com/v2/{project_id}}/image/main-object-detection”,“project_id”为项目ID,获取方法请参见获取项目ID和名称。 方式一:使用图片的BASE64编码,判断图片主体并返回主体坐标,置信度的阈值为30。 POST https://{endpoint}/v3/{project_id}image/main-object-detection { "image" : "/9j/4AAQSkZJRgABAgEASABIAAD/4RFZRXhpZgAATU0AKgAAAAgABwESAAMAAAABAAEAAAEaAAUAAAABAAAAYgEbAA...", "url" : "", "threshold" : 30 } 方式二:使用图片URL,判断图片主体并返回主体坐标,置信度的阈值为30。 POST https://{endpoint}/v3/{project_id}image/main-object-detection { "image" : "", "url" : "https://BucketName.obs.myhuaweicloud.com/ObjectName", "threshold" : 30 }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 用于获取操作API的权限。获取方法请参见 获取Token 接口,响应消息头中X-Subject-Token的值即为Token。 表3 请求Body参数 参数 是否必选 参数类型 描述 image 否 String 与url二选一 图像数据,base64编码,要求base64编码后大小不超过10M,最短边至少1px,最长边最大10000px,支持JPEG/PNG/BMP/WEBP格式。 url 否 String 与image二选一 图片的URL路径,目前支持: 公网HTTP/HTTPS URL 华为云OBS提供的URL,使用OBS数据需要进行授权。包括对服务授权、临时授权、匿名公开授权。详情参见配置OBS服务的访问权限。 说明: 接口响应时间依赖于图片的下载时间,如果图片下载时间过长,会返回接口调用失败。 请保证被检测图片所在的存储服务稳定可靠,建议您使用华为云OBS存储。 threshold 否 Float 置信度的阈值(0~100),低于此置信数的检测结果,将不会返回。 默认值:30,最小值:0,最大值:100。
  • 步骤五:调用服务 新建请求,请求方式为修改"POST",按要求填写URL。 例如服务部署在“华北-北京四”请求URL为https://image.cn-north-4.myhuaweicloud.com/v2.0/image/tagging 选中“Headers”配置项,复制Token值到“X-Auth-Token”。 登录我的凭证,查询隶属于“华北-北京四”的项目ID,替换URI中的{project_id} 单击“Body”配置项,将获取的图片的base64编码填写到“image”参数中。关于body体中其他参数说明,请参考图像标签API。 图2 修改参数 单击右上角“Send”按钮发送请求,查看识别结果。