视频处理方法、发布方法、推送方法及其装置与流程

专利2022-06-29  54


本发明涉及数据处理技术领域,尤其涉及一种视频处理方法、发布方法、推送方法及其装置。



背景技术:

随着互联网技术普及,短视频逐渐成为互联网传播方式之一,也因此,视频剪辑逐渐成为短视频的一项重要技术。

目前,视频剪辑的方式大多基于人工剪辑或者按时间段剪辑,人工剪辑耗费了大量人力精力去观看视频以进行剪辑,而按时间段剪辑是指按照固定时间间隔(例如1分钟)对视频剪辑。

然而,发明人意识到,无论是人工剪辑,还是按时间段剪辑,在视频剪辑时均无法同时兼顾效率和准确率。



技术实现要素:

本发明各实施例提供一种视频处理方法、发布方法、推送方法及其装置、电子设备、存储介质,以解决相关技术中存在的视频剪辑时难以同时兼顾效率和准确率的问题。

其中,本发明所采用的技术方案为:

根据本发明的一个方面,一种视频处理方法,包括:获取待处理视频的目标帧集合,所述目标帧集合包括若干目标帧;根据所述目标帧集合中若干目标帧描述的视频图像信息,检测所述目标帧集合中的相邻两个目标帧是否属于同一个视频场景;根据检测结果,将所述目标帧集合划分为对应于不同视频场景的若干目标帧子集合;根据若干目标帧子集合中的起始目标帧和结束目标帧,将所述待处理视频剪辑为若干视频片段。

根据本发明的一个方面,一种视频发布方法,包括:上传待处理视频至服务器端;接收所述服务器端返回的若干视频片段,若干视频片段是所述服务器按照如上所述的视频处理方法对所述待处理视频进行剪辑得到的;接收针对若干视频片段的选择指令,在所述客户端中发布所述选择指令选定的视频片段。

根据本发明的一个方面,一种视频推送方法,包括:接收视频推送请求,确定发起所述视频推送请求的请求方所关联兴趣点;根据所述请求方关联的兴趣点,从视频库中的视频片段选取与所述兴趣点相匹配的目标视频片段,所述视频库中的视频片段是按照如上所述的视频处理方法对若干待处理视频进行剪辑得到的;向所述请求方推送目标视频片段。

根据本发明的一个方面,一种视频处理装置,包括:集合获取模块,用于获取待处理视频的目标帧集合,所述目标帧集合包括若干目标帧;场景检测模块,用于根据所述目标帧集合中若干目标帧描述的视频图像信息,检测所述目标帧集合中的相邻两个目标帧是否属于同一个视频场景;集合划分模块,用于根据检测结果,将所述目标帧集合划分为对应于不同视频场景的若干目标帧子集合;视频剪辑模块,用于根据若干目标帧子集合中的起始目标帧和结束目标帧,将所述待处理视频剪辑为若干视频片段。

在本发明一个实施例中,所述场景检测模块包括:目标帧确定单元,用于从所述目标帧集合中确定相邻两个目标帧;相似性关系获取单元,用于根据所述目标帧集合中该相邻两个目标帧描述的视频图像信息,获取该相邻两个目标帧之间的相似性关系;场景确定单元,用于如果获取到的相似性关系表示该相邻两个目标帧之间相似,则确定该相邻两个目标帧属于同一个视频场景。

在本发明一个实施例中,所述相似性关系获取单元包括:特征提取子单元,用于对所述目标帧集合中的该相邻两个目标帧进行特征提取,得到该相邻两个目标帧对应的目标帧特征信息;相似度计算子单元,用于根据该相邻两个目标帧对应的目标帧特征信息,计算该相邻两个目标帧之间的相似度,得到该相邻两个目标帧之间的相似性关系。

在本发明一个实施例中,所述特征提取子单元包括:输入子单元,用于将所述目标帧集合中的目标帧,由残差网络的输入层输入所述残差网络;卷积子单元,用于基于所述残差网络的卷积层,对所述目标帧集合中的目标帧进行局部特征提取;连接子单元,用于基于所述残差网络的传输层,对所述卷积层提取到的局部特征进行特征融合,得到所述目标帧集合中目标帧对应的目标帧特征信息。

在本发明的一个实施例中,所述集合划分模块包括:目标帧划分单元,用于如果所述检测结果指示所述目标帧集合中的相邻两个目标帧属于两个不同视频场景,则将该相邻两个目标帧分别划分至该两个不同视频场景对应的目标帧子集合。

在本发明的一个实施例中,所述目标帧划分单元包括:相邻目标帧定义子单元,用于针对所述目标帧集合中的每一个目标帧,将该目标帧及其后一个目标帧作为相邻两个目标帧;第一划分子单元,用于如果所述检测结果指示该目标帧属于第一视频场景,则将该目标帧划分至所述第一视频场景对应的目标帧子集合;第二划分子单元,用于如果所述检测结果指示所述后一个目标帧属于所述第一视频场景,则将所述后一个目标帧划分至所述第一视频场景对应的目标帧子集合;或者,如果所述检测结果指示所述后一个目标帧属于第二视频场景,则将所述后一个目标帧划分至所述第二视频场景对应的目标帧子集合;划分遍历子单元,用于针对所述目标帧集合中的所有目标帧进行遍历,直至所述目标帧集合中的目标帧完成划分。

在本发明的一个实施例中,所述视频剪辑模块包括:目标帧确定单元,用于针对每一个目标帧子集合中的目标帧,确定该目标帧子集合中的起始目标帧和结束目标帧;时间点搜索单元,用于在所述待处理视频对应的时间轴上,搜索该目标帧子集合中起始目标帧和结束目标帧分别对应的起始时间点和结束时间点;剪辑单元,用于对所述待处理视频中与搜索到起始时间点和结束时间点对应的一段视频进行剪辑,得到与该目标帧子集合中起始目标帧和结束目标帧对应的视频片段。

在本发明的一个实施例中,所述集合获取模块包括:帧间差分运算单元,用于对所述待处理视频中的相邻两个视频帧进行帧间差分运算,得到所述待处理视频中各视频帧的平均帧间差分强度;目标帧选取单元,用于根据所述待处理视频中各视频帧的平均帧间差分强度,从所述待处理视频中选取若干视频帧作为目标帧;集合生成单元,用于根据选取的目标帧生成所述待处理视频的目标帧集合。

在本发明的一个实施例中,所述帧间差分运算单元包括:相邻视频帧定义子单元,用于针对所述待处理视频中的每一个视频帧,将该视频帧及其后一个视频帧,作为相邻两个视频帧;差值计算子单元,用于计算该相邻两个视频帧中对应位置上像素属性值之间的差值;差值累加子单元,用于将计算得到的差值累加,得到所述后一个视频帧的平均帧间差分强度;运算遍历子单元,用于待所述待处理视频中的所有相邻两个视频帧完成帧间差分运算,得到所述待处理视频中各视频帧的平均帧间差分强度。

根据本发明的一个方面,一种视频发布装置,包括:视频上传模块,用于上传待处理视频至服务器端;片段接收模块,用于接收所述服务器端返回的若干视频片段,若干视频片段是所述服务器按照如上所述的视频处理方法对所述待处理视频进行剪辑得到的;片段发布模块,用于接收针对若干视频片段的选择指令,在所述客户端中发布所述选择指令选定的视频片段。

根据本发明的一个方面,一种视频推送装置,包括:请求接收模块,用于接收视频推送请求,确定发起所述视频推送请求的请求方所关联兴趣点;片段选取模块,用于根据所述请求方关联的兴趣点,从视频库中的视频片段选取与所述兴趣点相匹配的目标视频片段,所述视频库中的视频片段是按照如上所述的视频处理方法对若干待处理视频进行剪辑得到的;片段推送模块,用于向所述请求方推送目标视频片段。

根据本发明的一个方面,一种电子设备,包括处理器及存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时实现如上所述的视频处理方法。

根据本发明的一个方面,一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的视频处理方法。

在上述技术方案中,获取待处理视频的目标帧集合,以根据该目标帧集合中若干目标帧描述的视频图像信息,检测该目标帧集合中的相邻两个目标帧是否属于同一个视频场景,进而根据检测结果将该目标帧集合划分为对应于不同视频场景的若干目标帧子集合,并根据此若干目标帧子集合中的起始目标帧和结束目标帧,将待处理视频剪辑为若干视频片段,由此可知,视频剪辑是基于目标帧集合和视频场景变换进行的,既通过目标帧集合去除了待处理视频中的重复内容,以此提升视频剪辑的效率,并且从视频场景变换角度来划分目标帧集合,以此保证视频剪辑的准确性,从而有效地解决了现有技术中视频剪辑时难以同时兼顾效率和准确率的问题。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并于说明书一起用于解释本发明的原理。

图1是根据本发明所涉及的实施环境的示意图。

图2是根据一示例性实施例示出的一种电子设备的硬件结构框图。

图3是根据一示例性实施例示出的一种视频处理方法的流程图。

图4是图3对应实施例所涉及的待处理视频和目标帧集合的示意图。

图5为图3对应实施例所涉及的基于视频场景变换划分目标帧集合的示意图。

图6是图3对应实施例中步骤350在一个实施例的流程图。

图7为图3对应实施例所涉及的基于目标帧子集合进行视频剪辑的示意图。

图8是图3对应实施例中步骤370在一个实施例的流程图。

图9是图3对应实施例中步骤310在一个实施例的流程图。

图10是图9对应实施例所涉及的计算平均帧间差分强度的示意图。

图11是图9对应实施例中步骤311在一个实施例的流程图。

图12是图3对应实施例中步骤330在一个实施例的流程图。

图13是图12对应实施例中步骤333在一个实施例的流程图。

图14是图13对应实施例所涉及的残差网络的结构示意图。

图15是一应用场景中一种视频发布方法的时序图。

图16是一应用场景中一种视频处理方法的具体实现示意图。

图17是一应用场景中一种视频推送方法的时序图。

图18是根据一示例性实施例示出的一种视频处理装置的框图。

图19是根据一示例性实施例示出的一种视频发布装置的框图。

图20是根据一示例性实施例示出的一种视频推送装置的框图。

图21是根据一示例性实施例示出的一种电子设备的框图。

通过上述附图,已示出本发明明确的实施例,后文中将有更详细的描述,这些附图和文字描述并不是为了通过任何方式限制本发明构思的范围,而是通过参考特定实施例为本领域技术人员说明本发明的概念。

具体实施方式

这里将详细地对示例性实施例执行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。

如前所述,视频剪辑的方式主要包括两种方案:人工剪辑和按时间段剪辑。

第一种方案,人工剪辑,将消耗大量人力精力去观看视频来进行视频剪辑,通过牺牲效率来换取一定程度的准确性,然而,由于人的主观性原因,同一个视频由不同人剪辑可能得到不同的视频片段,仍然难以克服准确性的局限性。

第二种方案,按时间段剪辑,得到的视频片段的时长都是一样的,例如,每一段视频片段的时长均为1分钟,此种方案虽然充分提高了效率,但是由于视频剪辑时过于简单而没有考虑视频内容,因此无法保证视频剪辑的准确性。

由上可知,无论是人工剪辑,还是按时间段剪辑,视频剪辑仍存在无法同时兼顾效率和准确率的缺陷。

为此,本发明特提出了一种视频处理方法,在保证视频剪辑效率的前提下还同时兼顾了视频剪辑的准确性,相应地,视频处理装置部署于具备冯诺依曼体系结构的电子设备,例如,电子设备为服务器,以实现视频处理方法。

图1为一种视频处理方法所涉及的实施环境的示意图。该实施环境包括客户端110和服务器端130。

具体地,客户端110,可提供待处理视频。该客户端110可以是台式电脑、笔记本电脑、平板电脑、智能手机、掌上电脑、便携移动终端、服务器等等电子设备,在此不构成具体限定。

服务器端130,该服务器端130可以是台式电脑、笔记本电脑、服务器等等电子设备,还可以是由多台服务器构成的服务器集群,甚至是由多台服务器构成的云计算中心。其中,服务器是为用户提供后台服务的电子设备,例如,后台服务包括但不限于视频处理服务等等。

服务器端130与客户端110预先建立网络连接,并通过网络连接实现与客户端110之间的数据传输。传输的数据包括但不限于:待处理视频等等。

通过客户端110与服务器端130的交互,客户端110可为服务器端130提供待处理视频,以使服务器端130进行待处理视频的剪辑。

对于服务器端130而言,在获取到客户端110上传的待处理视频之后,便能够调用视频处理服务,将待处理视频剪辑为若干视频片段。

图2是根据一示例性实施例示出的一种电子设备的硬件结构框图。该种电子设备适用于图1所示出实施环境中的服务器端130。

需要说明的是,该种电子设备只是一个适配于本发明的示例,不能认为是提供了对本发明的使用范围的任何限制。该种电子设备也不能解释为需要依赖于或者必须具有图2中示出的示例性的电子设备200中的一个或者多个组件。

电子设备200的硬件结构可因配置或者性能的不同而产生较大的差异,如图2所示,电子设备200包括:电源210、接口230、至少一存储器250、以及至少一中央处理器(cpu,centralprocessingunits)270。

具体地,电源210用于为电子设备200上的各硬件设备提供工作电压。

接口230包括至少一有线或无线网络接口,用于与外部设备交互。例如,进行图1所示出实施环境中客户端110与服务器端130之间的交互。

当然,在其余本发明适配的示例中,接口230还可以进一步包括至少一串并转换接口233、至少一输入输出接口235以及至少一usb接口237等,如图2所示,在此并非对此构成具体限定。

存储器250作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源包括操作系统251、应用程序253及数据255等,存储方式可以是短暂存储或者永久存储。

其中,操作系统251用于管理与控制电子设备200上的各硬件设备以及应用程序253,以实现中央处理器270对存储器250中海量数据255的运算与处理,其可以是windowsservertm、macosxtm、unixtm、linuxtm、freebsdtm等。

应用程序253是基于操作系统251之上完成至少一项特定工作的计算机程序,其可以包括至少一模块(图2中未示出),每个模块都可以分别包含有对电子设备200的一系列计算机可读指令。例如,视频处理装置可视为部署于电子设备200的应用程序253。

数据255可以是存储于磁盘中的照片、图片等,还可以是待处理视频等等,存储于存储器250中。

中央处理器270可以包括一个或多个以上的处理器,并设置为通过至少一通信总线与存储器250通信,以读取存储器250中存储的计算机可读指令,进而实现对存储器250中海量数据255的运算与处理。例如,通过中央处理器270读取存储器250中存储的一系列计算机可读指令的形式来完成视频处理方法。

此外,通过硬件电路或者硬件电路结合软件也能同样实现本发明,因此,实现本发明并不限于任何特定硬件电路、软件以及两者的组合。

请参阅图3,在一示例性实施例中,一种视频处理方法适用于电子设备,例如,电子设备为图1所示实施环境的服务器端130,该电子设备的结构可以如图2所示。

该种视频处理方法可以由电子设备执行,也可以理解为由电子设备中运行的应用程序(即视频处理装置)执行。在下述方法实施例中,为了便于描述,以各步骤的执行主体为电子设备加以说明,但是并不对此构成限定。

该种视频处理方法可以包括以下步骤:

步骤310,获取待处理视频的目标帧集合。

待处理视频可以是新闻视频、影视作品、用户自拍视频等等,本实施例并未对待处理视频的类型作具体限定。相应地,由于待处理视频的类型可对应于不同的应用场景,例如,新闻视频可对应新闻阅读场景,影视作品可对应节目观看场景,用户自拍视频可对应用户娱乐场景,因此,本实施例所提供的视频处理方法可根据待处理视频的不同类型适用于不同的应用场景,包括但不限于:视频发布、视频推送等等应用场景。

对于电子设备而言,根据待处理视频的不同类型将通过不同渠道获取到待处理视频。例如,新闻视频可来源于新闻应用程序,影视作品可来源于播放应用程序,用户自拍视频可来源于娱乐应用程序等等。

进一步地,关于待处理视频的获取,可以是用户实时上传的自拍视频,还可以是电子设备中存储区内预先存储的各类型视频,那么,电子设备在进行视频处理时,既可以实时获取用户的自拍视频,以此保证视频处理的实时性,还可以在指定时间,例如,电子设备的cpu占用率较低时,获取一历史时间段内存储的各类型视频,以便于能够提升电子设备进行视频处理的效率。

应当理解,待处理视频由若干视频帧组成,通过每一个视频帧所描述的视频图像信息来表达待处理视频的整体内容,然而,发明人意识到,待处理视频通常是在有限个视频场景中拍摄的,而一个视频场景中的各视频帧往往存在大量的重复内容,那么,待处理视频的完整性势必影响视频剪辑的效率,简单地说,在视频剪辑之前由于需要人工观看整个包含有大量重复内容的待处理视频,而必然会耗费大量时间。需要说明的是,视频场景,是指拍摄视频时的场景,例如,场景可以是学校、医院、交通工具、道路、体育场馆、游戏、影视城等等。

为此,本实施例中,通过在视频剪辑时获取待处理视频的目标帧集合,来保证视频剪辑的效率。其中,所述目标帧集合包括若干目标帧。

此处,目标帧,其所描述的视频图像信息用于表达待处理视频的关键内容,故也可以认为是关键帧,而相较于目标帧,在相邻两个目标帧之间的视频帧,则作为过渡帧或者中间帧,其所描述的视频图像信息用于表达待处理视频的非关键内容,目的在于使得相邻两个目标帧之间过渡得更加连续自然。

例如,在英雄格斗的游戏视频场景中,英雄格斗过程中的关键打斗动作所在的视频帧,被视为目标帧,其表达的即是待处理游戏视频的关键内容,即英雄格斗画面,而相邻两个关键打斗动作所在的相邻两个目标帧之间的视频帧,则视为过渡帧或者中间帧,其所表达的属于待处理游戏视频的重复内容,也认为是非关键内容,目的在于使得相邻两个关键打斗动作更加地连贯。

进一步地,一方面,目标帧可以自身即具备时间戳信息,例如,目标帧按照其在待处理视频中的顺序命名,由此,目标帧集合相当于一个时间序列,其实质是若干目标帧按照时间顺序生成的。

如图4所示,对于一个包括300个视频帧的待处理视频而言,其对应的目标帧集合包括n个目标帧,此时,第1个目标帧是待处理视频中的第2个视频帧,第2个目标帧是待处理视频中的第5个视频帧,以此类推,第n-1个目标帧是待处理视频中的第285个视频帧,而第n个目标帧则是待处理视频中的第300个视频帧。

另一方面,目标帧也可以是本身并不具备时间戳信息,而是在生成目标帧集合之前,在待处理视频帧对应的时间轴上,确定目标帧对应的时间点,以此作为目标帧的时间戳信息,进而由目标帧及其对应的时间点生成目标帧集合。

由此可知,目标帧集合,相当于待处理视频帧的子集合,一方面通过包括若干目标帧所表达的待处理视频的关键内容,简洁地体现了待处理视频的整体内容和时间发展顺序,另一方面通过剔除过渡帧或者中间帧,去除了待处理视频中的重复内容,进而使得视频剪辑的分析对象由待处理视频简化为目标帧集合,大大减少了视频剪辑时的任务处理量,不仅能够有效地提高视频剪辑的效率,而且能够有效地降低视频剪辑的复杂度。

关于目标帧的提取方式,包括但不限于:抽样法、镜头边界法、颜色特征法、运动分析法、聚类法等等,本实施例并未对此加以限定。

步骤330,根据所述目标帧集合中若干目标帧描述的视频图像信息,检测所述目标帧集合中的相邻两个目标帧是否属于同一个视频场景。

在基于目标帧集合中的目标帧实现了视频剪辑的效率提升之后,发明人着重考虑如何提升视频剪辑的准确率,在此,发明人意识到,待处理视频往往都是长视频,不可能所有视频帧全部发生在同一个视频场景,换句话说,同一个视频场景的发生时间可能不会持续整个待处理视频。

基于此,本实施例中,视频剪辑将从视频场景变换角度出发,也可以认为,根据待处理视频中的视频场景是否发生变化进行视频剪辑,将待处理视频中视频场景发生变化的视频帧作为视频剪辑的分割点。

进一步地,基于待处理视频的目标帧集合的获取,视频剪辑的分析对象由待处理视频简化为目标帧集合,因此,视频剪辑的分割点,相应地由待处理视频中视频场景发生变化的视频帧,简化为目标帧集合中视频场景发生变化的目标帧,以此充分保障视频剪辑的效率。

具体而言,目标帧集合中的视频场景是否发生变化,通过对目标帧集合中的相邻两个目标帧进行视频场景检测实现,即,基于目标帧集合中该相邻两个目标帧描述的视频图像信息所表达的待处理视频的关键内容,检测该相邻两个目标帧是否发生在同一个视频场景。

也就是说,如果该相邻两个目标帧描述的待处理视频关键内容相似或者一致,便检测到该相邻两个目标帧发生在同一个视频场景。反之,如果该相邻两个目标帧描述的待处理视频关键内容不相似,此时,方可认为待处理视频中的视频场景发生了变化,该相邻两个目标帧中的任何一个目标帧即视为视频剪辑的分割点。

由此,在通过视频场景检测确定视频剪辑的分割点之后,便可基于该视频剪辑的分割点进行后续的视频剪辑。

通过上述视频场景检测过程,视频剪辑将与视频图像信息紧密联系,从而能够充分地保障视频剪辑的准确性。

步骤350,根据检测结果,将所述目标帧集合划分为对应于不同视频场景的若干目标帧子集合。

其中,检测结果用于指示目标帧集合中的相邻两个目标帧是否发生在同一个视频场景,也可以认为,检测结果指示了目标帧集合中各个目标帧发生的视频场景。

那么,基于检测结果进行的目标帧集合划分,实质是按照不同的视频场景对目标帧集合进行划分,即不同的目标帧子集合对应于不同的视频场景。

具体地,如果检测结果指示目标帧集合中的相邻两个目标帧发生在同一个视频场景,则该相邻两个目标帧划分至该同一个视频场景对应的目标帧子集合。

如果所述检测结果指示所述目标帧集合中的相邻两个目标帧发生在两个不同视频场景,则将该相邻两个目标帧分别划分至该两个不同视频场景对应的目标帧子集合。

待所述目标帧集合中的目标帧完成划分,得到对应于不同视频场景的若干目标帧子集合。

下面结合图5和图6,对目标帧集合的划分过程加以详细地说明。

如图5所示,假设目标帧集合包括用于描述待处理视频关键内容的10个目标帧。

如图6所示,在一实施例的实现中,步骤350可以包括以下步骤:

步骤351,针对所述目标帧集合中的每一个目标帧,将该目标帧及其后一个目标帧作为相邻两个目标帧。

步骤353,如果所述检测结果指示该目标帧属于第一视频场景,则将该目标帧划分至所述第一视频场景对应的目标帧子集合。

步骤355,如果所述检测结果指示所述后一个目标帧属于所述第一视频场景,则将所述后一个目标帧划分至所述第一视频场景对应的目标帧子集合;或者,如果所述检测结果指示所述后一个目标帧属于第二视频场景,则将所述后一个目标帧划分至所述第二视频场景对应的目标帧子集合。

步骤357,针对所述目标帧集合中的所有目标帧进行遍历,直至所述目标帧集合中的目标帧完成划分。

举例来说,对目标帧集合中的第1个目标帧进行划分。如果所述检测结果指示所述第1个目标帧发生在第一视频场景,将所述第1个目标帧划分至所述第一视频场景对应的目标帧子集合。

选取所述目标帧集合中与所述第1个目标帧相邻的第2个目标帧进行划分。如果所述检测结果指示所述目标帧集合中的第2个目标帧也发生在所述第一视频场景,则仍将所述第2个目标帧划分至所述第一视频场景对应的目标帧集合。

选取所述目标帧集合中与所述第2个目标帧相邻的第3个目标帧进行划分。如果所述检测结果指示所述目标帧集合中的第3个目标帧发生在第二视频场景,则将所述第3个目标帧划分至所述第二视频场景对应的目标帧集合。

以此类推,按照不同的视频场景,第4个目标帧至第10个目标帧,将分别划分至不同视频场景对应的目标帧集合。即,第4个目标帧划分至第二视频场景对应的目标帧集合,第5、6个目标帧划分至第三视频场景对应的目标帧集合,第7、8个目标帧划分至第四视频场景对应的目标帧集合,第9个目标帧划分至第五视频场景对应的目标帧集合,第10个目标帧划分至第六视频场景对应的目标帧集合。

由此,即实现了基于视频场景变换的目标帧集合划分,即不同的目标帧子集合对应于不同的视频场景。

步骤370,根据若干目标帧子集合中的起始目标帧和结束目标帧,将所述待处理视频剪辑为若干视频片段。

其中,所述视频片段为所述待处理视频中与其中一个目标帧子集合中起始目标帧和结束目标帧对应的一段视频。

下面结合图7和图8,对待处理视频的剪辑过程加以详细地说明。

假设待处理视频包括300个视频帧,如图7所示。

再假设目标帧集合中的第1个目标帧子集合,如图7所示,该第1个目标帧子集合包括6个目标帧,其中,第1个目标帧为该第1个目标帧子集合的起始目标帧,第6个目标帧为该第1个目标帧子集合的结束目标帧。

在一实施例的实现中,如图8所示,步骤370可以包括以下步骤:

步骤371,针对该第1个目标帧子集合中的6个目标帧,确定该第1个目标帧子集合中的第1个目标帧为起始目标帧、第6个目标帧为结束目标帧。

步骤373,在所述待处理视频对应的时间轴上,搜索该第1个目标帧子集合中起始目标帧和结束目标帧分别对应的起始时间点和结束时间点。

步骤375,对所述待处理视频中与搜索到起始时间点和结束时间点对应的一段视频进行剪辑,得到与该第1个目标帧子集合中起始目标帧和结束目标帧对应的第1个视频片段。即,该第1个视频片段包括待处理视频中的第4个视频帧至第16个视频帧。

由此,针对目标帧集合中的所有目标帧子集合进行遍历,直至待处理视频完成视频剪辑。

通过如上所述的过程,实现了基于目标帧集合和视频场景变换的视频剪辑,既通过目标帧集合中的目标帧去除了待处理视频中的重复内容,以此提升了视频剪辑的效率,而且从视频场景变换角度进行目标帧集合的划分,来提升视频剪辑的准确率,很好地达到了视频剪辑时同时兼顾效率和准确率的目的。

请参阅图9,在一示例性实施例中,步骤310可以包括以下步骤:

步骤311,对所述待处理视频中的相邻两个视频帧进行帧间差分运算,得到所述待处理视频中各视频帧的平均帧间差分强度。

具体而言,在一实施例的实现中,如图11所示,步骤311可以包括以下步骤:

步骤3111,针对所述待处理视频中的每一个视频帧,将该视频帧及其后一个视频帧,作为相邻两个视频帧。

步骤3113,计算该相邻两个视频帧中对应位置上像素属性值之间的差值。

其中,像素的属性值包括但不限于:灰度、亮度、饱和度、对比度等等。

为了更加方便清楚地说明平均帧间差分强度的计算过程,以二值图像的像素灰度为例进行说明。

待处理视频中,每一个视频帧中像素的灰度仅为“0”或者“1”。其中,“0”表示视频中像素的灰度为0,即黑色;“1”表示视频中像素的灰度为255,即白色。此时,对于相邻两个视频帧中对应位置上的像素而言,灰度要么相等,要么相差1。

如图10所示,对于待处理视频中相邻两个视频帧(第4个视频帧和第5个视频帧)而言,分别包括阵列式排布的若干像素,该若干像素的灰度为0或者1,如图10中“1()”“2()”“3()”“4()”所示。其中,括号前的数字表示像素在视频帧中的位置,括号中的数字表示像素的灰度。

那么,就第4个视频帧和第5个视频帧来说,第1个对应位置上像素灰度之间的差值为0,第2个对应位置上像素灰度之间的差值为1,第3个对应位置上像素灰度之间的差值为0,第4个对应位置上像素灰度之间的差值为0。

以此类推,该相邻两个视频帧中对应位置上像素灰度之间的差值为0或者1。

步骤3115,将计算得到的差值累加,得到所述后一个视频帧的平均帧间差分强度。

仍结合图10举例说明,在计算得到第4、5个视频帧中对应位置上像素灰度之间的差值之后,便可进行差值累加,亦即统计1的个数,即得到第5个视频帧的平均帧间差分强度。

由此可知,视频帧的平均帧间差分强度,实质上反映了该视频帧与前一个视频帧所描述待处理视频内容之间的差别。容易理解,如果该视频帧与前一个视频帧所描述待处理视频内容之间的差别很大,则表明该视频帧可能作为目标帧来体现视频图像信息,而并非作为过渡帧或者中间帧用于使得相邻两个视频帧之间过渡得更加连续自然。

步骤3117,待所述待处理视频中的所有相邻两个视频帧完成帧间差分运算,得到所述待处理视频中各视频帧的平均帧间差分强度。

基于上述过程,实现了视频帧的平均帧间差分强度的计算,以此作为目标帧提取的依据,使得基于目标帧的视频剪辑得以实现。

步骤313,根据所述待处理视频中视频帧的平均帧间差分强度,从所述待处理视频中选取若干视频帧作为用于描述视频图像信息的目标帧。

目标帧的选取,主要包括如下三种方案,本实施例对此并未加以限定。

第一种方案,对待处理视频中所有视频帧的平均帧间差分强度进行排序,选取排名靠前的k个视频帧,作为用于描述待处理视频关键内容的目标帧。其中,k可以根据应用场景的实际需要灵活地设置。

第二种方案,设置强度阈值l,选取平均帧间差分强度超过强度阈值的视频帧,作为用于描述待处理视频关键内容的目标帧。其中,强度阈值l可以根据应用场景的实际需要灵活地调整。

第三种方案,计算平均帧间差分强度的局部最大值,选取具有局部最大值的视频帧,作为用于描述待处理视频关键内容的目标帧。

当然,为了进一步提升视频剪辑的准确性,目标帧提取时,还可以针对所有视频帧的平均帧间差分强度进行平滑处理,以此移除待处理视频中的噪声,进而避免相似视频场景中的若干视频帧被同时选取为目标帧而导致目标帧集合中仍存在待处理视频的重复内容的现象。

在上述过程中,即实现了目标帧的提取,后续便可进一步生成待处理视频的目标帧集合,即执行步骤315。

步骤315,根据选取的目标帧生成所述待处理视频的目标帧集合。

如前所述,目标帧可以自身即具备时间戳信息,也可以不具备时间戳信息,由此,关于目标帧集合的生成,可以直接由选取的具备时间戳信息的目标帧按照时间顺序生成,还可以由不具备时间戳信息的目标帧、以及其在待处理视频对应时间轴上的时间点进一步生成,本实施例在此未构成具体限定。

通过上述实施例的配合,实现了目标帧集合的获取,一方面将视频剪辑问题简化为目标帧集合划分问题,既简化了视频剪辑的复杂度,还提高了视频剪辑的效率,另一方面,目标帧集合实质为待处理视频的关键内容的集合,不仅能够涵盖待处理视频的整体内容和时间发展顺序,还去除了待处理视频中的重复内容,从而能够充分地保障视频剪辑的准确性。

当然,在其他实施例中,目标帧提取时,并不局限于考虑待处理视频的关键内容,还可以结合待处理视频的视频类型,例如,待处理视频为影视作品时,可以考虑结合该影视作品的背景音乐、主题曲等等参与视频剪辑,以此提升目标帧提取的准确率,进而有利于保障视频剪辑的准确性。

请参阅图12,在一示例性实施例中,步骤330可以包括以下步骤:

步骤331,从所述目标帧集合中确定相邻两个目标帧。

步骤333,根据所述目标帧集合中该相邻两个目标帧描述的视频图像信息,获取该相邻两个目标帧之间的相似性关系。

步骤335,如果获取到的相似性关系表示该相邻两个目标帧之间相似,则确定该相邻两个目标帧属于同一个视频场景。

也就是说,相邻两个目标帧,其所描述的视频图像信息相似或者一致,那么,便可认为该相邻两个目标帧之间的相似性关系表示该相邻两个目标帧之间相似,则该相邻两个目标帧发生在同一个视频场景。

相似性关系的获取,可以通过特征提取来实现。

具体而言,请参阅图13,在一示例性实施例中,步骤333可以包括以下步骤:

步骤3331,对所述目标帧集合中的该相邻两个目标帧进行特征提取,得到该相邻两个目标帧对应的目标帧特征信息。

本实施例中,特征提取,通过深度学习中的残差网络实现。

如图14所示,残差网络,至少包括:输入层、卷积层、传输层。

基于残差网络的上述结构,对特征提取过程加以详细地说明如下。

具体而言,将所述目标帧集合中的目标帧,由残差网络的输入层输入所述残差网络。

基于所述残差网络的卷积层,对所述目标帧集合中的目标帧进行局部特征提取。

基于所述残差网络的传输层,对所述卷积层提取到的局部特征进行特征融合,得到所述目标帧集合中目标帧对应的目标帧特征信息。

其中,局部特征,是以数字方式来描述目标帧在卷积层不同层次(例如,图14中示出的h1层至h4层)的部分特征,而目标帧特征信息,亦即全局特征,是在传输层中对目标帧在卷积层不同层次的特征进行特征融合生成的,则是以数字方式对目标帧的整体特征进行全面而准确地描述。

也就是说,基于残差网络,目标帧逐渐由局部特征描述抽象为全局特征描述,使得目标帧所描述的视频图像信息能够更加精准地体现,进而有利于进一步提升视频剪辑的准确率。

由此,方能够由所述目标帧集合中目标帧对应的目标帧特征信息,确定该相邻两个目标帧对应的目标帧特征信息,进而获取该相邻两个目标帧之间的相似性关系,即执行步骤3333。

步骤3333,根据该相邻两个目标帧对应的目标帧特征信息,计算该相邻两个目标帧之间的相似度,得到该相邻两个目标帧之间的相似性关系。

其中,相邻两个目标帧之间的相似性关系,通过相似度唯一地表示该相邻两个目标帧之间的相似程度。容易理解,相邻两个目标帧之间的相似度越高,表明该相邻两个目标帧发生在同一个视频场景的概率越大。

相似度的计算,可以采用余弦距离法、欧式距离法、或者余弦欧式距离相互结合的方法,本实施例在此并未加以限定。

通过上述过程,实现了基于特征描述的相似性关系挖掘,以此作为视频场景检测的依据,使得基于视频场景变换的视频剪辑得以实现。

当然,在其他实施例中,并非局限于特征提取依赖于深度学习实现,目标帧提取、相似性关系获取、目标帧集合划分等均可通过深度学习完成,那么,在进行视频剪辑时,仅需要输入待处理视频,便能够输出对应的若干视频片段,进而充分地保证视频剪辑的效率,本发明上述各实施例并非对此构成具体限定。

图15是一应用场景中一种视频发布方法的具体实现示意图。该应用场景中,视频处理方法应用在视频发布场景,例如,视频处理方法可以应用在社交应用中,那么,用户基于上传的待处理视频,便可在社交应用中发布相应的视频片段。

具体地,如图15所示,客户端上传待处理视频至服务器端。

就服务器端而言,在接收到待处理视频之后,便调用视频处理服务,按照本发明上述各实施例中的视频处理方法,执行步骤801至805,结合图16所示,将待处理视频video剪辑生成若干视频片段video_during_i(1<=i<=m),并将该若干视频片段返回客户端。

客户端中,接收所述服务器端返回的若干视频片段,并接收针对若干视频片段的选择指令,在所述客户端中发布所述选择指令选定的视频片段。

也就是说,用户可以从若干视频片段中选择自己喜欢的视频片段,将其发布在社交应用中,以分享给其他用户。

在该应用场景中,随着视频剪辑同时兼顾效率和准确率,视频发布的效率也大大提升,有利于提升用户的发布体验。

图17是一应用场景中一种视频推送方法的具体实现示意图。该应用场景中,视频处理方法应用在视频推送场景,例如,视频处理方法可以应用在新闻浏览应用中,此时,后端服务器会根据前端用户的喜好,向前端用户推送新闻资讯相关的视频片段。

具体地,如图17所示,后端服务器接收视频推送请求,确定发起所述视频推送请求的请求方所关联兴趣点。

根据所述请求方关联的兴趣点,从视频库中的视频片段选取与所述兴趣点相匹配的目标视频片段。

其中,就视频库而言,针对预先收集的待处理视频,调用视频处理服务,按照本发明上述各实施例中的视频处理方法,执行步骤801至805,结合图16所示,将待处理视频video剪辑生成若干视频片段video_during_i(1<=i<=m),并将该若干视频片段存储。

向所述请求方推送目标视频片段。

此时,在新闻浏览应用中,向前端用户展示的即是该前端用户所感兴趣的新闻资讯相关的视频片段,而对于前端用户而言,将能够随时浏览其所感兴趣的新闻资讯相关的视频片段,从而有效地提升用户的浏览体验。

在此应用场景中,随着视频剪辑同时兼顾效率和准确率,更好地实现视频剪辑的智能化,使得视频库中的视频片段不需要耗费大量的人力精力而越发地丰富,且有利于更加精准地贴合前端用户的兴趣点,进而充分地满足不同用户的兴趣。

下述为本发明装置实施例,可以用于执行本发明所涉及的视频处理方法、视频发布方法、视频推送方法。对于本发明装置实施例中未披露的细节,请参照本发明所涉及的视频处理方法、视频发布方法、视频推送方法的方法实施例。

请参阅图18,在一示例性实施例中,一种视频处理装置900包括但不限于:集合获取模块910、场景检测模块930、集合划分模块950和视频剪辑模块970。

其中,集合获取模块910,用于获取待处理视频的目标帧集合,所述目标帧集合包括若干目标帧。

场景检测模块930,用于根据所述目标帧集合中若干目标帧描述的视频图像信息,检测所述目标帧集合中的相邻两个目标帧是否属于同一个视频场景。

集合划分模块950,用于根据检测结果,将所述目标帧集合划分为对应于不同视频场景的若干目标帧子集合。

视频剪辑模块970,用于根据若干目标帧子集合中的起始目标帧和结束目标帧,将所述待处理视频剪辑为若干视频片段。

请参阅图19,在一示例性实施例中,一种视频发布装置1100包括但不限于:视频上传模块1110、片段接收模块1130和片段发布模块1150。

其中,视频上传模块1110,用于上传待处理视频至服务器端。

片段接收模块1130,用于接收所述服务器端返回的若干视频片段,若干视频片段是所述服务器按照视频处理方法对所述待处理视频进行剪辑得到的。

片段发布模块1150,用于接收针对若干视频片段的选择指令,在所述客户端中发布所述选择指令选定的视频片段。

请参阅图20,在一示例性实施例中,一种视频推送装置1300包括但不限于:请求接收模块1310、片段选取模块1330和片段推送模块1350。

其中,请求接收模块1310,用于接收视频推送请求,确定发起所述视频推送请求的请求方所关联兴趣点。

片段选取模块1330,用于根据所述请求方关联的兴趣点,从视频库中的视频片段选取与所述兴趣点相匹配的目标视频片段,所述视频库中的视频片段是按照视频处理方法对若干待处理视频进行剪辑得到的。

片段推送模块1350,用于向所述请求方推送目标视频片段。

需要说明的是,上述实施例所提供的视频处理装置、视频发布装置、视频推送装置在进行视频处理、发布、推送时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即视频处理装置、视频发布装置、视频推送装置的内部结构将划分为不同的功能模块,以完成以上描述的全部或者部分功能。

另外,上述实施例所提供的视频处理装置、视频发布装置、视频推送装置与视频处理方法、视频发布方法、视频推送方法的实施例属于同一构思,其中各个模块执行操作的具体方式已经在方法实施例中进行了详细描述,此处不再赘述。

请参阅图21,在一示例性实施例中,一种电子设备1000,包括至少一处理器1001、至少一存储器1002、以及至少一通信总线1003。

其中,存储器1002上存储有计算机可读指令,处理器1001通过通信总线1003读取存储器1002中存储的计算机可读指令。

该计算机可读指令被处理器1001执行时实现上述各实施例中的视频处理方法、发布方法、推送方法。

在一示例性实施例中,一种存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各实施例中的视频处理方法、发布方法、推送方法。

上述内容,仅为本发明的较佳示例性实施例,并非用于限制本发明的实施方案,本领域普通技术人员根据本发明的主要构思和精神,可以十分方便地进行相应的变通或修改,故本发明的保护范围应以权利要求书所要求的保护范围为准。


技术特征:

1.一种视频处理方法,其特征在于,包括:

获取待处理视频的目标帧集合,所述目标帧集合包括若干目标帧;

根据所述目标帧集合中若干目标帧描述的视频图像信息,检测所述目标帧集合中的相邻两个目标帧是否属于同一个视频场景;

根据检测结果,将所述目标帧集合划分为对应于不同视频场景的若干目标帧子集合;

根据若干目标帧子集合中的起始目标帧和结束目标帧,将所述待处理视频剪辑为若干视频片段。

2.如权利要求1所述的方法,其特征在于,所述根据所述目标帧集合中若干目标帧描述的视频图像信息,检测所述目标帧集合中的相邻两个目标帧是否属于同一个视频场景,包括:

从所述目标帧集合中确定相邻两个目标帧;

根据所述目标帧集合中该相邻两个目标帧描述的视频图像信息,获取该相邻两个目标帧之间的相似性关系;

如果获取到的相似性关系表示该相邻两个目标帧之间相似,则确定该相邻两个目标帧属于同一个视频场景。

3.如权利要求2所述的方法,其特征在于,所述根据所述目标帧集合中该相邻两个目标帧描述的视频图像信息,获取该相邻两个目标帧之间的相似性关系,包括:

对所述目标帧集合中的该相邻两个目标帧进行特征提取,得到该相邻两个目标帧对应的目标帧特征信息;

根据该相邻两个目标帧对应的目标帧特征信息,计算该相邻两个目标帧之间的相似度,得到该相邻两个目标帧之间的相似性关系。

4.如权利要求3所述的方法,其特征在于,所述对所述目标帧集合中的该相邻两个目标帧进行特征提取,得到该相邻两个目标帧对应的目标帧特征信息,包括:

将所述目标帧集合中的目标帧,由残差网络的输入层输入所述残差网络;

基于所述残差网络的卷积层,对所述目标帧集合中的目标帧进行局部特征提取;

基于所述残差网络的传输层,对所述卷积层提取到的局部特征进行特征融合,得到所述目标帧集合中目标帧对应的目标帧特征信息;

由所述目标帧集合中目标帧对应的目标帧特征信息,确定该相邻两个目标帧对应的目标帧特征信息。

5.如权利要求1所述的方法,其特征在于,所述根据检测结果,将所述目标帧集合划分为对应于不同视频场景的若干目标帧子集合,包括:

如果所述检测结果指示所述目标帧集合中的相邻两个目标帧属于两个不同视频场景,则将该相邻两个目标帧分别划分至该两个不同视频场景对应的目标帧子集合。

6.如权利要求5所述的方法,其特征在于,所述如果所述检测结果指示所述目标帧集合中的相邻两个目标帧属于两个不同视频场景,则将该相邻两个目标帧分别划分至该两个不同视频场景对应的目标帧子集合,包括:

针对所述目标帧集合中的每一个目标帧,将该目标帧及其后一个目标帧作为相邻两个目标帧;

如果所述检测结果指示该目标帧属于第一视频场景,则将该目标帧划分至所述第一视频场景对应的目标帧子集合;

如果所述检测结果指示所述后一个目标帧属于所述第一视频场景,则将所述后一个目标帧划分至所述第一视频场景对应的目标帧子集合;或者,如果所述检测结果指示所述后一个目标帧属于第二视频场景,则将所述后一个目标帧划分至所述第二视频场景对应的目标帧子集合;

针对所述目标帧集合中的所有目标帧进行遍历,直至所述目标帧集合中的目标帧完成划分。

7.如权利要求1至6任一项所述的方法,其特征在于,所述获取待处理视频的目标帧集合,包括:

对所述待处理视频中的相邻两个视频帧进行帧间差分运算,得到所述待处理视频中各视频帧的平均帧间差分强度;

根据所述待处理视频中各视频帧的平均帧间差分强度,从所述待处理视频中选取若干视频帧作为目标帧;

根据选取的目标帧生成所述待处理视频的目标帧集合。

8.如权利要求7所述的方法,其特征在于,所述对所述待处理视频中的相邻两个视频帧进行帧间差分运算,得到所述待处理视频中各视频帧的平均帧间差分强度,包括:

针对所述待处理视频中的每一个视频帧,将该视频帧及其后一个视频帧,作为相邻两个视频帧;

计算该相邻两个视频帧中对应位置上像素属性之间的差值;

将计算得到的差值累加,得到所述后一个视频帧的平均帧间差分强度;

待所述待处理视频中的所有相邻两个视频帧完成帧间差分运算,得到所述待处理视频中各视频帧的平均帧间差分强度。

9.一种视频发布方法,其特征在于,包括:

上传待处理视频至服务器端;

接收所述服务器端返回的若干视频片段,若干视频片段是所述服务器按照权利要求1至8中任一项所述的视频处理方法对所述待处理视频进行剪辑得到的;

接收针对若干视频片段的选择指令,在所述客户端中发布所述选择指令选定的视频片段。

10.一种视频推送方法,其特征在于,包括:

接收视频推送请求,确定发起所述视频推送请求的请求方所关联兴趣点;

根据所述请求方关联的兴趣点,从视频库中的视频片段选取与所述兴趣点相匹配的目标视频片段,所述视频库中的视频片段是按照权利要求1至8中任一项所述的视频处理方法对若干待处理视频进行剪辑得到的;

向所述请求方推送目标视频片段。

11.一种视频处理装置,其特征在于,包括:

集合获取模块,用于获取待处理视频的目标帧集合,所述目标帧集合包括若干目标帧;

场景检测模块,用于根据所述目标帧集合中若干目标帧描述的视频图像信息,检测所述目标帧集合中的相邻两个目标帧是否属于同一个视频场景;

集合划分模块,用于根据检测结果,将所述目标帧集合划分为对应于不同视频场景的若干目标帧子集合;

视频剪辑模块,用于根据若干目标帧子集合中的起始目标帧和结束目标帧,将所述待处理视频剪辑为若干视频片段。

12.一种视频发布装置,其特征在于,包括:

视频上传模块,用于上传待处理视频至服务器端;

片段接收模块,用于接收所述服务器端返回的若干视频片段,若干视频片段是所述服务器按照如权利要求1至8中任一项所述的视频处理方法对所述待处理视频进行剪辑得到的;

片段发布模块,用于接收针对若干视频片段的选择指令,在所述客户端中发布所述选择指令选定的视频片段。

13.一种视频推送装置,其特征在于,包括:

请求接收模块,用于接收视频推送请求,确定发起所述视频推送请求的请求方所关联兴趣点;

片段选取模块,用于根据所述请求方关联的兴趣点,从视频库中的视频片段选取与所述兴趣点相匹配的目标视频片段,所述视频库中的视频片段是按照如权利要求1至8中任一项所述的视频处理方法对若干待处理视频进行剪辑得到的;

片段推送模块,用于向所述请求方推送目标视频片段。

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

处理器;及

存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时实现如权利要求1至10中任一项所述的视频处理方法、视频发布方法、视频推送方法。

15.一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至10中任一项所述的视频处理方法、视频发布方法、视频推送方法。

技术总结
本发明公开了一种视频处理方法、发布方法、推送方法及其装置,所述视频处理方法包括:获取待处理视频的目标帧集合,所述目标帧集合包括若干目标帧;根据所述目标帧集合中若干目标帧描述的视频图像信息,检测所述目标帧集合中的相邻两个目标帧是否属于同一个视频场景;根据检测结果,将所述目标帧集合划分为对应于不同视频场景的若干目标帧子集合;根据若干目标帧子集合中的起始目标帧和结束目标帧,将所述待处理视频剪辑为若干视频片段。采用本发明所提供的视频处理方法、发布方法、推送方法及其装置解决了现有技术中视频剪辑时难以同时兼顾效率和准确率的问题。

技术研发人员:梁涛;张晗;马连洋;衡阵
受保护的技术使用者:腾讯科技(深圳)有限公司
技术研发日:2020.01.13
技术公布日:2020.06.05

转载请注明原文地址: https://bbs.8miu.com/read-53494.html

最新回复(0)