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

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

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

课程地址: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

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

相关文章
|
11月前
|
存储 人工智能 Kubernetes
【企业架构】什么是数据架构? 管理数据的框架
【企业架构】什么是数据架构? 管理数据的框架
|
缓存 前端开发 中间件
DDD 领域驱动设计落地实践系列:工程结构分层设计
前面几篇文章中,笔者给大家阐述了 DDD 领域驱动设计的三大过程,重点围绕如何通过战略设计与战术设计进行 DDD 落地实践进行了详细的讨论,但是还没有涉及到工程层面的落地。实际上所有的这些架构理论到最后都是为了使得我们代码结构更加清晰,从而开发出 bug 少、扩展性强、逻辑清楚的应用。因此本文就是为了解决 DDD 领域驱动落地实践最后一公里问题,将我们分析出来的领域模型通过与工程结构的映射实现真正的落地。
DDD 领域驱动设计落地实践系列:工程结构分层设计
|
3天前
|
存储 运维 安全
软件体系结构 - 信息系统架构
【4月更文挑战第20天】软件体系结构 - 信息系统架构
34 13
|
10月前
|
消息中间件 缓存 前端开发
新项目,不妨采用这种架构分层,很优雅!
新项目,不妨采用这种架构分层,很优雅!
172 0
|
11月前
|
定位技术 uml
「业务架构」TOGAF建模之业务架构:组织分解图(组织映射)
「业务架构」TOGAF建模之业务架构:组织分解图(组织映射)
|
11月前
|
定位技术 uml
「业务架构」TOGAF建模:组织分解图(组织映射)
「业务架构」TOGAF建模:组织分解图(组织映射)
|
11月前
|
网络协议 大数据 网络性能优化
大数据开发基础的计算机网络的体系结构和分层模型
在大数据开发中,计算机网络是一个非常重要的概念。了解计算机网络的体系结构和分层模型对于实现高效的大数据处理和传输十分关键。
116 0
|
XML 设计模式 JSON
领域驱动设计总结——如何设计大型系统
本文为领域驱动设计系列总结的第五篇,主要对领域驱动设计概念做个介绍,本系列领域驱动设计总结主要是在Eric Evans 所编写的《领域驱动设计》 一书的基础上进行归纳和总结。本文主要介绍在领域驱动设计中如何设计大型系统。
154 0
|
测试技术 领域建模 数据库
建立领域驱动设计统一过程
建立领域驱动设计统一过程
建立领域驱动设计统一过程
|
SQL 安全 Java
软件分层设计 | 学习笔记
简介:快速学习软件分层设计
124 0
软件分层设计 | 学习笔记