本文介绍视频理解(videorecog)类目下的视频画质评估EvaluateVideoQuality的语法及示例。
功能描述
视频画质评估可对输入视频的画面质量进行评估,包括通用视频画质与瑕疵视频质量。通用视频画质包括:主观画质评分、客观画质评分(清晰度、点状噪声、压缩噪声)、颜色质量评分(饱和度、丰富度、对比度、亮度评估)等。瑕疵视频画质包括:场纹检测、划痕检测、异常帧检测(卡帧、闪烁、黑屏花屏)等。
能力使用典型样例请参见下表:
应用场景
- 视频画质评估:标准化视频评估工具集,包括各类无参考指标各项子工具,可服务于视频转码、直播和增强等不同业务场景的画质监控。
- UGC画质审核:用户自定义上传内容画质把关,对UGC内容进行画面质量检测,对整体画质较低、存在部分显著问题的视频进行筛选过滤。
特色优势
- 视频质量评估:涵盖各种主观/客观通用视频画质指标,提供全方面体系化的质量评估服务。
- 视频质量监测:涵盖视频中可能出现的各种技术瑕疵的画质监测,保障视频服务品质。
接入指引
1. 注册阿里云账号:打开阿里云官网,在阿里云官网右上角,单击立即注册,按照操作提示完成账号注册。
2. 开通能力:请确保您已开通视频理解服务,若未开通服务请立即开通。
3. 创建AccessKey:请确保您已创建AccessKey,如果您使用的是子账号AccessKey,您需要给子账号赋予AliyunVIAPIFullAccess权限,具体操作,请参见RAM授权。
4. 在线调试(可选):您可以通过OpenAPI Explorer在线调试能力,查看完整的调用示例代码及SDK依赖信息,也可以下载完整的工程。
5. 开发接入步骤:
- 在SDK总览中选择您要接入使用的SDK语言。
- 在对应语言的SDK文档中找到AI类目为视频理解(videorecog)类目的SDK包进行安装。
- 参考文档中提供的示例代码进行适当修改后调用。
6. 示例代码:该能力常用语言的示例代码,请参见视频画质评估示例代码,常用语言查询异步任务结果的示例代码,请参见查询异步任务结果示例代码。
7. 客户端直接调用:该能力常用的客户端调用方式包括以下几种。
输入限制
- 视频格式:MP4。
- 视频大小:不超过1 GB。
- 视频分辨率:不超过1080P,即长边不超过1920像素,短边不超过1080像素。
- URL地址中不能包含中文字符。
计费说明
关于视频画质评估的计费方式及报价,请参见计费介绍。
调用步骤
该能力为异步能力,需分两步进行调用。
第一步调用EvaluateVideoQuality接口提交任务,请求成功后,得到一个任务ID。
第二步调用GetAsyncJobResult接口查询结果,根据任务ID查询任务执行状态和结果。如果任务还在处理中,可稍等一段时间后再进行查询。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
请求参数
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Action | String | 是 | EvaluateVideoQuality | 系统规定参数。取值:EvaluateVideoQuality。 |
VideoUrl | String | 是 | http://public-vigen-video.oss-cn-shanghai.aliyuncs.com/Common/xxx/dont_delete/decaption/123.mp4 | 视频URL地址。推荐使用上海地域的OSS链接,对于文件在本地或者非上海地域OSS链接的情况,请参见文件URL处理。 |
Mode | String | 否 | vqa_plus | 质量评估模式。取值如下:
|
返回数据
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
RequestId | String | 1d33e538-c949-4fcd-83f6-4d57e4b31527 | 请求ID。 |
Data | Object | 返回的数据内容。 该数据需要在异步任务执行成功后,通过调用GetAsyncJobResult接口,对其Result字段进行JSON反序列化之后得到。 |
|
JsonUrl | String | http://vibktprfx-prod-prod-damo-eas-cn-shanghai.oss-cn-shanghai.aliyuncs.com/eas-video-quality-assessment/2023-01-13-10/31%3A08-cVeN9ZQlzIPfGqsa.json?Expires=1673578869&OSSAccessKeyId=LTAI4FoLmvQ9urWXgSRp****&Signature=AiSsOsZ7rYfhf9w3Mxn%2Fq4GKKy**** | 质量评估详细报告(JSON文件)。 说明 该URL地址为临时地址,有效期为30分钟,过期后将无法访问。若需要长时间或者永久保存文件,请在30分钟内访问URL地址,下载文件转存到自己的OSS或者其他存储空间。 |
PdfUrl | String | http://vibktprfx-prod-prod-damo-eas-cn-shanghai.oss-cn-shanghai.aliyuncs.com/eas-video-quality-assessment/2023-01-13-10/31%3A08-cVeN9ZQlzIPfGqsa.pdf?Expires=1673578869&OSSAccessKeyId=LTAI4FoLmvQ9urWXgSRp****&Signature=xULlZzVuhoYWAXRbp9A4EzzZcS**** | 质量评估综合报告(PDF文件)。 说明 该URL地址为临时地址,有效期为30分钟,过期后将无法访问。若需要长时间或者永久保存文件,请在30分钟内访问URL地址,下载文件转存到自己的OSS或者其他存储空间。 |
VideoQualityInfo | Object | 视频质量详情。 |
|
CompressiveStrength | Float | 0.25 | 压缩程度。 |
NoiseIntensity | Float | 0.01 | 噪声程度。 |
Blurriness | Float | 0.15 | 模糊程度。 |
ColorContrast | Float | 0.55 | 对比度。 |
ColorSaturation | Float | 0.17 | 饱和度。 |
Luminance | Float | 0.51 | 亮度。 |
Colorfulness | Float | 0.48 | 颜色丰富度。 |
MosScore | Float | 0.7048 | 表示主观质量评分。 |
Message | String | 该调用为异步调用,任务已提交成功,请以requestId的值作为jobId参数调用同类目下GetAsyncJobResult接口查询任务执行状态和结果。 | 提交异步任务后的提示信息。 |
查询结果
该接口为异步接口,当前并未返回真实的请求结果,您需要通过返回的RequestId调用GetAsyncJobResult接口来获取该接口的真实请求结果。详情请参见GetAsyncJobResult。
SDK参考
阿里云视觉AI视频理解类目下的视频画质评估能力推荐使用SDK调用,支持多种编程语言,调用时请选择AI类目为视频理解(videorecog)的SDK包,文件参数通过SDK调用可支持本地文件及任意URL,具体可参见SDK总览。
示例代码
该能力常用语言的示例代码,请参见视频画质评估示例代码,常用语言查询异步任务结果的示例代码,请参见查询异步任务结果示例代码。
视频画质评估各项得分解析
算法返回JsonUrl和PdfUrl两个字段,其中PdfUrl为该视频PDF格式的整体画质评估综合报告。JsonUrl为JSON格式的画质评估详细报告,包括各项画质评估指标的采样帧序列及各分镜/帧分项得分,方便细致分析、处理视频画质问题。
JsonUrl文件参数样例
{
"fps": 25.0,
"frame_num": 252,
"duration": 10.08,
"task_id": "2",
"input_w": 640,
"input_h": 480,
"vqa_degradation_info": [{
"noise_degree": 0.01,
"blur_degree": 0.15,
"comp_degree": 0.24,
"clip": [0, 251],
"duration": ["00:00:00", "00:00:10"]
}],
"vqa_mos_info": [
[{
"frame idx": 36,
"image mos": 0.693
}, {
"frame idx": 72,
"image mos": 0.696
}, {
"frame idx": 108,
"image mos": 0.707
}, {
"frame idx": 144,
"image mos": 0.702
}, {
"frame idx": 180,
"image mos": 0.736
}]
],
"vqa_color_quality_analysis_info": [{
"contrast_score": 0.55,
"luma_score": 0.49,
"color_saturation_score": 0.17,
"colorfulness_score": 0.45,
"clip": [36, 180],
"duration": ["00:00:01", "00:00:07"]
}],
"vqa_damaged_frame_info": {
"frame_list": [],
"confidence": 0.0
},
"vqa_interlace_frame_info": {
"frame_list": [],
"confidence": 0.0
},
"vqa_freeze_frame_info": {
"frame_list": [],
"confidence": 0.0
},
"vqa_flicker_frame_info": {
"frame_list": [],
"confidence": 0.0
},
"vqa_scratch_frame_info": {
"frame_list": [104],
"confidence": 0.012
}
}
JsonUrl文件参数描述说明
视频画质评估参数取值说明
示例
请求示例
http(s)://videorecog.cn-shanghai.aliyuncs.com/?Action=EvaluateVideoQuality //更多关于访问域名(Endpoint)信息,请参见:https://help.aliyun.com/document_detail/143103.html
&VideoUrl=http://public-vigen-video.oss-cn-shanghai.aliyuncs.com/Common/xxx/dont_delete/decaption/123.mp4
&Mode=vqa_plus
&公共请求参数
正常返回示例
XML
格式
HTTP/1.1 200 OK
Content-Type:application/xml
<EvaluateVideoQualityResponse>
<RequestId>1d33e538-c949-4fcd-83f6-4d57e4b31527</RequestId>
<Message>该调用为异步调用,任务已提交成功,请以requestId的值作为jobId参数调用同类目下GetAsyncJobResult接口查询任务执行状态和结果。</Message>
</EvaluateVideoQualityResponse>
JSON
格式
HTTP/1.1 200 OK
Content-Type:application/json
{
"RequestId" : "1d33e538-c949-4fcd-83f6-4d57e4b31527",
"Message" : "该调用为异步调用,任务已提交成功,请以requestId的值作为jobId参数调用同类目下GetAsyncJobResult接口查询任务执行状态和结果。"
}
返回示例补充说明
//查询结果:请求示例
http(s)://videorecog.cn-shanghai.aliyuncs.com/?Action=GetAsyncJobResult
&JobId=E75FE679-0303-4DD1-8252-1143B4FA8A27
&<公共请求参数>
//查询结果:返回示例
{
"RequestId" : "43A0AEB6-45F4-4138-8E89-E1A5D63200E3",
"Data" : {
"Status" : "PROCESS_SUCCESS",
"JobId" : "186AC396-0EEC-46F1-AAA1-BF3585227427",
"Result" : "{\"JsonUrl\" : \"http://vibktprfx-prod-prod-damo-eas-cn-shanghai.oss-cn-shanghai.aliyuncs.com/eas-video-quality-assessment/2023-01-13-10/31%3A08-cVeN9ZQlzIPfGqsa.json?Expires=1673578869&OSSAccessKeyId=LTAI4FoLmvQ9urWXgSRp****&Signature=AiSsOsZ7rYfhf9w3Mxn%2Fq4GKKy****\",\"PdfUrl\" : \"http://vibktprfx-prod-prod-damo-eas-cn-shanghai.oss-cn-shanghai.aliyuncs.com/eas-video-quality-assessment/2023-01-13-10/31%3A08-cVeN9ZQlzIPfGqsa.pdf?Expires=1673578869&OSSAccessKeyId=LTAI4FoLmvQ9urWXgSRp****&Signature=xULlZzVuhoYWAXRbp9A4EzzZcS****\",\"VideoQualityInfo\" : \"CompressiveStrength\" : 0.25,\"NoiseIntensity\" : 0.01,\"Blurriness\" : 0.15,\"ColorContrast\" : 0.55,\"ColorSaturation\" : 0.17,\"Luminance\" : 0.51,\"Colorfulness\" : 0.48,\"MosScore\" : 0.7048}"
}
}
//Result反序列化
{
"JsonUrl" : "http://vibktprfx-prod-prod-damo-eas-cn-shanghai.oss-cn-shanghai.aliyuncs.com/eas-video-quality-assessment/2023-01-13-10/31%3A08-cVeN9ZQlzIPfGqsa.json?Expires=1673578869&OSSAccessKeyId=LTAI4FoLmvQ9urWXgSRp****&Signature=AiSsOsZ7rYfhf9w3Mxn%2Fq4GKKy****",
"PdfUrl" : "http://vibktprfx-prod-prod-damo-eas-cn-shanghai.oss-cn-shanghai.aliyuncs.com/eas-video-quality-assessment/2023-01-13-10/31%3A08-cVeN9ZQlzIPfGqsa.pdf?Expires=1673578869&OSSAccessKeyId=LTAI4FoLmvQ9urWXgSRp****&Signature=xULlZzVuhoYWAXRbp9A4EzzZcS****",
"VideoQualityInfo" : [ {
"CompressiveStrength" : 0.25,
"NoiseIntensity" : 0.01,
"Blurriness" : 0.15,
"ColorContrast" : 0.55,
"ColorSaturation" : 0.17,
"Luminance" : 0.51,
"Colorfulness" : 0.48,
"MosScore" : 0.7048
} ]
}
错误码
关于视频画质评估的错误码,详情请参见常见错误码。
安全声明
- 请确保上传的图片或文件来源符合相应的法律法规。
- 通过体验调试上传的临时文件有效期为1小时,在24小时后会被系统自动清理删除。