视频的分层组织 | 学习笔记

简介: 快速学习视频的分层组织,介绍了视频的分层组织系统机制, 以及在实际应用过程中如何使用。

开发者学堂课程【高校精品课-华中科技大学 -智能媒体计算视频的分层组织】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/811/detail/15697


视频的分层组织


内容介绍

一.结构化数据与非结构化数据

二.视频的分层组织

三.新闻视频

四.足球视频

五.基于内容的多媒体检索

六.视频分析流程


一. 结构化数据与非结构化数据

结构化数据

由二维表结构进行逻辑表达和实现的数据,也称作行数据

严格遵循数据格式与长度规范,主要通过关系型数据库进行存储

和管理

数据关系数据库里面,每一行就是一条记录,一条数据,符合这样特性的数据其实很多,比如个人信息表,上大学都有一张自己的表格,姓名、年龄、身份证号码,学号,籍贯以及其他的相关的信息,再比如成绩管理系统里面的个人成绩单。

亦或是图书的每一本书的的记录都是可以由若干字段,特定的格式这种属性去描述的,这就是结构化的数据。

非结构化数据

非结构化数据是数据结构不规则或不完整,没有预定义的数据模

.

不方便二维表结构进行逻辑表达

多媒体数据几乎全都是非结构化数据,比如音乐怎么变成一个二维表结构的图片,视频以及三维模型。初期,尤其在上个世纪90年代的时候,数据库盛行,多媒体的数据刚刚开始在计算机里面处理,大家也想通过二维表结构来进行表达怎么办?

比如说一张图片,图片的描述信息可以用结构化的数据,比如说图片有编号,给图片打标签上面有华中科技大学这些文字是可以的。但是图片里面的内容如何进行结构化?这实际上是很困难的。一段视频怎么去结构化,能不能用二维的表结构去表达?数据库的专家努力了很多年,到最后宣告失败:非结构化的数据尝试用二维的关系数据库表达,其实是不现实的。这是非结构化数据本身的复杂性所导致的。


二.视频的分层组织

那么这样的数据怎么办呢?通过比如机器视觉、人工智能的技术,要从原始的数据里面提取出一些能够用文本或者结构化数据去表达的,这一部分数据可以通过关系数据存储,数据的本身像视频、图像等可能要采用一些其他的方式,以视频为例:

image.png

视频本身是有一个层次结构的。视频是由一系列的图像,按照一定的频率播放的,它是一个连续的运动图像,位于最底层的一层是一帧帧的图像,在这个视频里面有一个专有名词叫帧(frame),也就是他是视频中的一幅图像。而这些视频中的一帧帧的图像是怎么来的?比如一部两小时的电影实际上都是一段段拍下来的。摄像师按照导演的意图,按照剧本的发展,在特定的场景里面拍摄特定的内容。

摄像机连续用拍摄的一组画面在视频分析里面给它一个定义,叫镜头(shot,这里面的镜头不是玻璃镜头len),它是指摄像机一次操作所拍摄的画面,比如摄像师对着老师拍了一组画面,调转摄像机,对着同学们拍了一组。老师是一次动作完成的,拍同学是另外一个镜头,一次动作所拍摄的画面叫镜头。一帧帧的图像是一个个的镜头拍摄下来的。多个镜头组合在一起就可以表达特定的场景。

比如老师在上课,拍老师的镜头和拍同学的镜头实际上共同的表达了一个老师在给学生上课的场景,那么这个场景(scene)是由一系列语义上相关、时间上相邻的镜头组成,它表达一个高层抽象的寓意。多个场景的就可以组成一个视频。比如一部电影是由若干场景组成的,整个电影有很多的情节,电影都是分级的,一个年龄段是一个级别,三岁到五岁之间的小朋友是理解不了并行的多个场景即情节的。拍电影的时候有多个并行的情节,共同组成了一部电影。

通过分析这个结果,发现实际上是满足一个层次的结构,越往下就越接近图像的最底层,即一帧一帧的图像,越往上越复杂,人越容易理解。要想实现很好的管理视频,提出了一个分层的组织框架,视频不是整段整段的存档,而要把它分成一个个的情节,一个个的场景,再把它切分成镜头,最后才是图像帧。

真正实现的时候是反的,视频都是一帧一帧的图像,把它切分成一个个的镜头,再组合成特定的场景,不同的场景连在一起,构成故事单元即情节等等。这就是分层组织的框架,在这个层次结构里面,视频最小的语义单元就是镜头(shot。因此,如何把一段连续的视频切分成一个个的镜头,是对视频进行结构化分析或语义分析的基础。


三.新闻视频

image.png

开始是节目的片头曲、主题曲,然后是播音员,后面是一条条的新闻在播,它是由若干个新闻专题(也把它叫做新闻故事)组合在一起的。每一条新闻由若干个镜头,播音员镜头,现场报道的镜头或场景组成。这些特定的每一个镜头又是由若干图像帧所组成。这就是新闻的层次结构。


四.足球视频

image.png

足球通常来讲是分上下半场,每个半场根据他的场景又有前场、后场、中场。

每一个场景又由若干镜头组成,有特写镜头,有球门的镜头,有发出的镜头,每个镜头仍然是由若干图像组成。如果比赛有加时赛,比如每个加时赛15分钟,如果还要继续就会还有点球,但是无论怎么做,它的组成都是在特定的领域是固定的篮球也分四节,也可以进行分层的组织。


五.基于内容的多媒体检索

 image.png

目前用户面临着海量的音频、图像、视频,包括三维模型等多媒体的信息,而我们的需求是要进行快速准确的访问,个性化的创作,内容的管理和基于内容的检索,还支持复杂的查询方式,比如基于文本,基于视觉特征,基于听觉特征,或手绘图的检索方式。

怎么实现基于内容的多媒体检索呢?

首先对它进行结构化的分析,要找进球的片段,进球的镜头,首先得把原始视频先切分成一个个的镜头,力度化小,否则原来的视频就是一段段的。一场比赛从中抽取的内容就不现实。基于内容的视频分析,第一步就是对它进行结构化的分析,从图像帧开始,通过比如说视觉特征,提特征之后进行镜头的分割。,通常叫 short boundary detection就是镜头的边界检测

image.png

有了这个不同的镜头之后,要找到镜头之间的联系,看是不是发生在同一个场景里面。把它聚类成特定的场景,再把不同的场景组合成情节或者视频的片段。基于内容的视频分析一点,视频的分段是基础。


六.视频分析流程

原始视频有两个途径,一个是互联网上的视频,一个是电脑里面的视频或视频库。

第一步,把获取视频的原数据提取低层的特征,包括视觉特征和音频特征。视觉有颜色、形状、纹理。听觉有能量可以转换到频度里面、强度、频谱特征。有了这些低层特征,还可以提取中层的特征,而中层的特征通常要加一些领域的知识,比如新闻视频,它是有新闻视频特定的规则,比如一开始有主题音乐,后边有两个播音员同时出现,两条新闻之间通常有播音员的切换,或者是短暂的静音区,这都是领域知识。足球比赛分上下半场,每个半场有进攻方,防守方;球场有观众镜头,有运动员的镜头。运动员的镜头是在球门区射门,可以通过这些领域知识来辅助提取。

所谓的中层特征就是它比计算机理解的低级特征要高,但是还没有完全到达人之间能理解的程度。中层特征提取有音频的分析,文本的分析,还有结构单元的检测。

要想实现更高层,还需要在领域知识的支持下,通过人工智能、计算机视觉等等对对象进行检测,对事件进行检测。提取出了这些特征实际上是对原始视频的一种表达或描述。有视觉的描述模型,听觉的描写,共同形成了描述库。

原始视频是非结构化的,但是通过提取特征之后就形成了描述库,实际上是文本文件结构化。描述库是描述原始视频内容的,因为它是结构化的,就可以采用结构化数据的管理方式对它进行管理。

image.png

这时可以提供相应的浏览和检索的方式,并且可以设计相应的人机交互的界面,来满足用户不同需求的这种检索服务。

相关文章
|
存储 安全 Unix
/var/log/messages说明
【4月更文挑战第5天】`/var/log/messages`是类Unix系统(包括Linux)的日志文件,存储系统启动、关闭、内核消息、服务状态和服务错误等信息。内容可能因配置和日志系统(如syslog、rsyslog、journald)不同而变化。现代Linux可能使用`journalctl`等工具访问journald日志,提供更强大管理功能。
2463 1
/var/log/messages说明
|
算法 计算机视觉 开发者
镜头边界检测(上)| 学习笔记
快速学习镜头边界检测(上),介绍了镜头边界检测(上)系统机制, 以及在实际应用过程中如何使用。
镜头边界检测(上)| 学习笔记
|
Java Maven Android开发
在Eclipse里配置Maven插件
Maven是一款比较常用的Java开发拓展包,它相当于一个全自动jar包管理器,会导入用户开发时需要使用的相应jar包。使用Maven开发Java程序,可以极大提升开发者的开发效率。下面我就跟大家介绍一下如何在Eclipse里安装和配置Maven插件。
638 0
|
文字识别 算法 计算机视觉
关键帧提取 | 学习笔记
快速学习关键帧提取,介绍了关键帧提取系统机制, 以及在实际应用过程中如何使用。
关键帧提取 | 学习笔记
|
2月前
|
人工智能 Linux API
保姆级图文教程!OpenClaw阿里云秒级部署+本地搭建+百炼/GLM-5接入指南
2026年,AI智能体的应用已从概念落地到日常,OpenClaw(原Clawdbot,俗称“小龙虾”)凭借开源免费、全平台适配、可扩展技能的核心优势,成为个人与轻量团队实现AI自动化的首选工具。它打破了传统AI仅能对话的局限,可通过对接阿里云百炼Coding Plan免费大模型、智谱GLM-5大模型,结合各类Skills插件,实现文件处理、代码生成、任务调度、办公自动化等全场景落地。
1686 2
|
2月前
|
人工智能 自然语言处理 API
OpenClaw(Clawdbot)阿里云极简部署+豆包Seed 2.0接入:从0到1搭建AI助手保姆级教程
OpenClaw(曾用名Clawdbot)是一款轻量化、可扩展的开源AI智能体执行框架,支持自然语言指令驱动、多模型灵活切换与全场景任务自动化。对于新手而言,阿里云凭借专属应用镜像、一键部署与稳定运行的特性,成为部署OpenClaw的最优选择,无需复杂环境配置,即可快速搭建7×24小时在线的AI服务,并接入豆包Seed 2.0大模型,实现高效文本处理、长上下文理解、代码生成与多模态交互。
1492 1
|
1月前
|
前端开发 JavaScript 大数据
前端组件库Element UI知识点大全(二)
教程来源 https://yyvgt.cn/category/jiuqi.html 本文深度解析Element UI表单验证(含内置规则、自定义校验、动态表单处理)、表格高级功能(树形结构、虚拟滚动、表单联动)及性能优化实践(按需引入、CDN、骨架屏等),助力企业级Vue项目高效开发与体验提升。
|
10月前
|
存储 监控 API
零基础 3 天搞定京东 / 淘宝 API 开发,从注册到调通接口全流程拆解
本文详解京东/淘宝API开发入门,涵盖账号注册、应用创建、签名生成及实战项目,助零基础开发者3天掌握电商API调用,实现商品数据获取与价格监控。
|
人工智能 Linux 开发工具
Kiln AI:零代码实现微调模型!自动生成合成数据与微调模型的开源平台
Kiln AI 是一款开源的 AI 开发工具,支持零代码微调多种语言模型,生成合成数据,团队协作开发,自动部署。帮助用户快速构建高质量的 AI 模型。
2090 8
Kiln AI:零代码实现微调模型!自动生成合成数据与微调模型的开源平台