掌桥专利:专业的专利平台
掌桥专利
首页

视频稳化方法、装置、设备以及计算机可读存储介质

文献发布时间:2023-06-19 18:32:25


视频稳化方法、装置、设备以及计算机可读存储介质

技术领域

本申请涉及电子设备技术领域,具体涉及一种视频稳化方法、装置、设备以及计算机可读存储介质。

背景技术

在使用电子设备拍摄视频时,特别是用户手持电子设备进行视频拍摄时,容易因为晃动或者手部不稳定引起视频画面的抖动,因此需要视频进行稳化处理,以消除抖动产生的影响。

发明内容

本申请实施例提供一种视频稳化方法、装置、设备以及计算机可读存储介质,能够提升视频稳化效果。

第一方面,本申请实施例提供一种视频稳化方法,包括:

获取第一原始视频帧和第二原始视频帧,其中,所述第二原始视频帧为所述第一原始视频帧的之前的一帧视频帧;

获取所述第二原始视频帧对应的运动传感器标定参数和运动传感器数据,并根据所述运动传感器标定参数和所述运动传感器数据确定第一射影变换参数;

根据所述第一射影变换参数,从所述第一原始视频帧和所述第二原始视频帧中确定出第一目标光流点对集合;

根据所述第一目标光流点对集合确定第二射影变换参数;

根据所述第二射影变换参数,对所述第一原始视频帧进行稳化处理,得到第一稳化视频帧。

第二方面,本申请实施例还提供一种视频稳化装置,包括:

图像获取模块,用于获取第一原始视频帧和第二原始视频帧,其中,所述第二原始视频帧为所述第一原始视频帧的之前的一帧视频帧;

参数计算模块,用于获取所述第二原始视频帧对应的运动传感器标定参数和运动传感器数据,并根据所述运动传感器标定参数和所述运动传感器数据确定第一射影变换参数;

光流点确定模块,用于根据所述第一射影变换参数,从所述第一原始视频帧和所述第二原始视频帧中确定出第一目标光流点对集合;

所述参数计算模块,还用于根据所述第一目标光流点对集合确定第二射影变换参数;

视频稳化模块,用于根据所述第二射影变换参数,对所述第一原始视频帧进行稳化处理,得到第一稳化视频帧。

第三方面,本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如本申请任一实施例提供的视频稳化方法。

第四方面,本申请实施例还提供一种电子设备,所述电子设备包括处理器、存储器以及存储于所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如本申请任一实施例提供的视频稳化方法。

本申请实施例提供的技术方案,通过第二原始视频帧对应的运动传感器标定参数和运动传感器数据计算得到第一射影变换参数,根据该第一射影变换参数选择出相邻两帧视频帧之间的第一目标光流点对集合,根据第一目标光流点对集合计算得到第二射影变换参数,由于运动传感器数据反映的是电子设备本身的晃动情况,使用运动传感器标定参数和运动传感器数据计算得到第一射影变换参数,根据该第一射影变换参数能够从相邻两帧视频帧中确定出反映设备本身晃动产生的光流点对,因此,根据这些光流点对计算得到的第二射影变换参数能够实现对第一原始视频帧相对于第二原始视频帧的准确的运动估计,提升了视频稳化效果。

附图说明

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

图1为本申请实施例提供的视频稳化方法的第一种流程示意图。

图2为本申请实施例中的稳化裁剪变换示意图。

图3为本申请实施例提供的视频稳化方法中的视频帧变换关系示意图。

图4为本申请实施例提供的视频稳化方法中各子视频帧对应的第二射影变换参数的高斯权重示意图。

图5为本申请实施例中划分子视频帧的方式计算第二射影变换参数的效果示意图。

图6为本申请实施例提供的视频稳化方法的第二种流程示意图。

图7为本申请实施例提供的视频稳化方法的共面约束的像素点选择方式示意图。

图8为本申请实施例提供的视频稳化方法的第三种流程示意图。

图9为本申请实施例提供的视频稳化装置的结构示意图。

图10为本申请实施例提供的电子设备的结构示意图。

具体实施方式

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

在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。

本申请实施例提供一种视频稳化方法,该视频稳化方法的执行主体可以是本申请实施例提供的视频稳化装置,或者集成了该视频稳化装置的电子设备,其中该视频稳化装置可以采用硬件或者软件的方式实现。其中,电子设备可以是智能手机、平板电脑、掌上电脑、笔记本电脑、或者台式电脑等设备。

请参阅图1,图1为本申请实施例提供的视频稳化方法的第一种流程示意图。本申请实施例提供的视频稳化方法的具体流程可以如下:

101、获取第一原始视频帧和第二原始视频帧,其中,第二原始视频帧为第一原始视频帧的之前的一帧视频帧。

电子设备进行视频拍摄并连续的输出原始的视频帧序列,其中,第一原始视频帧为当前输出的最新一帧待处理的视频帧,第二原始视频帧为视频帧序列中位于该第一原始视频帧前的一帧视频帧,例如,第二原始视频帧为视频帧序列中位于该第一原始视频帧前且与该第一原始视频帧相邻的一帧视频帧,又例如,第二原始视频帧为视频帧序列中位于该第一原始视频帧之前,且与该第一原始视频帧之间间隔一帧视频帧的视频帧。

下文中,以第二原始视频帧为视频帧序列中位于该第一原始视频帧前且与该第一原始视频帧相邻的一帧视频帧为例,并且将第一原始视频帧经过稳化处理后的图像记为第一稳化视频帧,将第二原始视频帧经过稳化处理后的图像记为第二稳化视频帧。

例如,第一原始视频帧为第i帧,记为F

102、获取第二原始视频帧对应的运动传感器标定参数和运动传感器数据,并根据运动传感器标定参数和运动传感器数据确定第一射影变换参数。

其中,运动传感器可以是陀螺仪、重力传感器、加速度传感器等可以检测电子设备的运动情况的传感器。下文中以运动传感器为陀螺仪为例对本申请实施例的方案及进行说明。当运动传感器为陀螺仪时,运动传感器标定参数为陀螺仪标定参数,运动传感器数据为陀螺仪数据。

其中,运动传感器标定参数是用于根据运动传感器数据获取该运动传感器对应的运动数据的参数,包括但不限于摄像头的成像焦距、光心位置以及运动传感器的转动误差等参数。这多个参数可以表示为一个向量,该向量可以通过适配算法确定得到,详见下文的说明。

运动传感器数据为运动传感器直接采集到的数据,可以反映电子设备的运动情况,运动传感器可以按照一个预设的频率进行运动传感器数据的采集。以陀螺仪为例,陀螺仪启动后,按照一个预先设定的频率采集陀螺仪数据,某个时刻采集到的陀螺仪数据反映电子设备在该时刻的运动情况。

接下来,对视频帧的稳化过程进行说明。相邻的两个视频帧之间存在射影变换关系,第一原始视频帧相对于第二原始视频帧之间的射影变换关系可以通过射影变换参数M

则第一原始视频帧中的坐标点(x

其中,(x

M

本申请实施例的方案综合两种运动估计方法,能够更加准确地对视频帧进行稳化处理。接下来,对具体的稳化过程进行说明。

前文介绍了相邻的两帧原始视频帧之间的射影变换关系。相应的,稳化处理后的第一稳化视频帧与第二稳化视频帧之间也存在射影变换关系,例如通过K

而第一原始视频帧与第一稳化视频帧之间的变换记为R

如图3所示,图3为本申请实施例提供的视频稳化方法中的视频帧变换关系示意图。从其中可以看出F

F

基于射影变换的连乘法则,可以得到:

其中,K

根据上述公式(3)可以看出,要想对第一原始视频帧进行稳化处理得到第一稳化视频帧,需要得到R

可以理解的是,为了便于进行数学计算,本申请中的R

接下来,对本申请计算M

获取第二原始视频帧对应的运动传感器标定参数和运动传感器数据。

其中,运动传感器为陀螺仪,则运动传感器标定参数表示为v

其中,参数f

参数t

图像平面任意点Pt

Pt

其中,f

运动传感器数据表示电子设备在具体某时刻的瞬间转速,表示为ω=[u

提取模数

对于t

为了便于计算,将运动传感器数据转换为4元组形式,定义

进一步可以使用如下公式计算两个4元组的累计旋转运动4元组,如下所示:

4元组旋转向量通过如下形式转换维3×3旋转矩阵:

根据公式(3)可计算第一射影变换参数

其中,

其中,

根据公式(6)可实现四元组与矩阵的转换。t

综上,基于上述方式计算得到第一射影变换参数

103、根据第一射影变换参数,从第一原始视频帧和第二原始视频帧中确定出第一目标光流点对集合。

接下来,根据第一射影变换参数从第一原始视频帧和第二原始视频帧中确定出第一目标光流点对集合。

其中,在拍摄过程中如果电子设备发生抖动,造成第二原始视频帧相对于第一原始视频帧,有部分像素点发生非正常移动,导致产生光流点对。

但是,由于拍摄视频时,拍摄场景中本身也可能存在运动物体,这些运动物体也会使得相邻的两个视频帧之间产生光流点对,在本实施例中为了便于描述,将由于运动物体所导致的两个相邻视频帧之间所产生的光流点对,称为前景光流点对。在使用光流点对计算射影变换参数时,为了避免这些正常的光流点导致射影变换参数的计算产生误差,需要将前景光流点对从全部的光流点对集合中剔除。

基于此,在一实施例中,根据第一射影变换参数,从第一原始视频帧和第二原始视频帧中确定出第一目标光流点对集合,包括:根据第一原始视频帧和第二原始视频帧,获取原始光流点对集合;根据第一射影变换参数检测出原始光流点对集合中的前景光流点对;将前景光流点对从原始光流点对集合中剔除,得到第一目标光流点对集合。

其中,原始光流点对集合的获取方式如下:

(1)、对第二原始视频帧进行处理,提取其中的各个角点。具体地,在图像处理领域中,角点是常用的概念,角点为极值点,可以通过角点检测算法检测角点。一些实施例中,为了提高后续计算准确度,在初步提取出角点后,各个角点进行过滤,对角点分布密集区域的部分角点过滤,使得角点在第二原始视频帧中均匀分布。将过滤后得到的角点记为第二光流点。具体地,可以是将第二原始视频帧划分为若干个等大小的网格,每个网格中保留数量相等的角点作为第二光流点。

(2)、获取第二原始视频帧到第一原始视频帧的光流。光流反映了图像中的点从第二原始视频帧到第一原始视频帧的运动情况。

(3)、根据光流获取各个第二光流点在第一原始视频帧中对应的第一光流点。每个第一光流点和对应的第二光流点组成一个光流点对,多个光流点对组成原始光流点对集合。

接下来,根据第一射影变换参数检测出原始光流点对集合中的前景光流点对。例如,在一实施例中,根据第一射影变换参数检测出原始光流点对集合中的前景光流点对,包括:对于原始光流点对集合中的每一个原始光流点对,根据第一射影变换参数对第二光流点进行映射处理,得到第二光流点在第一原始视频帧上的第三光流点;计算第三光流点与第一光流点之间的距离;当距离大于第一预设阈值时,将对应的原始光流点对确定为前景光流点对。

具体地,定义原始光流点对为〈p

前景光流点对的检测判断阈值L可以按照如下公式计算:

其中,

剔除前景光流点对之后,剩余的原始光流点对构成第一目标光流点对集合。

104、根据第一目标光流点对集合第二射影变换参数。

接下来,根据第一目标光流点对集合中的光流点对计算得到第二射影变换参数。其中,根据光流点对的坐标构建超定方程组,该方程组中的系数即为待求解的第二射影变换参数。具体如下:

假设第一目标光流点对集合表示为{〈p

105、根据第二射影变换参数,对第一原始视频帧进行稳化处理,得到第一稳化视频帧。

计算得到第二射影变换参数后,可以根据该第二射影变换参数对第一原始视频帧进行稳化处理,例如,根据第二射影变换参数

具体实施时,本申请不受所描述的各个步骤的执行顺序的限制,在不产生冲突的情况下,某些步骤还可以采用其它顺序进行或者同时进行。

由上可知,本申请实施例提供的视频稳化方法,通过第二原始视频帧对应的运动传感器标定参数和运动传感器数据计算得到第一射影变换参数,根据该第一射影变换参数选择出相邻两帧视频帧之间的第一目标光流点对集合,然后根据第一目标光流点对集合计算得到第二射影变换参数,由于运动传感器数据反映的是电子设备本身的晃动情况,使用运动传感器标定参数和运动传感器数据计算得到第一射影变换参数,根据该第一射影变换参数能够从相邻两帧视频帧中确定出反映设备本身晃动产生的光流点对,因此,根据这些光流点对计算得到的第二射影变换参数能够实现对第一原始视频帧相对于第二原始视频帧的准确的运动估计,提升了视频稳化效果。

在一实施例中,根据第一目标光流点对集合确定第二射影变换参数,包括:将第一原始视频帧划分为多个子视频帧,并根据第一目标光流点对集合计算得到各子视频帧的第二射影变换参数。根据第二射影变换参数,对第一原始视频帧进行稳化处理,得到第一稳化视频帧,包括:根据第一原始视频帧的各个子视频帧对应的第二射影变换参数,对第一原始视频帧的各个子视频帧进行稳化处理,得到第一稳化视频帧。

对于采用卷帘式快门拍照的电子设备来说,各行像素点因为曝光时间不同存在一定的平移误差,即卷帘效应。该实施例中,通过对第一原始视频帧划分子视频帧的方式,一定程度上消除卷帘效应,进一步提高射影变换参数的准确度,从而提升视频稳化处理效果。

具体地,将第一原始视频帧划分为多个子视频帧,并根据第一目标光流点对集合计算得到各子视频帧的第二射影变换参数,包括:根据第一目标光流点对集合,计算得到第一子参数;将第一原始视频帧划分为多个子视频帧;对于每一个子视频帧,从第一目标光流点对集合中确定出与子视频帧对应的第二目标光流点对集合;根据第二目标光流点对集合,计算得到子视频帧对应的第二子参数;根据第一子参数和第二子参数,得到子视频帧对应的第二射影变换参数。

该实施例中,将第一原始视频帧划分为N个子视频帧,例如,第一原始视频帧的高度为1080,即第一原始视频帧一共有1080行像素点,将第一原始视频帧划分为8个子视频帧,则每一子视频帧包含135行像素点。

对于N个子视频帧,可以计算得到N个第二射影变换参数

定义

通过第一目标光流点对集合{

公式10中的c

其中,当光流点对的数量不足时,可以采用插值的方式补充光流点对。

该实施例提出的视频稳化方法,采用对第一原始视频帧划分子视频帧的方式计算各子视频帧对应的第二射影变换参数,并根据各个第二射影变换参数分别对各自对应的子视频帧进行稳化处理,可以消除卷帘效应带来的误差,进一步提升视频稳化的效果。请参照图5,图5为本申请实施例中划分子视频帧的方式计算第二射影变换参数的效果示意图。在光流点对数量相同的情况下,划分子视频帧之后的得到第二射影变换参数相对于整个视频帧的第二射影变换参数来说,具有更小的匹配误差。

请参阅图6,图6为本申请实施例提供的视频稳化方法的第二种流程示意图。

在一实施例中,在步骤103之后,该方法还包括:

106、判断所述第一目标光流点对集合中的光流点对的数量、所述第一目标光流点对集合中的光流点对在所述第一原始视频帧中的占比是否满足预设条件。

其中,所述预设条件为所述第一目标光流点对集合中的光流点对的数量大于第二预设阈值,且所述第一目标光流点对集合中的光流点对在所述第一原始视频帧中的占比大于第三预设阈值。

该实施例,在确定出第一目标光流点对集合之后,判断集合中的光流点是否足够用于计算第二射影变换参数。例如,光流点对的总数V大于第二预设阈值,且光流点分布占比图像总面积大于第三预设阈值,此时认为第一原始视频帧中存在足够的光流点对进行运动估计。

若是,则执行步骤104;

若否,且运动传感器标定参数适配收敛,则执行107。

107、根据第一射影变换参数,对第一原始视频帧进行稳化处理,得到第一稳化视频帧。

如果第一原始视频帧中没有足够的光流点对进行运动估计,此时要看运动传感器标定参数是否适配收敛。

其中,运动传感器的标定参数的适配原理如下:

基于上文中标定参数向量v

其中,当标定参数适配收敛,当前的标定参数为最优标定参数。反之,则标定参数未达到最优。其中,若运动传感器的标定参数未收敛,则每一帧新的原始视频帧到来时,都会进行运动传感器的标定参数的适配。若第二原始视频帧到来,获取第一原始视频帧对应的运动传感器标定参数,若在上一视频帧处理时,运动传感器标定参数适配收敛,则该运动传感器标定参数为当前的最优标定参数,可以根据第一射影变换参数,对第一原始视频帧进行稳化处理,得到第一稳化视频帧。具体稳化处理方式,请参照上文在此不再赘述。反之,若运动传感器标定参数未适配收敛,则使用单位矩阵作为射影变换参数,对第一原始视频帧进行稳化处理,得到第一稳化视频帧。

在一实施例中,在对运动传感器标定参数进行适配处理的过程中,采用步骤104计算得到的第二射影变换参数和损失函数计算损失值,计算损失值,其中,损失函数为共面约束损失函数;基于损失值以梯度优化的方式对运动传感器标定参数进行适配处理,以更新运动传感器标定参数。

例如,对于第一原始视频帧中的三个原始像素点{(x

在一实施例中,可以采用共面约束损失函数。其中,共面约束损失函数的计算公式如下:

其中,det()为行列式运算,abs()为取绝对值运算。

共面约束损失函数实质上是按照第二射影变换参数估计的映射点与按照第一射影变换参数估计的映射点的差向量构建的行列式的值。当3点的差向量越接近平行,损失函数越小,反之越大。因运动传感器运动估计(第一射影变换参数)只含有转角位移,无法反映平移位移。使用共面约束能够反映平移位移,进而可以更准确的实现运动传感器参数的适配。共面约束计算需要3个像素点构建1个三角形。按照图7的方式进行光流点采样可计算,可以覆盖整个图像,能够取得较好的准确适配估计效果。

请参阅图8,图8为本申请实施例提供的视频稳化方法的第三种流程示意图。

在一实施例中,在步骤103之前,该方法还包括:

若所述运动传感器标定参数适配收敛,则执行步骤103。

若所述运动传感器标定参数未适配收敛,则执行步骤108。

108、根据第一射影变换参数计算设备位移。

该实施例中,在计算得到第一射影变换参数之后,如果当前的运动传感器标定参数适配收敛,则说明用于计算第射影变换参数的运动传感器标定参数为最优标定参数,此时计算得到的第一射影变换参数准确度较高,可以用于剔除前景光流点对。

反之,如果当前的运动传感器标定参数未适配收敛,则说明用于计算第射影变换参数的运动传感器标定参数不是最优标定参数,此时计算得到的第一射影变换参数准确度不确定,不能直接用于剔除前景光流点对。

基于此,该实施例中,通过第一射影变换参数估算设备位移,根据估算得到的设备位移来评估第一射影变换参数的准确度。

其中,从第二原始视频帧选择一些像素点,例如视频帧的四个顶点,根据第一射影变换参数对这四个顶点进行映射处理,得到映射点位置,再计算映射点位置与第一原始视频帧中四个顶点的实际位置之间的距离。

若所述设备位移大于第三预设阈值,则执行109,并在步骤109之后,继续执行步骤106。若设备位移小于或等于所述第三预设阈值,则执行步骤103。

109、从第一原始视频帧和第二原始视频帧中确定出第一目标光流点对集合。

当该距离大于第三预设阈值时,说明此时设备存在较大移动,难以使用第一射影变换参数剔除前景光流点对。则直接从第一原始视频帧和第二原始视频帧中确定出原始光流点对集合作为第一目标光流点对集合,确定方式参照前文,无需进行前景光流点的剔除。并基于确定出的第一目标光流点对集合执行步骤106。反之,若该距离小于或等于第三预设阈值时,说明此时设备,近似不存在移动,可以使用第一射影变换参数剔除前景光流点对。其中,第三预设阈值是一个较小的值。

该实施例的方法,在对前景光流点进行剔除之前,对运动传感器标定参数的适配收敛与否进行判断,在不同的情况下,采用不同的方式获取目标光流点对集合,进行第二射影变换参数的计算。

在一实施例中还提供一种视频稳化装置。请参阅图9,图9为本申请实施例提供的视频稳化装置300的结构示意图。其中该视频稳化装置300应用于电子设备,该视频稳化装置300包括图像获取模块301、参数计算模块302、光流点确定模块303以及视频稳化模块304,如下:

图像获取模块301,用于获取第一原始视频帧和第二原始视频帧,其中,所述第二原始视频帧为所述第一原始视频帧的之前的一帧视频帧;

参数计算模块302,用于获取所述第二原始视频帧对应的运动传感器标定参数和运动传感器数据,并根据所述运动传感器标定参数和所述运动传感器数据确定第一射影变换参数;

光流点确定模块303,用于根据所述第一射影变换参数,从所述第一原始视频帧和所述第二原始视频帧中确定出第一目标光流点对集合;

参数计算模块302,还用于根据所述第一目标光流点对集合确定第二射影变换参数;

视频稳化模块304,用于根据所述第二射影变换参数,对所述第一原始视频帧进行稳化处理,得到第一稳化视频帧。

应当说明的是,本申请实施例提供的视频稳化装置与上文实施例中的视频稳化方法属于同一构思,通过该视频稳化装置可以实现视频稳化方法实施例中提供的任一方法,其具体实现过程详见视频稳化方法实施例,此处不再赘述。

由上可知,本申请实施例提出的视频稳化装置,通过第二原始视频帧对应的运动传感器标定参数和运动传感器数据计算得到第一射影变换参数,根据该第一射影变换参数选择出相邻两帧视频帧之间的第一目标光流点对集合,然后根据第一目标光流点对集合计算得到第二射影变换参数,由于运动传感器数据反映的是电子设备本身的晃动情况,使用运动传感器标定参数和运动传感器数据计算得到第一射影变换参数,根据该第一射影变换参数能够从相邻两帧视频帧中确定出反映设备本身晃动产生的光流点对,因此,根据这些光流点对计算得到的第二射影变换参数能够实现对第一原始视频帧相对于第二原始视频帧的准确的运动估计,提升了视频稳化效果。

本申请实施例还提供一种电子设备,该电子设备可以为终端,该终端可以为智能手机、平板电脑、笔记本电脑、触控屏幕、游戏机、个人计算机(PC,Personal Computer)、个人数字助理(Personal Digital Assistant,PDA)等终端设备。请参阅图10,图10为本申请实施例提供的电子设备的结构示意图。该电子设备400包括有一个或者一个以上处理核心的处理器401、有一个或一个以上计算机可读存储介质的存储器402及存储在存储器402上并可在处理器上运行的计算机程序。其中,处理器401与存储器402电性连接。本领域技术人员可以理解,图中示出的电子设备结构并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

处理器401是电子设备400的控制中心,利用各种接口和线路连接整个电子设备400的各个部分,通过运行或加载存储在存储器402内的软件程序和/或模块,以及调用存储在存储器402内的数据,执行电子设备400的各种功能和处理数据,从而对电子设备400进行整体监控。

在本申请实施例中,电子设备400中的处理器401会按照如下的步骤,将一个或一个以上的应用程序的进程对应的指令加载到存储器402中,并由处理器401来运行存储在存储器402中的应用程序,从而实现各种功能:

获取第一原始视频帧和第二原始视频帧,其中,所述第二原始视频帧为所述第一原始视频帧的之前的一帧视频帧;

获取所述第二原始视频帧对应的运动传感器标定参数和运动传感器数据,并根据所述运动传感器标定参数和所述运动传感器数据确定第一射影变换参数;

根据所述第一射影变换参数,从所述第一原始视频帧和所述第二原始视频帧中确定出第一目标光流点对集合;

根据所述第一目标光流点对集合确定第二射影变换参数;

根据所述第二射影变换参数,对所述第一原始视频帧进行稳化处理,得到第一稳化视频帧。

以上各个操作的具体实施可参见前面的实施例,在此不再赘述。

可选的,如图10所示,电子设备400还包括:触控显示屏403、射频电路404、音频电路405、输入单元406以及电源407。其中,处理器401分别与触控显示屏403、射频电路404、音频电路405、输入单元406以及电源407电性连接。本领域技术人员可以理解,图10中示出的电子设备结构并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

触控显示屏403可用于显示图形用户界面以及接收用户作用于图形用户界面产生的操作指令。触控显示屏403可以包括显示面板和触控面板。其中,显示面板可用于显示由用户输入的信息或提供给用户的信息以及电子设备的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。可选的,可以采用液晶显示器(LCD,Liquid Crystal Display)、有机发光二极管(OLED,Organic Light-Emitting Diode)等形式来配置显示面板。触控面板可用于收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板上或在触控面板附近的操作),并生成相应的操作指令,且操作指令执行对应程序。可选的,触控面板可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器401,并能接收处理器401发来的命令并加以执行。触控面板可覆盖显示面板,当触控面板检测到在其上或附近的触摸操作后,传送给处理器401以确定触摸事件的类型,随后处理器401根据触摸事件的类型在显示面板上提供相应的视觉输出。在本申请实施例中,可以将触控面板与显示面板集成到触控显示屏403而实现输入和输出功能。但是在某些实施例中,触控面板与显示面板可以作为两个独立的部件来实现输入和输出功能。即触控显示屏403也可以作为输入单元406的一部分实现输入功能。

射频电路404可用于收发射频信号,以通过无线通信与网络设备或其他电子设备建立无线通讯,与网络设备或其他电子设备之间收发信号。

音频电路405可以用于通过扬声器、传声器提供用户与电子设备之间的音频接口。音频电路405可将接收到的音频数据转换后的电信号,传输到扬声器,由扬声器转换为声音信号输出;另一方面,传声器将收集的声音信号转换为电信号,由音频电路405接收后转换为音频数据,再将音频数据输出处理器401处理后,经射频电路404以发送给比如另一电子设备,或者将音频数据输出至存储器402以便进一步处理。音频电路405还可能包括耳塞插孔,以提供外设耳机与电子设备的通信。

输入单元406可用于接收输入的数字、字符信息或用户特征信息(例如指纹、虹膜、面部信息等),以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。

电源407用于给电子设备400的各个部件供电。可选的,电源407可以通过电源管理系统与处理器401逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源407还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。

尽管图10中未示出,电子设备400还可以包括摄像头、传感器、无线保真模块、蓝牙模块等,在此不再赘述。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

由上可知,本实施例提供的电子设备,通过第二原始视频帧对应的运动传感器标定参数和运动传感器数据计算得到第一射影变换参数,根据该第一射影变换参数选择出相邻两帧视频帧之间的第一目标光流点对集合,然后根据第一目标光流点对集合计算得到第二射影变换参数,由于运动传感器数据反映的是电子设备本身的晃动情况,使用运动传感器标定参数和运动传感器数据计算得到第一射影变换参数,根据该第一射影变换参数能够从相邻两帧视频帧中确定出反映设备本身晃动产生的光流点对,因此,根据这些光流点对计算得到的第二射影变换参数能够实现对第一原始视频帧相对于第二原始视频帧的准确的运动估计,提升了视频稳化效果。

本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。

为此,本申请实施例提供一种计算机可读存储介质,其中存储有多条计算机程序,该计算机程序能够被处理器进行加载,以执行本申请实施例所提供的任一种视频稳化方法中的步骤。例如,该计算机程序可以执行如下步骤:

获取第一原始视频帧和第二原始视频帧,其中,所述第二原始视频帧为所述第一原始视频帧的之前的一帧视频帧;

获取所述第二原始视频帧对应的运动传感器标定参数和运动传感器数据,并根据所述运动传感器标定参数和所述运动传感器数据确定第一射影变换参数;

根据所述第一射影变换参数,从所述第一原始视频帧和所述第二原始视频帧中确定出第一目标光流点对集合;

根据所述第一目标光流点对集合确定第二射影变换参数;

根据所述第二射影变换参数,对所述第一原始视频帧进行稳化处理,得到第一稳化视频帧。

以上各个操作的具体实施可参见前面的实施例,在此不再赘述。

其中,该存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。

由于该存储介质中所存储的计算机程序,可以执行本申请实施例所提供的任一种视频稳化方法中的步骤,因此,可以实现本申请实施例所提供的任一种视频稳化方法所能实现的有益效果,详见前面的实施例,在此不再赘述。

以上对本申请实施例所提供的一种视频稳化方法、装置、设备以及计算机可读存储介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

相关技术
  • 视频稳像方法、装置及计算机可读存储介质
  • 视频搜索方法和装置、电子设备以及计算机可读存储介质
  • 视频旋转方法、装置、计算机可读存储介质及电子设备
  • 视频校正方法、装置、电子设备和计算机可读存储介质
  • 视频分类方法、装置、电子设备及计算机可读存储介质
  • 视频稳像方法、视频稳像装置和计算机可读存储介质
  • 视频稳像方法、视频稳像装置和计算机可读存储介质
技术分类

06120115603276