视频内容分析

最近更新时间:2019-06-17 19:43:36

视频内容分析,即借助 AI 对视频内容进行智能分析,是一种离线任务。使用视频内容分析,可以对视频分类、打标签及截取封面等给出智能建议,帮助视频平台准确高效地管理视频。

视频内容分析包括以下功能:

功能名称 说明
智能分类 对视频所属的分类给出建议,目前有十余个类别,包括:
新闻、娱乐、游戏、军事、科技、美食、体育、旅行、动漫、舞蹈、音乐、影视及汽车等。
智能标签 对视频可以打上的标签给出建议,目前共有3000余种标签,例如:
游戏、交通工具、音乐家、赛车、宠物、架子鼓、自行车、魔兽世界、电脑、学校及夹克等。
智能封面 从视频中选出一张或几张截图,作为推荐采用的封面。
智能按帧标签 为视频逐帧画面,给出打标签的建议,目前共有1000余种标签,例如:
现代舞、水上运动、牛排、宝宝、小猫、一年生植物、驱逐舰、漫画、草坪、婚纱、多功能厅及护照等。

视频内容分析模板

通过视频内容分析参数,可以控制分析任务具体执行哪几项分析操作。云点播使用视频内容分析模板来表示智能分析参数集合:

  • 是否启用智能分类。
  • 是否启用智能标签。
  • 是否启用智能封面。
  • 是否启用智能按帧标签。

针对常见的操作组合,云点播提供了 预置视频内容分析模板。另外,您还可以调用 服务端 API 创建和管理自定义视频内容分析模板。

任务发起

发起视频内容分析任务,有“通过服务端 API 直接发起”、“通过控制台直接发起”和“上传时指定要执行的任务”三种方式。具体请参照视频处理的 任务发起

以下是各种方式发起视频内容分析任务的说明:

  • 调用服务端 API ProcessMedia 发起任务:在请求中的 AiAnalysisTask 参数指定 视频内容分析模板 的模板 ID。
  • 调用服务端 API ProcessMediaByUrl 发起任务:在请求中的 AiAnalysisTask 参数指定 视频内容分析模板 的模板 ID。
  • 通过控制台对视频发起任务:调用 服务端 API 创建任务流,任务流中配置视频内容分析任务(MediaProcessTask.AiAnalysisTask 中指定);在控制台使用该任务流 发起视频处理
  • 服务端上传时指定任务:调用 服务端 API 创建任务流,任务流中配置视频内容分析任务(MediaProcessTask.AiAnalysisTask 中指定); 申请上传 中的 procedure 参数指定为该任务流。
  • 客户端上传时指定任务:调用 服务端 API 创建任务流,任务流中配置视频内容分析任务(MediaProcessTask.AiAnalysisTask 中指定);在 客户端上传签名 中的 procedure 指定该任务流。
  • 控制台上传:调用 服务端 API 创建任务流,任务流中配置视频内容分析任务(MediaProcessTask.AiAnalysisTask 中指定);通过控制台上传视频,选择【上传的同时对视频进行处理操作】并指定视频上传后执行该任务流。

结果获取

发起视频内容分析任务后,您可以通过异步等待 结果通知 和同步进行 任务查询 两种方式获取视频内分析任务的执行结果。下面是发起内容分析任务后,普通回调方式下结果通知的示例(省略了值为 null 的字段):

{
    "EventType":"ProcedureStateChanged",
    "ProcedureStateChangeEvent":{
        "TaskId":"1256768367-Procedure-2e1af2456351812be963e309cc133403t0",
        "Status":"FINISH",
        "FileId":"5285890784246869930",
        "FileName":"动物世界",
        "FileUrl":"http://1256768367.vod2.myqcloud.com/xxx/xxx/AtUCmy6gmIYA.mp4",
        "MetaData":{
            "AudioDuration":60,
            "AudioStreamSet":[
                {
                    "Bitrate":383854,
                    "Codec":"aac",
                    "SamplingRate":48000
                }
            ],
            "Bitrate":1021028,
            "Container":"mov,mp4,m4a,3gp,3g2,mj2",
            "Duration":60,
            "Height":480,
            "Rotate":0,
            "Size":7700180,
            "VideoDuration":60,
            "VideoStreamSet":[
                {
                    "Bitrate":637174,
                    "Codec":"h264",
                    "Fps":23,
                    "Height":480,
                    "Width":640
                }
            ],
            "Width":640
        },
        "AiAnalysisResultSet":[
            {
                "Type":"Classification",
                "ClassificationTask":{
                    "Status":"SUCCESS",
                    "ErrCode":0,
                    "Message":"",
                    "Input":{
                        "Definition":10
                    },
                    "Output":{
                        "ClassificationSet":[
                            {
                                "Classification":"动物",
                                "Confidence":80
                            },
                            {
                                "Classification":"旅行",
                                "Confidence":34
                            }
                        ]
                    }
                }
            },
            {
                "Type":"Cover",
                "CoverTask":{
                    "Status":"SUCCESS",
                    "ErrCode":0,
                    "Message":"",
                    "Input":{
                        "Definition":10
                    },
                    "Output":{
                        "CoverSet":[
                            {
                                "CoverUrl":"http://1256768367.vod2.myqcloud.com/xxx/xxx/xxx1.jpg",
                                "Confidence":79
                            },
                            {
                                "CoverUrl":"http://1256768367.vod2.myqcloud.com/xxx/xxx/xxx2.jpg",
                                "Confidence":70
                            },
                            {
                                "CoverUrl":"http://1256768367.vod2.myqcloud.com/xxx/xxx/xxx3.jpg",
                                "Confidence":66
                            }
                        ]
                    }
                }
            },
            {
                "Type":"Tag",
                "TagTask":{
                    "Status":"SUCCESS",
                    "ErrCode":0,
                    "Message":"",
                    "Input":{
                        "Definition":10
                    },
                    "Output":{
                        "TagSet":[
                            {
                                "Tag":"马",
                                "Confidence":34
                            },
                            {
                                "Tag":"鸟",
                                "Confidence":27
                            },
                            {
                                "Tag":"植物",
                                "Confidence":13
                            },
                            {
                                "Tag":"海滩",
                                "Confidence":11
                            }
                        ]
                    }
                }
            }
        ],
        "TasksPriority":0,
        "TasksNotifyMode":""
    }
}

回调结果中,ProcedureStateChangeEvent.AiAnalysisResultSetTypeClassificationCoverTag 三种类型的分析结果,分别代表视频智能分类、视频智能封面和视频智能标签。

  • TypeClassification 的结果显示,Output.ClassificationSet 置信度最高的分类是动物,其次的分类则是旅行
  • TypeCover 的结果 Output.CoverSet,给出了3个建议采用的封面,CoverUrl 是对应封面的下载地址。
  • TypeTag 的结果 Output.TagSet,给出了4个视频建议采用的标签,按照置信度从高到低排列。