You need to enable JavaScript to run this app.
最新活动
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们
导航

使用画质评估获取分值

最近更新时间2023.09.19 14:16:30

首次发布时间2022.06.15 21:13:47

本接口支持指定服务 ID 和原图地址后对该图像的主客观画质和美学维度进行评分,并获取该图片各维度评分结果。具体图片维度说明以及分值含义请参考下方参数说明。

说明

更多典型实践案例和收益参考详见抖音集团都在用的画质评估工具,确定不试试吗?

注意事项

  • 请求频率:单用户请求频率限制为 100 次/秒
  • 超时时间:超时时间约为 20 秒
  • 前提条件:已开通画质评估组件能力。
  • 计费说明:画质评估功能属于增值服务项,故使用后会产生增值服务费用,当前支持后付费的计费方式。具体计费详情请参考后付费-按量计费
  • 服务地址:veImageX 在全球多个区域部署,每个区域有自己对应的 OpenAPI 域名,不支持跨区域调用。具体详情请查看服务地址

请求说明

  • 请求方式:POST
  • 接口地址:https://imagex.volcengineapi.com/?Action=GetImageQuality&Version=2018-08-01

请求参数

以下请求参数列表仅列出了该接口的部分公共参数,完整公共参数列表见公共参数

参数类型是否必选示例值描述
Content-TypeStringapplication/json请求头字段

Query

参数类型是否必选示例值描述
ActionStringGetImageQuality接口名称。当前 API 的名称为 GetImageQuality
VersionString2018-08-01接口版本。当前 API 的版本为 2018-08-01

ServiceId

String

7h**i6

服务 ID。

  • 您可以在 veImageX 控制台 服务管理页面,在创建好的图片服务中获取服务 ID。
  • 您也可以通过 OpenAPI 的方式获取服务 ID,具体请参考获取所有服务信息

Body

参数类型是否必选示例值描述

ImageUrl

String

tos-example/7a7979974.jpeg

指定服务下的图片存储 Uri 或访问 URL。

  • 图片 Uri 格式,例如:tos-example/7a7979974.jpeg
  • 图片 URL 格式,例如:https://example.org/tos-example/7a7979974.jpeg~tplv.png

说明

若传 URL,必须保证 URL 公网可访问。

VqType

String

vqscore

评估工具,默认选择全部。多个支持的评估工具用逗号隔开,当前支持以下工具:

  • nr_index
  • vqscore
  • advcolor
  • blockiness
  • noise
  • aesmod
  • blur
  • cg
  • contrast
  • texture
  • colorfulness
  • brightness
  • overexposure
  • hue
  • saturation
  • psnr
  • ssim
  • vmaf

说明

nr_index 工具支持评估 contrast、brightness 等多个维度。您也可以单独指定各维度,获取指定维度估值。

ImageUrlRef

String

https://example.org/test.png

指定服务下的评估参照图片存储 Uri 或访问 URL,用于和 ImageUrl 图片进行特定维度的对比。

说明

VqType 中包含 psnr、ssim、vmaf等任一字段时,该字段为必填,否则上述评估指标无法正常输出结果。

返回参数

字段类型示例值描述
VqTypeStringvqscore您指定的评估工具
NrScoresMap-图片无参指标分数,具体请见 NrScores
FrScoresMap-图片有参指标分数,具体请见 FrScores

NrScores

字段类型示例值描述
vqscoreFloat40当评估工具为vqscore,表示图片主观质量,分数越高表示质量越好。取值范围: [0, 100]
noiseFloat60当评估工具为noise,表示图片噪声强度,分数越高表示噪声越强。取值范围: [0, 100]

advcolor

Float

50

当评估工具为advcolor,表示图片整体色彩质量,分数越高表示色彩越好。

  • 数值在[0, 50],表示色彩质量差;
  • 数值在[50, 60],表示色彩质量中;
  • 数值在[60, 100],表示色彩质量好。
contrastFloat40当评估工具为nr_indexcontrast,表示对比度程度,分数越低表示对比度越低。取值范围:[0, 100]
brightnessFloat30当评估工具为nr_indexbrightness,表示平均亮度,值越大表示越亮。取值范围:[0, 255]
colorfulnessFloat60当评估工具为nr_indexcolorfulness,表示颜色的丰富程度,值越低表示颜色单一。取值范围:[0, 100]
textureFloat100当评估工具为nr_indextexture,表示纹理的丰富程度,值越大表示纹理越丰富。取值范围:[0, 255]
overexposureFloat40当评估工具为nr_indexoverexposure,表示过曝光面积大小程度,值越大越可能存在过曝光。取值范围:[0, 100],大于2会有明显过曝区域。
saturationFloat80当评估工具为nr_indexsaturation,表示饱和度的均衡程度,值越大表示饱和度越均衡。取值范围:[0, 100]
hueFloat90当评估工具为nr_indexhue,表示色调的均衡程度,值越大表示色调越均衡。取值范围:[0, 100]
aestheticFloat30当评估工具为aesmod,表示综合大众美学的质量评分,值越高表示更具美感。取值范围:[0, 100]

blockiness

Float

40

当评估工具为blockiness,表示图片的块效应严重程度,值越高块效应越强。

  • 数值在[0, 50],表示差;
  • 数值在[50, 60],表示中;
  • 数值在[60, 100],表示好;
  • 当返回为-1时,表示检测的图像为非常规图像,如三明治,块状特效,游戏场景等。
blurFloat40当评估工具为blur,表示模糊度指标,值越高表示模糊程度越高,取值范围: [0, 100]

cg

Float

70

当评估工具为cg,表示是否为非自然场景,取值范围: [0, 100]

  • 数值接近 0 表示为自然场景
  • 数值接近 100 表示为非自然场景(游戏、录屏等)

FrScores

字段类型示例值描述

psnr

Float

40

当评估工具为psnr,表示峰值信噪比。峰值信噪比是一个表示信号最大可能功率(像素值最大值)和影响它的表示精度的破坏性噪声功率(测试图像与参考图像之间的误差)的比值。

本质上就是表示两个信号的相似程度。当两个图像其中一个为无失真图像,另一个为失真后的图像,二者的 PSNR 可以看成是失真图像的质量衡量指标。

值越大图片保真度越高。取值范围:[0,60]

  • 数值在[0,30],表示差
  • 数值在[30,38],表示一般
  • 数值在[38,45],表示较好
  • 数值在[45,60],表示非常好

ssim

Float

0.2

当评估工具为ssim,表示结构相似性,是一种用以衡量两个图像或视频结构相似性的指标。该指标主要从亮度 (luminance)、对比度 (contrast) 和结构 (structure)三个方面来衡量两个图像/视频之间的区别。

当两个视频其中一个为无失真视频,另一个为失真后的视频,二者的 SSIM 可以看成是失真视频的质量衡量指标。

值越大图片相似度越高。取值范围:[0,1]

  • 数值在[0,0.9],表示差
  • 数值在[0.9,0.95],表示较差
  • 数值在[0.95,0.98],表示中等
  • 数值在[0.98,1],表示好

vmaf

Float

80

当评估工具为vmaf,表示 Netflix 提出的一个客观有参考视频质量指标,它也是当前业界广泛认可的有参画质指标。

它主要使用了 3 种基础指标:visual quality fidelity(VIF)、detail loss measure(DLM)、temporal information(TI),其中 VIF 和 DLM 是空间域的也即一帧画面之内的特征,TI 是时间域的也即多帧画面之间相关性的特征。最终使用机器学习算法(SVM)将三个基础指标融合成最终的画质分数。

值越大图片纹理相似度越高。取值范围:[0,100]

  • 数值在[0,80],表示很差
  • 数值在[80,87],表示较差
  • 数值在[87,93],表示中等
  • 数值在[93,97],表示好
  • 数值在[97,100],表示非常好

示例

请求示例

POST https://imagex.volcengineapi.com?Action=GetImageQuality&ServiceId=example&Version=2018-08-01
{ 
	"ImageUrl": "test.jpeg",
  "VqType": "vqscore,blockiness,noise,aesmod,nr_index" 
  }

返回示例

{
		"ResponseMetadata": {
				"RequestId": "201806041104200100100232280022D30",
				"Action": "GetImageQuality",
				"Version": "2018-08-01",
				"Service": "imagex",
				"Region": "cn-north-1"
},
		"Result": {
				"VqType": 		"vqscore,blockiness,noise,aesmod,nr_index",
				"NrScores": {
				"advcolor": 38.86,
				"aesthetic": 81.18,
				"blockiness": 0,
				"brightness": 220.49,
				"colorfulness": 15.74,
				"contrast": 52.78,
				"hue": 87.5,
				"noise": 71.25,
				"overexposure": 0,
				"saturation": 27.34,
				"texture": 52.31,
				"vqscore": 74.97,
        }
     }
 }

错误码

访问错误码附加组件错误码获取详细信息。

服务端 SDK

为了方便您快速开发,veImageX 提供了配套的服务端 SDK,同时支持多种编程语言。建议您使用服务端 SDK 来调用 API,参考文档如下所示: