CN113038010B - 视频处理方法、视频处理装置、存储介质与电子设备 - Google Patents
视频处理方法、视频处理装置、存储介质与电子设备 Download PDFInfo
- Publication number
- CN113038010B CN113038010B CN202110271925.XA CN202110271925A CN113038010B CN 113038010 B CN113038010 B CN 113038010B CN 202110271925 A CN202110271925 A CN 202110271925A CN 113038010 B CN113038010 B CN 113038010B
- Authority
- CN
- China
- Prior art keywords
- frame
- video
- frames
- cost
- selection window
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/68—Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
- H04N23/681—Motion detection
- H04N23/6812—Motion detection based on additional sensors, e.g. acceleration sensors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/70—Circuitry for compensating brightness variation in the scene
- H04N23/73—Circuitry for compensating brightness variation in the scene by influencing the exposure time
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Studio Devices (AREA)
Abstract
本公开提供一种视频处理方法、视频处理装置、计算机可读存储介质与电子设备,涉及视频处理技术领域。该视频处理方法包括:获取视频帧序列中各视频帧的帧姿态信息;根据所述帧姿态信息从各所述视频帧中选取多个选中帧,并组合所述多个选中帧,得到新的视频帧序列。本公开通过各视频帧的帧姿态信息在视频帧序列中选取帧,使得处理后的视频帧序列的延时倍率适应画面内容的变化,并可以防止画面抖动,从而达到了优化视频观感的效果。
Description
技术领域
本公开涉及视频处理技术领域,尤其涉及一种视频处理方法、视频处理装置、计算机可读存储介质与电子设备。
背景技术
因为可以通过直观生动的方式承载及传播信息,视频成为了日常生产生活中一种重要的信息载体。然而,由于视频包含的信息高度冗余复杂,就导致了视频分析的时间成本极大。
现有技术中,主要通过视频速播的方式来解决这一问题,其主要原理为对视频帧进行部分选取与丢弃。然而,直接抽帧会存在破坏视频稳定效果、放大视频抖动、延时倍率无法适应画面内容变化等问题。
发明内容
本公开提供了一种视频处理方法、视频处理装置、计算机可读存储介质与电子设备,进而至少在一定程度上解决了现有技术中存在的破坏视频稳定效果、放大视频抖动、延时倍率无法适应画面内容变化等问题,从而可以达到稳定画面,优化观感的效果。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开的第一方面,提供一种视频处理方法,包括:获取视频帧序列中各视频帧的帧姿态信息;根据所述帧姿态信息从各所述视频帧中选取多个选中帧,并组合所述多个选中帧,得到新的视频帧序列。
根据本公开的第二方面,提供一种视频处理装置,包括帧姿态信息获取模块以及视频处理模块:帧姿态信息获取模块用于获取视频帧序列中各视频帧的帧姿态信息;视频处理模块用于根据所述帧姿态信息从各所述视频帧中选取多个选中帧,并组合所述多个选中帧,得到新的视频帧序列。
根据本公开的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述视频处理方法。
根据本公开的第四方面,提供一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述视频处理方法。
本公开的技术方案具有以下有益效果:
根据上述视频处理方法、视频处理装置、计算机可读存储介质与电子设备,获取视频帧序列中各视频帧的帧姿态信息;根据帧姿态信息从各视频帧中选取多个选中帧,并组合选取出的多个选中帧,得到新的视频帧序列。一方面,在选取选中帧时考虑到了各视频帧的帧姿态信息,由于帧姿态信息可以表示拍摄对应视频帧时终端设备的姿态,也就可以依据帧姿态信息挑选姿态稳定的视频帧,从而可以在一定程度上防止画面的抖动,使得最终成片质量的画面跟定性更佳。另一方面,由于依据帧姿态信息抽取视频帧不仅限于等间隔抽取,因此可以使得延时倍率适应画面内容变化。例如,可以在画面稳定时加速延时倍率,使成片中延时效果更显著,在画面剧烈变化时,则降低延时倍率,使成片中画面内容变化不至于过渡剧烈,优化视频观感。再一方面,通过帧姿态信息还可以从其他多种不同的角度优化成片质量。例如,可以在选帧过程中尽量避免选中模糊的视频帧,使成片的视频质量更佳。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出本示例性实施方式的一种系统架构的示意图;
图2示出本示例性实施方式的电子设备的示意图;
图3示出本示例性实施方式的一种视频处理方法的流程图;
图4示出本示例性实施方式的一种视频处理方法的确定选帧窗口的位置的示意图;
图5示出本示例性实施方式的一种视频处理方法的一个具体实施例的流程图;
图6示出本示例性实施方式的一种视频处理装置的结构框图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本公开的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知技术方案以避免喧宾夺主而使得本公开的各方面变得模糊。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
视频作为一种常用的信息载体,因其直观生动而受到了人们广泛的欢迎。然而,由于视频包含的信息高度冗余复杂,并且为了理解一个视频,常常要从头至尾播放并观看视频,这就为视频分析带来了极大的时间成本。
为了解决上述问题,相关技术中通常采用视频速播的方法来加速视频的分析与理解。视频速播,也就是以更快的速度播放视频,例如,电视剧倍数播放、视频快进等,都是视频速播的表现形式。大多数视频速播技术采用对视频帧进行部分选取与丢弃的方式完成,例如按照一定的速度对视频帧进行重新采样,得到时长更短的视频。
延时摄影作为一种视频缩时技术的应用形式,主要通过在时间序列上抽取一些视频帧,并将这些视频帧重组成为新的视频,达到缩短视频时长,加快视频播放速度的目的。其中,抽帧一般指在给定的规则下,从原视频帧序列中抽取一系列的视频帧。等间隔抽帧就是一种最简单的抽帧方法。例如,在10倍率的延时摄影中,则每间隔10帧抽取一帧,将抽取的帧进行编码,得到延时摄像效果的视频。
然而,经实践证明,上述方法存在如下问题:(1)破坏视频的稳定效果,放大视频中的抖动,使延时摄影得到的成片画面抖动,观感下降;(2)不能适应场景变化,例如在视频中画面运动剧烈的视频段,经过抽帧后画面变化会变得非常激烈,导致在结果视频中看不清视频内容。相反,在场景几乎静止的片段中,抽帧后结果视频仍然几乎静止,延时摄影效果不显著。
为了解决现有技术中存在的上述问题,本示例实施方式提供了一种视频处理方法、视频处理装置、计算机可读存储介质与电子设备,可以在一定程度上解决上述破坏视频稳定效果、放大视频抖动、延时倍率无法适应画面内容变化等问题,从而可以达到稳定画面,优化观感的效果。以下对上述视频处理方法、视频处理装置、计算机可读存储介质与电子设备进行详细说明:
图1示出了本公开示例性实施方式的一种系统架构的示意图。如图1所示,该系统架构100可以包括:终端110、网络120和服务器130。终端110可以是具有视频拍摄功能的各种电子设备,包括但不限于手机、平板电脑、数码相机、个人电脑等。网络120用以在终端110和服务器130之间提供通信链路的介质,可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等。应该理解,图1中的终端、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端、网络和服务器。比如服务器130可以是多个服务器组成的服务器集群等。
本公开实施方式所提供的视频处理方法可以由终端110执行,例如,终端110首先获取视频帧序列中各视频帧的帧姿态信息;之后,根据获取到的帧姿态信息从各视频帧中选取多个选中帧并组合新的视频帧序列。
本公开实施方式所提供的视频处理方法也可以由服务器130执行,例如终端110拍摄视频后,将拍摄到视频帧序列及各视频帧对应的帧姿态信息上传至服务器130,使服务器130根据帧姿态信息从各视频帧中选取多个选中帧并组合新的视频帧序列,本公开对此不做限定。
本公开的示例性实施方式提供一种用于实现视频处理方法的电子设备,其可以是图1中的终端110或服务器130。该电子设备至少包括处理器和存储器,存储器用于存储处理器的可执行指令,处理器配置为经由执行可执行指令来执行视频处理方法。
电子设备可以以各种形式来实施,例如可以包括手机、平板电脑、笔记本电脑、个人数字助理(Personal Digital Assistant,PDA)、导航装置、可穿戴设备、无人机等移动设备,以及台式电脑、智能电视等固定设备。
下面以图2中的移动终端200为例,对电子设备的构造进行示例性说明。本领域技术人员应当理解,除了特别用于移动目的部件之外,图2中的构造也能够应用于固定类型的设备。在另一些实施方式中,移动终端200可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件、软件或软件和硬件的组合实现。各部件间的接口连接关系只是示意性示出,并不构成对移动终端200的结构限定。在另一些实施方式中,移动终端200也可以采用与图2不同的接口连接方式,或多种接口连接方式的组合。
如图2所示,移动终端200具体可以包括:处理器210、内部存储器221、外部存储器接口222、USB接口230、充电管理模块240、电源管理模块241、电池242、天线1、天线2、移动通信模块250、无线通信模块260、音频模块270、扬声器271、受话器272、麦克风273、耳机接口274、传感器模块280、显示屏幕290、摄像模组291、指示器292、马达293、按键294以及用户标识模块(Subscriber Identification Module,SIM)卡接口295等。
处理器210可以包括一个或多个处理单元,例如:处理器210可以包括应用处理器(Application Processor,AP)、调制解调处理器、图形处理器(Graphics ProcessingUnit,GPU)、图像信号处理器(Image Signal Processor,ISP)、控制器、编码器、解码器、数字信号处理器(Digital Signal Processor,DSP)、基带处理器和/或神经网络处理器(Neural-Network Processing Unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。编码器可以对图像或视频数据进行编码(即压缩),形成码流数据;解码器可以对图像或视频的码流数据进行解码(即解压缩),以还原出图像或视频数据。
USB接口230是符合USB标准规范的接口,具体可以是MiniUSB接口,MicroUSB接口,USBTypeC接口等。USB接口230可以用于连接充电器为移动终端200充电,也可以连接耳机,通过耳机播放音频,还可以用于移动终端200连接其他电子设备,例如连接电脑、外围设备等。
充电管理模块240用于从充电器接收充电输入。充电管理模块240为电池242充电的同时,还可以通过电源管理模块241为设备供电。
电源管理模块241用于连接电池242、充电管理模块240与处理器210。电源管理模块241接收电池242和/或充电管理模块240的输入,为移动终端200的各个部分供电,还可以用于监测电池的状态。
移动终端200的无线通信功能可以通过天线1、天线2、移动通信模块250、无线通信模块260、调制解调处理器以及基带处理器等实现。
移动终端200通过GPU、显示屏幕290及应用处理器等实现显示功能。GPU用于执行数学和几何计算,以实现图形渲染,并连接显示屏幕290和应用处理器。处理器210可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。移动终端200可以包括一个或多个显示屏幕290,用于显示图像,视频等。
移动终端200可以通过ISP、摄像模组291、编码器、解码器、GPU、显示屏幕290及应用处理器等实现拍摄功能。
摄像模组291用于捕获静态图像或视频,通过感光元件采集光信号,转换为电信号。ISP用于处理摄像模组291反馈的数据,将电信号转换成数字图像信号。
外部存储器接口222可以用于连接外部存储卡,例如Micro SD卡,实现扩展移动终端200的存储能力。
内部存储器221可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。内部存储器221可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储移动终端200使用过程中所创建的数据(比如图像,视频)等。处理器210通过运行存储在内部存储器221的指令和/或存储在设置于处理器中的存储器的指令,执行移动终端200的各种功能应用以及数据处理。
移动终端200可以通过音频模块270、扬声器271、受话器272、麦克风273、耳机接口274及应用处理器等实现音频功能。
传感器模块280可以包括触摸传感器2801、压力传感器2802、陀螺仪传感器2803、气压传感器2804等。触摸传感器2801用于感应外部输入的触摸事件,其可以设置于显示屏幕290的下方,使显示屏幕290成为触控屏,也可以设置于其他位置,例如设置为独立于显示屏幕290的触控板,还可以设置于移动终端200的配套外接设备,例如外接触控板、触摸式遥控器等,使用户通过外接设备实现触控交互。压力传感器2802用于感受压力信号,可以将压力信号转换成电信号,用于实现压力触控等功能。陀螺仪传感器2803可以用于确定移动终端200的运动姿态,可用于拍摄防抖、导航、体感游戏等场景。例如,本示例实施方式所提供的视频处理方法可以通过该陀螺仪传感器2803确定视频帧序列中的各视频帧对应的视频帧信息。气压传感器2804用于测量气压,可通过计算海拔高度,辅助定位和导航。此外,根据实际需要,还可以在传感器模块280中设置其他功能的传感器,例如深度传感器、加速度传感器、距离传感器等。
下面对本公开示例性实施方式的视频处理方法和视频处理装置进行具体说明。
图3示出了本示例性实施方式中一种视频处理方法的流程,包括以下步骤S310~S320:
步骤S310,获取视频帧序列中各视频帧的帧姿态信息。
本示例实施方式所提供的视频处理方法基于各视频帧的帧姿态信息在输入的视频帧序列中选取一系列的视频帧,并对选取出的视频帧进行重组,从而使得重组后的视频在具有延时摄影效果的同时,具有更好的视频质量和视频效果。
其中,上述视频帧序列为视频中各个视频帧组成的序列,上述各视频帧为视频中各帧对应的图像。
上述帧姿态信息用于确定拍摄各视频帧时终端设备的运动姿态,例如,可以包含拍摄时终端设备的角度、方位等信息。具体地,该帧姿态信息可以通过终端设备的传感器模块中的陀螺仪传感器获取。其中,上述陀螺仪传感器是用于维护方位和角速度的设备。因此可以通过获取Gyro数据(陀螺仪数据)并进行累加积分,确定终端设备的姿态。举例而言,上述陀螺仪可以为微机电陀螺仪、固态环形激光器、光纤陀螺仪或量子陀螺仪等不同类型,本示例实施方式对此不做特殊限定。
上述Gyro数据可以包括与x轴、y轴、z轴相关的数据,也可以包括速度、加速度等数据,还可以包括姿态变化数据等,本示例实施方式对此不做特殊限定。
在本示例实施方式中所提供的视频处理方法中,可以确定一个选帧窗口,通过该选帧窗口在上述视频帧序列上的移动,可以在该视频帧序列上以不同的间隔选取多个视频帧,进而通过重组所选取的帧来实现延时摄影的效果。其中,上述选帧窗口可以通过预设的视频加倍速率计算得到。例如,当用户期望以对某一视频以5倍速播放时,可以将该选帧窗口设置为10帧。需要说明的是,上述场景只是一种示例性的说明,本示例实施方式的保护范畴并不以此为限。
其中,上述获取视频帧序列中各视频帧的帧姿态信息,进一步地,可以通过随着上述选帧窗口上述视频帧序列上的移动,在选帧窗口的当前位置处,在视频帧序列中缓存对应的视频帧的帧姿态信息。以选帧窗口设置为10帧为例,则在视频序列中缓存对应的10帧视频帧的帧姿态信息。需要说明的是,上述场景只是一种示例性的说明,本示例实施方式的保护范畴并不以此为限。
步骤S320,根据帧姿态信息从各视频帧中选取多个选中帧,并组合多个选中帧,得到新的视频帧序列。
在本示例实施方式中,在获取到视频帧对应的帧姿态信息后,根据帧姿态信息从各视频帧中选取多个选中帧,并组合多个选中帧,得到新的视频帧序列。
举例而言,上述过程可以通过以下步骤实现:确定选帧窗口;将选帧窗口的起点移动至视频帧序列的起始帧处,将该起始帧作为基准帧,依据基准帧以及各帧姿态信息,从选帧窗口中的各视频帧中选取一个选中帧;将选帧窗口的起点移动至选中帧处,并将选中帧作为基准帧,依据基准帧以及各帧姿态信息,从选帧窗口的各视频帧中选取一个选中帧,直至选帧窗口包含视频帧序列的最后一帧。需要说明的是,上述场景只是一种示例性的说明,本示例实施方式的保护范畴并不以此为限。
上述过程中,通过选取到的选中帧来更新选帧窗口的位置,从而遍历视频帧序列,具体地,上述更新选帧窗口的位置的实现可以如下:将选帧窗口的起点移动至上一步所选取的选中帧所在的位置。如图4所示,410为当前基准帧,420为在当前位置的选帧窗口中选中的视频帧,该选中帧也为下一个基准帧,将选帧窗口的起点移动至该选中帧的位置,以便在下一位置处继续选择视频帧,重复上述过程,直至选帧窗口遍历完整个视频帧序列,也即选帧窗口包含视频帧序列的最后一帧。
上述依据基准帧以及各帧姿态信息,从选帧窗口的各视频帧中选取选中帧的实现,举例而言,可以如下:基于各帧姿态信息确定选帧窗口中各视频帧与基准帧之间的选取代价参数,并依据选取代价参数选取选中帧。
具体地,上述确定选取代价参数并据此选取选中帧的实现可以如下:基于帧姿态信息确定多个预设代价函数;基于上述多个预设代价函数计算得到多个选取代价参数;对选取代价参数进行加权运算,并选取加权运算结果最小的视频帧作为选中帧。
其中,上述预设的代价函数,举例而言,可以为欧拉角代价函数、方差代价函数、速度代价函数、加速度代价函数以及运动模糊代价函数中的一个或多个。需要说明的是,上述预设代价函数也可以是其他根据帧姿态信息确定的函数,本示例实施方式对此不做特殊限定。
下面依次对基于帧姿态信息确定欧拉角代价函数、方差代价函数、速度代价函数、加速度代价函数以及运动模糊代价函数的实现进行说明:
上述欧拉角代价函数主要通过选帧窗口中各视频帧与基准帧之间的姿态距离得到,通过帧姿态信息确定欧拉角代价函数的具体公式如下:
其中,分别表示相对基准帧的第i帧数据帧的帧姿态信息在x轴、y轴、z轴的数据积分,可以近似表示第i帧数据帧在x轴角、y轴角、z轴角上的姿态。欧拉代价函数偏向于选取与基准帧姿态相近的帧,因此当画面运动剧烈时,欧拉代价函数指导选帧方法选择离基准帧较近的帧,即选帧间隔更加密集。
上述方差代价函数侧重考虑各数据帧的帧姿态与参考姿态之间的距离,其中,参考姿态可以为选帧窗口中所有帧姿态的平均值。通过帧姿态信息确定方差代价函数的具体公式如下:
其中,分别表示相对基准帧的第i帧的所述帧姿态信息在x轴、y轴、z轴的数据积分,分别为选帧窗口中所有帧姿态在x轴、y轴、z轴上的平均值。该方差代价函数代表了姿态的方差,方差代价函数指导选帧方法避免选中严重偏离的数据帧。
此外,上述参考姿态还可以为其他值,例如。可以使用平滑姿态路径作为参考姿态,这样方差代价可以进一步表示当前帧偏离预期姿态轨迹的程度,本示例实施方式对此不做特殊限定。
上述速度代价函数表示当前帧间隔与用户预设的延时倍率所代表的帧间隔之间的差距,通过帧姿态信息确定速度代价函数的具体公式如下:
Costspeed=abs((i-j)-v)
其中,v为预设延时倍率所对应的选帧间隔,例如,用户预设10倍的延时倍率,则v=10;i和j分别表示上次选中帧的帧号与当前帧的帧号。速度代价函数控制平均选帧间隔尽量靠近预设间隔,以达到用户预设的视频加速倍率。
上述加速度代价函数为上一选帧间隔与当前选帧间隔之间的差距。通过帧姿态信息确定加速度代价函数的具体公式如下:
Costaspeed=abs((k-j)-(j-i))
其中,k、i表示前两个所述选中帧,j当前选中帧的帧号。加速度代价函数指导选帧方法的选帧间隔尽可能均匀或缓慢变化,以此避免重组视频中运动目标忽快忽慢的情况出现。
上述运动模糊代价函数用于衡量当前帧画面出现的运动模糊程度。该代价可以通过分析画面内容来计算,也可以使用帧曝光时间之内的姿态变化来预估画面可能出现的运动模糊,还可以采用其他方式,本示例实施方式对此不做特殊性限定。通过帧姿态信息确定运动模糊代价函数的具体公式如下:
在通过上述代价函数计算得到多个选取代价参数后,可以进一步对计算得到的多个选取代价参数进行加权运算,从而依据计算结果在选帧窗口的当前位置处选取视频帧。该加权计算的具体公式可以如下:
Cost=αcosteular+βcoststd+γcostspeed+μcostaspeed+νcostblur
其中,α、β、γ、μ、ν为权重系数,可以依据实际需求进行调节。在计算得到各选取代价参数的加权值后,将加权值最小的视频帧作为选中帧。
需要说明的是,上述场景只是一种示例性的说明,本示例实施方式的保护范畴并不以此为限。
下面,在一具体实施例中对本示例实施方式提供的视频处理方法进行完整的说明,如图5所示,该具体实施例包括以下步骤:
在步骤S510中,根据用户预设延时倍率确定选帧窗口。
在该步骤中,根据用户预设的延时倍率,也即视频的加倍速率,计算得到一个长为W的选帧窗口。例如,当用户预设的延时倍率为5倍,可以选取长度为10的选帧窗口。
在步骤S520中,确定当前位置处选帧窗口中的各视频帧的姿态。
在该步骤中,在视频帧序列中缓存W帧的gyro数据(陀螺仪数据),并累计gyro数据得到各视频帧对应的姿态。
在步骤S530中,计算选取各视频帧的选取代价参数。
在该步骤中,根据gyro数据计算选取当前位置处选帧窗口中的各视频帧的多个选取代价参数,该计算过程在上述步骤S320中已经进行了详细的说明,故在此不再赘述。
在步骤S540中,选取代价参数加权值最小的视频帧为选中帧。
在该步骤中,对上述得到的多个选取代价参数进行加权运算及归一化处理,选取加权值最小的视频帧为选中帧,并输出选中帧的帧序号。
在步骤S550中,判断选帧窗口是否遍历完视频帧序列。
在该步骤中,判断选帧窗口是否遍历完视频帧序列,若是,则结束选帧过程,执行步骤570;否则,继续执行S560。
在步骤S560中,将选帧窗口前移。
在该步骤中,将选帧窗口的起点前移至上一个选中帧的位置处,并转至步骤S520,在新的当前位置处选取视频帧。
在步骤S570中,组合选取到的多个选中帧。
在该步骤中,组合选取到的多个选中帧,以实现对视频帧序列的延时摄影。
综上所述,本示例性实施方式中,获取视频帧序列中各视频帧的帧姿态信息;根据帧姿态信息从各视频帧中选取多个选中帧,并组合选取出的多个选中帧,得到新的视频帧序列。一方面,在选取选中帧时考虑到了各视频帧的帧姿态信息,由于帧姿态信息可以表示拍摄对应视频帧时终端设备的姿态,也就可以依据帧姿态信息挑选姿态稳定的视频帧,从而可以在一定程度上防止画面的抖动,使得最终成片质量的画面跟定性更佳。另一方面,由于依据帧姿态信息抽取视频帧不仅限于等间隔抽取,因此可以使得延时倍率适应画面内容变化。例如,可以在画面稳定时加速延时倍率,使成片中延时效果更显著,在画面剧烈变化时,则降低延时倍率,使成片中画面内容变化不至于过渡剧烈,优化视频观感。再一方面,通过帧姿态信息还可以从其他多种不同的角度优化成片质量。例如,可以在选帧过程中尽量避免选中模糊的视频帧,使成片的视频质量更佳。
在一示例性实施例中,上述视频处理方法还可以和视频防抖结合,在防抖后的视频中,基于防抖后视频帧的姿态进行选帧,进一步优化延时摄影视频中防抖情况。
在一示例性实施例中,上述视频处理方法还可以和画面内容检测结合,通过对画面内容分析(例如特征点匹配、目标检测、场景检测等),扩展选帧代价函数。
本公开的示例性实施方式还提供一种视频处理装置。如图6所示,该视频处理装置600可以包括帧姿态信息获取模块610以及视频处理模块620:
帧姿态信息获取模块610,用于获取视频帧序列中各视频帧的帧姿态信息;
视频处理模块620,用于根据帧姿态信息从各视频帧中选取多个选中帧,并组合多个选中帧,得到新的视频帧序列。
在本示例实施方式中,上述视频处理模块可以通过以下方式实现根据帧姿态信息从各视频帧中选取多个选中帧,并组合多个选中帧,得到新的视频帧序列:确定选帧窗口;将选帧窗口的起点移动至视频帧序列的起始帧处,将起始帧作为基准帧,依据基准帧以及各帧姿态信息,从选帧窗口的各视频帧中选取一个选中帧;将选帧窗口的起点移动至选中帧处,并将选中帧作为基准帧,依据基准帧以及各帧姿态信息,从选帧窗口的各视频帧中选取一个选中帧,直至选帧窗口包含视频帧序列的最后一帧。
其中,上述依据基准帧以及各帧姿态信息,从选帧窗口的各视频帧中选取一个选中帧,包括:基于各帧姿态信息确定选帧窗口中,各视频帧与基准帧之间的选取代价参数,并依据选取代价参数选取选中帧。
具体地,基于各帧姿态信息确定选帧窗口中,各视频帧与基准帧之间的选取代价参数,并依据选取代价参数选取选中帧的实现可以如下:基于帧姿态信息确定多个预设代价函数;基于多个预设代价函数计算得到多个选取代价参数;对选取代价参数进行加权运算,并选取加权运算结果最小的视频帧作为选中帧。
其中,上述预设代价函数可以包括欧拉角代价函数、方差代价函数、速度代价函数、加速度代价函数以及运动模糊代价函数中的一个或多个。具体地,上述基于帧姿态信息确定多个预设代价函数可以实现如下:
基于帧姿态信息确定欧拉角代价函数的计算公式:
基于帧姿态信息确定方差代价函数的计算公式:
基于帧姿态信息确定速度代价函数的计算公式:Costspeed=abs((i-j)-v);
基于帧姿态信息确定加速度代价函数的计算公式:Costaspeed=abs((j-i)-(i-k));
基于帧姿态信息确定运动模糊代价函数的计算公式:
其中,分别表示相对基准帧的第i帧的帧姿态信息在x轴、y轴、z轴的数据积分;v为预设延时倍率所对应的选帧间隔;k、i表示前两个选中帧,j当前选中帧的帧号,表示在当前的选中帧的曝光时间内,对应的帧姿态信息的角度积分。
上述装置中各模块的具体细节在方法部分实施方式中已经详细说明,未披露的细节内容可以参见方法部分的实施方式内容,因而不再赘述。
所属技术领域的技术人员能够理解,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
本公开的示例性实施方式还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本公开的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在终端设备上运行时,程序代码用于使终端设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤,例如可以执行图3或图5中任意一个或多个步骤。
本公开的示例性实施方式还提供了一种用于实现上述方法的程序产品,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本公开的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施方式。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施方式仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限。
Claims (9)
1.一种视频处理方法,其特征在于,包括:
获取视频帧序列中各视频帧的帧姿态信息;
确定选帧窗口;
将所述选帧窗口的起点移动至所述视频帧序列的起始帧处,将所述起始帧作为基准帧,依据所述基准帧以及各所述帧姿态信息,从所述选帧窗口的各所述视频帧中选取一个所述选中帧;
将所述选帧窗口的起点移动至所述选中帧处,并将所述选中帧作为所述基准帧,依据所述基准帧以及各所述帧姿态信息,从所述选帧窗口的各所述视频帧中选取一个所述选中帧,直至所述选帧窗口包含所述视频帧序列的最后一帧,并组合所述多个选中帧,得到新的视频帧序列。
2.根据权利要求1所述的视频处理方法,其特征在于,所述依据所述基准帧以及各所述帧姿态信息,从所述选帧窗口的各所述视频帧中选取一个所述选中帧,包括:
基于各所述帧姿态信息确定所述选帧窗口中,各所述视频帧与所述基准帧之间的选取代价参数,并依据所述选取代价参数选取所述选中帧。
3.根据权利要求2所述的视频处理方法,其特征在于,所述基于各所述帧姿态信息确定所述选帧窗口中,各所述视频帧与所述基准帧之间的选取代价参数,并依据所述选取代价参数选取所述选中帧,包括:
基于所述帧姿态信息确定多个预设代价函数;
基于所述多个预设代价函数计算得到多个所述选取代价参数;
对所述选取代价参数进行加权运算,并选取加权运算结果最小的所述视频帧作为所述选中帧。
4.根据权利要求3所述的视频处理方法,其特征在于,所述预设代价函数包括欧拉角代价函数、方差代价函数、速度代价函数、加速度代价函数以及运动模糊代价函数中的一个或多个。
5.根据权利要求4所述的视频处理方法,其特征在于,所述方法基于所述帧姿态信息确定多个预设代价函数,包括:
基于所述帧姿态信息确定所述欧拉角代价函数的计算公式:
基于所述帧姿态信息确定所述方差代价函数的计算公式:
基于所述帧姿态信息确定所述速度代价函数的计算公式:Costspeed=abs((i-j)-v);
基于所述帧姿态信息确定所述加速度代价函数的计算公式:Costaspeed=abs((j-i)-(i-k));
基于所述帧姿态信息确定所述运动模糊代价函数的计算公式:
6.根据权利要求1-5任一项所述的视频处理方法,其特征在于,所述帧姿态信息为拍摄所述视频帧时终端设备的陀螺仪产生的数据。
7.一种视频处理装置,其特征在于,包括:
帧姿态信息获取模块,用于获取视频帧序列中各视频帧的帧姿态信息;
视频处理模块,用于根据帧姿态信息从各视频帧中选取多个选中帧,并组合多个选中帧,得到新的视频帧序列:确定选帧窗口;将选帧窗口的起点移动至视频帧序列的起始帧处,将起始帧作为基准帧,依据基准帧以及各帧姿态信息,从选帧窗口的各视频帧中选取一个选中帧;将选帧窗口的起点移动至选中帧处,并将选中帧作为基准帧,依据基准帧以及各帧姿态信息,从选帧窗口的各视频帧中选取一个选中帧,直至选帧窗口包含视频帧序列的最后一帧,并组合所述多个选中帧,得到新的视频帧序列。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6任一项所述的方法。
9.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1至6任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110271925.XA CN113038010B (zh) | 2021-03-12 | 2021-03-12 | 视频处理方法、视频处理装置、存储介质与电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110271925.XA CN113038010B (zh) | 2021-03-12 | 2021-03-12 | 视频处理方法、视频处理装置、存储介质与电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113038010A CN113038010A (zh) | 2021-06-25 |
CN113038010B true CN113038010B (zh) | 2022-11-29 |
Family
ID=76470503
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110271925.XA Active CN113038010B (zh) | 2021-03-12 | 2021-03-12 | 视频处理方法、视频处理装置、存储介质与电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113038010B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114125298B (zh) * | 2021-11-26 | 2024-07-12 | Oppo广东移动通信有限公司 | 视频生成方法及装置、电子设备及计算机可读存储介质 |
CN115022679B (zh) * | 2022-05-30 | 2023-08-29 | 北京百度网讯科技有限公司 | 视频处理方法、装置、电子设备和介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103985103A (zh) * | 2013-02-07 | 2014-08-13 | 百度在线网络技术(北京)有限公司 | 一种生成全景图片的方法和装置 |
CN107734269A (zh) * | 2017-10-16 | 2018-02-23 | 维沃移动通信有限公司 | 一种图像处理方法及移动终端 |
CN111415387A (zh) * | 2019-01-04 | 2020-07-14 | 南京人工智能高等研究院有限公司 | 相机位姿确定方法、装置、电子设备及存储介质 |
CN111464749A (zh) * | 2020-05-07 | 2020-07-28 | 广州酷狗计算机科技有限公司 | 进行图像合成的方法、装置、设备及存储介质 |
CN112465937A (zh) * | 2020-11-03 | 2021-03-09 | 影石创新科技股份有限公司 | 定格动画的生成方法、计算机可读存储介质及计算机设备 |
-
2021
- 2021-03-12 CN CN202110271925.XA patent/CN113038010B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103985103A (zh) * | 2013-02-07 | 2014-08-13 | 百度在线网络技术(北京)有限公司 | 一种生成全景图片的方法和装置 |
CN107734269A (zh) * | 2017-10-16 | 2018-02-23 | 维沃移动通信有限公司 | 一种图像处理方法及移动终端 |
CN111415387A (zh) * | 2019-01-04 | 2020-07-14 | 南京人工智能高等研究院有限公司 | 相机位姿确定方法、装置、电子设备及存储介质 |
CN111464749A (zh) * | 2020-05-07 | 2020-07-28 | 广州酷狗计算机科技有限公司 | 进行图像合成的方法、装置、设备及存储介质 |
CN112465937A (zh) * | 2020-11-03 | 2021-03-09 | 影石创新科技股份有限公司 | 定格动画的生成方法、计算机可读存储介质及计算机设备 |
Also Published As
Publication number | Publication date |
---|---|
CN113038010A (zh) | 2021-06-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111641835B (zh) | 视频处理方法、视频处理装置和电子设备 | |
US9479709B2 (en) | Method and apparatus for long term image exposure with image stabilization on a mobile device | |
CN103428460B (zh) | 针对影像撷取模组记录输出视讯序列的录影方法以及录影装置 | |
CN109788189B (zh) | 将相机与陀螺仪融合在一起的五维视频稳定化装置及方法 | |
JP2022523606A (ja) | 動画解析のためのゲーティングモデル | |
CN113038010B (zh) | 视频处理方法、视频处理装置、存储介质与电子设备 | |
CN113810596B (zh) | 延时摄影方法和装置 | |
JP2023549841A (ja) | ビデオ処理方法、装置、電子機器及び記憶媒体 | |
CN113542600B (zh) | 一种图像生成方法、装置、芯片、终端和存储介质 | |
WO2022116772A1 (zh) | 视频裁剪方法、装置、存储介质及电子设备 | |
CN115176455A (zh) | 功率高效的动态电子图像稳定 | |
TW202110165A (zh) | 一種資訊處理方法、電子設備、儲存媒體和程式 | |
CN111479059B (zh) | 拍照处理方法、装置、电子设备及存储介质 | |
CN110809797B (zh) | 微视频系统、格式和生成方法 | |
CN113658065A (zh) | 图像降噪方法及装置、计算机可读介质和电子设备 | |
WO2024104439A1 (zh) | 图像插帧方法、装置、设备及计算机可读存储介质 | |
CN111800581B (zh) | 图像生成方法、图像生成装置、存储介质与电子设备 | |
CN107197339B (zh) | 影片弹幕的显示控制方法、装置及头戴式显示设备 | |
CN113205011A (zh) | 图像掩膜确定方法及装置、存储介质和电子设备 | |
JP2020184669A (ja) | 画像処理装置、撮像装置、画像処理方法、プログラム | |
CN113409209B (zh) | 图像去模糊方法、装置、电子设备与存储介质 | |
CN112348738B (zh) | 图像优化方法、图像优化装置、存储介质与电子设备 | |
CN112492230B (zh) | 视频处理方法、装置、可读介质及电子设备 | |
CN113362260A (zh) | 图像优化方法及装置、存储介质及电子设备 | |
CN115914860A (zh) | 一种拍摄方法及电子设备 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |