场景、拍摄、关键帧检测见解概述
场景、拍摄、关键帧检测
场景检测根据视觉提示检测视频中的场景何时发生更改。
场景描绘了单个事件,由一系列相关镜头组成。
镜头是一系列由视觉提示(例如相邻帧配色方案中的突然和渐进过渡)区分的帧。 拍摄的元数据包括开始时间和结束时间,以及镜头中包含的关键帧列表。
关键帧是拍摄中最能表示镜头的帧。
场景、镜头和关键帧检测用例
- 根据不同的粒度轻松浏览、管理和编辑视频内容。
- 使用编辑镜头类型检测将视频编辑到剪辑、预告片或搜索特定关键帧样式时。
场景检测
Azure AI 视频索引器根据视觉提示确定视频中的场景何时发生更改。场景描绘了单个事件,它由一系列连续镜头组成,这些镜头在语义上相关。
场景缩略图是其基础镜头的第一个关键帧。
Azure AI 视频索引器根据连续拍摄中的颜色一致性将视频细分为场景,并检索每个场景的开始和结束时间。
视频必须至少包含三个场景。
镜头检测
Azure AI 视频索引器通过检测配色方案和相邻帧的其他视觉功能中的突然和渐进转换,确定视频中的镜头何时根据视觉提示更改。 镜头元数据包括开始时间和结束时间,以及该镜头中所包含的关键帧的列表。 镜头是在同一时间由同一台相机所拍摄的连续帧。
注意
镜头之间可能存在差距,其中包括属于过渡的帧。 其中,这些帧不被视为镜头的一部分。
关键帧编辑拍摄类型检测
根据每个镜头的第一个关键帧的分析来确定拍摄类型。 通过第一个关键帧中人脸所占比例、大小和位置对镜头进行标识。
根据相机和画面中人脸之间的距离来确定镜头大小和比例。 使用这些属性,Azure AI 视频索引器可检测以下镜头类型:
- 全景:展示人物身体全部。
- 中景:展示人物上半身和脸部。
- 特写:主要展示人脸。
- 大特写:人脸充满整个画面。
镜头类型也可通过拍摄对象相对于画面中心的位置来确定。 此属性在 Azure AI 视频索引器中定义以下镜头类型:
- 左人脸:人物出现在画面左侧。
- 中心人脸:人物出现在画面中心。
- 右人脸:人物出现在画面右侧。
- 户外:人物出现在户外环境中。
- 室内:人物出现在室内环境中。
其他特征:
- 两张人脸:展示两张人脸(中等大小)。
- 多张人脸:两人以上。
使用 Web 门户查看见解 JSON
上传并编制视频索引后,可以使用 JSON 格式获取见解,以便使用 Web 门户进行下载。
- 选择“ 库 ”选项卡。
- 选择要处理的媒体。
- 选择“下载”和“见解”(JSON)。 JSON 文件将在新的浏览器选项卡中打开。
- 查找示例响应中所述的密钥对。
使用 API
- 使用“获取视频索引”请求。 建议传递
&includeSummarizedInsights=false
。 - 查找示例响应中所述的密钥对。
示例响应
"scenes": [
{
"id": 1,
"instances": [
{
"adjustedStart": "0:00:00",
"adjustedEnd": "0:00:09.1333333",
"start": "0:00:00",
"end": "0:00:09.1333333"
}
]
},
{
"id": 2,
"instances": [
{
"adjustedStart": "0:00:09.1333333",
"adjustedEnd": "0:00:10.8",
"start": "0:00:09.1333333",
"end": "0:00:10.8"
}
]
},
{
"id": 3,
"instances": [
{
"adjustedStart": "0:00:10.8",
"adjustedEnd": "0:00:26.9333333",
"start": "0:00:10.8",
"end": "0:00:26.9333333"
}
]
}...
{
"id": 31,
"instances": [
{
"adjustedStart": "0:18:45",
"adjustedEnd": "0:18:50.2",
"start": "0:18:45",
"end": "0:18:50.2"
}
]
}
],
"shots": [
{
"id": 1,
"tags": [
"Wide",
"Medium"
],
"keyFrames": [
{
"id": 1,
"instances": [
{
"thumbnailId": "60152925-0e6d-48cf-be33-aa6c00dfb334",
"adjustedStart": "0:00:00.1666667",
"adjustedEnd": "0:00:00.2",
"start": "0:00:00.1666667",
"end": "0:00:00.2"
}
]
},
{
"id": 2,
"instances": [
{
"thumbnailId": "f1a09cdf-b42b-45f5-bc69-5292d1216e50",
"adjustedStart": "0:00:00.2333333",
"adjustedEnd": "0:00:00.2666667",
"start": "0:00:00.2333333",
"end": "0:00:00.2666667"
}
]
}
],
"instances": [
{
"adjustedStart": "0:00:00",
"adjustedEnd": "0:00:01.9333333",
"start": "0:00:00",
"end": "0:00:01.9333333"
}
]
},
{
"id": 2,
"tags": [
"Medium"
],
"keyFrames": [
{
"id": 3,
"instances": [
{
"thumbnailId": "b17774d0-41cf-4174-9c41-6bc2f17c86e2",
"adjustedStart": "0:00:02",
"adjustedEnd": "0:00:02.0333333",
"start": "0:00:02",
"end": "0:00:02.0333333"
}
]
}
],
"instances": [
{
"adjustedStart": "0:00:01.9333333",
"adjustedEnd": "0:00:02.9666667",
"start": "0:00:01.9333333",
"end": "0:00:02.9666667"
}
]
}...
使用 API 下载关键帧
若要下载每个关键帧,请将关键帧 ID 与“获取缩略图”请求一起使用。
警告
出于生产目的,不建议直接使用工件文件夹中的数据。 工件是索引过程的中间输出。 它们本质上是分析视频的各种 AI 引擎的原始输出;工件架构可能会随时间而更改。
重要
阅读 所有 VI 功能的透明度说明概述 非常重要。 每个见解也有其自己的透明度说明:
场景、镜头和关键帧检测说明
- 检测器最适合具有镜头和场景的媒体文件。
- 如果视频是用一个永远不会移动的相机拍摄的,拍摄分段效果不佳,关键帧可能不具有代表性。
- 通过考虑帧的模糊级别来选择关键帧。 如果大多数镜头都模糊,例如运动,关键帧也可能模糊。
- 视觉质量不佳的视频产生不良结果。
- 每个镜头/场景/关键帧的时间可能会改变(不到一秒)。
场景、镜头和关键帧组件
未定义任何组件。