阅读本文,您可以获取 Node SDK 画质评估的接口调用示例,实现快速开发。
说明
本文的调用示例包含接口的部分参数。由于参数间可能存在互斥关系,在调用时,请您参考注释,进行调整。
调用接口前,请先完成 Node SDK 的安装及初始化操作。
本节为您介绍画质评估相关接口的功能和调用示例。
您可以调用 GetImageQuality 接口使用画质评估获取分值。详细的参数说明可参见 GetImageQuality 接口文档。
接口调用示例如下所示。
import { imagex } from "@volcengine/openapi";
export async function GetImageQualityDemo() {
try {
const imagexService = new imagex.ImagexService({
// 强烈建议不要把 VOLC_ACCESSKEY 和 VOLC_SECRETKEY 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
// 本示例通过从环境变量中读取 VOLC_ACCESSKEY 和 VOLC_SECRETKEY,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 VOLC_ACCESSKEY 和 VOLC_SECRETKEY
accessKeyId: process.env.VOLC_ACCESSKEY,
secretKey: process.env.VOLC_SECRETKEY,
});
const requestParam = {
// 服务 ID。
// <li> 您可以在 veImageX 控制台 [服务管理](https://console.volcengine.com/imagex/service_manage/)页面,在创建好的图片服务中获取服务 ID。 </li>
// <li> 您也可以通过 OpenAPI 的方式获取服务 ID,具体请参考[获取所有服务信息](https://www.volcengine.com/docs/508/9360)。 </li>
ServiceId: "7h**i6",
// 图片存储 Uri 或访问 URL。
// * 图片 Uri 格式,例如:tos-example/7a7979974.jpeg
// * 图片 URL 格式,例如:https://example.org/tos-example/7a7979974.jpeg~tplv.png
// note:
// 若传 URL,必须保证 URL 公网可访问。
ImageUrl: "tos-example/7a7979974.jpeg",
// 评估工具。指定多个评估工具时使用英文逗号分隔,当前支持以下工具:
// * nr_index
// * vqscore
// * advcolor
// * blockiness
// * noise
// * aesmod
// * blur
// * cg
// * contrast
// * texture
// * brightness
// * overexposure
// * hue
// * saturation
// * psnr
// * ssim
// * vmaf
// * green
// * cmartifacts
// note:
// nr_index 工具支持评估 contrast、brightness 等多个维度。您也可以单独指定各维度,获取指定维度估值。
VqType:
"nr_index,vqscore,advcolor,blockiness,noise,aesmod,blur,cg,contrast,texture,brightness,overexposure,hue,saturation,psnr,ssim,vmaf,green,cmartifacts,text_detect",
// 指定服务下的评估参照图片存储 Uri 或访问 URL,用于和 ImageUrl 图片进行特定维度的对比。
// note:
// 当 VqType 中包含 psnr、ssim、vmaf 等任一字段时,该字段为必填,否则上述评估指标无法正常输出结果。
ImageUrlRef: "https://example.org/test.png",
};
const res = await imagexService.GetImageQuality(requestParam);
console.log("res", res);
} catch (err) {
console.error(err);
}
}