CN113269790A - 视频裁剪方法、装置、电子设备、服务器及存储介质 - Google Patents
视频裁剪方法、装置、电子设备、服务器及存储介质 Download PDFInfo
- Publication number
- CN113269790A CN113269790A CN202110324925.1A CN202110324925A CN113269790A CN 113269790 A CN113269790 A CN 113269790A CN 202110324925 A CN202110324925 A CN 202110324925A CN 113269790 A CN113269790 A CN 113269790A
- Authority
- CN
- China
- Prior art keywords
- video
- images
- target
- image
- area
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/181—Segmentation; Edge detection involving edge growing; involving edge linking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/60—Analysis of geometric attributes
- G06T7/62—Analysis of geometric attributes of area, perimeter, diameter or volume
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Geometry (AREA)
- Image Analysis (AREA)
Abstract
本公开公开了一种视频裁剪方法、装置、电子设备、服务器及存储介质,属于图像处理技术领域。该视频裁剪方法包括抽取视频中的多帧图像;根据多帧图像,确定视频的图像区域中的像素运动信息;根据像素运动信息,在图像区域中确定目标区域,其中,目标区域为图像区域中目标像素的分布区域,目标像素为运动速度超过第一阈值的像素;针对视频中的至少一帧图像,在图像区域中除目标区域以外的其它区域内确定裁剪线;通过裁剪线对视频进行裁剪,得到目标视频,目标视频中至少包括目标区域。采用本公开提供的视频裁剪方法、装置、电子设备、服务器及存储介质,至少解决现有技术采用神经网络模型对视频图像进行裁剪时运算复杂度较高的问题。
Description
技术领域
本公开涉及图像处理技术领域,具体涉及一种视频裁剪方法、装置、电子设备、服务 器及存储介质。
背景技术
目前在对视频中的图像进行裁剪时,通常基于对每个视频帧中物体的检测结果或对内 容的分割结果进行裁剪,其中,在检测物体或内容分割时,需要通过基于深度学习的神经 网络模型进行处理,由于神经网络模型的运算复杂度较高,会消耗大量的运算资源,运算 速度也比较慢。
发明内容
本公开实施例的目的是提供一种视频裁剪方法、装置、电子设备、服务器及存储介质, 以至少解决现有技术采用神经网络模型对视频图像进行裁剪时运算复杂度较高的问题。
本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种视频裁剪方法,该方法可以包括:
抽取视频中的多帧图像;
根据多帧图像,确定视频的图像区域中的像素运动信息,其中,像素运动信息用于表 示两帧图像中多个像素的运动速度;
根据像素运动信息,在图像区域中确定目标区域,其中,目标区域为图像区域中目标 像素的分布区域,目标像素为运动速度超过第一阈值的像素;
针对视频中的至少一帧图像,在图像区域中除目标区域以外的其它区域内确定裁剪线;
通过裁剪线对视频进行裁剪,得到目标视频,以使目标区域在目标视频中所占的面积 超过第二阈值。
在其中一个实施例中,抽取视频中的多帧图像,包括:在视频中抽取连续的n帧图像, 其中,n为大于1的整数;
根据多帧图像,确定视频的图像区域中的像素运动信息,包括:针对n帧图像中每两 帧相邻的图像,计算图像区域中多个像素点的光流,以得到n-1帧光流场,其中,光流场用于表示像素运动信息。
基于此,在其中一个实施例中,在针对n帧图像中每两帧相邻的图像,计算图像区域 中多个像素点的光流,以得到n-1帧光流场之前,该方法还包括:
将n帧图像转换为灰度图像,得到n帧灰度图像;
相应的,针对n帧图像中每两帧相邻的图像,计算图像区域中多个像素点的光流,以 得到n-1帧光流场,具体包括:
针对n帧灰度图像中的每两帧相邻的图像,计算图像区域中多个像素点的光流,以得 到n-1帧光流场。
基于此,在其中一个实施例中,光流场用于表示多个像素中每个像素在相邻两帧图像 中的运动速度,根据所述像素运动信息,在所述图像区域中确定目标区域,包括:
在每帧光流场中,确定图像区域中的目标像素;
合成n-1帧光流场中目标像素的分布,以得到图像区域中目标像素的合成分布;
根据图像区域中目标像素的合成分布,在图像区域中确定目标区域。
基于此,在其中一个实施例中,根据图像区域中目标像素的合成分布,在图像区域中 确定目标区域,包括:
根据图像区域中目标像素的合成分布,通过预设图像区域分割方法对图像区域进行区 域分割,以将图像区域分割为至少两个区域;
在多个区域中,确定目标像素的密集度超过第三阈值的区域,以得到目标区域,其中, 密集度用于表示目标像素的个数与对应区域内的像素个数的比例。
在其中一个实施例中,针对视频中的至少一帧图像,在图像区域中除目标区域以外的 其它区域内确定裁剪线,包括:
在视频中抽取m帧图像;
针对m帧图像中的每帧图像,通过霍夫直线检测算法,在目标区域以外的其它区域检 测霍夫直线;
根据m帧图像检测出的霍夫直线,生成裁剪线。
基于此,在其中一个实施例中,根据m帧图像检测出的霍夫直线,生成裁剪线,包括:
比对m帧图像中检测出的霍夫直线,以确定m帧图像中位置重叠的直线;
根据位置重叠的直线确定裁剪线。
可选的,在另一个实施例中,根据m帧图像检测出的霍夫直线,生成裁剪线,包括:
获取检测出的每条霍夫直线的参数;
选取参数在预设参数范围之内的霍夫直线,得到目标霍夫直线;
根据目标霍夫直线确定裁剪线。
根据本公开实施例的第二方面,提供一种视频裁剪装置,该装置可以包括:
第一抽取模块,被配置为抽取视频中的多帧图像;
像素运动信息确定模块,被配置为根据多帧图像,确定视频的图像区域中的像素运动 信息,其中,像素运动信息用于表示两帧图像中多个像素的运动速度;
目标区域确定模块,被配置为根据像素运动信息,在图像区域中确定目标区域,其中, 目标区域为图像区域中目标像素的分布区域,目标像素为运动速度超过第一阈值的像素;
裁剪线确定模块,被配置为针对视频中的至少一帧图像,在图像区域中除目标区域以 外的其它区域内确定裁剪线;
裁剪模块,被配置为通过裁剪线对视频进行裁剪,得到目标视频,以使目标区域在目 标视频中所占的面积超过第二阈值。
在其中一个实施例中,第一抽取模块包括:第二抽取模块,被配置为在视频中抽取连 续的n帧图像,其中,n为大于1的整数;
像素运动信息确定模块包括:第一计算模块,被配置为针对n帧图像中每两帧相邻的 图像,计算图像区域中多个像素点的光流,以得到n-1帧光流场,其中,光流场用于表示像素运动信息。
在其中一个实施例中,该装置还包括:
转换模块,被配置为在针对n帧图像中每两帧相邻的图像,计算图像区域中多个像素 点的光流,以得到n-1帧光流场之前,将n帧图像转换为灰度图像,得到n帧灰度图像;
相应的,第一计算模块具体包括:
第二计算模块,被配置为针对n帧灰度图像中的每两帧相邻的图像,计算图像区域中 多个像素点的光流,以得到n-1帧光流场。
在其中一个实施例中,光流场用于表示多个像素中每个像素在相邻两帧图像中的运动 速度,目标区域确定模块包括:
目标像素确定模块,被配置为在得到n-1帧光流场之后,在每帧光流场中,确定图像 区域中的目标像素;
合成模块,被配置为合成n-1帧光流场中目标像素的分布,以得到图像区域中目标像 素的合成分布;
目标区域确定子模块,被配置为根据图像区域中目标像素的合成分布,在图像区域中 确定目标区域。
在其中一个实施例中,目标区域确定子模块包括:
分割模块,被配置为根据图像区域中目标像素的合成分布,通过预设图像区域分割方 法对图像区域进行区域分割,以将图像区域分割为至少两个区域;
区域确定子模块,被配置为在多个区域中,确定目标像素的密集度超过第三阈值的区 域,以得到目标区域,其中,密集度用于表示目标像素的个数与对应区域内的像素个数的 比例。
在其中一个实施例中,裁剪线确定模块包括:
第三抽取模块,被配置为在视频中抽取m帧图像;
检测模块,被配置为针对m帧图像中的每帧图像,通过霍夫直线检测算法,在目标区 域以外的其它区域检测霍夫直线;
生成模块,被配置为根据m帧图像检测出的霍夫直线,生成裁剪线。
在其中一个实施例中,生成模块包括:
比对模块,被配置为比对m帧图像中每两帧图像检测出的霍夫直线,以确定m帧图像 每两帧图像的重叠直线;
第一裁剪线确定子模块,被配置为根据位置重叠的直线确定裁剪线。
在其中一个实施例中,生成模块包括:
获取模块,被配置为获取检测出的每条霍夫直线的参数;
选取模块,被配置为选取参数在预设参数范围之内的霍夫直线,得到目标霍夫直线;
第二裁剪线确定子模块,被配置为根据目标霍夫直线确定裁剪线。
根据本公开实施例的第三方面,提供一种服务器,该服务器可以包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,处理器被配置为执行指令,以实现如第一方面的任一项实施例中所示的视频裁 剪方法。
根据本公开实施例的第四方面,提供一种电子设备,该电子设备可以包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如第一方面的任一项实施例中所示 的视频裁剪方法。
根据本公开实施例的第四方面,提供一种存储介质,当存储介质中的指令由视频裁剪 装置或者服务器的处理器执行时,以使视频裁剪装置或者服务器实现以实现如第一方面的 任一项实施例中所示的视频裁剪方法。
根据本公开实施例的第五方面,提供一种计算机程序产品,该计算机程序产品包括计 算机程序,该计算机程序存储在可读存储介质中,设备的至少一个处理器从存储介质读取 并执行计算机程序,使得设备执行第一方面的任一项实施例中所示的视频裁剪方法。
本公开的实施例提供的技术方案至少带来以下有益效果:
本公开实施例根据在视频中抽取的多帧图像,确定视频的图像区域中的像素运动信息, 通过像素的运动速度超过第一阈值,作为在视频的图像区域中划分目标区域的依据,然后 在目标区域之外确定裁剪线,进而对视频进行裁剪,裁剪后的视频中包括上述的目标区域, 从而可以对视频中存在运动目标的区域进行保留,保留了视频中有用的部分图像区域,相 比于基于深度学习裁剪视频的方案,本公开实施例的运算复杂度较低,并且不依赖于标注 样本数据,只需要对视频中的不同帧的图像进行比对即可计算像素运动信息,从而确定出 裁剪需要保留的区域,因此,处理效率较高,并且能够缩短处理过程的耗时。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限 值本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例, 并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的一种视频裁剪方法的流程图;
图2是根据一示例性实施例示出的另一种视频裁剪方法的流程图;
图3是根据一示例性实施例示出的一种视频裁剪方法的应用场景事宜图;
图4是根据一示例性实施例示出的另一种视频裁剪方法的应用场景示意图;
图5是根据一示例性实施例示出的另一种视频裁剪方法的流程图;
图6是根据一示例性实施例示出的一种视频裁剪装置的结构框图;
图7是根据一示例性实施例示出的一种计算设备的结构框图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实 施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二” 等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的 数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描 述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一 致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面 相一致的装置和方法的例子。
本公开所提供的视频裁剪方法,可以由电子设备执行,其中,电子设备可以是手机、 平板电脑、一体机等具有通讯功能的设备,也可以是虚拟机或模拟器模拟的设备,或者笔 记本电脑、服务器、工作站等具有运算能力的设备,其中,服务器可以是云服务器或者服务器集群等具有存储以及计算功能的设备。
图1为本公开实施例提供的视频裁剪方法的一种可选的实施例的流程示意图,如图1 所示,该实施例提供的视频裁剪方法可以包括如下步骤:
步骤101,抽取视频中的多帧图像。
本公开实施例用于对视频的图像区域进行裁剪,因此,对视频中的图像帧进行处理即 可,对视频中的音频信息等不作处理。步骤101中的视频是指待裁剪的视频,视频中包括 有序的多帧图像,在图像序列中抽取部分图像帧,以用于执行步骤102。
作为一种可选的实施例,可以抽取连续的n帧图像,其中,n为大于1的整数。例如,待裁剪的视频包括200帧图像,可以抽取视频中的第50~60帧的图像。由于视频具有连贯性,抽取视频中连续的多帧图像,可以有助于下一个步骤在多帧图像中获取像素运动信息之后,获取到的像素运动信息能够更准确反应像素的运动情况。
步骤102,根据多帧图像,确定视频的图像区域中的像素运动信息。
视频中所有图像帧的图像分辨率是相同的,具体的,在视频的每帧图像中,每一行的 像素个数相同,且每一列的像素个数相同。视频的图像区域是指视频中图像的全部显示区 域。
像素运动信息用于表示两帧图像中多个像素的运动速度。在图像中,物体的运动是通 过像素的运动来表示的,其中,物体可以是空间中实际存在的物体,如通过摄像机拍摄到 的视频中出现的物体,也可以是虚拟物体,例如,制作的动画,或对拍摄的照片中添加的 文字、特效动画等。无论是虚拟物体还是实际物体,该物体对应像素的像素值在不同帧图 像之间的变化,可以用于表示对应像素的运动信息。作为一种可选的实施方式,像素运动 信息可以是通过相邻的两帧图像确定的。此外,多个像素可以是图像区域中的全部像素, 或者,也可以是图像区域中的部分像素。
在确定两帧图像中多个像素的像素运动信息时,一种可选实施方式为,可以将两帧图 像中相同位置的两个像素的像素值直接相减,这样,可以提高计算像素运动信息的步骤的 运算效率,降低运算强度。具体而言,每一帧图像可以视作一个像素的矩阵,由于视频中 所有图像帧的图像分辨率是相同的,因此,视频中所有图像帧的矩阵大小也是相同的,例 如,都是1280×720个像素的矩阵,那么,在两个图像帧相减时,可以视作两个像素的矩阵进行相减,对两个矩阵中相同位置的元素(每个元素用于表示对应的像素)执行减法, 进而,通过相减得到的结果来表示像素运动信息。
对于两个图像中某一个相同位置的两个像素,在相减时是对应的像素值进行相减。在 视频中,所有的图像帧都按照同一种颜色模式表示每帧图像的每个像素的像素值。根据颜 色模式的不同,像素值可以通过不同的记录方式表达,例如,在RGB颜色模式下,每个像 素的像素值包括红(R)、绿(G)、蓝(B)三种基色的数值,通过数值表示对应基色的强弱, 像素显示的颜色是三种基色按照对应强度的叠加色;或者,在灰度模式下,每个像素的像 素值可以只用一个数值表示灰度强弱信息,例如,像素值可以是在0到255(包括端值)之间的任意一个整数,255表示白色,0表示黑色。在一个像素值通过多个数值表示的情况下,两个像素的像素值相减,是指将相同成分的数值进行相减,得到的数值,例如,在RGB颜 色模式下,第一图像中第一位置的像素(第一像素)的像素值为(15,100,70),第二图像 中第一位置(也即,与第一图像中的第一像素的位置相同)的像素(第二像素)的像素值 为(30,90,65),则第一像素减第二像素相减得到的差值为(-15,10,5)。一种可选的示例 为,通过这个差值,表示第一图像中第一位置的像素相对于第二图像第一位置的像素的相 对运动情况,以减小运算压力。
可选的,在另一种实施方式中,像素运动信息也可以是通过光流场算法计算光流的方 式得到。光流场算法的基本原理是,利用图像序列中像素在时间域上的变化以及相邻帧之 间的相关性,来找到相邻帧图像之间像素的对应关系,也即,对于相邻的第一帧图像和第 二帧图像中,第一帧图像中的一个像素点在下一帧图像中对应于哪一个像素点;进而,在 确定对应关系之后,可以计算出相邻两帧图像之间像素的运动信息。根据具体的计算原理 的不同,光流场算法可以包括基于梯度的方法、基于匹配的方法、基于能量的方法、基于 相位的方法等等。
通过光流场算法,可以确定像素运动信息。一种示例为,通过光流场算法计算得到的 直接结果是光流场。光流场是一个二维矢量场。对于通过光流场算法计算第一帧图像到第 二帧图像得到的光流场,光流场中的每一个坐标位置的元素是一个二维的光流矢量,对应 于第一帧图像中对应坐标位置的像素,可以用于表示对应的像素由第一帧图像到第二帧图 像在两个维度上的运动速度(包括大小和方向),两个维度分别表示在图像平面上的x轴方 向上和y轴方向上的运动速度。换一种方式来说,在相邻两帧图像的时间间隔为运动速度 单位时间的情况下,光流矢量的矢量大小和方向与对应位置的像素点在相邻两帧图像中的 位移矢量的大小和方向相同。
由于光流场算法可以找到两帧图像之间像素的对应关系,也即,可以找到同一个像素 在两帧图像之间所处的位置,因此,可以确定具有对应关系的同一个像素在两帧图像之间 的运动情况。由此可知,通过光流场算法计算光流场来表示像素运动信息,可以更准确的 描述两帧图像的像素相对运动的信息。
可选的,在计算光流场时,可以先将非灰度模式表示的图像转换为灰度图像,从而根 据灰度值(灰度图像中每个像素的像素值)的瞬时变化率确定光流矢量。由于灰度图像中 的像素值是一维数值,相比于针对使用更多维度的向量表示像素值的图像,通过灰度图像 计算光流矢量可以降低计算量和运算复杂度。
具体而言,在执行步骤101抽取视频中的多帧图像时,具体的,可以在视频中抽取连 续的n帧图像,其中,n为大于1的整数,相应的,在执行步骤102根据多帧图像,确定视 频的图像区域中的像素运动信息时,可以针对n帧图像中每两帧相邻的图像,计算图像区 域中多个像素点的光流,以得到n-1帧光流场,其中,光流场用于表示像素运动信息。
进一步的,如图2所示,在本公开实施例的一个示例中,在针对n帧图像中每两帧相邻的图像,计算图像区域中多个像素点的光流,以得到n-1帧光流场之前,该方法还可以 包括步骤1021:将n帧图像转换为灰度图像,得到n帧灰度图像。
相应的,在执行针对n帧图像中每两帧相邻的图像,计算图像区域中多个像素点的光 流,以得到n-1帧光流场时,具体可以通过执行步骤1022实现,步骤1022:针对n帧灰度图像中的每两帧相邻的图像,计算图像区域中多个像素点的光流,以得到n-1帧光流场。 也即,每两帧相邻的灰度图像可以得到一帧光流场,相应的,通过n帧图像可以得到n-1 帧光流场。
步骤103,根据所述像素运动信息,在所述图像区域中确定目标区域。
目标区域为图像区域中目标像素的分布区域,而目标像素为运动速度超过第一阈值的 像素。需要说明的是,目标区域是包括有目标像素的区域,是目标像素所分布的区域。在 一些可选的示例中,目标区域中除了目标像素之外,还可以包括运动速度未超过第一阈值 的其它像素。而在另一些可选的示例中,图像区域中除了目标区域以外的其它区域,除了 包括目标像素以外的其它像素,也可以包括部分目标像素。具体目标区域的划分,可以根 据预设划分方法而定。例如,可以通过预先设置指定的条件判断目标像素的分布密集度, 将目标像素分布密集的区域作为目标区域。
为了使视频的裁剪更精确,在其中一个实施例中,可以通过稠密跟踪的光流场算法来 计算稠密光流场。稠密跟踪是一种针对图像或指定的某一片区域进行逐点匹配的图像配准 方法,这种方法通过计算图像上所有的点的偏移量,从而形成一个稠密的光流场。通过这 个稠密的光流场,可以进行像素级别的图像配准。根据光流场中二维矢量疏密程度的不同, 光流场算法可以包括稠密跟踪和稀疏跟踪。稀疏跟踪并不对图像的每个像素进行逐点计算, 可以在图像中指定一组点进行跟踪,这组点最好具有某种明显的特性,例如Harris角点等, 虽然稀疏跟踪的计算开销比稠密跟踪小,但是稠密跟踪的结果更精确,本公开实施例以通 过稠密跟踪的光流场算法计算稠密光流为例,说明步骤103的一种可选的具体实现过程。
在光流场用于表示多个像素中每个像素在相邻两帧图像中的运动速度的情况下,也即, 光流场是稠密光流场的情况下,步骤103根据所述像素运动信息,在所述图像区域中确定 目标区域,可以包括如下步骤1031~步骤1033:
步骤1031,在得到n-1帧光流场之后,在每帧光流场中,确定图像区域中的目标像素。
根据目标像素的定义,在图像区域中通过运动速度是否超过第一阈值来筛选目标像素。 由于光流场包括用于表示分别在x轴方向和y轴方向上的运动速度的二维矢量,第一阈值 可以是一个数值,对两个方向都设置一个相同的数值,具体来说,针对一帧光流场中一个 像素的坐标位置处的光流,如果在x轴方向上的运动速度矢量大小超过第一阈值,且y轴 方向上的运动速度矢量大小超过第一阈值,则确定该像素位置处是目标像素。需要说明的 是,对于每帧光流场,都可以得到该帧中分布的目标像素,对于n-1帧光流场,则可以分别得到每一帧中分布的目标像素。
步骤1032,合成n-1帧光流场中目标像素的分布,以得到图像区域中目标像素的合成 分布。
为了更准确的根据目标像素的分布确定视频中存在比较剧烈运动的区域,可以对n-1 帧中的目标像素的分布进行叠加,在图像区域中合成n-1帧中出现的目标像素。
在一个可选的示例中,图像区域中每个像素位置可以通过一个数值来表示n-1帧光流 场中该像素位置出现目标像素的次数。例如,如果一个像素位置(x1,y1)在p(p≤n-1)帧光流场中都判断为目标像素,则该像素位置的数值可以是p。以此类推,可以得到图像区域中所有像素位置在n-1帧光流场中出现目标像素的次数,从而,通过这个矩阵来描述目标像素的合成分布。或者,在另一个可选的示例中,也可以不对目标像素的出现次数进行计数,只对一个坐标位置是否在n-1帧光流场中出现过目标像素进行二值判断,如果出现过则标记为1,如果未出现过则标记为0,通过这个元素为0或1的二值矩阵来描述目标像 素的合成分布。
步骤1033,根据图像区域中目标像素的合成分布,在图像区域中确定目标区域。
在根据n-1帧光流场确定目标像素的合成分布之后,可以在图像区域中确定目标区域。
在确定目标区域时,可以通过不同的划分方法对图像区域进行划分。在一个可选的实 施例中,步骤1033根据图像区域中目标像素的合成分布,在图像区域中确定目标区域,可 以包括如下步骤1331~步骤1332:
步骤1331,根据图像区域中目标像素的合成分布,通过预设图像区域分割方法对图像 区域进行区域分割,以将图像区域分割为至少两个区域。
预设图像分割方法用于将图像区域分割为互不相交的至少两个区域。其中,预设图像 分割方法分割区域的目标个数可以是指定数量,或者,也可以是使分割得到的区域尽量少。
在一种可选的实施方式中,预设图像分割方法的目标可以是使得每个区域中目标像素 的分布达到一定的密集程度。预设图像分割方法可以包括基于阈值的分割方法、基于区域 的分割方法、基于边缘的分割方法以及基于特定理论的分割方法等。
例如,可以使用基于区域的分割方法,基于区域的分割方法又可以进一步的细分为基 于区域生长的方法或基于区域分裂合并的方法,下面以区域生长为例,说明分割图像区域 的过程。
首先,在图像区域中选取一个随机的像素作为第一种子像素。如果第一种子像素为目 标像素,则以第一种子像素作为第一区域生长的起点,在以第一种子像素为中心的第一范 围内(如5×5的面积内),以如下条件判断是否生长:如果存在超过第四阈值(例如2个) 的目标像素,则将该指定范围划分到第一区域内;否则,停止对第一种子像素的生长。
接着,将这些新划分进第一区域的每个像素作为新的种子像素,继续按照上述条件进 行判断,重复的迭代,直至没有符合上述条件的种子像素,至此,第一区域生长完毕。
在第一区域生长完毕之后,在图像区域中除第一区域以外的区域内再随机选取一个像 素作为第二种子像素,如果第二种子像素是目标像素,则以第二种子像素作为第二区域生 长的起点,继续按照与第一区域相似的生长过程生长第二区域,如果第二种子像素是不是 目标像素,则判断条件可以改变为:以第二种子像素为中心的第二范围(例如7×7的面积 内)内,如果存在超过第五阈值(例如10个)的目标像素,则停止生长,否则,将第二范围划分至第二区域内,并将第二范围内的每个像素作为新的种子像素,继续执行生长的判断逻辑。
通过上述方式,在将全部的图像区域生长完毕之后,可以得到图像区域的分割结果, 图像区域被分割为至少两个区域。
步骤1332,在多个区域中,确定目标像素的密集度超过第三阈值的区域,以得到目标 区域。
密集度用于表示目标像素的个数与对应区域内的像素个数的比例。在多个区域中,确 定目标像素的密集度超过第三阈值的区域,可以是预先指定第三阈值,也可以是按照密集 度对多个区域进行排序,选取前q个区域作为目标区域,其中,q为预先指定的正整数,至 少大于等于1且小于等于图像区域分割后的区域个数。目标区域是要保留的区域,通常视 频中的有效信息都是运动的,因此,根据运动速度信息在图像区域中确定要保留的区域, 相对于基于深度学习等方法,在满足一定精确度的前提下,运算的复杂度更低,运算速度 更快。
步骤104,针对视频中的至少一帧图像,在图像区域中除目标区域以外的其它区域内确 定裁剪线。
由于目标区域是要保留的区域,因此,可以在目标区域以外的其它区域确定裁剪线。 一种可选的实施方式为,以目标像素所在位置的集合作为目标区域,这样,除目标区域以 外的其它区域,则是指图像区域中除了目标像素以外的其它像素所在位置的集合,在这种 情况下,其它区域中可能包括零散的目标像素。例如,如图3所示,在视频的图像区域301中,包括目标区域302和目标区域303,以及几个被标识出的目标像素。另一种可选的实施方式为,通过步骤1331~步骤1332分割图像区域后得到目标区域,从而,可以得到相对于直接以目标像素所在位置的集合作为目标区域更为连续的目标区域。
在图像区域中除目标区域以外的其它区域内确定裁剪线,一种可选的实施方式为在其 它区域中检测直线,由于检测出的直线可能包括干扰线,因此,可以根据裁剪视频的不同 目标,设置不同的筛选条件,在检测出的直线中确定裁剪线。检测直线可以使用霍夫直线 检测(Hough Line Detection)方法,或者水平线场(Level-Line Field,简称LSD)直线 检测方法等。
以霍夫直线检测方法为例,步骤104针对视频中的至少一帧图像,在图像区域中除目 标区域以外的其它区域内确定裁剪线,包括:
步骤1041,在视频中抽取m帧图像;
需要说明的是,抽取的m帧图像的步骤,可以是与步骤101相互独立的步骤,也即,抽取的m帧图像并非与步骤101中抽取出的多帧图像完全相同。此外,抽取的m帧图像也 可以是非连续的。当然,作为一种可选的实施方式,抽取的m帧图像可以是与步骤101中 抽取的图像相同的图像,进而,在这种情况下,可以删除步骤1041,这样可以便于处理, 减小操作流程的繁琐程度。
步骤1042,针对m帧图像中的每帧图像,通过霍夫直线检测算法,在目标区域以外的 其它区域检测霍夫直线。
霍夫直线检测算法可以检测出图像中的直线,根据检测到的直线来确定裁剪线,可以 利用图像中自然出现的直线作为裁剪线,找到更符合视频内容特点的裁剪线。
具体而言,霍夫直线检测算法可以使用不同的具体实施方式,例如,基于直线坐标参 数空间检测霍夫直线,或者,基于极坐标参数空间检测直线。检测到的霍夫直线通过对应 的参数空间的表达方式描述。
步骤1043,根据m帧图像检测出的霍夫直线,生成裁剪线。
在检测出m帧图像中每帧图像的霍夫直线之后,根据这m帧图像检测到的霍夫直线生 成裁剪线。一种可选的示例为,根据m帧图像中在同一个位置附近都检测到的霍夫直线作 为裁剪线。另一种可选的示例为,可以在所有的霍夫直线中选取出符合预设条件的霍夫直 线,例如,选取直线的参数在预设参数范围之内的霍夫直线,作为裁剪线。
基于此,提供一个可选的具体实施方式,步骤1043根据m帧图像检测出的霍夫直线, 生成裁剪线,可以包括如下步骤:
步骤41,比对m帧图像中每两帧图像检测出的霍夫直线,以确定m帧图像每两帧图像 的重叠直线;
步骤42,根据位置重叠的直线确定裁剪线。
位置重叠的直线是在至少两帧图像中位置相近的霍夫直线。位置相近是指位置相差符 合预设条件,具体而言,在霍夫直线通过参数表示的情况下,位置重叠的直线参数相差在 第三范围之内。
例如,第一帧图像中的第一霍夫直线的直线坐标参数为(a1,b1),其中,a1是第一霍 夫直线的斜率,b1是第一霍夫直线的截距,第二帧图像中的第二霍夫直线的直线坐标参数 为(a2,b2),其中,a2是第二霍夫直线的斜率,b2是第二霍夫直线的截距。如果|a1-a2|小于第五阈值,且|b1-b2|小于第六阈值,可以认为第一霍夫直线和第二霍夫直线是两帧图像中位置重叠的直线,也即,两条霍夫直线在图像区域中的同一个位置附近。
在确定出m帧图像中所有位置重叠的直线之后,根据位置的不同,可以将位置重叠的 直线分为至少一组,每组位置重叠的直线在同一个位置附近。那么,针对每组位置重叠的 直线,可以将组内所有的霍夫直线的参数求平均数,这样,每组直线可以得到一条直线(也 即裁剪线)的参数,有几组位置重叠的直线则有几根裁剪线。
可选的,在另一个具体实施例中,步骤1043根据m帧图像检测出的霍夫直线,生成裁 剪线,可以包括如下步骤:
步骤43,获取检测出的每条霍夫直线的参数;
步骤44,选取参数在预设参数范围之内的霍夫直线,得到目标霍夫直线;
步骤45,根据目标霍夫直线确定裁剪线。
在这种情况下,由于预设参数范围是预先设置的,因此,可以直接在检测出的霍夫直 线中筛选出符合条件的目标霍夫直线。例如,如果目标是将原始的视频经过裁剪之后得到 矩形的视频,那么,预设参数范围可以是斜率为0或1的所有霍夫直线,从而使得裁剪之后的视频的图像区域是一个矩形。
这样,通过在目标区域以外确定出裁剪线,可以提高裁剪线的精度,并且,由于无需 对目标区域内进行运算,因此,可以减少检测裁剪线的运算量,直接针对相较于目标区域 运动更平稳的其它区域检测裁剪线,提高了运算速度,减少了对电子设备的运算资源的占 用。
步骤105,通过裁剪线对视频进行裁剪,得到目标视频。
其中,目标视频中至少包括目标区域的部分。并且,目标区域在目标视频中所占的面 积超过第二阈值。这是由于在一些可选的实施方式中,目标区域的边缘可能是非规则的形 状,使得计算出的裁剪线可能与目标区域相交。因此,在按照裁剪线裁剪时,可能会存在目标视频中不能完全保留目标区域的情况。
一种可选的示例为,对于一条裁剪线裁剪出的两个区域,可以分别计算两个区域中各 自包含的目标区域的面积大小,将图像区域中包含大部分目标区域的部分留下(可以视作 以面积较小的区域的面积值作为第二阈值),将包含少部分目标区域的部分删除。在通过所 有的裁剪线裁剪之后,得到图像区域中保留的部分。进而,可以根据保留的部分的边缘, 对视频中的每一帧图像进行裁剪,从而得到目标视频。
本公开实施例根据在视频中抽取的多帧图像,确定视频的图像区域中的像素运动信息, 通过像素的运动速度超过第一阈值,作为在视频的图像区域中划分目标区域的依据,然后 在目标区域之外确定裁剪线,进而对视频进行裁剪,裁剪后的视频中包括上述的目标区域, 从而可以对视频中存在运动目标的区域进行保留,保留了视频中有用的部分图像区域,相 比于基于深度学习裁剪视频的方案,本公开实施例的运算复杂度较低,并且不依赖于标注 样本数据,只需要对视频中的不同帧的图像进行比对即可计算像素运动信息,从而确定出 裁剪需要保留的区域,因此,处理效率较高,并且能够缩短处理过程的耗时。此外,本公 开实施例可以仅抽取少量的部分图像帧确定整个视频的裁剪位置,减少了确定裁剪位置的 运算符合,提高了裁剪视频的效率。
基于本公开实施例提供的视频裁剪方法,在一个应用场景中,可以对一种“三段式” 的视频进行裁剪。如图4所示为一种可选的示例,这种视频的特点是图像区域401为竖的 长方形,更适合用户在手机屏幕中观看的习惯,并且,视频分为上、中、下三个部分(以下或称段)。在视频的图像区域中,中段区域402通常是用于展示制作视频的用户意图展示的内容,例如,用户拍摄的舞蹈、生活片段等等,而上段401区域和下段403区域则可能 会被制作视频的用户设置配置有描述文字的背景图片;或者,在另一些实施例中,还可以 是制作视频的用户通过模糊(如高斯模糊方法)将中段区域的内容进行模糊化得到的视频 内容。因此,这种“三段式”视频通常在上段和下段的运动并不明显,而中段区域的内容 物体运动是相对比较剧烈的。在该应用场景中,视频裁剪的目标是保留中段区域,删除上 段和下段的区域,从而使得更适合竖屏观看的视频变为更适合横屏观看的视频。
以上述应用场景为例,详细说明本公开实施例的一种具体实施方式,具体可以包括如 图5所示的如下步骤:
步骤501,在视频中抽取连续的多帧图像。例如,可以抽取视频中间的10帧图像。
步骤502,计算每两帧相邻图像的光流场。光流场可以得到比抽取的图像帧数量少一帧 的光流场,例如,抽取10帧图像可以得到9帧光流场。光流场中包括多个二维矢量,每个 二维矢量与视频的图像区域对应坐标位置的像素相对应,用于表示对应坐标位置的像素分 别在x轴和y轴方向上的运动速度。
步骤503,根据光流场,在视频的图像区域中确定目标像素。其中,目标像素为运动速 度大于第一阈值的像素。一种可选的示例中,可以设置第一阈值为0。根据是否为目标像素, 可以将视频的图像区域分为两个区域:第一区域和第二区域。第一区域为目标像素的坐标 位置集合,也即目标区域,第二区域为目标像素以外的像素坐标位置的集合,也即目标区 域以外的其它区域。
步骤504,在步骤501抽取的每帧图像中,针对其它区域检测霍夫直线。
步骤505,统计多帧图像中检测到的霍夫直线的位置,根据统计结果确定裁剪线。
步骤506,通过裁剪线对视频进行裁剪,保留大部分目标区域,得到目标视频。
在这种应用场景下的具体实施例中未详述的部分,可以参考图1~图3所示实施例的描 述,在此不再赘述。
通过图5所示的实施例提供的视频裁剪方法,针对上述的“三段式”视频进行裁剪,可以利用光流场确定出视频中运动比较剧烈的区域,并利用霍夫直线检测算法在图像中找到“三段式”视频中将视频分割为多段的分割线所在的位置,从而使用找到的符合条件的直线来裁剪视频,将视频分割为三段,保留“三段式”视频中运动比较剧烈的区域,达到 裁剪目的。
需要说明的是,上述本公开实施例描述的应用场景是为了更加清楚的说明本公开实施 例的技术方案,并不构成对于本公开实施例提供的技术方案的限定,本领域普通技术人员 可知,随着新应用场景的出现,本公开实施例提供的技术方案对于类似的技术问题,同样 适用。
基于相同的发明构思,本公开还提供了一种视频裁剪装置。具体结合图6进行详细说 明。
图6是根据一示例性实施例示出的一种视频裁剪装置的结构示意图。
如图6所示,该视频裁剪装置600具体可以包括:
第一抽取模块601,被配置为抽取视频中的多帧图像;
像素运动信息确定模块602,被配置为根据多帧图像,确定视频的图像区域中的像素运 动信息,其中,像素运动信息用于表示两帧图像中多个像素的运动速度;
目标区域确定模块603,被配置为根据像素运动信息,在图像区域中确定目标区域,其 中,目标区域为图像区域中目标像素的分布区域,目标像素为运动速度超过第一阈值的像 素;
裁剪线确定模块604,被配置为针对视频中的至少一帧图像,在图像区域中除目标区域 以外的其它区域内确定裁剪线;
裁剪模块605,被配置为通过裁剪线对视频进行裁剪,得到目标视频,以使目标区域在 目标视频中所占的面积超过第二阈值。
在一个可选的实施例中,第一抽取模块601包括:第二抽取模块,被配置为在视频中 抽取连续的n帧图像,其中,n为大于1的整数;
像素运动信息确定模块602包括:第一计算模块,被配置为针对n帧图像中每两帧相 邻的图像,计算图像区域中多个像素点的光流,以得到n-1帧光流场,其中,光流场用于表示像素运动信息。
基于此,在一个可选的实施例中,该装置还可以包括:
转换模块,被配置为在针对n帧图像中每两帧相邻的图像,计算图像区域中多个像素 点的光流,以得到n-1帧光流场之前,将n帧图像转换为灰度图像,得到n帧灰度图像;
相应的,第一计算模块具体可以包括:
第二计算模块,被配置为针对n帧灰度图像中的每两帧相邻的图像,计算图像区域中 多个像素点的光流,以得到n-1帧光流场。
可选的,在另外一个实施例中,光流场用于表示多个像素中每个像素在相邻两帧图像 中的运动速度,目标区域确定模块603可以包括:
目标像素确定模块,被配置为在得到n-1帧光流场之后,在每帧光流场中,确定图像 区域中的目标像素;
合成模块,被配置为合成n-1帧光流场中目标像素的分布,以得到图像区域中目标像 素的合成分布;
目标区域确定子模块,被配置为根据图像区域中目标像素的合成分布,在图像区域中 确定目标区域。
进一步的,在一个可选的实施例中,目标区域确定子模块可以包括:
分割模块,被配置为根据图像区域中目标像素的合成分布,通过预设图像区域分割方 法对图像区域进行区域分割,以将图像区域分割为至少两个区域;
区域确定子模块,被配置为在多个区域中,确定目标像素的密集度超过第三阈值的区 域,以得到目标区域,其中,密集度用于表示目标像素的个数与对应区域内的像素个数的 比例。
在一个可选的实施例中,裁剪线确定模块604可以包括:
第三抽取模块,被配置为在视频中抽取m帧图像;
检测模块,被配置为针对m帧图像中的每帧图像,通过霍夫直线检测算法,在目标区 域以外的其它区域检测霍夫直线;
生成模块,被配置为根据m帧图像检测出的霍夫直线,生成裁剪线。
在一个可选的实施例中,生成模块可以包括:
比对模块,被配置为比对m帧图像中每两帧图像检测出的霍夫直线,以确定m帧图像 每两帧图像的重叠直线;
第一裁剪线确定子模块,被配置为根据位置重叠的直线确定裁剪线。
可选的,在另外一个实施例中,生成模块可以包括:
获取模块,被配置为获取检测出的每条霍夫直线的参数;
选取模块,被配置为选取参数在预设参数范围之内的霍夫直线,得到目标霍夫直线;
第二裁剪线确定子模块,被配置为根据目标霍夫直线确定裁剪线。
由此,根据在视频中抽取的多帧图像,确定视频的图像区域中的像素运动信息,通过 像素的运动速度超过第一阈值,作为在视频的图像区域中划分目标区域的依据,然后在目 标区域之外确定裁剪线,进而对视频进行裁剪,裁剪后的视频中包括上述的目标区域,从 而可以对视频中存在运动目标的区域进行保留,保留了视频中有用的部分图像区域,相比 于基于深度学习裁剪视频的方案,本公开实施例的运算复杂度较低,并且不依赖于标注样 本数据,只需要对视频中的不同帧的图像进行比对即可计算像素运动信息,从而确定出裁 剪需要保留的区域,因此,处理效率较高,并且能够缩短处理过程的耗时。
基于同一发明构思,本公开实施例还提供了一种电子设备,具体结合图7进行详细说 明。
图7是根据一示例性实施例示出的一种计算设备的结构框图。
如图7所示,该计算设备能够实现根据本公开实施例中的视频裁剪方法以及视频裁剪 装置的计算设备的示例性硬件架构的结构图。该计算设备可以指代本公开实施例中的电子 设备以及服务器。
该计算设备可以包括处理器1201以及存储有计算机程序指令的存储器1202。
具体地,上述处理器1201可以包括中央处理器(CPU),或者特定集成电路(application specific integrated circuit,ASIC),或者可以被配置成实施本申请实施例的一个或多 个集成电路。
存储器1202可以包括用于信息或指令的大容量存储器。举例来说而非限制,存储器1202 可包括硬盘驱动器(hard disk drive,HDD)、软盘驱动器、闪存、光盘、磁光盘、磁带或 通用串行总线(universal serial bus,USB)驱动器或者两个及其以上这些的组合。在合 适的情况下,存储器1202可包括可移除或不可移除(或固定)的介质。在合适的情况下,存 储器1202可在综合网关设备的内部或外部。在特定实施例中,存储器1202是非易失性固态存储器。在特定实施例中,存储器1202包括只读存储器(ROM)。在合适的情况下,该ROM 可以是掩模编程的ROM、可编程ROM(PROM)、可擦除PROM(EPROM)、电可擦除PROM(EEPROM)、 电可改写ROM(EAROM)或闪存,或者两个或及其以上这些的组合。
处理器1201通过读取并执行存储器1202中存储的计算机程序指令,以执行如下步骤:
抽取视频中的多帧图像;
根据多帧图像,确定视频的图像区域中的像素运动信息,其中,像素运动信息用于表 示两帧图像中多个像素的运动速度;
根据像素运动信息,在图像区域中确定目标区域,其中,目标区域为图像区域中目标 像素的分布区域,目标像素为运动速度超过第一阈值的像素;
针对视频中的至少一帧图像,在图像区域中除目标区域以外的其它区域内确定裁剪线;
通过裁剪线对视频进行裁剪,得到目标视频,以使目标区域在目标视频中所占的面积 超过第二阈值。
在其中一个实施例中,处理器1201执行抽取视频中的多帧图像的步骤时,可以包括执 行如下步骤:在视频中抽取连续的n帧图像,其中,n为大于1的整数;
处理器1201执行根据多帧图像,确定视频的图像区域中的像素运动信息,包括:针对 n帧图像中每两帧相邻的图像,计算图像区域中多个像素点的光流,以得到n-1帧光流场, 其中,光流场用于表示像素运动信息。
基于此,在其中一个实施例中,处理器1201执行在针对n帧图像中每两帧相邻的图像, 计算图像区域中多个像素点的光流,以得到n-1帧光流场之前,还可以执行如下步骤:
将n帧图像转换为灰度图像,得到n帧灰度图像;
相应的,针对n帧图像中每两帧相邻的图像,计算图像区域中多个像素点的光流,以 得到n-1帧光流场,具体包括:
针对n帧灰度图像中的每两帧相邻的图像,计算图像区域中多个像素点的光流,以得 到n-1帧光流场。
基于此,在其中一个实施例中,光流场用于表示多个像素中每个像素在相邻两帧图像 中的运动速度,处理器1201执行根据所述像素运动信息,在所述图像区域中确定目标区域 的步骤时,可以包括执行如下步骤:
在每帧光流场中,确定图像区域中的目标像素;
合成n-1帧光流场中目标像素的分布,以得到图像区域中目标像素的合成分布;
根据图像区域中目标像素的合成分布,在图像区域中确定目标区域。
基于此,在其中一个实施例中,处理器1201执行根据图像区域中目标像素的合成分布, 在图像区域中确定目标区域的步骤时,可以包括执行如下步骤:
根据图像区域中目标像素的合成分布,通过预设图像区域分割方法对图像区域进行区 域分割,以将图像区域分割为至少两个区域;
在多个区域中,确定目标像素的密集度超过第三阈值的区域,以得到目标区域,其中, 密集度用于表示目标像素的个数与对应区域内的像素个数的比例。
在其中一个实施例中,处理器1201执行针对视频中的至少一帧图像,在图像区域中除 目标区域以外的其它区域内确定裁剪线的步骤时,可以包括执行如下步骤:
在视频中抽取m帧图像;
针对m帧图像中的每帧图像,通过霍夫直线检测算法,在目标区域以外的其它区域检 测霍夫直线;
根据m帧图像检测出的霍夫直线,生成裁剪线。
基于此,在其中一个实施例中,处理器1201执行根据m帧图像检测出的霍夫直线,生 成裁剪线的步骤时,可以包括执行如下步骤:
比对m帧图像中检测出的霍夫直线,以确定m帧图像中位置重叠的直线;
根据位置重叠的直线确定裁剪线。
可选的,在另一个实施例中,处理器1201执行根据m帧图像检测出的霍夫直线,生成 裁剪线的步骤时,可以包括执行如下步骤:
获取检测出的每条霍夫直线的参数;
选取参数在预设参数范围之内的霍夫直线,得到目标霍夫直线;
根据目标霍夫直线确定裁剪线。
由此,根据在视频中抽取的多帧图像,确定视频的图像区域中的像素运动信息,通过 像素的运动速度超过第一阈值,作为在视频的图像区域中划分目标区域的依据,然后在目 标区域之外确定裁剪线,进而对视频进行裁剪,裁剪后的视频中包括上述的目标区域,从 而可以对视频中存在运动目标的区域进行保留,保留了视频中有用的部分图像区域,相比 于基于深度学习裁剪视频的方案,本公开实施例的运算复杂度较低,并且不依赖于标注样 本数据,只需要对视频中的不同帧的图像进行比对即可计算像素运动信息,从而确定出裁 剪需要保留的区域,因此,处理效率较高,并且能够缩短处理过程的耗时。
在一个示例中,该计算设备还可包括收发器1203和总线1204。其中,如图7所示,处理器1201、存储器1202和收发器1203通过总线1204连接并完成相互间的通信。
总线1204包括硬件、软件或两者。举例来说而非限制,总线可包括加速图形端口(AGP) 或其他图形总线、增强工业标准架构(EISA)总线、前端总线(FSB)、超传输(HT)互连、工业标准架构(ISA)总线、无限带宽互连、低引脚数(LPC)总线、存储器总线、微信道 架构(MCA)总线、外围控件互连(PCI)总线、PCI-Express(PCI-X)总线、串行高级技 术附件(SATA)总线、视频电子标准协会局部(VLB)总线或其他合适的总线或者两个或更 多个以上这些的组合。在合适的情况下,总线1003可包括一个或多个总线。尽管本申请实 施例描述和示出了特定的总线,但本申请考虑任何合适的总线或互连。
本公开实施例还提供了一种计算机存储介质,所述计算机存储介质中存储有计算机可 执行指令,所述计算机可执行指令用于实现本公开实施例所记载的视频裁剪方法。
在一些可能的实施方式中,本公开提供的方法的各个方面还可以实现为一种程序产品 的形式,其包括程序代码,当所述程序产品在计算机设备上运行时,所述程序代码用于使 所述计算机设备执行本说明书上述描述的根据本公开各种示例性实施方式的方法中的步 骤,例如,所述计算机设备可以执行本公开实施例所记载的视频裁剪方法。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介 质或者可读存储介质。可读存储介质例如可以是但不限于:电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
本公开是参照根据本公开的方法、设备和计算机程序产品的流程图和/或方框图来描述 的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流 程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、 专用计算机、嵌入式处理机或其他可编程视频裁剪设备的处理器以产生一个机器,使得通 过计算机或其他可编程视频裁剪设备的处理器执行的指令产生用于实现在流程图一个流程 或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程视频裁剪设备以特定方式 工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置 的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框 中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程视频裁剪设备上,使得在计算机 或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他 可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方 框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本公开进行各种改动和变型而不脱离本公开的精神和 范围。这样,倘若本公开的这些修改和变型属于本公开权利要求及其等同技术的范围之内, 则本公开也意图包含这些改动和变型在内。
Claims (10)
1.一种视频裁剪方法,其特征在于,包括:
抽取视频中的多帧图像;
根据所述多帧图像,确定所述视频的图像区域中的像素运动信息,其中,所述像素运动信息用于表示两帧图像中多个像素的运动速度;
根据所述像素运动信息,在所述图像区域中确定目标区域,其中,所述目标区域为所述图像区域中目标像素的分布区域,所述目标像素为所述运动速度超过第一阈值的像素;
针对所述视频中的至少一帧图像,在所述图像区域中除所述目标区域以外的其它区域内确定裁剪线;
通过所述裁剪线对所述视频进行裁剪,得到目标视频,以使所述目标区域在所述目标视频中所占的面积超过第二阈值。
2.根据权利要求1所述的方法,其特征在于,
抽取视频中的多帧图像,包括:在所述视频中抽取连续的n帧图像,其中,n为大于1的整数;
所述根据所述多帧图像,确定所述视频的图像区域中的像素运动信息,包括:针对所述n帧图像中每两帧相邻的图像,计算所述图像区域中多个像素点的光流,以得到n-1帧光流场,其中,所述光流场用于表示所述像素运动信息。
3.根据权利要求2所述的方法,其特征在于,在针对所述n帧图像中每两帧相邻的图像,计算所述图像区域中多个像素点的光流,以得到n-1帧光流场之前,所述方法还包括:
将所述n帧图像转换为灰度图像,得到n帧灰度图像;
相应的,所述针对所述n帧图像中每两帧相邻的图像,计算所述图像区域中多个像素点的光流,以得到n-1帧光流场,具体包括:
针对所述n帧灰度图像中的每两帧相邻的图像,计算所述图像区域中多个像素点的光流,以得到n-1帧光流场。
4.根据权利要求2所述的方法,其特征在于,所述光流场用于表示所述多个像素中每个像素在相邻两帧图像中的运动速度,所述根据所述像素运动信息,在所述图像区域中确定目标区域,包括:
在每帧光流场中,确定所述图像区域中的所述目标像素;
合成所述n-1帧光流场中所述目标像素的分布,以得到所述图像区域中所述目标像素的合成分布;
根据所述图像区域中所述目标像素的合成分布,在所述图像区域中确定所述目标区域。
5.一种视频裁剪装置,其特征在于,包括:
第一抽取模块,被配置为抽取视频中的多帧图像;
像素运动信息确定模块,被配置为根据所述多帧图像,确定所述视频的图像区域中的像素运动信息,其中,所述像素运动信息用于表示两帧图像中多个像素的运动速度;
目标区域确定模块,被配置为根据所述像素运动信息,在所述图像区域中确定目标区域,其中,所述目标区域为所述图像区域中目标像素的分布区域,所述目标像素为所述运动速度超过第一阈值的像素;
裁剪线确定模块,被配置为针对所述视频中的至少一帧图像,在所述图像区域中除所述目标区域以外的其它区域内确定裁剪线;
裁剪模块,被配置为通过所述裁剪线对所述视频进行裁剪,得到目标视频,以使所述目标区域在所述目标视频中所占的面积超过第二阈值。
6.根据权利要求5所述的装置,其特征在于,
第一抽取模块包括:第二抽取模块,被配置为在所述视频中抽取连续的n帧图像,其中,n为大于1的整数;
所述像素运动信息确定模块包括:第一计算模块,被配置为针对所述n帧图像中每两帧相邻的图像,计算所述图像区域中多个像素点的光流,以得到n-1帧光流场,其中,所述光流场用于表示所述像素运动信息。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
转换模块,被配置为在针对n帧图像中每两帧相邻的图像,计算图像区域中多个像素点的光流,以得到n-1帧光流场之前,将所述n帧图像转换为灰度图像,得到n帧灰度图像;
相应的,所述第一计算模块具体包括:
第二计算模块,被配置为针对所述n帧灰度图像中的每两帧相邻的图像,计算所述图像区域中多个像素点的光流,以得到n-1帧光流场。
8.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至4中任一项所述的视频裁剪方法。
9.一种存储介质,其特征在于,当所述存储介质中的指令由视频裁剪装置或者服务器的处理器执行时,以使所述视频裁剪装置或者所述服务器实现如权利要求1至4中任一项所述的视频裁剪方法。
10.一种计算机程序产品,包括计算机程序/指令,其特征在于,所述计算机程序/指令被处理器执行时实现权利要求1-4任一项所述的视频裁剪方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110324925.1A CN113269790A (zh) | 2021-03-26 | 2021-03-26 | 视频裁剪方法、装置、电子设备、服务器及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110324925.1A CN113269790A (zh) | 2021-03-26 | 2021-03-26 | 视频裁剪方法、装置、电子设备、服务器及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113269790A true CN113269790A (zh) | 2021-08-17 |
Family
ID=77228235
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110324925.1A Pending CN113269790A (zh) | 2021-03-26 | 2021-03-26 | 视频裁剪方法、装置、电子设备、服务器及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113269790A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114666649A (zh) * | 2022-03-31 | 2022-06-24 | 北京奇艺世纪科技有限公司 | 字幕被裁视频的识别方法、装置、电子设备及存储介质 |
CN115049968A (zh) * | 2022-08-12 | 2022-09-13 | 武汉东信同邦信息技术有限公司 | 动态规划视频自动裁剪方法、装置、设备及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014048949A (ja) * | 2012-08-31 | 2014-03-17 | Casio Comput Co Ltd | 動画像前景切抜き装置、方法、およびプログラム |
CN109886130A (zh) * | 2019-01-24 | 2019-06-14 | 上海媒智科技有限公司 | 目标对象的确定方法、装置、存储介质和处理器 |
CN110347877A (zh) * | 2019-06-27 | 2019-10-18 | 北京奇艺世纪科技有限公司 | 一种视频处理方法、装置、电子设备及存储介质 |
CN110830846A (zh) * | 2018-08-07 | 2020-02-21 | 北京优酷科技有限公司 | 一种视频裁剪方法及服务器 |
CN111627041A (zh) * | 2020-04-15 | 2020-09-04 | 北京迈格威科技有限公司 | 多帧数据的处理方法、装置及电子设备 |
CN112131984A (zh) * | 2020-09-11 | 2020-12-25 | 咪咕文化科技有限公司 | 视频裁剪方法、电子设备和计算机可读存储介质 |
CN112132836A (zh) * | 2020-08-14 | 2020-12-25 | 咪咕文化科技有限公司 | 视频图像裁剪方法、装置、电子设备及存储介质 |
-
2021
- 2021-03-26 CN CN202110324925.1A patent/CN113269790A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014048949A (ja) * | 2012-08-31 | 2014-03-17 | Casio Comput Co Ltd | 動画像前景切抜き装置、方法、およびプログラム |
CN110830846A (zh) * | 2018-08-07 | 2020-02-21 | 北京优酷科技有限公司 | 一种视频裁剪方法及服务器 |
CN109886130A (zh) * | 2019-01-24 | 2019-06-14 | 上海媒智科技有限公司 | 目标对象的确定方法、装置、存储介质和处理器 |
CN110347877A (zh) * | 2019-06-27 | 2019-10-18 | 北京奇艺世纪科技有限公司 | 一种视频处理方法、装置、电子设备及存储介质 |
CN111627041A (zh) * | 2020-04-15 | 2020-09-04 | 北京迈格威科技有限公司 | 多帧数据的处理方法、装置及电子设备 |
CN112132836A (zh) * | 2020-08-14 | 2020-12-25 | 咪咕文化科技有限公司 | 视频图像裁剪方法、装置、电子设备及存储介质 |
CN112131984A (zh) * | 2020-09-11 | 2020-12-25 | 咪咕文化科技有限公司 | 视频裁剪方法、电子设备和计算机可读存储介质 |
Non-Patent Citations (1)
Title |
---|
颜明;: "MPEG-4中的运动图像分割算法", 电脑知识与技术(学术交流), no. 35 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114666649A (zh) * | 2022-03-31 | 2022-06-24 | 北京奇艺世纪科技有限公司 | 字幕被裁视频的识别方法、装置、电子设备及存储介质 |
CN114666649B (zh) * | 2022-03-31 | 2024-03-01 | 北京奇艺世纪科技有限公司 | 字幕被裁视频的识别方法、装置、电子设备及存储介质 |
CN115049968A (zh) * | 2022-08-12 | 2022-09-13 | 武汉东信同邦信息技术有限公司 | 动态规划视频自动裁剪方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Jabri et al. | Detection and location of people in video images using adaptive fusion of color and edge information | |
EP2956891B1 (en) | Segmenting objects in multimedia data | |
CN110381268B (zh) | 生成视频的方法,装置,存储介质及电子设备 | |
KR20130102626A (ko) | 글로벌 모션에 기초한 심도 추정 | |
CN104751405A (zh) | 一种用于对图像进行虚化的方法和装置 | |
CN109711246B (zh) | 一种动态物体识别方法、计算机装置及可读存储介质 | |
KR20070112130A (ko) | 그래픽 객체를 검출하기 위한 방법 및 전자 디바이스 | |
CN106327488B (zh) | 一种自适应的前景检测方法及其检测装置 | |
CN113269790A (zh) | 视频裁剪方法、装置、电子设备、服务器及存储介质 | |
CN114862725B (zh) | 基于光流法实现运动感知模糊特效的方法及装置 | |
CN113112542A (zh) | 一种视觉定位方法、装置、电子设备及存储介质 | |
CN111028263B (zh) | 一种基于光流颜色聚类的运动物体分割方法及其系统 | |
CN111563517A (zh) | 图像处理方法、装置、电子设备及存储介质 | |
CN106056575B (zh) | 一种基于似物性推荐算法的图像匹配方法 | |
CN110322479B (zh) | 一种基于时空显著性的双核kcf目标跟踪方法 | |
JP2011087144A (ja) | テロップ文字領域検出方法,テロップ文字領域検出装置およびテロップ文字領域検出プログラム | |
CN111539975A (zh) | 一种运动目标的检测方法、装置、设备及存储介质 | |
JP2011090708A (ja) | 対象個数検出装置および対象個数検出方法 | |
Abdelali et al. | Algorithm for moving object detection and tracking in video sequence using color feature | |
CN112991419B (zh) | 视差数据生成方法、装置、计算机设备及存储介质 | |
CN110580706A (zh) | 一种视频背景模型的提取方法及装置 | |
Okarma et al. | A fast image analysis technique for the line tracking robots | |
CN111027560B (zh) | 文本检测方法以及相关装置 | |
JP2973223B2 (ja) | 動画像の動き検出方式 | |
JP3763279B2 (ja) | 物体抽出システム、物体抽出方法および物体抽出プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |