直播视频数据的处理方法及装置、设备、可读介质转让专利

申请号 : CN202111650936.5

文献号 : CN114390368B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 谭维李松南

申请人 : 腾讯科技(深圳)有限公司

摘要 :

本申请的实施例揭示了一种直播视频数据的处理方法及装置、设备、可读介质。该方法包括:获取直播过程中的直播视频流,直播视频流中包含有多张图像帧,之后对图像帧进行人脸识别,并基于人脸识别结果对图像帧进行图像区域的划分,之后对划分得到的多个图像区域分别进行对象检测,得到各个图像区域的检测结果,之后基于各个图像区域的检测结果确定图像帧的标签,并基于具有相同标签的图像帧生成目标视频片段。本申请实施例的技术方案提升了定位所感兴趣的视频片段的效率,极大地优化了直播视频数据的处理方案。

权利要求 :

1.一种直播视频数据的处理方法,其特征在于,所述方法包括:获取直播过程中的直播视频流,所述直播视频流中包含有多张图像帧;

对所述图像帧进行人脸识别,并基于人脸识别结果对所述图像帧进行图像区域的划分,得到多个图像区域;

对所述多个图像区域分别进行对象检测,得到各个图像区域的检测结果,其中,不同图像区域对应的对象检测类型不相同;

基于所述各个图像区域的检测结果确定所述图像帧的标签;

基于所述图像帧的标签,对所述直播视频流中相邻图像帧的标签进行比较;

将所述多张图像帧中具有相同标签、且相邻的图像帧进行合并处理,得到初始视频片段;

根据所述初始视频片段中含有的图像帧的第一聚类信息,获取所述多张图像帧对应的中间特征向量;

根据所述多张图像帧的中间特征向量进行聚类,得到多个第二聚类信息;

获取同一第二聚类信息中生成时刻最早的图像帧,并将最早生成时刻作为第二聚类信息对应的物体的直播起始时刻,以及获取同一第二聚类信息中生成时刻最晚的图像帧,并将最晚生成时刻作为第二聚类信息对应的物体的直播终止时刻;

获取所述第一聚类信息所匹配的第二聚类信息对应的物体的直播起始时刻与直播终止时刻;

根据所述第一聚类信息所匹配的第二聚类信息对应的物体的直播起始时刻与直播终止时刻,对所述初始视频片段中含有的图像帧进行修正处理,以生成目标视频片段。

2.如权利要求1所述的方法,其特征在于,所述基于人脸识别结果对所述图像帧进行图像区域的划分,得到多个图像区域,包括:基于人脸识别结果对所述图像帧进行图像区域的划分,得到第一图像区域和第二图像区域;其中,所述第一图像区域为所述图像帧中处于所识别到的人脸上方的图像区域,所述第二图像区域为所述图像帧中处于所识别到的人脸下方的图像区域。

3.如权利要求1所述的方法,其特征在于,所述多个图像区域包括第一图像区域和第二图像区域,所述第一图像区域对应的对象检测类型为文字检测,所述第二图像区域对应的对象检测类型为物体检测;所述对所述多个图像区域分别进行对象检测,得到各个图像区域的检测结果,包括:对所述第一图像区域进行文字检测,得到所述第一图像区域的文字检测结果;以及,对所述第二图像区域进行物体检测,得到所述第二图像区域的物体检测结果。

4.如权利要求3所述的方法,其特征在于,所述对所述第一图像区域进行文字检测,得到所述第一图像区域的文字检测结果,包括:对所述第一图像区域进行文字识别,得到文字识别信息;

从所述文字识别信息中获取与物体相关的关键字信息,并将所述关键字信息作为所述第一图像区域的文字检测结果。

5.如权利要求4所述的方法,其特征在于,所述从所述文字识别信息中获取与物体相关的关键字信息,包括:将所述文字识别信息输入至预先训练好的语言模型中,得到与物体相关的关键字信息。

6.如权利要求3所述的方法,其特征在于,所述对所述第二图像区域进行物体检测,得到所述第二图像区域的物体检测结果,包括:对所述第二图像区域进行物体检测,得到物体检测信息;

根据所述物体检测信息对物体进行分类,得到所述物体的分类信息,并将所述分类信息作为所述第二图像区域的物体检测结果。

7.如权利要求6所述的方法,其特征在于,所述根据所述物体检测信息对物体进行分类,得到所述物体的分类信息,包括:将所述物体检测信息输入至预先训练好的分类器中,得到所述物体的分类信息。

8.如权利要求1至7中任一项所述的方法,其特征在于,所述基于具有相同标签的图像帧生成目标视频片段,包括:获取具有相同标签的图像帧对应的音频数据;

基于具有相同标签的图像帧,以及所述具有相同标签的图像帧对应的音频数据,生成所述目标视频片段。

9.如权利要求1至7中任一项所述的方法,其特征在于,所述基于所述各个图像区域的检测结果确定所述图像帧的标签,包括:基于所述各个图像区域的检测结果,生成对应于所述各个图像区域的子标签;

将所述各个图像区域的子标签分别作为所述图像帧的标签,以得到所述图像帧的标签。

10.一种直播视频数据的处理装置,其特征在于,所述装置包括:获取模块,配置为获取直播过程中的直播视频流,所述直播视频流中包含有多张图像帧;

划分模块,配置为对所述图像帧进行人脸识别,并基于人脸识别结果对所述图像帧进行图像区域的划分,得到多个图像区域;

检测模块,配置为对所述多个图像区域分别进行对象检测,得到各个图像区域的检测结果,其中,不同图像区域对应的对象检测类型不相同;

生成模块,配置为基于所述各个图像区域的检测结果确定所述图像帧的标签,并基于具有相同标签的图像帧生成目标视频片段;

其中,所述生成模块包括:比较单元,配置为基于所述图像帧的标签,对所述直播视频流中相邻图像帧的标签进行比较;生成单元,配置为将所述多张图像帧中具有相同标签、且相邻的图像帧进行合并处理,以生成所述目标视频片段;

所述生成单元包括:合并单元,配置为将所述多张图像帧中具有相同标签、且相邻的图像帧进行合并处理,得到初始视频片段;获取单元,配置为根据所述初始视频片段中含有的图像帧的第一聚类信息,获取所述第一聚类信息对应的物体的直播起始时刻与直播终止时刻;修正单元,配置为根据所述第一聚类信息对应的物体的直播起始时刻与直播终止时刻对所述初始视频片段中含有的图像帧进行修正处理,以生成所述目标视频片段;

所述获取单元具体配置为:获取所述多张图像帧对应的中间特征向量;根据所述多张图像帧的中间特征向量进行聚类,得到多个第二聚类信息;获取同一第二聚类信息中生成时刻最早的图像帧,并将最早生成时刻作为第二聚类信息对应的物体的直播起始时刻,以及获取同一第二聚类信息中生成时刻最晚的图像帧,并将最晚生成时刻作为第二聚类信息对应的物体的直播终止时刻;获取所述第一聚类信息所匹配的第二聚类信息对应的物体的直播起始时刻与直播终止时刻,根据所述第一聚类信息所匹配的第二聚类信息对应的物体的直播起始时刻与直播终止时刻,对所述初始视频片段中含有的图像帧进行修正处理,以生成目标视频片段。

11.如权利要求10所述的装置,其特征在于,所述划分模块具体配置为:基于人脸识别结果对所述图像帧进行图像区域的划分,得到第一图像区域和第二图像区域;其中,所述第一图像区域为所述图像帧中处于所识别到的人脸上方的图像区域,所述第二图像区域为所述图像帧中处于所识别到的人脸下方的图像区域。

12.如权利要求10所述的装置,其特征在于,所述多个图像区域包括第一图像区域和第二图像区域,所述第一图像区域对应的对象检测类型为文字检测,所述第二图像区域对应的对象检测类型为物体检测;所述检测模块包括:文字检测单元,配置为对所述第一图像区域进行文字检测,得到所述第一图像区域的文字检测结果;以及,物体检测单元,配置为对所述第二图像区域进行物体检测,得到所述第二图像区域的物体检测结果。

13.如权利要求12所述的装置,其特征在于,所述文字检测单元具体配置为:对所述第一图像区域进行文字识别,得到文字识别信息;

从所述文字识别信息中获取与物体相关的关键字信息,并将所述关键字信息作为所述第一图像区域的文字检测结果。

14.如权利要求13所述的装置,其特征在于,所述文字检测单元还具体配置为:将所述文字识别信息输入至预先训练好的语言模型中,得到与物体相关的关键字信息。

15.如权利要求12所述的装置,其特征在于,所述物体检测单元具体配置为:对所述第二图像区域进行物体检测,得到物体检测信息;

根据所述物体检测信息对物体进行分类,得到所述物体的分类信息,并将所述分类信息作为所述第二图像区域的物体检测结果。

16.如权利要求15所述的装置,其特征在于,所述物体检测单元还具体配置为:将所述物体检测信息输入至预先训练好的分类器中,得到所述物体的分类信息。

17.如权利要求10至16中任一项所述的装置,其特征在于,所述生成单元还具体配置为:获取具有相同标签的图像帧对应的音频数据;

基于具有相同标签的图像帧,以及所述具有相同标签的图像帧对应的音频数据,生成所述目标视频片段。

18.如权利要求10至16中任一项所述的装置,其特征在于,所述生成单元还具体配置为:基于所述各个图像区域的检测结果,生成对应于所述各个图像区域的子标签;

将所述各个图像区域的子标签分别作为所述图像帧的标签,以得到所述图像帧的标签。

19.一种电子设备,其特征在于,包括:

一个或多个处理器;

存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述电子设备执行时,使得所述电子设备实现如权利要求1至9中任一项所述的直播视频数据的处理方法。

20.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至9中任一项所述的直播视频数据的处理方法。

说明书 :

直播视频数据的处理方法及装置、设备、可读介质

技术领域

[0001] 本申请涉及计算机技术领域,具体而言,涉及一种直播视频数据的处理方法、直播视频数据的处理装置、电子设备及计算机可读介质。

背景技术

[0002] 目前,直播视频能够快速高效地传递信息,具有实时性、现场性、直观性等特点,逐渐成为互联网的重点表达方式。其中,消费类直播视频是直播视频的一个重要细分领域,在消费类直播视频中,主播可以向用户(即观众)展示并介绍所推荐的物体(即商品)。
[0003] 相关技术中如果用户错过了实时的直播视频,其可以通过回放直播视频的方式进行回看,但是很难快速定位到用户所感兴趣的视频片段。
[0004] 可见,如何提升定位感兴趣的视频片段的效率亟待解决的问题。

发明内容

[0005] 为解决上述技术问题,本申请的实施例提供了一种直播视频数据的处理方法及装置、电子设备、可读介质,进而至少在一定程度上提升了定位感兴趣的视频片段的效率。
[0006] 根据本申请实施例的一个方面,提供了一种直播视频数据的处理方法,所述方法包括:获取直播过程中的直播视频流,所述直播视频流中包含有多张图像帧;对所述图像帧进行人脸识别,并基于人脸识别结果对所述图像帧进行图像区域的划分,得到多个图像区域;对所述多个图像区域分别进行对象检测,得到各个图像区域的检测结果,其中,不同图像区域对应的对象检测类型不相同;基于所述各个图像区域的检测结果确定所述图像帧的标签,并基于具有相同标签的图像帧生成目标视频片段。
[0007] 根据本申请实施例的一个方面,提供了一种直播视频数据的处理装置,所述装置包括:获取模块,配置为获取直播过程中的直播视频流,所述直播视频流中包含有多张图像帧;划分模块,配置为对所述图像帧进行人脸识别,并基于人脸识别结果对所述图像帧进行图像区域的划分,得到多个图像区域;检测模块,配置为对所述多个图像区域分别进行对象检测,得到各个图像区域的检测结果,其中,不同图像区域对应的对象检测类型不相同;生成模块,配置为基于所述各个图像区域的检测结果确定所述图像帧的标签,并基于具有相同标签的图像帧生成目标视频片段。
[0008] 在本申请的一个实施例中,基于前述方案,所述划分模块具体配置为:基于人脸识别结果对所述图像帧进行图像区域的划分,得到第一图像区域和第二图像区域;其中,所述第一图像区域为所述图像帧中处于所识别到的人脸上方的图像区域,所述第二图像区域为所述图像帧中处于所识别到的人脸下方的图像区域。
[0009] 在本申请的一个实施例中,基于前述方案,所述多个图像区域包括第一图像区域和第二图像区域,所述第一图像区域对应的对象检测类型为文字检测,所述第二图像区域对应的对象检测类型为物体检测;所述检测模块包括:文字检测单元,配置为对所述第一图像区域进行文字检测,得到所述第一图像区域的文字检测结果;以及,物体检测单元,配置为对所述第二图像区域进行物体检测,得到所述第二图像区域的物体检测结果。
[0010] 在本申请的一个实施例中,基于前述方案,所述文字检测单元具体配置为:对所述第一图像区域进行文字识别,得到文字识别信息;从所述文字识别信息中获取与物体相关的关键字信息,并将所述关键字信息作为所述第一图像区域的文字检测结果。
[0011] 在本申请的一个实施例中,基于前述方案,所述文字检测单元还具体配置为:将所述文字识别信息输入至预先训练好的语言模型中,得到与物体相关的关键字信息。
[0012] 在本申请的一个实施例中,基于前述方案,所述物体检测单元具体配置为:对所述第二图像区域进行物体检测,得到物体检测信息;根据所述物体检测信息对物体进行分类,得到所述物体的分类信息,并将所述分类信息作为所述第二图像区域的物体检测结果。
[0013] 在本申请的一个实施例中,基于前述方案,所述物体检测单元还具体配置为:将所述物体检测信息输入至预先训练好的分类器中,得到所述物体的分类信息。
[0014] 在本申请的一个实施例中,基于前述方案,所述生成模块包括:比较单元,配置为基于所述图像帧的标签,对所述直播视频流中相邻图像帧的标签进行比较;生成单元,配置为将所述多张图像帧中具有相同标签、且相邻的图像帧进行合并处理,以生成所述目标视频片段。
[0015] 在本申请的一个实施例中,基于前述方案,所述生成单元包括:合并单元,配置为将所述多张图像帧中具有相同标签、且相邻的图像帧进行合并处理,得到初始视频片段;获取单元,配置为根据所述初始视频片段中含有的图像帧的第一聚类信息,获取所述第一聚类信息对应的物体的直播起始时刻与直播终止时刻;修正单元,配置为根据所述第一聚类信息对应的物体的直播起始时刻与直播终止时刻对所述初始视频片段中含有的图像帧进行修正处理,以生成所述目标视频片段。
[0016] 在本申请的一个实施例中,基于前述方案,所述获取单元具体配置为:获取所述多张图像帧对应的中间特征向量;根据所述多张图像帧的中间特征向量进行聚类,得到多个第二聚类信息;获取同一第二聚类信息中生成时刻最早的图像帧,并将最早生成时刻作为第二聚类信息对应的物体的直播起始时刻,以及获取同一第二聚类信息中生成时刻最晚的图像帧,并将最晚生成时刻作为第二聚类信息对应的物体的直播终止时刻;获取所述第一聚类信息所匹配的第二聚类信息对应的物体的直播起始时刻与直播终止时刻。
[0017] 在本申请的一个实施例中,基于前述方案,所述生成单元具体配置为:获取具有相同标签的图像帧对应的音频数据;基于具有相同标签的图像帧,以及所述具有相同标签的图像帧对应的音频数据,生成所述目标视频片段。
[0018] 在本申请的一个实施例中,基于前述方案,所述生成单元具体配置为:基于所述各个图像区域的检测结果,生成对应于所述各个图像区域的子标签;将所述各个图像区域的子标签分别作为所述图像帧的标签,以得到所述图像帧的标签。
[0019] 根据本申请实施例的一个方面,提供了一种电子设备,包括一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述电子设备实现如上所述的直播视频数据的处理方法。
[0020] 根据本申请实施例的一个方面,提供了一种计算机可读介质,其上存储有计算机程序,当所述计算机程序被计算机的处理器执行时,使计算机执行如上所述的直播视频数据的处理方法。
[0021] 根据本申请实施例的一个方面,提供了一种计算机程序产品,包括计算机指令,该计算机指令被计算机的处理器执行时实现如上所述的直播视频数据的处理方法。
[0022] 在本申请的实施例提供的技术方案中,通过对直播视频流中含有的图像帧进行人脸识别,进而基于人脸识别结果对图像帧进行图像区域的划分,并对划分得到的多个图像区域分别进行对象检测,其中不同图像区域对应的对象检测类型不相同,由此实现了对不同图像区域的精准对象检测,检测粒度更为细腻,因而基于各个图像区域的检测结果确定出的图像帧的标签更为准确,相应地,基于具有相同标签的图像帧生成的目标视频片段也更为准确;同时由于生成了目标视频片段,因此用户可以快速定位到所感兴趣的视频片段,提升了定位所感兴趣的视频片段的效率,在一定程度上提升了用户的使用体验。
[0023] 应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。

附图说明

[0024] 此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术者来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
[0025] 图1是可以应用本申请实施例的技术方案的示例性架构的示意图;
[0026] 图2是本申请的一示例性实施例示出的直播视频数据的处理方法的流程图;
[0027] 图3是本申请的一示例性实施例示出的划分图像区域的示意图;
[0028] 图4是本申请的一示例性实施例示出的划分图像区域的示意图;
[0029] 图5是图2所示实施例中的步骤S203在一示例性实施例中的流程图;
[0030] 图6是图5所示实施例中的步骤S501在一示例性实施例中的流程图;
[0031] 图7是图5所示实施例中的步骤S502在一示例性实施例中的流程图;
[0032] 图8是本申请的一示例性实施例示出的标记目标视频片段的示意图;
[0033] 图9是本申请的一示例性实施例示出的组合目标视频片段的示意图;
[0034] 图10是图2所示实施例中的步骤S204在一示例性实施例中的流程图;
[0035] 图11是图2所示实施例中的步骤S204在一示例性实施例中的流程图;
[0036] 图12是图11所示实施例中的步骤S1102在一示例性实施例中的流程图;
[0037] 图13是图12所示实施例中的步骤S1202在一示例性实施例中的流程图;
[0038] 图14是本申请的一示例性实施例示出的直播视频数据的处理方法的流程图;
[0039] 图15是图2所示实施例中的步骤S204在一示例性实施例中的流程图;
[0040] 图16是本申请的一示例性实施例示出的直播视频数据的处理方法的流程图;
[0041] 图17是本申请的一示例性实施例示出的直播视频数据的处理的示意图;
[0042] 图18是本申请的一示例性实施例示出的直播视频数据的处理装置的框图;
[0043] 图19是适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。

具体实施方式

[0044] 这里将详细地对示例性实施例执行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相相同的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相同的装置和方法的例子。
[0045] 附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
[0046] 附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
[0047] 需要说明的是,在本申请中提及的“多个”是指两个或者两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
[0048] 随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服、智能数据处理等。相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
[0049] 本申请实施例提供的方案涉及人工智能的智能数据处理技术,具体地,涉及到直播视频相关数据的处理。可以理解的是,直播视频能够快速高效地传递信息,具有实时性、现场性、直观性等特点,逐渐成为互联网的重点表达方式。其中,消费类直播视频是直播视频的一个重要细分领域,在消费类直播视频中,主播可以向用户(即观众)展示并介绍所推荐的物体(即商品)。
[0050] 相关技术中如果用户错过了实时的直播视频,其可以通过回放直播视频的方式进行回看,但是很难快速定位到用户所感兴趣的视频片段。
[0051] 因此,在直播视频数据的处理场景下,本申请实施例提出了一种直播视频数据的处理方法。请参阅图1,图1是本申请一种示例性实施环境的示意图。该实施环境中包括终端设备101和服务器102,终端设备101和服务器102之间通过有线或者无线网络进行通信。
[0052] 应该理解,图1中的终端设备101和服务器102的数目仅仅是示意性的。根据实际需要,可以具有任意数目的终端设备101和服务器102。
[0053] 其中,终端设备101对应客户端,其可以是任意具有用户输入接口的电子设备,包括但不限于智能手机、平板、笔记本电脑、计算机等等,其中,用户输入接口包括但不限于触摸屏、键盘、物理按键、音频拾取装置等。
[0054] 其中,服务器102对应服务端,其可以是提供各种服务的服务器,其可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)以及大数据和人工智能平台等基础云计算服务的云服务器,本处不对此进行限制。
[0055] 在本申请的一些实施例中,直播视频数据的处理方法可以由服务器102执行,相应地,直播视频数据的处理装置配置于服务器102中。可选地,服务器102可以获取直播过程中的直播视频流,直播视频流中包含有多张图像帧,之后对图像帧进行人脸识别,并基于人脸识别结果对图像帧进行图像区域的划分,得到多个图像区域,之后对多个图像区域分别进行对象检测,得到各个图像区域的检测结果,其中不同图像区域对应的对象检测类型不相同,之后基于各个图像区域的检测结果确定图像帧的标签,并基于具有相同标签的图像帧生成目标视频片段;可选地,将生成的目标视频片段发送至终端设备101中。
[0056] 在本申请的一些实施例中,直播视频数据的处理方法可以由终端设备101执行,相应地,直播视频数据的处理装置配置于终端设备101中。可选地,终端设备101可以获取直播过程中的直播视频流,直播视频流中包含有多张图像帧,之后对图像帧进行人脸识别,并基于人脸识别结果对图像帧进行图像区域的划分,得到多个图像区域,之后对多个图像区域分别进行对象检测,得到各个图像区域的检测结果,其中不同图像区域对应的对象检测类型不相同,之后基于各个图像区域的检测结果确定图像帧的标签,并基于具有相同标签的图像帧生成目标视频片段;可选地,将生成的目标视频片段发送至服务器102中或其他终端设备中。
[0057] 通过实施本申请实施例的技术方案,由于对直播视频流中含有的图像帧进行人脸识别,并基于人脸识别结果对图像帧进行图像区域的划分,且对划分得到的多个图像区域分别进行对象检测,其中不同图像区域对应的对象检测类型不相同,因此实现了对不同图像区域的精准对象检测,检测粒度更为细腻,相应地,基于各个图像区域的检测结果确定出的图像帧的标签更为准确,以及基于具有相同标签的图像帧生成的目标视频片段也更为准确;同时用户可以根据所生成的准确的视频片段快速定位到其所感兴趣的视频片段,在一定程度上提升了用户的使用体验。
[0058] 以下对本申请实施例的技术方案的各种实现细节进行详细阐述:
[0059] 请参阅图2,图2是本申请的一个实施例示出的直播视频数据的处理方法的流程图,该直播视频数据的处理方法可以由图1中所示的服务器102来执行。如图2所示,直播视频数据的处理方法至少包括步骤S201至步骤S204,详细介绍如下:
[0060] 步骤S201,获取直播过程中的直播视频流,直播视频流中包含有多张图像帧。
[0061] 本申请实施例中直播视频流指的是任意类型的直播视频流,例如直播视频流包括但不限于消费类的直播视频流,其中只要是涉及到消费则都可以属于消费类的直播视频流。
[0062] 可以理解的是,在直播过程中,主播的终端设备会不断的向服务器推送直播视频流;例如在直播过程中,主播的终端设备会实时采集图像数据以及语音数据,并根据采集到图像数据以及语音数据输出符合视频编码要求的视频数据,如YUY格式的视频数据或RGB格式的视频数据;之后主播的终端设备可以采用预设编码方式和封装方式,对输出得到的符合视频编码要求的视频数据进行编码和封装处理,得到直播视频流,并将直播视频流上传至服务器。相应地,观众的终端设备会不断的从服务器拉取直播视频流,以根据直播视频流生成直播画面进行观看;例如观众可以在观众的终端设备登录服务器,从而进入到主播的直播间,获取到前述直播端的终端设备所推送的直播视频流,之后即可根据直播视频流生成直播画面供观众观看。
[0063] 可以理解的是,直播视频流是由多张图像帧所组合形成,因此,直播视频流中含有多张图像帧。其中,根据直播视频流的清晰度不同,其所含有的图像帧的数量也会有所不同;通常直播视频流的清晰度越高,则其所含有的图像帧的数量会越多。
[0064] 步骤S202,对图像帧进行人脸识别,并基于人脸识别结果对图像帧进行图像区域的划分,得到多个图像区域。
[0065] 本申请实施例中获取直播过程中的包含有多张图像帧的直播视频流,之后可以对图像帧进行人脸识别,并基于人脸识别结果对图像帧进行图像区域的划分,得到多个图像区域。
[0066] 可以理解的是,直播视频流中存在主播这一用户,因此,可以对直播视频流中所含有的图像帧进行人脸识别。其中,进行人脸识别可以采用任意的人脸识别算法,包括但不限于基于人脸特征点的识别算法(feature‑based recognition algorithms),基于整幅人脸图像的识别算法(appearance‑based recognition algorithms),基于模板的识别算法(template‑based recognition  algorithms),利用神经网络进行识别的算法(recognition algorithms using neural network),利用支持向量机进行识别的算法(recognition algorithms using SVM)等。
[0067] 在本申请的一个实施例中,可以是对直播视频流中含有的所有图像帧均进行人脸识别,并基于人脸识别结果对图像帧进行图像区域的划分,得到多个图像区域。也即,可选实施例中对于每一张图像帧而言,都会进行人脸识别,并基于人脸识别结果对图像帧进行图像区域的划分,得到多个图像区域。这样,由于是对所有图像帧进行了人脸识别处理,后期基于人脸识别结果进行区域划分以及最终生成目标视频片段的准确性相对更高。
[0068] 在本申请的一个实施例中,可以是对直播视频流中含有的部分图像帧进行人脸识别,并基于人脸识别结果对图像帧进行图像区域的划分,得到多个图像区域;其中,相邻的两张或多张图像帧的图像内容通常变化不大,因此,可以采用间隔取图像帧的方式,得到部分图像帧。也即,可选实施例中可以对部分图像帧进行人脸识别,并基于人脸识别结果对图像帧进行图像区域的划分,得到多个图像区域。这样,由于是对部分图像帧进行了人脸识别处理,可以在一定程度上减少计算的数据量,从而降低系统开销。
[0069] 在本申请的一个实施例中,步骤S202中基于人脸识别结果对图像帧进行图像区域的划分,得到多个图像区域的过程,可以包括以下步骤,详细介绍如下:
[0070] 基于人脸识别结果对图像帧进行图像区域的划分,得到第一图像区域和第二图像区域;其中,第一图像区域为图像帧中处于所识别到的人脸上方的图像区域,第二图像区域为图像帧中处于所识别到的人脸下方的图像区域。
[0071] 也即,可选实施例中可以基于人脸识别结果对图像帧进行图像区域的划分,得到两个图像区域,其中,得到的两个图像区域分别为图像帧中处于所识别到的人脸上方的图像区域,以及图像帧中处于所识别到的人脸下方的图像区域。可以理解的是,可选实施例中将图像帧中处于所识别到的人脸上方的图像区域称之为第一图像区域,以及将图像帧中处于所识别到的人脸下方的图像区域称之为第二图像区域。
[0072] 举例说明,例如请参阅图3,为一种示例的图像帧,其中基于人脸识别结果对图像帧进行了图像区域的划分,得到图像帧中处于所识别到的人脸上方的图像区域(即虚线所圈出的第一图像区域301),以及得到图像帧中处于所识别到的人脸下方的图像区域(即虚线所圈出的第二图像区域302)。
[0073] 在本申请的一个实施例中,步骤S202中基于人脸识别结果对图像帧进行图像区域的划分,得到多个图像区域的过程,可以包括以下步骤,详细介绍如下:
[0074] 基于人脸识别结果对图像帧进行图像区域的划分,得到第三图像区域和第四图像区域;其中,第三图像区域为图像帧中处于所识别到的人脸左侧的图像区域,第二图像区域为图像帧中处于所识别到的人脸右侧的图像区域。
[0075] 也即,可选实施例中可以基于人脸识别结果对图像帧进行图像区域的划分,得到两个图像区域,其中,得到的两个图像区域分别为图像帧中处于所识别到的人脸左侧的图像区域,以及图像帧中处于所识别到的人脸右侧的图像区域。可以理解的是,可选实施例中将图像帧中处于所识别到的人脸左侧的图像区域称之为第三图像区域,以及将图像帧中处于所识别到的人脸右侧的图像区域称之为第四图像区域。
[0076] 举例说明,例如请参阅图4,为一种示例的图像帧,其中基于人脸识别结果对图像帧进行了图像区域的划分,得到图像帧中处于所识别到的人脸左侧的图像区域(即虚线所圈出的第三图像区域401),以及得到图像帧中处于所识别到的人脸右侧的图像区域(即虚线所圈出的第四图像区域402)。
[0077] 需要说明的是,前述所介绍的两种划分方式中,基于人脸识别结果对图像帧进行从高度方向上进行图像区域的划分方式更为符合应用场景,在某些特殊应用场景中,可以适用于基于人脸识别结果对图像帧进行从水平方向上进行图像区域的划分方式。
[0078] 需要说明的是,前述所介绍两种划分方式中,均是划分为两个图像区域,在实际应用中,还可以划分为三个及三个以上的图像区域,根据具体的应用场景进行灵活调整即可。
[0079] 步骤S203,对多个图像区域分别进行对象检测,得到各个图像区域的检测结果,其中,不同图像区域对应的对象检测类型不相同。
[0080] 本申请实施例中对图像帧进行人脸识别,并基于人脸识别结果对图像帧进行图像区域的划分,得到多个图像区域,之后可以对多个图像区域分别进行对象检测,得到各个图像区域的检测结果。
[0081] 本申请实施例中的对象检测指的是对图像区域所对应的图像内容进行检测,其中的图像内容即为待检测的对象。
[0082] 在本申请的一个实施例中,不同图像区域所对应的对象检测类型可以不同。例如有2个图像区域,其中第一图像区域所对应的图像内容是文字,而第二图像区域所对应的图像内容是物体;可以理解的是,第一图像区域所对应的图像内容“文字”即为待检测的对象,第二图像区域所对应的图像内容“物体”也为待检测的对象,那么此时第一图像区域对应的对象检测类型为文字检测,第二图像区域对应的对象检测类型为物体检测。
[0083] 在本申请的一个实施例中,不同图像区域所对应的对象检测类型可以相同。例如有3个图像区域,其中第一图像区域和第二图像区域所对应的图像内容均是文字,第三图像区域所对应的图像内容是物体;可以理解的是,第一图像区域和第二图像区域所对应的图像内容“文字”即为待检测的对象,第三图像区域所对应的图像内容“物体”也为待检测的对象,那么此时第一图像区域和第二图像区域对应的对象检测类型均为文字检测,第三图像区域对应的对象检测类型为物体检测。
[0084] 本申请实施例中后文以得到的多个图像区域包括第一图像区域和第二图像区域,其中第一图像区域对应的对象检测类型为文字检测,第二图像区域对应的对象检测类型为物体检测进行示例说明。
[0085] 在本申请的一个实施例中,请参阅图5,步骤S203中对多个图像区域分别进行对象检测,得到各个图像区域的检测结果的过程,可以包括步骤S501至步骤S502,详细介绍如下:
[0086] 步骤S501,对第一图像区域进行文字检测,得到第一图像区域的文字检测结果;以及,
[0087] 步骤S502,对第二图像区域进行物体检测,得到第二图像区域的物体检测结果。
[0088] 也即,可选实施例中可以对第一图像区域进行文字检测,得到第一图像区域的文字检测结果,以及对第二图像区域进行物体检测,得到第二图像区域的物体检测结果。
[0089] 其中,可选实施例中步骤S501与步骤S502可以并行执行,也可以任意交换顺序执行,在实际应用中,可以根据具体应用场景进行灵活调整。
[0090] 在本申请的一个实施例中,请参阅图6,步骤S501中对第一图像区域进行文字检测,得到第一图像区域的文字检测结果的过程,可以包括步骤S601至步骤S602,详细介绍如下:
[0091] 步骤S601,对第一图像区域进行文字识别,得到文字识别信息;
[0092] 步骤S602,从文字识别信息中获取与物体相关的关键字信息,并将关键字信息作为第一图像区域的文字检测结果。
[0093] 也即,可选实施例中可以先对第一图像区域进行文字识别,得到文字识别信息,之后从文字识别信息中获取与物体相关的关键字信息,并将关键字信息作为第一图像区域的文字检测结果。
[0094] 其中,可选实施例中由于是要确定图像帧的标签,因此,在对第一图像区域进行文字识别得到文字识别信息后,是从文字识别信息中获取与物体相关的关键字信息,而过滤掉其他与物体无关的信息,此时获取到的与物体相关的关键字信息即为该第一图像区域的文字检测结果。
[0095] 其中,可选实施例中进行文字识别可以采用任意的文字识别算法,包括但不限于模板匹配算法,几何特征抽取算法等。
[0096] 举例说明,例如对第一图像区域进行文字识别,得到文字识别信息a1、a2、a3、a4、a5、a6、a7,然后从文字识别信息a1、a2、a3、a4、a5、a6、a7分别获取与物体相关的关键字信息,设获取到的关键字信息为“游戏充值卡”,则此时关键字信息“游戏充值卡”即作为第一图像区域的文字检测结果。
[0097] 这样,通过对第一图像区域进行其对应的文字检测,可以简单便捷地得到第一图像区域的文字检测结果,以为后续确定图像帧的标签提供支持。
[0098] 在本申请的一个实施例中,步骤S602中从文字识别信息中获取与物体相关的关键字信息,并将关键字信息作为第一图像区域的文字检测结果的过程,可以包括以下步骤,详细介绍如下:
[0099] 将文字识别信息输入至预先训练好的语言模型中,得到与物体相关的关键字信息。
[0100] 也即,可选实施例中可以先通过文字样本数据进行训练,得到训练好的语言模型,之后将得到的文字识别信息直接输入至训练好的语言模型中即可得到与物体相关的关键字信息。这样,通过预先训练好的语言模型,可以简单便捷地得到与物体相关的关键字信息。
[0101] 其中,可选实施例中预先训练好的语言模型可以采用任意的神经网络(NN,Neural Networks)算法进行训练得到,包括但不限于CNN(Convolutional Neural Networks,卷积神经网络),RNN(Recurrent Neural Network,循环神经网络)等。
[0102] 在本申请的一个实施例中,请参阅图7,步骤S502中对第二图像区域进行物体检测,得到第二图像区域的物体检测结果的过程,可以包括步骤S701至步骤S702,详细介绍如下:
[0103] 步骤S701,对第二图像区域进行物体检测,得到物体检测信息;
[0104] 步骤S702,根据物体检测信息对物体进行分类,得到物体的分类信息,并将分类信息作为第二图像区域的物体检测结果。
[0105] 也即,可选实施例中可以先对第二图像区域进行物体检测,得到物体检测信息,之后根据物体检测信息对物体进行分类,得到物体的分类信息,并将分类信息作为第二图像区域的物体检测结果。
[0106] 其中,可选实施例中由于是要确定图像帧的标签,因此,在对第二图像区域进行物体检测得到物体检测信息后,是根据物体检测信息对物体进行分类,得到物体的分类信息,从而可以识别该物体,此时获取到的物体的分类信息即为该第二图像区域的物体检测结果。
[0107] 举例说明,例如对第二图像区域进行物体检测,得到物体检测信息b1、b2,然后根据物体检测信息b1、b2分别对物体进行分类,得到物体的分类信息,设得到的物体的分类信息均为“游戏充值卡”,则此时分类信息“游戏充值卡”即作为第二图像区域的物体检测结果。
[0108] 这样,通过对第二图像区域进行其对应的物体检测,可以简单便捷地得到第二图像区域的物体检测结果,以为后续确定图像帧的标签提供支持。
[0109] 在本申请的一个实施例中,步骤S702中根据物体检测信息对物体进行分类,得到物体的分类信息的过程,可以包括以下步骤,详细介绍如下:
[0110] 将物体检测信息输入至预先训练好的分类器中,得到物体的分类信息。
[0111] 也即,可选实施例中可以先通过物体样本数据进行训练,得到训练好的分类器,之后将得到的物体检测信息直接输入至训练好的分类器中即可得到物体的分类信息。这样,通过预先训练好的分类器,可以简单便捷地得到物体的分类信息。
[0112] 其中,可选实施例中预先训练好的分类器同样可以采用任意的神经网络算法进行训练得到,包括但不限于卷积神经网络,循环神经网络等。
[0113] 步骤S204,基于各个图像区域的检测结果确定图像帧的标签,并基于具有相同标签的图像帧生成目标视频片段。
[0114] 本申请实施例中对多个图像区域分别进行对象检测,得到各个图像区域的检测结果,之后可以基于各个图像区域的检测结果确定图像帧的标签,并基于具有相同标签的图像帧生成目标视频片段。
[0115] 本申请实施例中图像帧的标签指的是对图像帧起标识作用的信息,通过图像帧的标签可以快速定位该图像帧是属于所推荐的哪个/哪种商品的图像帧;例如图像帧的标签为“游戏充值卡”,那么该图像帧即为“游戏充值卡”相关的直播图像帧。
[0116] 本申请实施例中的目标视频片段是根据具有相同标签的图像帧组合得到,其中目标视频片段的数量可以是一个或多个。可以理解的是,在一次直播过程其对应的直播视频中通常会有多个物体的展示与推荐,因此,可以生成多个目标视频片段。这样用户后期可以直接回看所感兴趣的目标视频片段即可,而不再会有无法快速定位到其所感兴趣的视频片段,体验感差的问题。
[0117] 在本申请的一个实施例中,目标视频片段可以不与其他目标视频片段分开,只是需要在每个目标视频片段的起始时刻和终止时刻进行标记,其中一目标视频片段的起始时刻即为相邻另一目标视频片段的终止时刻,相应地,一目标视频片段的终止时刻即为相邻另一目标视频片段的起始时刻。例如请参阅图8,为一种示例的直播视频,其中标记有1、2、3、4、5,可以理解的是,标记1对应目标视频片段1的起始时刻,标记2对应目标视频片段1的终止时刻,相应地,标记2也同时对应目标视频片段2的起始时刻,标记3、4、5依次类推即可。
[0118] 在本申请的一个实施例中,目标视频片段可以与其他目标视频片段分开,即直播视频包括一个或多个组合的目标视频片段。例如请参阅图9,为一种示例的直播视频,其中直播视频具体分为了目标视频片段1、目标视频片段2、目标视频片段3、目标视频片段4,用户可以根据其兴趣点选择对应的目标视频片段进行播放即可。
[0119] 在本申请的一个实施例中,请参阅图10,步骤S204中基于各个图像区域的检测结果确定图像帧的标签的过程,可以包括步骤S1001至步骤S1002,详细介绍如下:
[0120] 步骤S1001,基于各个图像区域的检测结果,生成对应于各个图像区域的子标签;
[0121] 步骤S1002,将各个图像区域的子标签分别作为图像帧的标签,以得到图像帧的标签。
[0122] 也即,可选实施例中可以基于各个图像区域的检测结果,生成对应于各个图像区域的子标签,之后将各个图像区域的子标签分别作为图像帧的标签,即可得到图像帧的标签。
[0123] 其中,可选实施例中因为是将各个图像区域的子标签分别作为图像帧的标签,因此如果存在不同图像区域的子标签相同时,那么得到的图像帧的标签则会有重复的子标签,此时可以将重复的子标签去掉任意一个,以避免子标签重复的现象。
[0124] 举例说明,例如设图像帧1对应有第一图像区域和第二图像区域,同时设第一图像区域的检测结果为“游戏充值卡”,第二图像区域的检测结果也为“游戏充值卡”,那么此时针对第一图像区域的子标签为“游戏充值卡”,针对第二图像区域的子标签也为“游戏充值卡”,可见存在重复的子标签,则删掉其中一个即可,最终得到的图像帧1的标签为“游戏充值卡”。
[0125] 这样,将各个图像区域的子标签分别作为图像帧的标签,可以得到图像帧较为全面、准确的标签,在一定程度上提升了基于标签来生成目标视频片段的准确性。
[0126] 可以理解的是,本申请实施例中包括但不限于通过以下方式生成目标视频片段,详细介绍如下:
[0127] 在本申请的一个实施例中,请参阅图11,步骤S204中基于具有相同标签的图像帧生成目标视频片段的过程,可以包括步骤S1101至步骤S1102,详细介绍如下:
[0128] 步骤S1101,基于图像帧的标签,对直播视频流中相邻图像帧的标签进行比较;
[0129] 步骤S1102,将多张图像帧中具有相同标签、且相邻的图像帧进行合并处理,以生成目标视频片段。
[0130] 也即,可选实施例中可以基于图像帧的标签对直播视频流中相邻图像帧的标签进行比较,之后根据比较结果将多张图像帧中具有相同标签、且相邻的图像帧进行合并处理,以生成目标视频片段。
[0131] 其中,可选实施例中如果多张图像帧的标签相同且位置相邻,则表征该多张图像帧与同一商品相关,因此,将该多张图像帧进行合并处理,即可得到同一商品的目标视频片段。
[0132] 举例说明,例如设有1500张图像帧,其中前750张图像帧的标签均为标签1,且每张图像帧是连续采集到的,后750张图像帧的标签均为标签2,且每张图像帧是连续采集到的,因此,此时前750张图像帧进行合并处理,得到目标视频片段1,后750张图像帧进行合并处理,得到目标视频片段2。
[0133] 这样,通过将多张图像帧中具有相同标签、且相邻的图像帧进行合并处理,能够快速生成目标视频片段,提升了生成目标视频片段的速率。
[0134] 在本申请的一个实施例中,请参阅图12,步骤S1102中将多张图像帧中具有相同标签、且相邻的图像帧进行合并处理,以生成目标视频片段的过程,可以包括步骤S1201至步骤S1203,详细介绍如下:
[0135] 步骤S1201,将多张图像帧中具有相同标签、且相邻的图像帧进行合并处理,得到初始视频片段;
[0136] 步骤S1202,根据初始视频片段中含有的图像帧的第一聚类信息,获取第一聚类信息对应的物体的直播起始时刻与直播终止时刻;
[0137] 步骤S1203,根据第一聚类信息对应的物体的直播起始时刻与直播终止时刻对初始视频片段中含有的图像帧进行修正处理,以生成目标视频片段。
[0138] 也即,可选实施例中可以先将多张图像帧中具有相同标签、且相邻的图像帧进行合并处理,得到初始视频片段,之后根据初始视频片段中含有的图像帧的第一聚类信息,获取第一聚类信息对应的物体的直播起始时刻与直播终止时刻,之后根据类别信息对应的物体的直播起始时刻与直播终止时刻对初始视频片段中含有的图像帧进行修正处理,以生成目标视频片段。
[0139] 其中,可选实施例中是将多张图像帧中具有相同标签、且相邻的图像帧进行合并处理,先得到初始视频片段,即并不会直接将多张图像帧中具有相同标签、且相邻的图像帧进行合并处理,得到目标视频片段,是需要再结合该初始片段中含有的图像帧的第一聚类信息所对应的物体的起止时刻(即直播起始时刻与直播终止时刻)对得到的初始视频片段进行修正处理,之后根据修正处理结果生成目标视频片段。
[0140] 其中,可选实施例中修正处理包括但不限于增加图像帧的处理或者删减图像帧的处理等。
[0141] 举例说明,例如设有800张图像帧,其标签均相同,且每张图像帧是连续采集到的,则此时将800张图像帧进行合并处理,得到初始视频片段1,之后获取这800张图像帧的第一聚类信息所对应的物体的起止时刻,同时设获取到的直播起始时刻为t1,直播终止时刻为t3,而800张图像帧的第一张图像帧所对应的时刻为t2,晚于了t1,则此时可以将t1‑t2时间段内的图像帧增加至初始视频片段1中(增加在800张图像帧的第一张图像帧),设800张图像帧的最后一张图像帧所对应的时刻为t3,等于直播终止时刻t3,则此时不用处理。
[0142] 这样,通过结合起止时刻对合并具有相同标签、且相邻的图像帧后得到的初始视频片段进行修正,能够生成更为准确的目标视频片段,提升了生成目标视频片段的准确性。
[0143] 在本申请的一个实施例中,请参阅图13,步骤S1202中获取第一聚类信息对应的物体的直播起始时刻与直播终止时刻的过程,可以包括步骤S1301至步骤S1304,详细介绍如下:
[0144] 步骤S1301,获取多张图像帧对应的中间特征向量;
[0145] 步骤S1302,根据多张图像帧的中间特征向量进行聚类,得到多个第二聚类信息;
[0146] 步骤S1303,获取同一第二聚类信息中生成时刻最早的图像帧,并将最早生成时刻作为第二聚类信息对应的物体的直播起始时刻,以及获取同一第二聚类信息中生成时刻最晚的图像帧,并将最晚生成时刻作为第二聚类信息对应的物体的直播终止时刻;
[0147] 步骤S1304,获取第一聚类信息所匹配的第二聚类信息对应的物体的直播起始时刻与直播终止时刻。
[0148] 也即,可选实施例中获取得到的第一聚类信息对应的物体的直播起始时刻与直播终止时刻由来过程可以是,先获取多张图像帧对应的中间特征向量,之后根据多张图像帧的中间特征向量进行聚类,得到多个第二聚类信息,之后获取同一第二聚类信息中生成时刻最早的图像帧,并将最早生成时刻作为第二聚类信息对应的物体的直播起始时刻,以及获取同一第二聚类信息中生成时刻最晚的图像帧,并将最晚生成时刻作为第二聚类信息对应的物体的直播终止时刻,之后获取与第一聚类信息所匹配的第二聚类信息对应的物体的直播起始时刻与直播终止时刻即可。
[0149] 其中,可选实施例中多张图像帧对应的中间特征向量可以是将多张图像帧对应的物体检测信息输入至预先训练好的分类器(可以是前述相同的分类器,也可以是不同的分类器)中得到。可以理解的是,中间特征向量除了可以表征物体的分类信息之外,其还具有更为详细的特征信息;例如分类信息为猫,那根据中间特征向量还可以确定出为哪种品种的猫。
[0150] 举例说明,例如请参见下表1所示,为一种示例的对多张图像帧的中间特征向量进行聚类,多得到的多个第二聚类信息,其中每个第二聚类信息中对应有对应物体的直播起始时刻与直播终止时刻;设第一聚类信息与第二聚类信息A所匹配,则获取到直播起始时刻t1以及直播终止时刻t3。
[0151]第二聚类信息 直播起始时刻 直播终止时刻
A t1 t3
B t4 t5
C t6 t7
…… …… ……
[0152] 表1
[0153] 这样,由于中间特征向量所具有的特征信息更多,因此,通过将多张图像帧的中间特征向量进行聚类,得到的聚类信息(即第二聚类信息)准确性更高;而且相对于直接根据物体检测信息进行聚类而言,数据量会更少,减少了计算量,降低了系统开销。
[0154] 在本申请的一个实施例中,请参阅图14,直播视频处理方法还可以包括步骤S1401至步骤S1404,详细介绍如下:
[0155] 步骤S1401,获取多张图像帧对应的中间特征向量;
[0156] 步骤S1402,根据多张图像帧的中间特征向量进行聚类,得到多个第三聚类信息;
[0157] 步骤S1403,获取同一第三聚类信息中生成时刻最早的图像帧,并将最早生成时刻作为第三聚类信息对应的物体的直播起始时刻,以及获取同一第三聚类信息中生成时刻最晚的图像帧,并将最晚生成时刻作为第三聚类信息对应的物体的直播终止时刻;
[0158] 步骤S1404,基于同一物体的直播起始时刻和直播终止时刻生成目标视频片段。
[0159] 也即,可选实施例中可以先获取多张图像帧对应的中间特征向量,之后根据多张图像帧的中间特征向量进行聚类,得到多个第三聚类信息,之后获取同一第三聚类信息中生成时刻最早的图像帧,并将最早生成时刻作为第三聚类信息对应的物体的直播起始时刻,以及获取同一第三聚类信息中生成时刻最晚的图像帧,并将最晚生成时刻作为第三聚类信息对应的物体的直播终止时刻,之后基于同一物体的直播起始时刻和直播终止时刻生成目标视频片段。
[0160] 其中,可选实施例中步骤S1401至步骤S1403与前述步骤S1301至步骤S1303类似,这里不再赘述。
[0161] 其中,可选实施例中如果获取到商品的直播起始时刻和直播终止时刻,则表征已经确定该商品的展示与推荐从哪个时刻开始到哪个时刻结束,因此,根据物体的直播起始时刻和直播终止时刻即可得到该商品的目标视频片段。
[0162] 这样,通过基于同一物体的直播起始时刻和直播终止时刻生成目标视频片段,能够快速生成目标视频片段,提升了生成目标视频片段的速率。
[0163] 在本申请的一个实施例中,步骤S1404中基于同一物体的直播起始时刻和直播终止时刻生成目标视频片段的过程,可以包括以下步骤,详细介绍如下:
[0164] 将多张图像帧中具有相同标签、且生成时刻位于直播起始时刻和直播终止时刻之间的时间段的图像帧进行合并处理,得到目标视频片段。
[0165] 也即,可选实施例中在基于同一物体的直播起始时刻和直播终止时刻生成目标视频片段的过程中,仍旧可以结合图像帧的标签,具体是将具有相同图像帧的标签进行合并,相应地,如果图像帧的标签不相同,那么即使该图像帧的生成时刻位于直播起始时刻和直播终止时刻之间的时间段,仍旧不考虑该图像帧。
[0166] 这样,通过结合图像帧的标签对位于起止时刻时间段内的图像帧进行合并(可以理解为结合图像帧的标签对合并位于起止时刻时间段内的图像帧得到的初始视频片段进行修正),能够生成更为准确的目标视频片段,提升了生成目标视频片段的准确性。
[0167] 在本申请的一个实施例中,请参阅图15,步骤S204中基于具有相同标签的图像帧生成目标视频片段的过程,可以包括步骤S1501至步骤S1502,详细介绍如下:
[0168] 步骤S1501,获取具有相同标签的图像帧对应的音频数据;
[0169] 步骤S1502,基于具有相同标签的图像帧,以及具有相同标签的图像帧对应的音频数据,生成目标视频片段。
[0170] 也即,可选实施例中可以具有相同标签的图像帧对应的音频数据,之后基于具有相同标签的图像帧,以及具有相同标签的图像帧对应的音频数据,生成目标视频片段。
[0171] 举例说明,例如设有800张图像帧,其标签均相同,同时设800张图像帧所对应的音频数据为V1,那么此时是基于800张图像帧以及800张图像帧所对应的音频数据V1生成目标视频片段。
[0172] 这样,生成的目标视频片段具有相应的音频数据,更加满足应用场景的需求。
[0173] 本申请实施例中由于是对划分得到的多个图像区域进行对应对象检测类型的对象检测,检测粒度更为细腻,因此,基于各个图像区域的检测结果确定出的图像帧的标签更为准确,以及基于具有相同标签的图像帧生成的目标视频片段也更为准确,从而用户可以快速准确地定位到其所感兴趣的视频片段。
[0174] 以下对本申请实施例的一个具体应用场景进行详细说明:
[0175] 请参阅图16,图16是本申请的一个实施例示出的直播视频数据的处理方法的流程图。如图16所示,直播视频数据的处理方法至少包括步骤S1601至步骤S1612,详细介绍如下:
[0176] 步骤S1601,获取直播过程中的直播视频流,直播视频流中包含有多张图像帧。
[0177] 步骤S1602,对图像帧进行人脸识别,并基于人脸识别结果对图像帧进行图像区域的划分,得到第一图像区域和第二图像区域;其中,第一图像区域为图像帧中处于所识别到的人脸上方的图像区域,第二图像区域为图像帧中处于所识别到的人脸下方的图像区域。
[0178] 可选地,对图像帧进行人脸识别时,使用人脸识别算法,例如可以使用基于深度学习的人脸检测和人脸对齐(Multi‑task Cascaded Convolutional Networks,MTCNN)算法,以识别得到人脸。
[0179] 可选地,基于人脸识别结果对图像帧进行图像区域的划分,可以是取所有(一个或多个)人脸中在Y轴的最大值,并根据最大值提取画面的上半部分,即可得到第一图像区域;以及可以是取所有(一个或多个)人脸中在Y轴的最小值,并根据最小值提取画面的下半部分,即可得到第二图像区域。
[0180] 步骤S1603,对第一图像区域进行文字检测,得到第一图像区域的文字检测结果。
[0181] 可选地,第一图像区域对应的对象检测类型为文字检测。
[0182] 可选地,可以通过对第一图像区域进行文字识别,得到文字识别信息,之后从文字识别信息中获取与物体相关的关键字信息,并将关键字信息作为第一图像区域的文字检测结果。其中,从文字识别信息中获取与物体相关的关键字信息,可以使用TFIDF(term frequency–inverse document frequency)算法获取得到关键字信息,也可以将文字识别信息输入至预先训练好的语言模型中获取得到关键字信息。
[0183] 步骤S1604,根据第一图像区域的文字检测结果生成第一图像区域的子标签。
[0184] 步骤S1605,对第二图像区域进行物体检测,得到第二图像区域的物体检测结果。
[0185] 可选地,第二图像区域对应的对象检测类型为物体检测。
[0186] 可选地,可以通过对第二图像区域进行物体检测,得到物体检测信息,之后根据物体检测信息对物体进行分类,得到物体的分类信息,并将分类信息作为第二图像区域的物体检测结果。其中,根据物体检测信息对物体进行分类,得到物体的分类信息,可以是将物体检测信息输入至预先训练好的分类器中获取得到物体的分类信息。
[0187] 可选地,对第二图像区域进行物体检测,得到物体检测信息,之后可以先根据物体检测信息进行聚类,并根据聚类信息筛选出一个最主要的物体信息,之后将筛选出的最主要的物体信息输入到预先训练好的分类器中以获取到主要物体的分类信息。
[0188] 步骤S1606,根据第二图像区域的文字检测结果生成第二图像区域的子标签。
[0189] 可以理解的是,步骤S1603至步骤S1604与步骤S1605至步骤S1606可以并行执行,也可以任意交换顺序执行。
[0190] 步骤S1607,将第一图像区域的子标签和第二图像区域的子标签分别作为图像帧的标签。
[0191] 可以理解的是,步骤S1602至步骤S1607介绍的是得到一张图像帧的标签的过程,得到直播视频流中所含有的其他图像帧的标签类似,类推即可。
[0192] 步骤S1608,基于图像帧的标签,对直播视频流中相邻图像帧的标签进行比较。
[0193] 可选地,将直播视频流中相邻图像帧的标签分别进行比较,得到比较结果;其中,比较结果可能是相邻图像帧的标签相同,也可能是相邻图像帧的标签不同。
[0194] 步骤S1609,将多张图像帧中具有相同标签、且相邻的图像帧进行合并处理,得到初始视频片段。
[0195] 可选地,如果相邻图像帧的标签相同,则表征两者对应相同的物体,如果相邻图像帧的标签不同,则表征两者对应不同的物体。
[0196] 步骤S1610,根据初始视频片段中含有的图像帧的第一聚类信息,获取第一聚类信息对应的物体的直播起始时刻与直播终止时刻。
[0197] 可选地,获取得到的第一聚类信息对应的物体的直播起始时刻与直播终止时刻由来过程可以是,先获取多张图像帧对应的中间特征向量,之后根据多张图像帧的中间特征向量进行聚类,得到多个第二聚类信息,之后获取同一第二聚类信息中生成时刻最早的图像帧,并将最早生成时刻作为第二聚类信息对应的物体的直播起始时刻,以及获取同一第二聚类信息中生成时刻最晚的图像帧,并将最晚生成时刻作为第二聚类信息对应的物体的直播终止时刻,之后获取与第一聚类信息所匹配的第二聚类信息对应的物体的直播起始时刻与直播终止时刻即可。
[0198] 可选地,获取得到的多张图像帧对应的中间特征向量可以是将多张图像帧对应的物体检测信息输入至预先训练好的分类器中得到。
[0199] 步骤S1611,根据第一聚类信息对应的物体的直播起始时刻与直播终止时刻对初始视频片段中含有的图像帧进行修正处理,以生成目标视频片段。
[0200] 可选地,修正处理可以是增加图像帧的处理或者删减图像帧的处理等。
[0201] 步骤S1612,基于具有相同标签的图像帧,以及获取到的具有相同标签的图像帧对应的音频数据,生成目标视频片段。
[0202] 可选地,可以从直播视频流中先提取出所有的音频数据,并根据固定间隔进行切片,之后对音频数据进行语音识别和语义解析,之后基于音频数据中的语义信息(即语义解析所对应的解析结果)判断当前音频是否处于商品的起止时刻;其中,可以根据音频数据中是否存在“接下来”,“下一个”,“上链接”等关键字信息来进行切分,得到切分后的音频数据,切分后的音频数据通常为多个。因此,可以从切分后的音频数据中获取到与具有相同标签的图像帧所对应的音频数据,进而基于具有相同标签的图像帧,以及获取到的具有相同标签的图像帧对应的音频数据,生成目标视频片段。
[0203] 可选地,步骤S1601至步骤S1612的具体实施过程请参见前述实施例,这里不再赘述。
[0204] 请参阅图17,图17是本申请的一个实施例示出的直播视频数据的处理的示意图。如图17所示:
[0205] 一方面,对直播视频流进行抽帧得到多张图像帧;
[0206] 之后,针对每一张图像帧进行人脸识别,根据识别到的人脸坐标对图像帧进行划分,得到第一图像区域和第二图像区域,其中第一图像区域为图像帧中处于所识别到的人脸上方的图像区域(通常为背景或者投屏内容),第二图像区域为图像帧中处于所识别到的人脸下方的图像区域(通常为商品);
[0207] 之后,针对第一图像区域进行文字识别,得到文字识别信息,并通过关键字提取技术,提取出其中的关键字并进行聚类(此聚类为得到一个最主要的关键字),得到第一图像区域对应的文字检测结果,并基于文字检测结果生成子标签;针对第二图像区域进行物体检测,得到物体检测信息,并通过分类算法,识别出物体的类别,得到第二图像区域对应的物体检测结果,并基于物体检测结果生成子标签;并将各标签作为图像帧的标签,即可得到每一张图像帧的标签;
[0208] 之后,获取每一张图像帧对应的中间特征向量,并根据每一张图像帧的中间特征向量进行聚类,得到多个第二聚类信息;可以理解的是,同一第二聚类信息中生成时刻最早的图像帧所对应的最早生成时刻即为物体的直播起始时刻,以及同一第二聚类信息中生成时刻最晚的图像帧所对应的最晚生成时刻即为物体的直播终止时刻;
[0209] 之后,基于物体的直播起始时刻、直播终止时刻(即直播起止时刻),将具有相同标签的图像帧进行多帧组合,生成视频片段。
[0210] 另一方面,对直播视频流进行音频数据的提取;
[0211] 之后,对音频数据进行切片;
[0212] 之后,对音频数据进行语音识别和语义解析;
[0213] 之后,基于语义解析所对应的解析结果,提取出对应直播起止时刻的关键字信息,可以理解的是,关键字所在的音频数据即为物体出现的起止时刻,获取该起止时刻对应的音频数据,与前述的视频片段进行融合,得到最终的目标视频片段。
[0214] 本申请实施例中通过对划分得到的多个图像区域进行对应对象检测类型的对象检测,检测粒度更为细腻,因此,基于各个图像区域的检测结果确定出的图像帧的标签更为准确,以及基于具有相同标签的图像帧生成的目标视频片段也更为准确,适用于诸多直播数据的处理场景中。
[0215] 图18是本申请的一个实施例示出的直播视频数据的处理装置的框图。如图18所示,该直播视频数据的处理装置包括:
[0216] 获取模块1801,配置为获取直播过程中的直播视频流,直播视频流中包含有多张图像帧;
[0217] 划分模块1802,配置为对图像帧进行人脸识别,并基于人脸识别结果对图像帧进行图像区域的划分,得到多个图像区域;
[0218] 检测模块1803,配置为对多个图像区域分别进行对象检测,得到各个图像区域的检测结果,其中,不同图像区域对应的对象检测类型不相同;
[0219] 生成模块1804,配置为基于各个图像区域的检测结果确定图像帧的标签,并基于具有相同标签的图像帧生成目标视频片段。
[0220] 在本申请的一个实施例中,划分模块1802具体配置为:
[0221] 基于人脸识别结果对图像帧进行图像区域的划分,得到第一图像区域和第二图像区域;其中,第一图像区域为图像帧中处于所识别到的人脸上方的图像区域,第二图像区域为图像帧中处于所识别到的人脸下方的图像区域。
[0222] 在本申请的一个实施例中,多个图像区域包括第一图像区域和第二图像区域,第一图像区域对应的对象检测类型为文字检测,第二图像区域对应的对象检测类型为物体检测;检测模块1803包括:
[0223] 文字检测单元,配置为对第一图像区域进行文字检测,得到第一图像区域的文字检测结果;以及,
[0224] 物体检测单元,配置为对第二图像区域进行物体检测,得到第二图像区域的物体检测结果。
[0225] 在本申请的一个实施例中,文字检测单元具体配置为:
[0226] 对第一图像区域进行文字识别,得到文字识别信息;
[0227] 从文字识别信息中获取与物体相关的关键字信息,并将关键字信息作为第一图像区域的文字检测结果。
[0228] 在本申请的一个实施例中,文字检测单元还具体配置为:
[0229] 将文字识别信息输入至预先训练好的语言模型中,得到与物体相关的关键字信息。
[0230] 在本申请的一个实施例中,物体检测单元具体配置为:
[0231] 对第二图像区域进行物体检测,得到物体检测信息;
[0232] 根据物体检测信息对物体进行分类,得到物体的分类信息,并将分类信息作为第二图像区域的物体检测结果。
[0233] 在本申请的一个实施例中,物体检测单元还具体配置为:
[0234] 将物体检测信息输入至预先训练好的分类器中,得到物体的分类信息。
[0235] 在本申请的一个实施例中,生成模块1804包括:
[0236] 比较单元,配置为基于图像帧的标签,对直播视频流中相邻图像帧的标签进行比较;
[0237] 生成单元,配置为将多张图像帧中具有相同标签、且相邻的图像帧进行合并处理,以生成目标视频片段。
[0238] 在本申请的一个实施例中,生成单元包括:
[0239] 合并单元,配置为将多张图像帧中具有相同标签、且相邻的图像帧进行合并处理,得到初始视频片段;
[0240] 获取单元,配置为根据初始视频片段中含有的图像帧的第一聚类信息,获取第一聚类信息对应的物体的直播起始时刻与直播终止时刻;
[0241] 修正单元,配置为根据第一聚类信息对应的物体的直播起始时刻与直播终止时刻对初始视频片段中含有的图像帧进行修正处理,以生成目标视频片段。
[0242] 在本申请的一个实施例中,获取单元具体配置为:
[0243] 获取多张图像帧对应的中间特征向量;
[0244] 根据多张图像帧的中间特征向量进行聚类,得到多个第二聚类信息;
[0245] 获取同一第二聚类信息中生成时刻最早的图像帧,并将最早生成时刻作为第二聚类信息对应的物体的直播起始时刻,以及获取同一第二聚类信息中生成时刻最晚的图像帧,并将最晚生成时刻作为第二聚类信息对应的物体的直播终止时刻;
[0246] 获取第一聚类信息所匹配的第二聚类信息对应的物体的直播起始时刻与直播终止时刻。
[0247] 在本申请的一个实施例中,生成单元具体配置为:
[0248] 获取具有相同标签的图像帧对应的音频数据;
[0249] 基于具有相同标签的图像帧,以及具有相同标签的图像帧对应的音频数据,生成目标视频片段。
[0250] 在本申请的一个实施例中,生成单元具体配置为:
[0251] 基于各个图像区域的检测结果,生成对应于各个图像区域的子标签;
[0252] 将各个图像区域的子标签分别作为图像帧的标签,以得到图像帧的标签。
[0253] 需要说明的是,前述实施例所提供的装置与前述实施例所提供的方法属于同一构思,其中各个模块和单元执行操作的具体方式已经在方法实施例中进行了详细描述,这里不再赘述。
[0254] 本申请的实施例还提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行时,使得电子设备实现如前的直播视频数据的处理方法。
[0255] 图19示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
[0256] 需要说明的是,图19示出的电子设备的计算机系统1900仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
[0257] 如图19所示,计算机系统1900包括中央处理单元(Central Processing Unit,CPU)1901,其可以根据存储在只读存储器(Read‑Only Memory,ROM)1902中的程序或者从存储部分1908加载到随机访问存储器(Random Access Memory,RAM)1903中的程序而执行各种适当的动作和处理,例如执行上述实施例中的方法。在RAM 1903中,还存储有系统操作所需的各种程序和数据。CPU 1901、ROM 1902以及RAM 1903通过总线1904彼此相连。输入/输出(Input/Output,I/O)接口1905也连接至总线1904。
[0258] 以下部件连接至I/O接口1905:包括键盘、鼠标等的输入部分1906;包括诸如阴极射线管(Cathode Ray Tube,CRT)、液晶显示器(Liquid Crystal Display,LCD)等以及扬声器等的输出部分1907;包括硬盘等的存储部分1908;以及包括诸如LAN(Local Area Network,局域网)卡、调制解调器等的网络接口卡的通信部分1909。通信部分1909经由诸如因特网的网络执行通信处理。驱动器1910也根据需要连接至I/O接口1905。可拆卸介质1911,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1910上,以便于从其上读出的计算机程序根据需要被安装入存储部分1908。
[0259] 特别地,根据本申请的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的计算机程序。在这样的实施例中,该计算机程序可以通过通信部分1909从网络上被下载和安装,和/或从可拆卸介质1911被安装。在该计算机程序被中央处理单元(CPU)1901执行时,执行本申请的系统中限定的各种功能。
[0260] 需要说明的是,本申请实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read‑Only Memory,CD‑ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的计算机程序。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的计算机程序可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
[0261] 附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不相同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0262] 描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
[0263] 本申请的另一方面还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如前的直播视频数据的处理方法。该计算机可读存储介质可以是上述实施例中描述的电子设备中所包含的,也可以是单独存在,而未装配入该电子设备中。
[0264] 本申请的另一方面还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各个实施例中提供的直播视频数据的处理方法。
[0265] 上述内容,仅为本申请的较佳示例性实施例,并非用于限制本申请的实施方案,本领域普通技术人员根据本申请的主要构思和精神,可以十分方便地进行相应的变通或修改,故本申请的保护范围应以权利要求书所要求的保护范围为准。