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

一种视频运动平滑处理方法、装置、设备和存储介质

文献发布时间:2024-04-18 19:58:30


一种视频运动平滑处理方法、装置、设备和存储介质

技术领域

本发明涉及视频处理技术领域,尤其涉及一种视频运动平滑处理方法、装置、设备和存储介质。

背景技术

随着如今数码拍摄设备爆发式增长,人们越来越多地通过摄像头来记录生活,与此同时,用户也对拍摄的视频的流畅性、稳定性等有了更高的要求。特别是针对行车记录仪等移动车载设备来说,视频传感器或车载摄像头是获取车辆外界信息的主要途径,然而在车辆行驶过程中,不可避免地存在着随机振动、路面颠簸等因素,车辆行驶速度越快,颠簸、振动就越剧烈,特别是在高速场景下,就会越发明显。这些因素会导致车载摄像头处于一种不稳定的工作环境中,造成录制的视频存在视觉上的抖动、模糊等现象,从而显著影响到视频图像的质量。因此,对视频图像进行高效防抖处理,生成高质量稳定流畅的视频,具有很现实的应用价值,能极大地提升用户的体验。

电子稳像是一种常用的视频稳像技术,主要由运动估计、运动平滑、运动合成三个主要模块组成,其中,运动平滑是将摄像头运动轨迹分离出意向运动和随机抖动,去除掉抖动分量后得到平滑前后的补偿量,以供运动合成模块利用该补偿量对视频帧图像进行稳定修复。目前电子稳像中的运动平滑多采用曲线拟合、滑动窗口均值滤波等方法,在实时性上存在不足,稳像效果较差。

发明内容

本发明提供一种视频运动平滑处理方法、装置、设备和存储介质,用以解决现有技术运动平滑多采用曲线拟合、滑动窗口均值滤波等方法,在实时性上存在不足,稳像效果较差的缺陷,提高电子稳像的实时性,增强电子稳像的效果。

本发明提供一种视频运动平滑处理方法,包括:获取目标物的运动数据和图像数据,对所述运动数据和所述图像数据进行时间同步对齐;所述运动数据包括角速度和加速度;

利用互补滤波器结合所述角速度和所述加速度,估计所述目标物运动的方向四元数;

利用球面线性插值算法计算所述图像数据中的视频帧的方向四元数;

利用无迹卡尔曼滤波器对所述视频帧的方向四元数进行平滑处理;

计算平滑处理前后的所述视频帧的方向四元数之间的旋转差,利用所述旋转差对所述视频帧进行运动补偿,得到稳定后的视频帧。

根据本发明提供的一种视频运动平滑处理方法,对所述运动数据和所述图像数据进行时间同步对齐,包括:

计算所述运动数据的采样时间戳和所述图像数据的采样时间戳之间的时间差,将所述时间差增加到所述图像数据的采样时间戳上。

根据本发明提供的一种视频运动平滑处理方法,所述互补滤波器为非线性互补滤波器,用于对所述角速度和所述加速度进行惯性积分得到方向四元数;

利用互补滤波器结合所述角速度和所述加速度,估计所述目标物运动的方向四元数,包括:

利用非线性互补滤波器,根据所述加速度的归一化后的加速度矢量计算初始四元数;

在所述目标物处于静止状态的情况下,计算陀螺零偏;所述陀螺零偏为采集所述角速度的惯性测量单元的陀螺零偏;

基于所述初始四元数的导数积分和去除所述陀螺零偏后的所述角速度,计算得到预测的方向四元数;

基于所述预测的方向四元数,将所述加速度转换到全局坐标系下,并计算所述全局坐标系下的所述加速度与真实重力矢量之间的旋转修正量;

根据所述旋转修正量,对所述预测的方向四元数进行修正。

根据本发明提供的一种视频运动平滑处理方法,根据所述旋转修正量,对所述预测的方向四元数进行修正,包括:

利用四元数乘法,将所述预测的方向四元数与所述旋转修正量相乘,得到修正后的所述预测的方向四元数。

根据本发明提供的一种视频运动平滑处理方法,利用球面线性插值算法计算所述图像数据中的视频帧的方向四元数,包括:

通过所述图像数据中的视频帧的采样时间戳t匹配前后相邻的两个所述运动数据,两个所述运动数据的时间戳分别为t

其中,q

根据本发明提供的一种视频运动平滑处理方法,利用无迹卡尔曼滤波器对所述视频帧的方向四元数进行平滑处理,包括:

步骤一:利用平滑处理后的方向四元数和所述角速度定义所述无迹卡尔曼滤波器的状态变量:

其中,

设置所述无迹卡尔曼滤波器中初始的状态协方差矩阵P、过程噪声协方差矩阵Q和观测噪声协方差矩阵R;

步骤二:在所述角速度恒定的假设条件下,构建运动方程:

其中,q

步骤三:将所述视频帧的所述预测的方向四元数和所述角速度作为观测数据,构建观测模型:

其中,

步骤四:将上一次后验更新后的估计的状态协方差矩阵P

步骤五:利用步骤二中的运动方程对所述西格玛点集{X

步骤六:将步骤五中预测的所述协方差矩阵P

步骤七:将所述视频帧的所述预测的方向四元数以及所述角速度作为观测值组合成

更新后的状态向量

根据本发明提供的一种视频运动平滑处理方法,计算平滑处理前后所述视频帧的方向四元数之间的旋转差,利用所述旋转差对所述视频帧进行运动补偿,得到稳定后的视频帧,包括:

将平滑处理前后的所述视频帧的方向四元数之间的旋转差值作为旋转矩阵,对所述视频帧中的像素点进行旋转补偿,得到稳定后的视频帧。

本发明还提供一种视频运动平滑处理装置,包括:

数据预处理模块,用于获取目标物的运动数据和图像数据,对所述运动数据和所述图像数据进行时间同步对齐;所述运动数据包括角速度和加速度;

互补滤波模块,用于利用互补滤波器结合所述角速度和所述加速度,估计所述目标物运动的方向四元数;

球面线性插值算法模块,用于利用球面线性插值算法计算所述图像数据中的视频帧的方向四元数;

无迹卡尔曼滤波模块,用于利用无迹卡尔曼滤波器对所述视频帧的方向四元数进行平滑处理;

运动补偿模块,用于计算平滑处理前后的所述视频帧的方向四元数之间的旋转差,利用所述旋转差对所述视频帧进行运动补偿,得到稳定后的视频帧。

本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述的视频运动平滑处理方法。

本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述的视频运动平滑处理方法。

本发明提供的一种视频运动平滑处理方法、装置、设备和存储介质,通过获取目标物的运动数据和图像数据,对运动数据和图像数据进行时间同步对齐;运动数据包括角速度和加速度;利用互补滤波器结合角速度和加速度,估计目标物运动的方向四元数;利用球面线性插值算法计算图像数据中的视频帧的方向四元数;利用无迹卡尔曼滤波器对视频帧的方向四元数进行平滑处理;计算平滑处理前后的视频帧的方向四元数之间的旋转差,利用旋转差对视频帧进行运动补偿,得到稳定后的视频帧。通过上述方法的应用,利用无迹卡尔曼滤波器对带抖动的视频帧进行平滑处理,实现了对视频帧实时平滑处理,为实时视频稳像提供了基础。

附图说明

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

图1是本发明提供的视频运动平滑处理方法的流程示意图;

图2是本发明提供的视频运动平滑处理装置的流程示意图;

图3是本发明提供的电子设备的结构示意图。

附图标记:

31:数据预处理模块;32:互补滤波模块;33:球面线性插值算法模块;34:无迹卡尔曼滤波模块;35:运动补偿模块。

具体实施方式

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

如图1所示,本发明提供的一种视频运动平滑处理方法,包括以下步骤:

S1、获取目标物的运动数据和图像数据,对运动数据和图像数据进行时间同步对齐。运动数据包括角速度和加速度。

具体地,本申请中的运动数据指的是由惯性测量单元(Inertial MeasurementUnit,IMU)采集的运动数据,包括但不限于加速度、角速度、横滚角、俯仰角等数据。本申请中的图像数据指的是由摄像设备(例如摄像机、行车记录仪等)拍摄的图像数据。应当理解的是,本申请中采集运动数据和图像数据的设备可以为同一个(例如集成有IMU的摄像机),也可以为不同的设备(例如安装于车体上的IMU以及安装于驾驶室内的行车记录仪)。

在采集到图像数据和运动数据之后,需要对图像数据和运动数据进行时间同步对齐。摄像设备在采集图像数据时,每一帧视频帧均有对应的采样时间戳,IMU在采集运动数据时,运动数据也有对应的采样时间戳。采样时间戳中包含数据被采集时的时间。在本发明的一种可选的实施例中,对图像数据和运动数据进行时间同步对齐包括:计算运动数据的采样时间戳和图像数据的采样时间戳之间的时间差,将该时间差增加到图像数据的采样时间戳上。例如,运动数据的采样时间戳为13:24:03:500,即13点24分3秒500毫秒,图像数据的采样时间戳为13:24:04:100,即13点24分4秒100毫秒,则时间差为600毫秒,将每帧视频帧的采样时间戳均增加600毫秒,即可保证在相同的时间下图像数据和运动数据对齐。

S2、利用互补滤波器结合角速度和加速度,估计目标物运动的方向四元数。

在本发明的一种可选的实施例中,采用的互补滤波器为非线性互补滤波器,用于对IMU采集的到的运动数据(包括角速度和加速度)进行惯性积分。利用互补滤波器结合角速度和加速度,估计目标物运动的方向四元数,包括以下步骤:

S21、根据加速度的归一化后的加速度矢量计算初始四元数。

具体地,根据归一化后的加速度矢量acc的第三维的正负值来计算初始四元数,计算公式如下:

其中,acc

S22、在目标物处于静止状态的情况下,计算陀螺零偏。

陀螺零偏为采集角速度的陀螺仪的陀螺零偏。

具体地,根据去除重力后的加速度模长、去除陀螺零偏后的角速度矢量以及前后角速度变化量是否超过各自的阈值来检查当前车辆是否处于静止状态,在其中去除重力后的加速度模长、去除陀螺零偏后的角速度矢量以及前后角速度变化量均未超过其对应的阈值的情况下,判定目标物处于静止状态。上述的各自的阈值可根据实际情况进行设置,本发明对此不做限制。在目标物处于静止状态的情况下,计算惯性测量单元的陀螺零偏,即计算陀螺仪的陀螺零偏。

S23、基于初始四元数的导数积分和去除陀螺零偏后的角速度,计算得到预测的方向四元数。

具体地,去除陀螺零偏后的角速度为gyr

其中,

S24、基于预测的方向四元数,将加速度转换到全局坐标系下,并计算全局坐标系下的加速度与真实重力矢量之间的旋转修正量。

具体地,利用预测得到的方向四元数q

S25、根据旋转修正量,对预测的方向四元数进行修正。

具体地,利用四元数乘法,将预测的方向四元数与旋转修正量相乘,即

S3、利用球面线性插值算法计算图像数据中的视频帧的方向四元数。

具体地,通过图像数据中的视频帧的采样时间戳t匹配前后相邻的两个运动数据,两个运动数据的时间戳分别为t

其中,q

S4、利用无迹卡尔曼滤波器对视频帧的方向四元数进行平滑处理。

在该步骤中,以视频帧的方向四元数序列作为输入,利用无迹卡尔曼滤波器执行3D旋转平滑估计,去除目标物运动过程中引入的抖动分量,得到稳定的运动轨迹。具体地,包括以下步骤:

S41、利用平滑处理后的方向四元数和角速度定义无迹卡尔曼滤波器的状态变量。

无迹卡尔曼滤波器的状态变量的位数L=7;

其中,

设置无迹卡尔曼滤波器中初始的状态协方差矩阵P、过程噪声协方差矩阵Q和观测噪声协方差矩阵R。在本方发明的一种优选的实施例中,将通过离线全局平滑方法得到的去抖后的所有视频帧的方向四元数序列作为真值,将真值作为目标物运动过程中的意向运动,学习出观测噪声协方差矩阵R中的抖动分量R

S42、在角速度恒定的假设条件下,构建运动方程:

其中,q

S43、将视频帧的预测的方向四元数和角速度作为观测数据,构建观测模型,该观测模型为非线性观测模型:

其中,

S44、通过无迹变换生成西格玛点集。

具体地,将上一次后验更新后的估计的状态协方差矩阵P

S45、利用S42中的运动方程对西格玛点集{X

S46、将步骤S45中预测的协方差矩阵P

再利用步骤S43中构建的非线性观测模型获取带抖动的西格玛集合{Z

S47、将视频帧的预测的方向四元数以及角速度作为观测值组合成

更新后的状态向量

S5、计算平滑处理前后的视频帧的方向四元数之间的旋转差,利用旋转差对视频帧进行运动补偿,得到稳定后的视频帧。

将平滑处理前后的所述视频帧的方向四元数之间的旋转差值作为旋转矩阵,旋转差值是由平滑处理后的四元数的逆与平滑处理前的四元数进行相乘得到旋转差值,即

综上所述,本发明提供的一种视频运动平滑处理方法,基于互补滤波器与无迹卡尔曼滤波器的联合三维旋转平滑方法,能够提供比陀螺仪与加速度计读数简单直接积分更加稳定、准确的方向估计,并且通过利用无迹卡尔曼滤波器对带抖动的视频帧进行平滑处理,仅利用当前帧以及历史帧运动数据实现了对视频帧实时平滑处理,实时性强,为实时视频稳像提供了基础。

本发明还提供了一种视频运动平滑处理装置,下面对本发明提供的视频运动平滑处理装置进行描述,下文描述的视频运动平滑处理装置与上文描述的视频运动平滑处理方法可相互对应参照。

如图2所示,本发明提供的一种视频运动平滑处理装置,包括数据预处理模块21、互补滤波模块22、球面线性插值算法模块23、无迹卡尔曼滤波模块24和运动补偿模块25。

数据预处理模块21,用于获取目标物的运动数据和图像数据,对运动数据和图像数据进行时间同步对齐;运动数据包括角速度和加速度;

互补滤波模块22,用于利用互补滤波器结合角速度和加速度,估计目标物运动的方向四元数;

球面线性插值算法模块23,用于利用球面线性插值算法计算图像数据中的视频帧的方向四元数;

无迹卡尔曼滤波模块24,用于利用无迹卡尔曼滤波器对视频帧的方向四元数进行平滑处理;

运动补偿模块25,用于计算平滑处理前后的视频帧的方向四元数之间的旋转差,利用旋转差对视频帧进行运动补偿,得到稳定后的视频帧。

图3示例了一种电子设备的实体结构示意图,如图3所示,该电子设备可以包括:处理器(processor)310、通信接口(Communications Interface)320、存储器(memory)330和通信总线340,其中,处理器310,通信接口320,存储器330通过通信总线340完成相互间的通信。处理器310可以调用存储器330中的逻辑指令,以执行上文描述的任一种视频运动平滑处理方法,该方法包括:

获取目标物的运动数据和图像数据,对所述运动数据和所述图像数据进行时间同步对齐;所述运动数据包括角速度和加速度。

利用互补滤波器结合所述角速度和所述加速度,估计所述目标物运动的方向四元数。

利用球面线性插值算法计算所述图像数据中的视频帧的方向四元数。

利用无迹卡尔曼滤波器对所述视频帧的方向四元数进行平滑处理。

计算平滑处理前后的所述视频帧的方向四元数之间的旋转差,利用所述旋转差对所述视频帧进行运动补偿,得到稳定后的视频帧。

此外,上述的存储器330中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上文描述的任一种视频运动平滑处理方法,该方法包括:

获取目标物的运动数据和图像数据,对所述运动数据和所述图像数据进行时间同步对齐;所述运动数据包括角速度和加速度。

利用互补滤波器结合所述角速度和所述加速度,估计所述目标物运动的方向四元数。

利用球面线性插值算法计算所述图像数据中的视频帧的方向四元数。

利用无迹卡尔曼滤波器对所述视频帧的方向四元数进行平滑处理。

计算平滑处理前后的所述视频帧的方向四元数之间的旋转差,利用所述旋转差对所述视频帧进行运动补偿,得到稳定后的视频帧。

又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上文描述的任一种视频运动平滑处理方法,该方法包括:

获取目标物的运动数据和图像数据,对所述运动数据和所述图像数据进行时间同步对齐;所述运动数据包括角速度和加速度。

利用互补滤波器结合所述角速度和所述加速度,估计所述目标物运动的方向四元数。

利用球面线性插值算法计算所述图像数据中的视频帧的方向四元数。

利用无迹卡尔曼滤波器对所述视频帧的方向四元数进行平滑处理。

计算平滑处理前后的所述视频帧的方向四元数之间的旋转差,利用所述旋转差对所述视频帧进行运动补偿,得到稳定后的视频帧。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

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

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

相关技术
  • 基于视频处理方法及装置、视频设备及存储介质
  • 视频处理方法、装置、计算机设备和存储介质
  • 视频处理方法、装置、电子设备及存储介质
  • 视频处理方法、装置、电子设备及存储介质
  • 视频处理方法、装置、电子设备及存储介质
  • 一种视频图像的运动平滑处理方法、装置、设备及存储介质
  • 舵机运动的平滑处理方法、装置、终端设备和存储介质
技术分类

06120116501334