一种视频的生成方法、装置及计算机系统与流程

文档序号:20782512发布日期:2020-05-19 21:22阅读:126来源:国知局
一种视频的生成方法、装置及计算机系统与流程

本发明涉及计算机视觉技术领域,尤其涉及一种视频的生成方法、装置及计算机系统。



背景技术:

随着生活节奏的加快,消费者希望能够更直观地获取商品的相关信息,传统的依靠一定数量的商品图来展示商品的方法已经不能满足电商平台对展示商品特性、帮助消费者进行商品甄别决策的需求,用于展示商品功能或是实际使用效果的商品展示短视频已成为各大电商进行商品宣传的主流。然而,海量的由商家等用户上传的商品视频的质量层次不齐、长度也不固定,无法满足平台投放的要求。

现有技术中,商品视频的生成方法分为传统手工方法和图文视频转换生成两大类。传统人工方法是通过对上传的原始视频根据场景内容、目标素材等进行人工镜头切分,然后对满足投放标准的各个视频片段进行人工的筛选、拼接,得到满足用户需求的具有创意的商品投放短视频,对操作者的技术要求高,同时人工操作时效性低、主观性大,不能保证满足对视频的投放需求。

图文视频转换的方法是需要对商家提供的商品展示图进行抠图,然后布局到预设的图像背景中形成商品成图,从平台中已有的视频素材库中获得视频模板、背景音乐等模板文件,根据这些模板文件批量生成商品视频。虽然能实现大批量的商品视频的生成,但商品视频的风格、版式完全依赖于素材库中预先配置的模板文件,导致生成的视频风格近、版式少,不能将商品的实际状态直观地呈现给消费者,表达能力有限。



技术实现要素:

为了解决现有技术的不足,本发明的主要目的在于提供一种视频的生成方法,以实现根据初始视频自动生成目标视频。

为了达到上述目的,第一方面本发明提供了一种视频的生成方法,所述方法包括:

接收初始视频及目标视频分类;

按照预设的视频切分方法,将所述初始视频切分为视频片段;

将所述视频片段输入预设模型,确定每一所述视频片段对应所有预设视频分类的置信度;

根据所述目标视频分类及每一所述视频片段对应所有预设视频分类的置信度,确定所述目标视频分类对应的所述视频片段;

根据预设的拼接参数,将所述目标视频分类对应的所述视频片段进行拼接,获得目标视频。

在一些实施例中,所述按照预设的视频切分方法,将所述初始视频切分为视频片段包括:

使用预设的镜头边界检测方法,确定所述初始视频包含的镜头边界;

按照确定的所述镜头边界,将所述初始视频切分为视频片段。

在一些实施例中,所述镜头边界包含所述初始视频的突变镜头及渐变镜头,所述按照确定的所述镜头边界,将所述初始视频切分为视频片段包括:

将所述突变镜头及所述渐变镜头从所述初始视频中剔除,获得视频片段集合,所述视频片段集合由剔除后剩余的所述视频片段组成。

在一些实施例中,所述视频由连续的帧组成,所述突变镜头及所述渐变镜头的确定过程包括:

计算所有所述帧与所述帧的相邻帧之间的差异程度;

当所述差异程度超过第一预设阈值时,判断所述帧为突变帧,所述突变镜头由连续的所述突变帧组成;

当所述差异程度在第一预设阈值及第二预设阈值之间时,判断所述帧为潜在渐变帧;

当连续的所述潜在渐变帧的数量超过第三预设阈值时,判断所述潜在渐变帧为渐变帧,所述渐变镜头由连续的所述渐变帧组成。

在一些实施例中,所述将所述视频片段输入预设模型,确定每一所述视频片段对应所有预设视频分类的置信度包括:

按照预设的采样方法,对所述视频片段采样,获得所述视频片段对应的至少两帧采样帧;

对所述采样帧进行预处理,将预处理后的所述采样帧输入所述预设模型,获得所述视频片段对应所有所述预设视频分类的所述置信度。

在一些实施例中,所述将预处理后的所述采样帧输入所述预设模型包括:

提取预处理后的所述采样帧包含的时空特征,将所述时空特征输入所述预设模型。

在一些实施例中,所述预设模型为预先训练的mfnet三维卷积神经网络模型。

在一些实施例中,所述方法还包括接收目标时长,所述根据所述目标视频分类及每一所述视频片段对应所有预设视频分类的置信度,确定所述目标视频分类对应的所述视频片段包括:

根据所述目标时长、所述目标视频分类、每一所述视频片段对应所有预设视频分类的置信度、所述视频片段的时长,确定所述目标视频分类对应的所述视频片段。

第二方面,一种视频的生成装置,所述装置包括:

接收模块,用于接收初始视频及目标视频分类;

切分模块,用于按照预设的视频切分方法,将所述初始视频切分为视频片段;

处理模块,用于将所述视频片段输入预设模型,确定每一所述视频片段对应所有预设视频分类的置信度;

匹配模块,用于根据所述目标视频分类及每一所述视频片段对应所有预设视频分类的置信度,确定所述目标视频分类对应的所述视频片段;

拼接模块,用于根据预设的拼接参数,将所述目标视频分类对应的所述视频片段进行拼接,获得目标视频。

第三方面,本申请提供了一种计算机系统,所述系统包括:

一个或多个处理器;

以及与所述一个或多个处理器关联的存储器,所述存储器用于存储程序指令,所述程序指令在被所述一个或多个处理器读取执行时,执行如下操作:

接收初始视频及目标视频分类;

按照预设的视频切分方法,将所述初始视频切分为视频片段;

将所述视频片段输入预设模型,确定每一所述视频片段对应所有预设视频分类的置信度;

根据所述目标视频分类及每一所述视频片段对应所有预设视频分类的置信度,确定所述目标视频分类对应的所述视频片段;

根据预设的拼接参数,将所述目标视频分类对应的所述视频片段进行拼接,获得目标视频。

本发明实现的有益效果为:

本发明公开了一种视频的生成方法,通过接收初始视频及目标视频分类,按照预设的视频切分方法,将所述初始视频切分为视频片段,将所述视频片段输入预设模型,获取每一所述视频片段对应所有预设视频分类的置信度根据所述目标视频分类及每一所述视频片段对应所有预设视频分类的置信度,确定所述目标视频分类对应的所述视频片段;根据预设的拼接参数,将所述目标视频分类对应的所述视频片段进行拼接,获得目标视频,实现了根据初始视频生成符合需求的目标视频,保证了视频生成的时效性和准确性;

本发明还提出了使用预设的镜头边界检测方法,确定所述初始视频包含的镜头边界;按照确定的所述镜头边界,将所述初始视频切分为视频片段,并进一步地提出了所述镜头边界包含所述初始视频的突变镜头及渐变镜头,所述按照确定的所述镜头边界,将所述初始视频切分为视频片段包括:将所述突变镜头及所述渐变镜头从所述初始视频中剔除,获得视频片段集合,所述视频片段集合由剔除后剩余的所述视频片段组成。保证了视频片段切分的准确性;

本申请公开了按照预设的采样方法,对所述视频片段采样,获得所述视频片段对应的至少两帧采样帧;对所述采样帧进行预处理,将预处理后的所述采样帧输入所述预设模型,获得所述视频片段对应所有的预设视频分类的所述置信度;确定数值最大的所述置信度对应的所述预设视频分类为所述视频片段对应的所述预设视频分类,数值最大的所述置信度为所述视频片段的所述置信度;根据所有所述视频片段对应的所述预设视频分类及所述置信度,确定所述目标视频分类对应的所述视频片段及对应的所述视频片段的置信度,保证了置信度计算的准确性。

本发明所有产品并不需要具备上述所有效果。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请实施例提供的模型网络结构示意图;

图2是本申请实施例提供的镜头分割流程图;

图3是本申请实施例提供的模型训练流程图;

图4是本申请实施例提供的方法流程图;

图5是本申请实施例提供的装置结构图;

图6是本申请实施例提供的计算机系统结构图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

如背景技术中所述,现有技术中常用的两种商品视频的生成方法,都各自存在一定的局限性。采用人工剪辑的方法,需要的人力成本高、效率低下,不能满足生成大批量商品视频的实际需求;基于图文转换的视频生成方法,虽然效率更高,但是可用的视频版式、视频风格少且固定,表达能力有限。

为了解决上述技术问题,本申请提出了通过将用户上传的视频使用预设的切分方法进行切分,获得视频片段,使用预设的分类模型对每一视频片段进行分类,并获得每一视频片段对应的置信度;根据用户选择的目标视频分类,将该分类中置信度满足预设条件的视频片段进行拼接,即可获得目标视频。实现了根据用户的上传的视频生成符合需求的目标视频,同时保证了视频生成的时效性。

实施例一

为了实现对切分获得的视频片段的分类,需要预先对分类模型进行训练,具体的,可以使用mfnet三维卷积神经网络模型作为分类模型。mfnet三维卷积神经网络模型是一种轻量级的深度学习模型,相较于新近的i3d、slowfastnet等深度学习模型,其模型更加精简,浮点运算量flops更少,且在测试数据集上测试效果更优。

所述训练过程包括:

110、导入训练数据集;

该训练数据集可以由如下方法生成:

111、获取预设数量的商品视频,为每个视频创建对应的视频文件夹;

112、将每一视频包含的片段按照呈现的不同内容划分为不同的类别,所述类别包括但不限于商品主体外观,商品使用场景、商品内容介绍,并按划分的类别进行手工剪辑。

113、在每个视频对应的文件夹建立对应每个所述类别的主文件夹,所述主文件夹标记了对应的所述类别,各主文件夹下包含所述视频对应该类别的一个或多个子视频片段文件夹,子视频片段文件夹下保存了对应的视频片段的一个或多个图像帧;

114、对每个视频对应的文件夹进行密集采样,将采样的样本归一化为n×c×h×w大小,其中n表示对每一子视频片段文件夹的采样帧数量,c表示每一帧的rgb通道,h表示每一帧的预设高度,w表示每一帧的预设宽度,优选的,n至少为8。

120、使用训练数据集对mfnet三维卷积神经网络模型进行训练,获得预设模型;

图1示出了该模型的网络结构示意图,包含3dcnn,用于提取每一样本包含的三维卷积特征,所述三维卷积特征包含时空特征,包括商品的运动趋势、背景的变化等视频流内物体的运动信息。

3dpooling为所述模型的池化层,用于对3dcnn的输出进行池化,将池化结果输入3dmf-unit层,进行1×1×1、3×3×3、1×3×3等不同的卷积操作;

globalpool为全局池层,用于将输入的结果保留主要的特征同时减少不必要的参数;

fclayer为全连接层,用于输出每个视频片段对应每个类别的置信度。

使用所述模型,对56个商品短视频测试集进行测试,测试结果如表1所示:

表1

所述模型能够对经单个镜头密集采样所得的样本进行分类,在上述视频数据集共1119个测试样本的测试结果中,分类准确率达到了95.92%,且单一模型仅有29.6mb,针对单镜头密集采样的视频的前向推理时间为330ms,准确率高且速度快。

获得预设模型后,即可根据所述模型实现视频的生成,如图2所示,所述生成过程包括:

步骤一、接收用户输入的初始视频;

步骤二、对所述初始视频进行镜头边界检测,根据检测结果对视频进行切分,剔除冗余片段,获得视频片段;

如图3所示,镜头边界检测过程包括:

首先将初始视频的每一帧使用同样的预设方法均分为预设个数的子块,然后计算每一子块的子直方图,根据子直方图计算相邻帧同样位置的子块的直方图差,每一帧的相邻帧包含所述帧的前一帧及后一帧。当差值超过第一预设阈值th时,表明相邻帧之间对应子块的差异过大,当某一帧差异过大的子块的数量高于第二预设阈值时,即认为该帧是突变帧,连续的突变帧就组成了突变镜头。对于差值在第一预设阈值th于第三预设阈值tl之间的帧,即认定为是潜在起始帧,当其顺次往后的帧的差值同样在tl和th之间,且持续的时长超过第四预设阈值时,即将这些连续的帧认定为是渐变帧,组成了渐变镜头,将渐变和突变镜头剔除后的镜头就被认为是正常镜头。

为了保证生成的视频的效果,需要剔除正常镜头中长度少于第五预设阈值的过短镜头,最后获得所需的视频片段集合。

步骤三、将所述视频片段进行采样,将采样结果输入预设模型,获得每一视频片段对应的类别及置信度;

首先按照视频的时间次序,将上述视频片段进行随机密集采样。

所述随机密集采样过程包括:

在视频片段上随机初始化采样点,以采样点为七点,视频片段结尾为重点,均匀采样n帧,并对采样帧进行预处理,使其满足预设模型的输入尺寸需求。

然后将预处理后的采样帧输入预设模型,获得包含所述采样帧的视频片段对应所有类别的置信度。

步骤四、根据用户选择的目标类别及目标时长,将目标类别对应的视频片段进行拼接,生成目标视频;

例如,当用户向获取当前商品的外观展示视频时,就将视频片段按照对应外观展示类别的置信度进行排序,筛选符合需求的视频片段。

具体的筛选规则可以包括:

当置信度最高的视频片段的时长ti已经满足目标时长的需求时,直接将置信度最高的视频片段作为目标视频;

当置信度最高的视频片段的时长ti不满足目标时长的需求时,根据置信度数值的排序顺次选取之后的n个视频片段tj,其中j∈[1,n],直到满足下式:

t2-t1表示目标时长;

当上述按置信度得分选取的n+1个镜头的时长超过最大时长t2时,则按照每个镜头的时长,对其中最长的镜头进行头尾截取,直到总时长满足目标时长的需求。

步骤五、对步骤四获得的视频片段按照初始视频的时间次序进行顺序拼接,获得目标视频。

对生成的目标视频,可以将其存入视频数据库,在下次需要时重复使用,或是用于对所述模型进行继续训练。

基于本申请提供的上述方案,即可实现根据用户的上传的视频生成符合需求的目标视频,同时保证了视频生成的时效性。

实施例二

对应上述实施例,本申请提供了一种视频的生成方法,如图4所示,所述方法包括:

410、接收初始视频及目标视频分类;

420、按照预设的视频切分方法,将所述初始视频切分为视频片段;

优选的,所述方法包括:

421、使用预设的镜头边界检测方法,确定所述初始视频包含的镜头边界;

按照确定的所述镜头边界,将所述初始视频切分为视频片段。

优选的,所述镜头边界包含所述初始视频的突变镜头及渐变镜头,所述方法包括:

422、将所述突变镜头及所述渐变镜头从所述初始视频中剔除,获得视频片段集合,所述视频片段集合由剔除后剩余的所述视频片段组成。

优选的,所述视频由连续的帧组成,所述突变镜头及所述渐变镜头的确定过程包括:

423、计算所有所述帧与所述帧的相邻帧之间的差异程度;

当所述差异程度超过第一预设阈值时,判断所述帧为突变帧,所述突变镜头由连续的所述突变帧组成;

当所述差异程度在第一预设阈值及第二预设阈值之间时,判断所述帧为潜在渐变帧;

当连续的所述潜在渐变帧的数量超过第三预设阈值时,判断所述潜在渐变帧为渐变帧,所述渐变镜头由连续的所述渐变帧组成。

430、将所述视频片段输入预设模型,确定每一所述视频片段对应所有预设视频分类的置信度;

优选的,所述方法包括:

431、按照预设的采样方法,对所述视频片段采样,获得所述视频片段对应的至少两帧采样帧;

对所述采样帧进行预处理,将预处理后的所述采样帧输入所述预设模型,获得所述视频片段对应所有所述预设视频分类的所述置信度。

优选的,获得的所述采样帧为至少八帧。

优选的,所述将预处理后的所述采样帧输入所述预设模型包括:

432、提取预处理后的所述采样帧包含的时空特征,将所述时空特征输入所述预设模型。

优选的,所述预设模型为预先训练的mfnet三维卷积神经网络模型。

440、根据所述目标视频分类及每一所述视频片段对应所有预设视频分类的置信度,确定所述目标视频分类对应的所述视频片段;

优选的,所述方法还包括接收目标时长,所述根据所述目标视频分类及每一所述视频片段对应所有预设视频分类的置信度,确定所述目标视频分类对应的所述视频片段包括:

441、根据所述目标时长、所述目标视频分类、每一所述视频片段对应所有预设视频分类的置信度、所述视频片段的时长,确定所述目标视频分类对应的所述视频片段。

450、根据预设的拼接参数,将所述目标视频分类对应的所述视频片段进行拼接,获得目标视频。

实施例三

对应上述方法实施例,本申请提供了一种视频的生成装置,如图5所示,所述装置包括:

接收模块510,用于接收初始视频及目标视频分类;

切分模块520,用于按照预设的视频切分方法,将所述初始视频切分为视频片段;

处理模块530,用于将所述视频片段输入预设模型,确定每一所述视频片段对应所有预设视频分类的置信度;

匹配模块540,用于根据所述目标视频分类及每一所述视频片段对应所有预设视频分类的置信度,确定所述目标视频分类对应的所述视频片段;

拼接模块550,用于根据预设的拼接参数,将所述目标视频分类对应的所述视频片段进行拼接,获得目标视频。

优选的,所述切分模块520还可用于使用预设的镜头边界检测方法,确定所述初始视频包含的镜头边界;

按照确定的所述镜头边界,将所述初始视频切分为视频片段。

优选的,所述镜头边界包含所述初始视频的突变镜头及渐变镜头,所述切分模块520还可用于将所述突变镜头及所述渐变镜头从所述初始视频中剔除,获得视频片段集合,所述视频片段集合由剔除后剩余的所述视频片段组成。

优选的,所述视频由连续的帧组成,所述切分模块520还可用于计算所有所述帧与所述帧的相邻帧之间的差异程度;当所述差异程度超过第一预设阈值时,判断所述帧为突变帧,所述突变镜头由连续的所述突变帧组成;当所述差异程度在第一预设阈值及第二预设阈值之间时,判断所述帧为潜在渐变帧;当连续的所述潜在渐变帧的数量超过第三预设阈值时,判断所述潜在渐变帧为渐变帧,所述渐变镜头由连续的所述渐变帧组成。

优选的,所述匹配模块530还可用于按照预设的采样方法,对所述视频片段采样,获得所述视频片段对应的至少两帧采样帧;对所述采样帧进行预处理,将预处理后的所述采样帧输入所述预设模型,获得所述视频片段对应所有所述预设视频分类的所述置信度。

优选的,所述匹配模块530还可用于提取预处理后的所述采样帧包含的时空特征,将所述时空特征输入所述预设模型。

优选的,所述预设模型为预先训练的mfnet三维卷积神经网络模型。

优选的,所述接收模块510还可用于接收目标时长,所述匹配模块540还可用于根据所述目标时长、所述目标视频分类、每一所述视频片段对应所有预设视频分类的置信度、所述视频片段的时长,确定所述目标视频分类对应的所述视频片段。

实施例四

对应上述方法、设备及系统,本申请实施例四提供一种计算机系统,包括:一个或多个处理器;以及与所述一个或多个处理器关联的存储器,所述存储器用于存储程序指令,所述程序指令在被所述一个或多个处理器读取执行时,执行如下操作:接收初始视频及目标视频分类;

按照预设的视频切分方法,将所述初始视频切分为视频片段;

将所述视频片段输入预设模型,确定每一所述视频片段对应所有预设视频分类的置信度;

根据所述目标视频分类及每一所述视频片段对应所有预设视频分类的置信度,确定所述目标视频分类对应的所述视频片段;

根据预设的拼接参数,将所述目标视频分类对应的所述视频片段进行拼接,获得目标视频。

其中,图6示例性的展示出了计算机系统的架构,具体可以包括处理器1510,视频显示适配器1511,磁盘驱动器1512,输入/输出接口1513,网络接口1514,以及存储器1520。上述处理器1510、视频显示适配器1511、磁盘驱动器1512、输入/输出接口1513、网络接口1514,与存储器1520之间可以通过通信总线1530进行通信连接。

其中,处理器1510可以采用通用的cpu(centralprocessingunit,中央处理器)、微处理器、应用专用集成电路(applicationspecificintegratedcircuit,asic)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本申请所提供的技术方案。

存储器1520可以采用rom(readonlymemory,只读存储器)、ram(randomaccessmemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1520可以存储用于控制计算机系统1500运行的操作系统1521,用于控制计算机系统1500的低级别操作的基本输入输出系统(bios)。另外,还可以存储网页浏览器1523,数据存储管理系统1524,以及图标字体处理系统1525等等。上述图标字体处理系统1525就可以是本申请实施例中具体实现前述各步骤操作的应用程序。总之,在通过软件或者固件来实现本申请所提供的技术方案时,相关的程序代码保存在存储器1520中,并由处理器1510来调用执行。

输入/输出接口1513用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。

网络接口1514用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如usb、网线等)实现通信,也可以通过无线方式(例如移动网络、wifi、蓝牙等)实现通信。

总线1530包括一通路,在设备的各个组件(例如处理器1510、视频显示适配器1511、磁盘驱动器1512、输入/输出接口1513、网络接口1514,与存储器1520)之间传输信息。

另外,该计算机系统1500还可以从虚拟资源对象领取条件信息数据库1541中获得具体领取条件的信息,以用于进行条件判断,等等。

需要说明的是,尽管上述设备仅示出了处理器1510、视频显示适配器1511、磁盘驱动器1512、输入/输出接口1513、网络接口1514,存储器1520,总线1530等,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本申请方案所必需的组件,而不必包含图中所示的全部组件。

通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,云服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1