This document provides sample code in various programming languages to demonstrate how to use the Image Sharpness Assessment feature.
Note
-
For real-time assistance, start an online consultation.
-
If you have questions about API access or usage for the Alibaba Cloud Vision AI Platform, join our DingTalk group (ID: 23109592) to contact us.
Overview
For a detailed description of the Image Sharpness Assessment feature and its API parameters, see Image Sharpness Assessment.
SDK installation
For information about the SDK dependencies for common programming languages, see SDK Overview.
<ACCESS_KEY_ID>
Sample code
Image from OSS in Shanghai
/*
Add the dependency.
<!-- https://mvnrepository.com/artifact/com.aliyun/imageenhan20190930 -->
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>imageenhan20190930</artifactId>
<version>${aliyun.imageenhan.version}</version>
</dependency>
*/
import com.aliyun.imageenhan20190930.models.AssessSharpnessResponse;
import com.aliyun.tea.TeaException;
import com.aliyun.tea.TeaModel;
public class AssessSharpness {
public static com.aliyun.imageenhan20190930.Client createClient(String accessKeyId, String accessKeySecret) throws Exception {
/*
Initialize the configuration object com.aliyun.teaopenapi.models.Config.
This object stores configuration parameters such as your AccessKey ID, AccessKey Secret, and endpoint.
*/
com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config()
.setAccessKeyId(accessKeyId)
.setAccessKeySecret(accessKeySecret);
// The endpoint of the service.
config.endpoint = "imageenhan.cn-shanghai.aliyuncs.com";
return new com.aliyun.imageenhan20190930.Client(config);
}
public static void main(String[] args_) throws Exception {
// To create an AccessKey ID and AccessKey Secret, see https://help.aliyun.com/document_detail/175144.html.
// If you use a RAM user's AccessKey, you must grant the AliyunVIAPIFullAccess permission to the sub-account. For more information, see https://help.aliyun.com/document_detail/145025.html.
// Set the ALIBABA_CLOUD_ACCESS_KEY_ID and ALIBABA_CLOUD_ACCESS_KEY_SECRET environment variables before you run the sample code.
String accessKeyId = System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID");
String accessKeySecret = System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET");
com.aliyun.imageenhan20190930.Client client = AssessSharpness.createClient(accessKeyId, accessKeySecret);
com.aliyun.imageenhan20190930.models.AssessSharpnessRequest assessSharpnessRequest = new com.aliyun.imageenhan20190930.models.AssessSharpnessRequest()
.setImageURL("http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageenhan/AssessSharpness/AssessSharpness1.jpg");
com.aliyun.teautil.models.RuntimeOptions runtime = new com.aliyun.teautil.models.RuntimeOptions();
try {
AssessSharpnessResponse assessSharpnessResponse = client.assessSharpnessWithOptions(assessSharpnessRequest, runtime);
// Get the complete response.
System.out.println(com.aliyun.teautil.Common.toJSONString(TeaModel.buildMap(assessSharpnessResponse)));
// Get a specific field.
System.out.println(assessSharpnessResponse.getBody());
} catch (TeaException teaException) {
// Get the complete error message.
System.out.println(com.aliyun.teautil.Common.toJSONString(teaException));
// Get a specific field.
System.out.println(teaException.getCode());
}
}
}# -*- coding: utf-8 -*-
# Install the dependency.
# pip install alibabacloud_imageenhan20190930
import os
from alibabacloud_imageenhan20190930.client import Client
from alibabacloud_imageenhan20190930.models import AssessSharpnessRequest
from alibabacloud_tea_openapi.models import Config
from alibabacloud_tea_util.models import RuntimeOptions
config = Config(
# To create an AccessKey ID and AccessKey Secret, see https://help.aliyun.com/document_detail/175144.html.
# If you use a RAM user's AccessKey, you must grant the AliyunVIAPIFullAccess permission to the RAM user. For more information, see https://help.aliyun.com/document_detail/145025.html.
# Set the ALIBABA_CLOUD_ACCESS_KEY_ID and ALIBABA_CLOUD_ACCESS_KEY_SECRET environment variables before you run the sample code.
access_key_id=os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_ID'),
access_key_secret=os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_SECRET'),
# The endpoint of the service.
endpoint='imageenhan.cn-shanghai.aliyuncs.com',
# The region corresponding to the endpoint.
region_id='cn-shanghai'
)
assess_sharpness_request = AssessSharpnessRequest(
image_url='http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageenhan/AssessSharpness/AssessSharpness1.jpg'
)
runtime = RuntimeOptions()
try:
# Initialize the client.
client = Client(config)
response = client.assess_sharpness_with_options(assess_sharpness_request, runtime)
# Get the complete response.
print(response.body)
except Exception as error:
# Get the complete error message.
print(error)
# Get a specific field.
print(error.code)<?php
// Install the dependency.
//composer require alibabacloud/imageenhan-20190930
use AlibabaCloud\SDK\Imageenhan\V20190930\Imageenhan;
use \Exception;
use AlibabaCloud\Tea\Utils\Utils;
use Darabonba\OpenApi\Models\Config;
use AlibabaCloud\SDK\Imageenhan\V20190930\Models\AssessSharpnessRequest;
use AlibabaCloud\Tea\Utils\Utils\RuntimeOptions;
class AssessSharpness {
/**
* Use an AccessKey ID and AccessKey Secret to initialize the client.
* @param string $accessKeyId
* @param string $accessKeySecret
* @return Imageenhan Client
*/
public static function createClient($accessKeyId, $accessKeySecret){
// Initialize the configuration object Darabonba\OpenApi\Models\Config.
// This object stores configuration parameters such as your AccessKey ID, AccessKey Secret, and endpoint.
$config = new Config([
"accessKeyId" => $accessKeyId,
"accessKeySecret" => $accessKeySecret
]);
// The endpoint of the service.
$config->endpoint = "imageenhan.cn-shanghai.aliyuncs.com";
return new Imageenhan($config);
}
/**
* @param string[] $args
* @return void
*/
public static function main($args){
// To create an AccessKey ID and AccessKey Secret, see https://help.aliyun.com/document_detail/175144.html.
// If you use a RAM user's AccessKey, you must grant the AliyunVIAPIFullAccess permission to the RAM user. For more information, see https://help.aliyun.com/document_detail/145025.html.
// Set the ALIBABA_CLOUD_ACCESS_KEY_ID and ALIBABA_CLOUD_ACCESS_KEY_SECRET environment variables before you run the sample code.
$accessKeyId = getenv('ALIBABA_CLOUD_ACCESS_KEY_ID');
$accessKeySecret = getenv('ALIBABA_CLOUD_ACCESS_KEY_SECRET');
$client = self::createClient($accessKeyId, $accessKeySecret);
$assessSharpnessRequest = new AssessSharpnessRequest([
"imageURL" => "http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageenhan/AssessSharpness/AssessSharpness1.jpg"
]);
$runtime = new RuntimeOptions([]);
try {
$resp = $client->assessSharpnessWithOptions($assessSharpnessRequest, $runtime);
# Get the complete response.
echo Utils::toJSONString($resp->body);
} catch (Exception $exception) {
# Get the complete error message.
echo Utils::toJSONString($exception);
# Get a specific field.
}
}
}
$path = __DIR__ . \DIRECTORY_SEPARATOR . '..' . \DIRECTORY_SEPARATOR . 'vendor' . \DIRECTORY_SEPARATOR . 'autoload.php';
if (file_exists($path)) {
require_once $path;
}
// The $argv array, reserved for command-line arguments, does not require modification for this sample.
AssessSharpness::main(array_slice($argv, 1));// Install the dependency.
// npm install @alicloud/imageenhan20190930
const ImageenhanClient = require('@alicloud/imageenhan20190930');
const OpenapiClient = require('@alicloud/openapi-client');
const TeaUtil = require('@alicloud/tea-util');
let config = new OpenapiClient.Config({
// To create an AccessKey ID and AccessKey Secret, see https://help.aliyun.com/document_detail/175144.html.
// If you use a RAM user's AccessKey, you must grant the AliyunVIAPIFullAccess permission to the RAM user. For more information, see https://help.aliyun.com/document_detail/145025.html.
// Set the ALIBABA_CLOUD_ACCESS_KEY_ID and ALIBABA_CLOUD_ACCESS_KEY_SECRET environment variables before you run the sample code.
accessKeyId: process.env.ALIBABA_CLOUD_ACCESS_KEY_ID,
accessKeySecret: process.env.ALIBABA_CLOUD_ACCESS_KEY_SECRET
});
// The endpoint of the service.
config.endpoint = `imageenhan.cn-shanghai.aliyuncs.com`;
const client = new ImageenhanClient.default(config);
let assessSharpnessRequest = new ImageenhanClient.AssessSharpnessRequest({
imageURL: "http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageenhan/AssessSharpness/AssessSharpness1.jpg",
});
let runtime = new TeaUtil.RuntimeOptions({});
client.assessSharpnessWithOptions(assessSharpnessRequest, runtime)
.then(function (assessSharpnessResponse) {
// Get the complete response.
console.log(assessSharpnessResponse);
// Get a specific field.
console.log(assessSharpnessResponse.body.data);
}, function (error) {
// Get the complete error message.
console.log(error);
// Get a specific field.
console.log(error.data.Code);
})/**
Depends on github.com/alibabacloud-go/imageenhan-20190930/v2.
We recommend using 'go mod tidy' to install the dependency.
*/
package main
import (
"fmt"
openapi "github.com/alibabacloud-go/darabonba-openapi/v2/client"
imageenhan20190930 "github.com/alibabacloud-go/imageenhan-20190930/v2/client"
util "github.com/alibabacloud-go/tea-utils/v2/service"
"github.com/alibabacloud-go/tea/tea"
)
func main() {
// To create an AccessKey ID and AccessKey Secret, see https://help.aliyun.com/document_detail/175144.html.
// If you use a RAM user's AccessKey, you must grant the AliyunVIAPIFullAccess permission to the RAM user. For more information, see https://help.aliyun.com/document_detail/145025.html.
// Set the ALIBABA_CLOUD_ACCESS_KEY_ID and ALIBABA_CLOUD_ACCESS_KEY_SECRET environment variables before you run the sample code.
accessKeyId := os.Getenv("ALIBABA_CLOUD_ACCESS_KEY_ID")
accessKeySecret := os.Getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET")
// Initialize the configuration object &openapi.Config. This object stores configuration parameters such as your AccessKey ID, AccessKey Secret, and endpoint.
config := &openapi.Config{
AccessKeyId: tea.String(accessKeyId),
AccessKeySecret: tea.String(accessKeySecret)
}
// The endpoint of the service.
config.Endpoint = tea.String("imageenhan.cn-shanghai.aliyuncs.com")
client, err := imageenhan20190930.NewClient(config)
if err != nil {
panic(err)
}
assessSharpnessRequest := &imageenhan20190930.AssessSharpnessRequest{
ImageURL: tea.String("http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageenhan/AssessSharpness/AssessSharpness1.jpg"),
}
runtime := &util.RuntimeOptions{}
assessSharpnessResponse, err := client.AssessSharpnessWithOptions(assessSharpnessRequest, runtime)
if err != nil {
// Get the complete error message.
fmt.Println(err.Error())
} else {
// Get the complete response.
fmt.Println(assessSharpnessResponse)
}
}// Install the dependency.
// dotnet add package AlibabaCloud.SDK.Imageenhan20190930
using System;
using System.Collections;
using System.Collections.Generic;
using System.Drawing;
using System.IO;
using System.Net;
using System.Threading.Tasks;
using AlibabaCloud.SDK.Imageenhan20190930.Models;
using Tea;
using Tea.Utils;
namespace AlibabaCloud.SDK.Sample
{
public class Sample
{
/**
* Use an AccessKey ID and AccessKey Secret to initialize the client.
* @param accessKeyId
* @param accessKeySecret
* @return Client
* @throws Exception
*/
public static AlibabaCloud.SDK.Imageenhan20190930.Client CreateClient(string accessKeyId, string accessKeySecret)
{
AlibabaCloud.OpenApiClient.Models.Config config = new AlibabaCloud.OpenApiClient.Models.Config
{
AccessKeyId = accessKeyId,
AccessKeySecret = accessKeySecret,
};
// The endpoint of the service.
config.Endpoint = "imageenhan.cn-shanghai.aliyuncs.com";
return new AlibabaCloud.SDK.Imageenhan20190930.Client(config);
}
public static void Main(string[] args)
{
// To create an AccessKey ID and AccessKey Secret, see https://help.aliyun.com/document_detail/175144.html.
// If you use a RAM user's AccessKey, you must grant the AliyunVIAPIFullAccess permission to the sub-account. For more information, see https://help.aliyun.com/document_detail/145025.html.
// Set the ALIBABA_CLOUD_ACCESS_KEY_ID and ALIBABA_CLOUD_ACCESS_KEY_SECRET environment variables before you run the sample code.
AlibabaCloud.SDK.Imageenhan20190930.Client client = CreateClient(System.Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_ID"), System.Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));
AlibabaCloud.SDK.Imageenhan20190930.Models.AssessSharpnessRequest assessSharpnessRequest = new AlibabaCloud.SDK.Imageenhan20190930.Models.AssessSharpnessRequest
{
ImageURL = "http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageenhan/AssessSharpness/AssessSharpness1.jpg",
};
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
try
{
AlibabaCloud.SDK.Imageenhan20190930.Models.AssessSharpnessResponse assessSharpnessResponse = client.AssessSharpnessWithOptions(assessSharpnessRequest, runtime);
// Get the complete response.
Console.WriteLine(AlibabaCloud.TeaUtil.Common.ToJSONString(assessSharpnessResponse.Body));
// Get a specific field.
Console.WriteLine(AlibabaCloud.TeaUtil.Common.ToJSONString(assessSharpnessResponse.Body.Data));
}
catch (TeaException error)
{
// Handle exceptions and print the error message.
AlibabaCloud.TeaUtil.Common.AssertAsString(error.Message);
}
catch (Exception _error)
{
TeaException error = new TeaException(new Dictionary<string, object>
{
{ "message", _error.Message }
});
// Handle exceptions and print the error message.
Console.WriteLine(error.Message);
}
}
}
}Local image or URL
/*
Add the dependency.
<!-- https://mvnrepository.com/artifact/com.aliyun/imageenhan20190930 -->
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>imageenhan20190930</artifactId>
<version>${aliyun.imageenhan.version}</version>
</dependency>
*/
import com.aliyun.imageenhan20190930.models.AssessSharpnessResponse;
import com.aliyun.tea.TeaException;
import com.aliyun.tea.TeaModel;
import java.io.InputStream;
import java.net.URL;
public class AssessSharpness {
public static com.aliyun.imageenhan20190930.Client createClient(String accessKeyId, String accessKeySecret) throws Exception {
/*
Initialize the configuration object com.aliyun.teaopenapi.models.Config.
This object stores configuration parameters such as your AccessKey ID, AccessKey Secret, and endpoint.
*/
com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config()
.setAccessKeyId(accessKeyId)
.setAccessKeySecret(accessKeySecret);
// The endpoint of the service.
config.endpoint = "imageenhan.cn-shanghai.aliyuncs.com";
return new com.aliyun.imageenhan20190930.Client(config);
}
public static void main(String[] args_) throws Exception {
// To create an AccessKey ID and AccessKey Secret, see https://help.aliyun.com/document_detail/175144.html.
// If you use a RAM user's AccessKey, you must grant the AliyunVIAPIFullAccess permission to the sub-account. For more information, see https://help.aliyun.com/document_detail/145025.html.
// Set the ALIBABA_CLOUD_ACCESS_KEY_ID and ALIBABA_CLOUD_ACCESS_KEY_SECRET environment variables before you run the sample code.
String accessKeyId = System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID");
String accessKeySecret = System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET");
com.aliyun.imageenhan20190930.Client client = AssessSharpness.createClient(accessKeyId, accessKeySecret);
// Scenario 1: Use a local file.
// InputStream inputStream = new FileInputStream(new File("/tmp/AssessSharpness.jpg"));
// Scenario 2: Use a publicly accessible URL.
URL url = new URL("http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageenhan/AssessSharpness/AssessSharpness1.jpg");
InputStream inputStream = url.openConnection().getInputStream();
com.aliyun.imageenhan20190930.models.AssessSharpnessAdvanceRequest assessSharpnessAdvanceRequest = new com.aliyun.imageenhan20190930.models.AssessSharpnessAdvanceRequest()
.setImageURLObject(inputStream);
com.aliyun.teautil.models.RuntimeOptions runtime = new com.aliyun.teautil.models.RuntimeOptions();
try {
AssessSharpnessResponse assessSharpnessAdvanceResponse = client.assessSharpnessAdvance(assessSharpnessAdvanceRequest, runtime);
// Get the complete response.
System.out.println(com.aliyun.teautil.Common.toJSONString(TeaModel.buildMap(assessSharpnessAdvanceResponse)));
// Get a specific field.
System.out.println(assessSharpnessAdvanceResponse.getBody());
} catch (TeaException teaException) {
// Get the complete error message.
System.out.println(com.aliyun.teautil.Common.toJSONString(teaException));
// Get a specific field.
System.out.println(teaException.getCode());
}
}
}# -*- coding: utf-8 -*-
# Install the dependency.
# pip install alibabacloud_imageenhan20190930
import os
import io
from urllib.request import urlopen
from alibabacloud_imageenhan20190930.client import Client
from alibabacloud_imageenhan20190930.models import AssessSharpnessAdvanceRequest
from alibabacloud_tea_openapi.models import Config
from alibabacloud_tea_util.models import RuntimeOptions
config = Config(
# To create an AccessKey ID and AccessKey Secret, see https://help.aliyun.com/document_detail/175144.html.
# If you use a RAM user's AccessKey, you must grant the AliyunVIAPIFullAccess permission to the RAM user. For more information, see https://help.aliyun.com/document_detail/145025.html.
# Set the ALIBABA_CLOUD_ACCESS_KEY_ID and ALIBABA_CLOUD_ACCESS_KEY_SECRET environment variables before you run the sample code.
access_key_id=os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_ID'),
access_key_secret=os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_SECRET'),
# The endpoint of the service.
endpoint='imageenhan.cn-shanghai.aliyuncs.com',
# The region corresponding to the endpoint.
region_id='cn-shanghai'
)
# Scenario 1: Use a local file.
#img = open(r'/tmp/AssessSharpness1.jpg', 'rb')
# Scenario 2: Use a publicly accessible URL.
url = 'http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageenhan/AssessSharpness/AssessSharpness1.jpg'
img = io.BytesIO(urlopen(url).read())
assess_sharpness_request = AssessSharpnessAdvanceRequest()
assess_sharpness_request.image_urlobject = img
runtime = RuntimeOptions()
try:
# Initialize the client.
client = Client(config)
response = client.assess_sharpness_advance(assess_sharpness_request, runtime)
# Get the complete response.
print(response.body)
except Exception as error:
# Get the complete error message.
print(error)
# Get a specific field.
print(error.code)<?php
// Install the dependency.
//composer require alibabacloud/imageenhan-20190930
use AlibabaCloud\SDK\Imageenhan\V20190930\Imageenhan;
use \Exception;
use AlibabaCloud\Tea\Utils\Utils;
use Darabonba\OpenApi\Models\Config;
use AlibabaCloud\SDK\Imageenhan\V20190930\Models\AssessSharpnessAdvanceRequest;
use AlibabaCloud\Tea\Utils\Utils\RuntimeOptions;
use GuzzleHttp\Psr7\Stream;
class AssessSharpness {
/**
* Use an AccessKey ID and AccessKey Secret to initialize the client.
* @param string $accessKeyId
* @param string $accessKeySecret
* @return Imageenhan Client
*/
public static function createClient($accessKeyId, $accessKeySecret){
// Initialize the configuration object Darabonba\OpenApi\Models\Config.
// This object stores configuration parameters such as your AccessKey ID, AccessKey Secret, and endpoint.
$config = new Config([
"accessKeyId" => $accessKeyId,
"accessKeySecret" => $accessKeySecret
]);
// The endpoint of the service.
$config->endpoint = "imageenhan.cn-shanghai.aliyuncs.com";
return new Imageenhan($config);
}
/**
* @param string[] $args
* @return void
*/
public static function main($args){
// To create an AccessKey ID and AccessKey Secret, see https://help.aliyun.com/document_detail/175144.html.
// If you use a RAM user's AccessKey, you must grant the AliyunVIAPIFullAccess permission to the RAM user. For more information, see https://help.aliyun.com/document_detail/145025.html.
// Set the ALIBABA_CLOUD_ACCESS_KEY_ID and ALIBABA_CLOUD_ACCESS_KEY_SECRET environment variables before you run the sample code.
$accessKeyId = getenv('ALIBABA_CLOUD_ACCESS_KEY_ID');
$accessKeySecret = getenv('ALIBABA_CLOUD_ACCESS_KEY_SECRET');
$client = self::createClient($accessKeyId, $accessKeySecret);
// Scenario 1: Use a local file.
//$file = fopen('/tmp/AssessSharpness1.jpg', 'rb');
//$stream = new Stream($file);
// Scenario 2: Use a publicly accessible URL.
$file = fopen('http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageenhan/AssessSharpness/AssessSharpness1.jpg', 'rb');
$stream = new Stream($file);
$assessSharpnessAdvanceRequest = new AssessSharpnessAdvanceRequest([
"imageURLObject" => $stream
]);
$runtime = new RuntimeOptions([]);
try {
$resp = $client->assessSharpnessAdvance($assessSharpnessAdvanceRequest, $runtime);
# Get the complete response.
echo Utils::toJSONString($resp->body);
} catch (Exception $exception) {
# Get the complete error message.
echo Utils::toJSONString($exception);
# Get a specific field.
}
}
}
$path = __DIR__ . \DIRECTORY_SEPARATOR . '..' . \DIRECTORY_SEPARATOR . 'vendor' . \DIRECTORY_SEPARATOR . 'autoload.php';
if (file_exists($path)) {
require_once $path;
}
// The $argv array, reserved for command-line arguments, does not require modification for this sample.
AssessSharpness::main(array_slice($argv, 1));// Install the dependency.
// npm install @alicloud/imageenhan20190930
const ImageenhanClient = require('@alicloud/imageenhan20190930');
const OpenapiClient = require('@alicloud/openapi-client');
const TeaUtil = require('@alicloud/tea-util');
const fs = require('fs');
const http = require('http');
const https = require('https');
let config = new OpenapiClient.Config({
// To create an AccessKey ID and AccessKey Secret, see https://help.aliyun.com/document_detail/175144.html.
// If you use a RAM user's AccessKey, you must grant the AliyunVIAPIFullAccess permission to the RAM user. For more information, see https://help.aliyun.com/document_detail/145025.html.
// Set the ALIBABA_CLOUD_ACCESS_KEY_ID and ALIBABA_CLOUD_ACCESS_KEY_SECRET environment variables before you run the sample code.
accessKeyId: process.env.ALIBABA_CLOUD_ACCESS_KEY_ID,
accessKeySecret: process.env.ALIBABA_CLOUD_ACCESS_KEY_SECRET
});
// The endpoint of the service.
config.endpoint = `imageenhan.cn-shanghai.aliyuncs.com`;
const client = new ImageenhanClient.default(config);
const getResponse = function (httpClient, url) {
return new Promise((resolve, reject) => {
httpClient.get(url, function (response) {
resolve(response);
})
})
}
const request = async function () {
try {
const client = new ImageenhanClient.default(config);
let assessSharpnessAdvanceRequest = new ImageenhanClient.AssessSharpnessAdvanceRequest();
// Scenario 1: Use a local file.
// const fileStream = fs.createReadStream('/tmp/AssessSharpness1.jpg');
// assessSharpnessAdvanceRequest.imageURLObject = fileStream;
// Scenario 2: Use a publicly accessible URL.
const url = new URL("http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageenhan/AssessSharpness/AssessSharpness1.jpg");
const httpClient = (url.protocol == "https:") ? https : http;
assessSharpnessAdvanceRequest.imageURLObject = await getResponse(httpClient, url);
let runtime = new TeaUtil.RuntimeOptions({ });
client.assessSharpnessAdvance(assessSharpnessAdvanceRequest, runtime)
.then(function(assessSharpnessResponse) {
// Get the complete response.
console.log(assessSharpnessResponse);
// Get a specific field.
console.log(assessSharpnessResponse.body.data);
}, function(error) {
// Get the complete error message.
console.log(error);
// Get a specific field.
console.log(error.data.Code);
})
} catch (error) {
console.log(error);
}
}();/**
Depends on github.com/alibabacloud-go/imageenhan-20190930/v2.
We recommend using 'go mod tidy' to install the dependency.
*/
package main
import (
"fmt"
openapi "github.com/alibabacloud-go/darabonba-openapi/v2/client"
imageenhan20190930 "github.com/alibabacloud-go/imageenhan-20190930/v2/client"
util "github.com/alibabacloud-go/tea-utils/v2/service"
"github.com/alibabacloud-go/tea/tea"
"net/http"
)
func main() {
// To create an AccessKey ID and AccessKey Secret, see https://help.aliyun.com/document_detail/175144.html.
// If you use a RAM user's AccessKey, you must grant the AliyunVIAPIFullAccess permission to the RAM user. For more information, see https://help.aliyun.com/document_detail/145025.html.
// Set the ALIBABA_CLOUD_ACCESS_KEY_ID and ALIBABA_CLOUD_ACCESS_KEY_SECRET environment variables before you run the sample code.
accessKeyId := os.Getenv("ALIBABA_CLOUD_ACCESS_KEY_ID")
accessKeySecret := os.Getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET")
// Initialize the configuration object &openapi.Config. This object stores configuration parameters such as your AccessKey ID, AccessKey Secret, and endpoint.
config := &openapi.Config{
AccessKeyId: tea.String(accessKeyId),
AccessKeySecret: tea.String(accessKeySecret)
}
// The endpoint of the service.
config.Endpoint = tea.String("imageenhan.cn-shanghai.aliyuncs.com")
client, err := imageenhan20190930.NewClient(config)
if err != nil {
panic(err)
}
// Scenario 1: Use a local file.
//file, err := os.Open("/tmp/AssessSharpness.jpg")
//if err != nil {
// fmt.Println("can not open file", err)
// panic(err)
//}
//assessSharpnessAdvanceRequest := &imageenhan20190930.AssessSharpnessAdvanceRequest{
// ImageURLObject: file,
//}
// Scenario 2: Use a publicly accessible URL.
httpClient := http.Client{}
file, _ := httpClient.Get("http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageenhan/AssessSharpness/AssessSharpness1.jpg")
assessSharpnessAdvanceRequest := &imageenhan20190930.AssessSharpnessAdvanceRequest{
ImageURLObject: file.Body,
}
runtime := &util.RuntimeOptions{}
assessSharpnessAdvanceResponse, err := client.AssessSharpnessAdvance(assessSharpnessAdvanceRequest, runtime)
if err != nil {
// Get the complete error message.
fmt.Println(err.Error())
} else {
// Get the complete response.
fmt.Println(assessSharpnessAdvanceResponse)
}
}// Install the dependency.
// dotnet add package AlibabaCloud.SDK.Imageenhan20190930
using System;
using System.Collections;
using System.Collections.Generic;
using System.Drawing;
using System.IO;
using System.Net;
using System.Threading.Tasks;
using AlibabaCloud.SDK.Imageenhan20190930.Models;
using Tea;
using Tea.Utils;
namespace AlibabaCloud.SDK.Sample
{
public class Sample
{
/**
* Use an AccessKey ID and AccessKey Secret to initialize the client.
* @param accessKeyId
* @param accessKeySecret
* @return Client
* @throws Exception
*/
public static AlibabaCloud.SDK.Imageenhan20190930.Client CreateClient(string accessKeyId, string accessKeySecret)
{
AlibabaCloud.OpenApiClient.Models.Config config = new AlibabaCloud.OpenApiClient.Models.Config
{
AccessKeyId = accessKeyId,
AccessKeySecret = accessKeySecret,
};
// The endpoint of the service.
config.Endpoint = "imageenhan.cn-shanghai.aliyuncs.com";
return new AlibabaCloud.SDK.Imageenhan20190930.Client(config);
}
public static void Main(string[] args)
{
// To create an AccessKey ID and AccessKey Secret, see https://help.aliyun.com/document_detail/175144.html.
// If you use a RAM user's AccessKey, you must grant the AliyunVIAPIFullAccess permission to the sub-account. For more information, see https://help.aliyun.com/document_detail/145025.html.
// Set the ALIBABA_CLOUD_ACCESS_KEY_ID and ALIBABA_CLOUD_ACCESS_KEY_SECRET environment variables before you run the sample code.
AlibabaCloud.SDK.Imageenhan20190930.Client client = CreateClient(System.Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_ID"), System.Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));
AlibabaCloud.SDK.Imageenhan20190930.Models.AssessSharpnessAdvanceRequest assessSharpnessAdvanceRequest = new AlibabaCloud.SDK.Imageenhan20190930.Models.AssessSharpnessAdvanceRequest
();
// Scenario 1: Use a local file.
// System.IO.StreamReader file = new System.IO.StreamReader(@"/tmp/AssessSharpness1.jpg");
// assessSharpnessAdvanceRequest.ImageURLObject = file.BaseStream;
// Scenario 2: Use a publicly accessible URL.
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageenhan/AssessSharpness/AssessSharpness1.jpg");
WebResponse response = request.GetResponse();
Stream stream = response.GetResponseStream();
assessSharpnessAdvanceRequest.ImageURLObject = stream;
AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
try
{
AlibabaCloud.SDK.Imageenhan20190930.Models.AssessSharpnessResponse assessSharpnessResponse = client.AssessSharpnessAdvance(assessSharpnessAdvanceRequest, runtime);
// Get the complete response.
Console.WriteLine(AlibabaCloud.TeaUtil.Common.ToJSONString(assessSharpnessResponse.Body));
// Get a specific field.
Console.WriteLine(AlibabaCloud.TeaUtil.Common.ToJSONString(assessSharpnessResponse.Body.Data));
}
catch (TeaException error)
{
// Handle exceptions and print the error message.
AlibabaCloud.TeaUtil.Common.AssertAsString(error.Message);
}
catch (Exception _error)
{
TeaException error = new TeaException(new Dictionary<string, object>
{
{ "message", _error.Message }
});
// Handle exceptions and print the error message.
Console.WriteLine(error.Message);
}
}
}
}该文章对您有帮助吗?