CN114979456B - 视频数据的防抖处理方法、装置、计算机设备和存储介质 - Google Patents
视频数据的防抖处理方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN114979456B CN114979456B CN202110215905.0A CN202110215905A CN114979456B CN 114979456 B CN114979456 B CN 114979456B CN 202110215905 A CN202110215905 A CN 202110215905A CN 114979456 B CN114979456 B CN 114979456B
- Authority
- CN
- China
- Prior art keywords
- camera
- angular velocity
- rotation vector
- video data
- coordinate system
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/80—Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
-
- 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
-
- 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/682—Vibration or motion blur correction
Abstract
本申请涉及一种视频数据的防抖处理方法、装置、计算机设备和存储介质。方法包括:获取摄像头采集的视频数据,以及获取惯性测量单元的测量数据,测量数据包括角速度测量值;根据视频数据计算摄像头在世界坐标系下的旋转向量;对摄像头在世界坐标系下的旋转向量进行拟合处理,得到摄像头的角速度;根据测量数据计算惯性测量单元在世界坐标系下的旋转向量;对惯性测量单元在世界坐标系下的旋转向量进行拟合处理,得到惯性测量单元对应的角速度计算值;根据角速度测量值、摄像头的角速度以及角速度计算值对视频数据进行防抖处理。采用本方法能够以在线的方式准确计算摄像头与惯性测量单元之间的延时,有效提高了视频数据的清晰度。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种视频数据的防抖处理方法、装置、计算机设备和存储介质。
背景技术
随着计算机技术的不断发展,各种具有不同功能的智能终端的出现使得人们的生活越来越丰富多样、也越来越便捷。其中,具有摄像头的智能终端等使得人们可以随时随地拍摄图像或视频来记录生活。但是,在视频拍摄过程中,由于智能终端系统的自身原因,摄像头启动拍摄的时刻与惯性测量单元(Inertial measurement unit,简称IMU)启动记录运动状态的时刻之间相差一个延时,导致视频数据存在抖动。为了防止视频数据抖动,需要计算摄像头与惯性测量单元之间的延时。传统方式中是采用离线的时间标定算法如kalibr算法来计算摄像头与惯性测量单元之间的延时。
然而传统方式需要制定标定物,且计算得到的延时是固定的,在实际应用时,当拍摄不同的视频时,摄像头与惯性测量单元之间的延时可能会发生变化,通过传统方式计算延时会致使延时计算准确性较低,无法得到清晰的视频数据。因此,如何通过在线的方式计算摄像头与惯性测量单元之间的延时,以提高视频数据的清晰度称为目前需要解决的一个技术问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够通过在线的方式计算摄像头与惯性测量单元之间的延时,以提高视频数据的清晰度的视频数据的防抖方法、装置、计算机设备和存储介质。
一种视频数据的防抖处理方法,所述方法包括:
获取摄像头采集的视频数据,以及获取惯性测量单元的测量数据,所述测量数据包括角速度测量值;
根据所述视频数据计算所述摄像头在世界坐标系下的旋转向量;
对所述摄像头在世界坐标系下的旋转向量进行拟合处理,得到所述摄像头的角速度;
根据所述测量数据计算所述惯性测量单元在世界坐标系下的旋转向量;
对所述惯性测量单元在世界坐标系下的旋转向量进行拟合处理,得到所述惯性测量单元对应的角速度计算值;
根据所述角速度测量值、所述摄像头的角速度以及所述角速度计算值对所述视频数据进行防抖处理。
在其中一个实施例中,所述视频数据包括多帧图像,所述对所述摄像头在世界坐标系下的旋转向量进行拟合处理,得到所述摄像头的角速度包括:
根据所述摄像头在世界坐标系下的旋转向量计算每帧图像对应的目标旋转向量,得到所述摄像头对应的连续旋转向量;
将所述连续旋转向量进行拟合计算,得到所述摄像头的角速度。
在其中一个实施例中,所述根据所述摄像头在世界坐标系下的旋转向量计算每帧图像对应的目标旋转向量,得到所述摄像头对应的连续旋转向量包括:
获取当前帧图像,在所述摄像头在世界坐标系下的旋转向量中获取所述当前帧图像对应的原始旋转向量以及上一帧图像对应的目标旋转向量;
根据所述当前帧图像对应的原始旋转向量以及所述上一帧图像对应的目标旋转向量计算所述当前帧图像对应的目标旋转向量;
将下一帧图像更新为所述当前帧图像,返回所述在所述摄像头在世界坐标系下的旋转向量中获取所述当前帧图像对应的原始旋转向量以及上一帧图像对应的目标旋转向量的步骤,直至计算得到最后一帧图像对应的目标旋转向量,得到所述摄像头对应的连续旋转向量。
在其中一个实施例中,所述根据所述角速度测量值、所述摄像头的角速度以及所述角速度计算值对所述视频数据进行防抖处理包括:
根据所述角速度测量值以及所述摄像头的角速度计算第一延迟数据;
根据所述角速度测量值以及所述角速度计算值计算第二延迟数据;
根据所述第一延迟数据以及所述第二延迟数据计算所述视频数据对应的目标延迟数据;
根据所述目标延迟数据对所述视频数据进行防抖处理。
在其中一个实施例中,所述根据所述角速度测量值以及所述摄像头的角速度计算第一延迟数据包括:
对所述角速度测量值进行重采样处理,得到重采样后的角速度测量值;
将所述重采样后的角速度测量值与所述摄像头的角速度进行互相关运算,得到第一平移量;
对所述第一平移量进行优化处理,得到第一延迟数据。
在其中一个实施例中,所述根据所述角速度测量值以及所述角速度计算值计算第二延迟数据包括:
对所述角速度测量值进行重采样处理,得到重采样后的角速度测量值;
将所述重采样后的角速度测量值与所述角速度计算值进行互相关运算,得到第二平移量;
对所述第二平移量进行优化处理,得到第二延迟数据。
在其中一个实施例中,所述根据所述第一延迟数据以及所述第二延迟数据计算所述视频数据对应的目标延迟数据包括:
将所述第一延迟数据与所述第二延迟数据进行作差处理,计算得到所述视频数据对应的目标延迟数据。
在其中一个实施例中,所述方法还包括:
根据所述测量数据在所述视频数据中确定非急速旋转视频段;
在所述非急速旋转视频段中选取目标视频段;
根据所述目标视频段计算所述摄像头在世界坐标系下的旋转向量。
一种视频数据的防抖处理装置,所述装置包括:
获取模块,用于获取摄像头采集的视频数据,以及获取惯性测量单元的测量数据,所述测量数据包括角速度测量值;
第一计算模块,用于根据所述视频数据计算所述摄像头在世界坐标系下的旋转向量;
第一拟合模块,用于对所述摄像头在世界坐标系下的旋转向量进行拟合处理,得到所述摄像头的角速度;
第二计算模块,用于根据所述测量数据计算所述惯性测量单元在世界坐标系下的旋转向量;
第二拟合模块,用于对所述惯性测量单元在世界坐标系下的旋转向量进行拟合处理,得到所述惯性测量单元对应的角速度计算值;
防抖模块,用于根据所述角速度测量值、所述摄像头的角速度以及所述角速度计算值对所述视频数据进行防抖处理。
在其中一个实施例中,所述视频数据包括多帧图像,所述第一拟合模块还用于根据所述摄像头在世界坐标系下的旋转向量计算每帧图像对应的目标旋转向量,得到所述摄像头对应的连续旋转向量;将所述连续旋转向量进行拟合计算,得到所述摄像头的角速度。
一种计算机设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述各个方法实施例中的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述各个方法实施例中的步骤。
上述视频数据的防抖处理方法、装置、计算机设备和存储介质,获取摄像头采集的视频数据,以及获取惯性测量单元的测量数据,测量数据包括角速度测量值,根据视频数据计算摄像头在世界坐标系下的旋转向量,对摄像头在世界坐标系下的旋转向量进行拟合处理,得到摄像头的角速度,无需制作标定物,可以在拍摄不同的视频时,根据视频数据计算摄像头在世界坐标系下的旋转向量,并计算摄像头的角速度。根据测量数据计算惯性测量单元在世界坐标系下的旋转向量,对惯性测量单元在世界坐标系下的旋转向量进行拟合处理,得到惯性测量单元对应的角速度计算值,有利于后续计算延迟误差。由于摄像头的角速度是在视频拍摄过程中计算得到的,惯性测量单元对应的角速度计算值用于计算延迟误差,根据角速度测量值、摄像头的角速度以及角速度计算值对视频数据进行防抖处理,能够在拍摄不同的视频时,分别计算摄像头与惯性测量单元之间的延时,同时能够消除延迟误差,实现以在线的方式准确计算摄像头与惯性测量单元之间的延时,有效提高了视频数据的清晰度。
附图说明
图1为一个实施例中视频数据的防抖处理方法的应用环境图;
图2为一个实施例中视频数据的防抖处理方法的流程示意图;
图3为一个实施例中对摄像头在世界坐标系下的旋转向量进行拟合处理,得到摄像头的角速度步骤的流程示意图;
图4为一个实施例中摄像头在世界坐标系下的旋转向量的示意图;
图5为一个实施例中转换后得到的连续的旋转向量的示意图;
图6为一个实施例中图像区域的示意图;
图7为一个实施例中视频数据的防抖处理装置的结构框图;
图8为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种元件和参数,但这些元件和参数不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分、或者将一个参数和另一个参数区分。举例来说,在不脱离本申请的范围的情况下,可以将第一延迟数据称为第二延迟数据,且类似地,可将第二延迟数据称为第一延迟数据。第一延迟数据和第二延迟数据两者都是延时数据,但其不是同一延迟数据。
本申请提供的视频数据的防抖处理方法,可以应用于如图1所示的应用环境中。其中,终端102中安装有摄像头104和惯性测量单元106。当用户启动摄像头104进行拍摄时,终端102获取摄像头104采集的视频数据,以及获取惯性测量单元106的测量数据,测量数据包括角速度测量值,终端102根据视频数据计算摄像头104在世界坐标系下的旋转向量,对摄像头104在世界坐标系下的旋转向量进行拟合处理,得到摄像头104的角速度,根据测量数据计算惯性测量单元106在世界坐标系下的旋转向量,根据惯性测量单元106在世界坐标系下的旋转向量进行拟合处理,得到惯性测量单元106对应的角速度计算值,进而根据角速度测量值、摄像头104的角速度以及角速度计算值对视频数据进行防抖处理。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。
在一个实施例中,如图2所示,提供了一种视频数据的防抖处理方法,以该方法应用于图1中的终端为例进行说明,包括以下步骤:
步骤202,获取摄像头采集的视频数据,以及获取惯性测量单元的测量数据,测量数据包括角速度测量值。
终端中预先安装有摄像头和惯性测量单元(Inertial measurement unit,简称IMU)。其中,摄像头用于拍摄图片或者视频,摄像头可以是黑白摄像头、彩色摄像头、广角摄像头、或长焦摄像头等中的一种或多种。摄像头可以是内置于电子设备的摄像头,也可以是外置摄像头。惯性测量单元用于记录终端的运动状态,惯性测量单元可以包括陀螺仪和加速度计,陀螺仪还可以称为角速度传感器,用于测量终端偏转、倾斜时的角速度。加速度计用于测量终端的加速度,从而通过对角速度和加速度进行积分计算,得到终端的运动状态。
在用户启动终端中的摄像头进行视频拍摄的过程中,摄像头可以将采集到的视频数据发送至终端,惯性测量单元也会将测量得到的测量数据发送至终端。视频数据是指连续的图像序列,视频数据可以包括连续多帧在时间上存在先后顺序的图像。帧是视频数据中的最小视觉单元,视频数据中的每一帧可以对应一个图像。视频数据可以是指摄像头实时采集的视频流,也可以是采集到的包含丰富纹理场景,且不包含急速转弯的视频段。测量数据可以包括角速度测量值以及加速度测量值。角速度测量值是通过惯性测量单元中的陀螺仪测量得到的。角速度测量值是指终端在单位时间内转过的角度以及转动的方向。角速度测量值越大,表示终端转动的角度越大,转动的方向越大,则终端的抖动越大。
步骤204,根据视频数据计算摄像头在世界坐标系下的旋转向量。
视频数据可以包括多帧图像,终端在获取到摄像头发送的视频数据后,对视频数据进行解析,得到视频数据中的多帧图像。终端计算每帧图像对应的摄像头在世界坐标系下的旋转向量。具体的,终端可以采用现有的SLAM(Simultaneous Localization andMapping,同步定位与建图)算法提取各帧图像的特征点,得到各帧图像的特征点以及特征点的像素坐标。其中,特征点可以是ORB(Oriented FAST and Rotated BRIEF,尺度不变)特征点。从而根据像素坐标与世界坐标之间的转换关系将各帧图像的特征点的像素坐标转换为世界坐标,进而采用SLAM算法根据各帧图像的特征点的世界坐标计算得到摄像头在世界坐标下的旋转向量。例如,现有的视觉SLAM算法可以包括ORB-SLAM2算法、ORB-SLAM算法、RTAB-SLAM算法、ISD-SLAM算法、DVO-SLAM算法、SVO算法等中的至少一种。
终端可以将第一帧图像对应的相机坐标系确定为世界坐标系。每帧图像对应的摄像头在世界坐标系下的旋转向量是指摄像头在采集每帧图像时,在世界坐标下的旋转向量。世界坐标系是指三维世界坐标系,用以描述三维空间中物体的绝对坐标。相机坐标系是指以摄像头(相机)的光心作为原点,Zc轴与相机光轴重合,并且垂直于成像平面,且取摄影方向为正方向,Xc轴、Yc轴分别与图像物理坐标系的x轴、y轴平行的坐标系。可以将Xc、Yc轴和Zc轴称为摄像轴。旋转向量是指摄像头的相机坐标转换到世界坐标系的旋转向量。旋转向量是指方向为旋转轴,大小为旋转角的向量,表示摄像头在世界坐标系下的旋转角度。旋转向量可以是1×3的矢量。通过计算每帧图像对应的摄像头在世界坐标系下的旋转向量,得到每帧图像对应的时间戳ti,以及每帧图像对应的旋转向量vi。
在其中一个实施例中,由于摄像头采集的视频数据中可能包含急速转弯视频段或者纹理场景不够丰富的视频段,会导致计算得到的摄像头在世界坐标系下的旋转向量不够准确。终端可以在计算摄像头在世界坐标系下的旋转向量之前,在视频数据中选取包含丰富纹理场景,且不包含急速转弯的视频段,从而根据选取的视频段计算摄像头在世界坐标系下的旋转向量,由此提高了摄像头在世界坐标系下的旋转向量的准确性。
步骤206,对摄像头在世界坐标系下的旋转向量进行拟合处理,得到摄像头的角速度。
对于摄像头的同一个旋转动作,可能会对应多个旋转向量,例如,旋转向量(2nπ+θ)*(nx,ny,nz),n=0,±1对应同一个旋转动作,其中,n表示用于计算旋转向量的整数值,θ表示旋转向量的旋转角,(nx,ny,nz)表示旋转轴向量,即以该向量为旋转轴进行旋转。因此,终端根据视频数据计算得到的摄像头在世界坐标系下的旋转向量在时间轴上会出现不连续的情况,即在时间轴上同一时间戳可能对应多个旋转向量。终端可以将摄像头在世界坐标系下的旋转向量转换为连续的旋转向量,从而对转换得到的连续的旋转向量进行拟合处理,得到拟合后的曲线,进而根据拟合后的曲线计算得到摄像头在每个时间戳对应的角速度。
在其中一个实施例中,终端可以采用B样条曲线方法、多项式拟合方法、贝塞尔曲线拟合方法等多种拟合方法中的任意一种对连续的旋转向量进行拟合,从而根据拟合后得到的曲线计算摄像头在每个时间戳对应的角速度。
步骤208,根据测量数据计算惯性测量单元在世界坐标系下的旋转向量。
步骤210,对惯性测量单元在世界坐标系下的旋转向量进行拟合处理,得到惯性测量单元对应的角速度计算值。
测量数据可以包括惯性测量单元测量得到的角速度测量值和加速度测量值。终端对角速度测量值和加速度测量值进行积分运算,得到惯性测量单元在世界坐标系下的旋转向量。惯性测量单元在世界坐标系下的旋转向量可以用于表示惯性测量单元在世界坐标系下的旋转。在其中一个实施例中,终端可以采用现有的IMU预积分方式计算惯性测量单元在世界坐标系下的旋转向量。例如,现有的IMU与方式可以是扩展卡尔曼滤波算法、okvis算法、vins-mono算法等中的至少一种。
在计算得到惯性测量单元在世界坐标下的旋转向量之后,终端可以按照上述对摄像头在世界坐标系下的旋转向量进行拟合处理的步骤对惯性测量单元在世界坐标系下的旋转向量进行拟合处理,得到惯性测量单元对应的角速度计算值。
在其中一个实施例中,终端可以在获取到摄像头采集的视频数据,以及获取惯性测量单元的测量数据后,同时计算摄像头在世界坐标系下的旋转向量,以及惯性测量单元在世界坐标系下的旋转向量,并分别对摄像头和惯性测量单元在世界坐标系下的旋转向量进行拟合处理,得到摄像头的角速度和惯性测量单元对应的角速度计算值。也可以按照先后顺序依次计算摄像头的角速度和惯性测量单元对应的角速度计算值。此处对摄像头的角速度和惯性测量单元对应的角速度计算值的计算顺序不作限定。
步骤212,根据角速度测量值、摄像头的角速度以及角速度计算值对视频数据进行防抖处理。
由于摄像头和惯性测量单元连接在同一刚体上,摄像头和惯性测量单元对应的角速度的模长或大小应该是一致的,但由于系统原因,摄像头与惯性测量单元相对应数据之间在时间轴上存在一个延迟,可以根据角速度测量值、摄像头的角速度以及角速度计算值计算摄像头与惯性测量单元在时间轴上的延迟数据,从而根据延迟数据将视频数据与惯性测量单元的测量数据进行对齐,实现对视频数据进行防抖处理。
在其中一个实施例中,根据角速度测量值、摄像头的角速度以及角速度计算值对视频数据进行防抖处理包括:根据角速度测量值以及摄像头的角速度计算第一延迟数据;根据角速度测量值以及角速度计算值计算第二延迟数据;根据第一延迟数据以及第二延迟数据计算视频数据对应的目标延迟数据;根据目标延迟数据对视频数据进行防抖处理。
由于终端中安装的摄像头和惯性测量单元对应的角速度的模长或大小应该是一致的,但由于系统原因,摄像头与惯性测量单元相对应数据之间在时间轴上存在一个延迟,终端可以计算惯性测量单元的角速度测量值与摄像头的角速度在时间轴上的平移量,将该平移量确定为第一延迟数据。由于在计算第一延迟数据的过程中会对惯性测量单元的角速度测量值进行积分处理,可能会导致计算得到的第一延迟数据存在延迟误差,为了减少延迟误差,终端可以计算惯性测量单元的角速度计算值与惯性测量单元的角速度测量值在时间轴上的平移量,并将该平移量确定为第二延迟数据,第二延迟数据用于表示延迟误差。第一延迟数据与第二延迟数据的计算过程可以是相同的,因此第二延迟数据的计算过程可以看作是将第一延时数据计算过程中摄像头的角速度替换为角速度计算值进行再一次处理的过程。终端从而根据第一延迟数据以及第二延迟数据进行计算,得到视频数据对应的目标延迟数据,实现以在线的方式计算摄像头与惯性测量单元之间的延时,进而根据目标延迟数据将视频数据与惯性测量单元的测量数据进行对齐,完成防抖处理,提高了视频数据的清晰度。
在其中一个实施例中,根据第一延迟数据以及第二延迟数据计算视频数据对应的目标延迟数据包括:将第一延迟数据与第二延迟数据进行作差处理,计算得到视频数据对应的目标延迟数据。第一延时数据为惯性测量单元的角速度测量值与摄像头的角速度在时间轴上的平移量,第二延迟数据为延迟误差,终端将第一延时数据减去第二延迟数据,从而得到目标延迟数据,能够准确对齐视频数据与惯性测量单元的测量数据。
在本实施例中,获取摄像头采集的视频数据,以及获取惯性测量单元的测量数据,测量数据包括角速度测量值,根据视频数据计算摄像头在世界坐标系下的旋转向量,对摄像头在世界坐标系下的旋转向量进行拟合处理,得到摄像头的角速度,无需制作标定物,可以在拍摄不同的视频时,根据视频数据计算摄像头在世界坐标系下的旋转向量,并计算摄像头的角速度。根据测量数据计算惯性测量单元在世界坐标系下的旋转向量,对惯性测量单元在世界坐标系下的旋转向量进行拟合处理,得到惯性测量单元对应的角速度计算值,有利于后续计算延迟误差。由于摄像头的角速度是在视频拍摄过程中计算得到的,惯性测量单元对应的角速度计算值用于计算延迟误差,根据角速度测量值、摄像头的角速度以及角速度计算值对视频数据进行防抖处理,能够在拍摄不同的视频时,分别计算摄像头与惯性测量单元之间的延时,同时能够消除延迟误差,实现以在线的方式准确计算摄像头与惯性测量单元之间的延时,有效提高了视频数据的清晰度。
在一个实施例中,如图3所示,对摄像头在世界坐标系下的旋转向量进行拟合处理,得到摄像头的角速度的步骤包括:
步骤302,根据摄像头在世界坐标系下的旋转向量计算每帧图像对应的目标旋转向量,得到摄像头对应的连续旋转向量。
步骤304,将连续旋转向量进行拟合计算,得到摄像头的角速度。
视频数据包括多帧图像。终端计算得到的摄像头在世界坐标系下的旋转向量中包括每帧图像对应的旋转向量。终端将计算得到的摄像头在世界坐标系下的旋转向量转换为连续的旋转向量。连续的旋转向量是指在时间轴上的旋转向量均为连续的。具体的,每帧图像存在一个对应的时间戳,针对每个时间戳,终端可以在摄像头在世界坐标系下的旋转向量中确定该时间戳对应的目标旋转向量,时间戳对应的目标旋转向量可以表示该时间戳的相应帧图像对应的目标旋转向量。终端在计算得到多帧图像对应的目标旋转向量后,即可得到连续的旋转向量。如图4所示,为摄像头在世界坐标系下的旋转向量的示意图,其中,时间序列是指时间轴,在时间轴上可以确定每帧图像对应的时间戳。旋转向量是由用相应帧图像的时间戳的x轴坐标、y轴坐标和z轴坐标构成的三维向量进行表示的。如图5所示,为一个实施例中转换后得到的连续的旋转向量。
终端计算得到的连续旋转向量中每个旋转向量存在对应的时间戳,连续旋转向量可以用V={v0,v1,v2,…vi}来表示,连续旋转向量对应的时间戳可以用T={t0,t1,t2,…ti}来表示。终端可以采用B样条曲线方法、多项式拟合方法、贝塞尔曲线拟合方法等多种拟合方法中的任意一种对连续的旋转向量进行拟合,从而根据拟合后得到的曲线计算摄像头在每个时间戳对应的角速度。具体以采用B样条曲线算法对连续旋转向量进行拟合为例进行说明,终端根据连续旋转向量、连续旋转向量对应的时间戳以及预设函数对连续旋转向量进行拟合,得到拟合后的曲线,从而根据拟合后的曲线计算摄像头的角速度。其中,预设函数可以是k阶B样条基函数。拟合后的曲线为一条光滑的k阶B样条曲线。拟合后的k阶B样条曲线,可以表示为如下形式:
其中,V(t)表示拟合后的k阶B样条曲线,vi表示控制点,即上述的旋转向量,Vi,k(t)表示k阶B样条基函数。
Vi,k(t)采用如下递归公式进行计算:
其中,ti表示节点,即上述的时间戳。i表示数量,第i个。
基于拟合后的B样条曲线,对旋转向量求一阶导数,最终得到的得到摄像头的角速度用如下公式所示:
其中,wi表示摄像头的角速度,k表示拟合后的B样条曲线的阶数,ti+k+1、ti+1表示时间戳,vi+1、vi表示旋转向量。
在本实施例中,根据摄像头在世界坐标系下的旋转向量计算每帧图像对应的目标旋转向量,得到摄像头对应的连续旋转向量,将连续旋转向量进行拟合计算,得到摄像头的角速度,通过将不连续的旋转向量转换为连续的旋转向量,有利于对旋转向量进行拟合,通过对连续旋转向量进行拟合计算,能够准确计算得到摄像头在每个时间戳的角速度。
在一个实施例中,根据摄像头在世界坐标系下的旋转向量计算每帧图像对应的目标旋转向量,得到摄像头对应的连续旋转向量包括:获取当前帧图像,在摄像头在世界坐标系下的旋转向量中获取当前帧图像对应的原始旋转向量以及上一帧图像对应的目标旋转向量;根据当前帧图像对应的原始旋转向量以及上一帧图像对应的目标旋转向量计算当前帧图像对应的目标旋转向量;将下一帧图像更新为当前帧图像,返回在摄像头在世界坐标系下的旋转向量中获取当前帧图像对应的原始旋转向量以及上一帧图像对应的目标旋转向量的步骤,直至计算得到最后一帧图像对应的目标旋转向量,得到摄像头对应的连续旋转向量。
原始旋转向量是指根据视频数据计算得到,未经转换处理的旋转向量。目标旋转向量是指经过转换处理,以保证得到的旋转向量为连续性的旋转向量。
终端可以根据多帧图像对应的时间戳的先后顺序依次计算每帧图像对应的目标旋转向量。具体的,终端获取当前帧图像,根据当前帧图像对应的时间戳获取当前帧图像对应的原始旋转向量。在获取当前帧图像之前,上一帧图像对应的原始旋转向量已完成转换处理,上一帧图像对应的旋转向量为目标旋转向量。终端获取上一帧图像对应的目标旋转向量。终端根据第一关系式计算原始旋转向量对应的旋转角,根据原始旋转向量、原始旋转向量对应的旋转角以及第二关系式计算原始旋转向量对应的旋转轴,从而根据原始旋转向量对应的旋转角、原始旋转向量对应的旋转轴、上一帧图像对应的目标旋转向量以及第三关系式计算原始旋转向量对应的目标整数值,目标整数值用于计算当前帧图像对应的目标旋转向量。终端进而根据目标整数值、原始旋转向量对应的旋转角、原始旋转向量对应的旋转轴和第四关系式计算当前帧图像对应的目标旋转向量。
第一关系式是指原始旋转向量对应的旋转角的计算公式,如下所示:
θi=norm(vi) (5)
其中,θi表示原始旋转向量对应的旋转角,norm()表示范数函数,vi表示原始旋转向量,i表示数量,第i个。
第二关系式是指原始旋转向量对应的旋转轴的计算公式,如下所示:
其中,Ni表示原始旋转向量对应的旋转轴。
第三关系式是指目标整数值的计算公式,如下所示:
第四关系式是指当前帧图像对应的旋转向量的计算公式,如下所示:
v′i=(2niπ+θi)*Ni (8)
其中,v′i表示当前帧图像对应的目标旋转向量。
终端继续获取下一帧图像,将下一帧图像更新为当前帧图像,返回在摄像头在世界坐标系下的旋转向量中获取当前帧图像对应的原始旋转向量以及上一帧图像对应的目标旋转向量的步骤,即根据上述公式(5)-(8)计算下一帧图像对应的目标旋转向量,直至计算得到最后一帧图像对应的目标旋转向量,此时终端得到摄像头对应的连续旋转向量。
在本实施例中,获取当前帧图像,根据当前帧图像对应的原始旋转向量以及上一帧图像对应的目标旋转向量计算当前帧图像对应的目标旋转向量,将下一帧图像更新为当前帧图像,重复上述计算目标旋转向量的步骤,直至计算得到最后一帧图像对应的目标旋转向量,得到摄像头对应的连续旋转向量。通过计算每帧图像对应的时间戳的目标旋转向量,使得摄像头的每一个旋转均可用唯一的一个旋转向量来表示,从而确保旋转向量在时间轴上的连续性。
在一个实施例中,根据角速度测量值以及摄像头的角速度计算第一延迟数据包括:对角速度测量值进行重采样处理,得到重采样后的角速度测量值;将重采样后的角速度测量值与摄像头的角速度进行互相关运算,得到第一平移量;对第一平移量进行优化处理,得到第一延迟数据。
由于惯性测量单元在测量的过程中,不会完全按照等间隔的方式进行采样。因此,需要对角速度测量值进行等间隔重采样。在其中一个实施例中,重采样的方式可以有多种,例如,多项式插值、分段差值、三次B样条插值等。
终端在得到重采样后的角速度测量值后,计算重采样后的角速度测量值与摄像头的角速度之间的第一延迟数据。具体的,终端可以将重采样后的角速度测量值与摄像头的角速度进行互相关运算,通过使互相关达到最大,来确定该两组角速度在时间轴上的第一平移量。互相关运算的计算公式可以如下所示:
其中,δt0表示第一平移量,ωc(t)表示摄像头在时间戳为t时的角速度,ωi(t+δ)表示惯性测量单元在时间戳为t时的角速度测量值,δ表示重采样后的角速度测量值与摄像头的角速度之间的时间延迟变量,i表示第i个,argmax表示使后面公式达到最大值时的变量的取值,例如,公式(9)中表示达到最大值时,δ的取值。
第一平移量的精度依赖于角速度测量值的采样率。例如,当采样率为500Hz时,采样间隔为2ms,得到的第一平移量最多只能精确到2ms,这个精度是无法用于对视频数据进行防抖处理的,因此需要对第一平移量进行优化,在优化过程中采用的计算公式为:
终端可以将δt0作为δ的初始值代入至上述公式中,并采用现有的非线性优化方法,如高斯牛顿法、梯度下降法、共轭梯度法、LM法(Levenberg-Marquardt,麦夸特法)中的至少一种对上述公式(10)进行求解,得到最终优化后的平移量,作为第一延迟数据。
在本实施例中,对角速度测量值进行重采样处理,得到重采样后的角速度测量值,能够确保后续进行的互相关运算是有效的。将重采样后的角速度测量值与摄像头的角速度进行互相关运算,得到第一平移量,能够快速计算得到摄像头与惯性测量单元之间的延迟。对第一平移量进行优化处理,得到第一延迟数据,能够提高摄像头与惯性测量单元之间的延迟的计算准确性,有效地对视频数据进行防抖处理,从而有效提高了视频数据的清晰度。
在一个实施例中,根据角速度测量值以及角速度计算值计算第二延迟数据包括:对角速度测量值进行重采样处理,得到重采样后的角速度测量值;将重采样后的角速度测量值与角速度计算值进行互相关运算,得到第二平移量;对第二平移量进行优化处理,得到第二延迟数据。
由于在计算第一延迟数据的过程中,对角速度测量值进行积分运算可能会导致存在延迟误差。为了消除延迟误差,终端可以对角速度测量值进行重采样处理,得到重采样后的角速度测量值。在其中一个实施例中,对角速度测量值进行重采样的方式与上述计算第一延迟数据的过程中对角速度测量值进行重采样的方式可以是相同的,例如,可以是多项式插值、分段差值、三次B样条插值法等中的任意一种。
终端在得到重采样后的角速度测量值后,可以根据上述公式(9)将重采样后的角速度测量值与惯性测量单元对应的角速度计算值进行互相关运算,得到第二平移量。此时,δt0表示第二平移量,ωc(t)表示惯性测量单元在时间戳为t时的角速度计算值,ωi(t+δ)表示惯性测量单元在时间戳为t时的角速度测量值。
终端从而根据上述公式(10)对第二平移量进行优化处理,得到第二延迟数据。同样的,终端可以将δt0作为δ的初始值代入至上述公式中,并采用现有的非线性优化方法,如高斯牛顿法、梯度下降法、共轭梯度法、LM法(Levenberg-Marquardt,麦夸特法)中的至少一种对上述公式(10)进行求解,得到计算延迟误差过程中的最终平移量,作为第二延迟数据。
在本实施例中,终端通过对角速度测量值进行重采样处理,将重采样后的角速度测量值与角速度计算值进行互相关运算,得到第二平移量,对第二平移量进行优化处理,得到第二延迟数据,能够得到在计算第一延迟数据的过程中,对角速度测量值进行积分运算导致的延迟误差,有利于准确将目标延迟数据将视频数据与惯性测量单元的测量数据进行对齐,完成视频数据的防抖处理,进一步提高了视频数据的清晰度。
在一个实施例中,上述方法还包括:根据测量数据在视频数据中确定非急速旋转视频段;在非急速旋转视频段中选取目标视频段;根据目标视频段计算摄像头在世界坐标系下的旋转向量。
当视频数据中存在急速旋转视频段或者纹理场景不够丰富时,会影响后续计算得到的摄像头在世界坐标系下的旋转向量的准确性。为了提高摄像头在世界坐标系下的旋转向量的准确性,终端可以根据测量数据在视频数据中确定非急速旋转视频段。例如,非急速旋转视频段可以是摄像头转过的角度小于或者等于45度的视频段。具体的,终端可以先根据测量数据在视频数据中识别急速旋转视频段,从而将急速旋转视频段以外的视频段确定为非急速旋转视频段。在其中一个实施例中,终端可以在1s内的时间窗口内,对测量数据中角速度测量值进行积分运算,得到摄像头转过的角度,判断该角度是否大于45度,若大于45度,则确定摄像头此时处于急速旋转状态。终端可以通过上述方法识别视频数据中的急速旋转视频段,并将急速旋转视频段以外的视频段确定为非急速旋转视频段。
非急速旋转视频段中可以包括多帧图像。目标视频段是指包含丰富纹理场景,且不包含急速转弯的视频段。
终端在非急速旋转视频段内,对每帧图像进行特征点检测,得到检测后的每帧图像。可以采用现有的检测方法对图像进行特征点检测,例如,SURF(Speeded Up RobustFeatures,尺度和旋转不变特征)算法、ORB(Oriented Fast and Rotated Brief,快速定向旋转)算法、SIFT(Scale-invariant feature transform,尺度不变特征变换)算法等中的任意一种。终端可以将检测后的每帧图像进行区域划分,得到多个图像区域。从而终端统计每个图像区域内分布的特征点数量,根据统计的特征点数量计算每帧图像对应的标准差。终端将标准差与阈值进行比较,若标准差小于阈值,则表明当前帧图像对应的拍摄场景为丰富纹理场景。若预设时间段内的标准差均小于阈值,则表明预设时间段内的拍摄场景均为丰富纹理场景,此时停止目标视频段的选取,将预设时间段内的视频数据确定为目标视频段,输出预设时间段对应的开始时间戳以及结束时间戳。若未查找到预设时间段内均满足标准差小于阈值的标准差,则可以查找预设时间段内满足标准差小于阈值的标准差数量最多的视频数据,将查找的视频数据确定为目标视频段。例如,预设时间段可以是15s,若15s内的各帧图像的标准差均小于阈值,则停止目标视频段的选取,将最近15s内的视频数据确定为目标视频段,输出目标视频段对应的开始时间戳以及结束时间戳。若不存在15s内,均满足标准差小于阈值的图像,则查找15s内,满足标准差小于阈值的图像帧数最多的视频数据,将查找到的该15s内的视频数据作为目标视频段,输出目标视频段对应的开始时间戳以及结束时间戳。终端进而根据目标视频段计算摄像头在世界坐标系下的旋转向量。
在其中一个实施例中,可以根据预设时间间隔提取一帧图像进行特征点检测例如,预设时间间隔可以是1s。
在其中一个实施例中,终端可以对检测后的图像进行4次不同的区域划分,得到8个图像区域,图像区域的示意图可以如图6所示。
在本实施例中,通过在非急速旋转视频段中选取目标视频段,根据目标视频段计算摄像头在世界坐标系下的旋转向量。避免了急速旋转视频段或者纹理场景不够丰富的视频数据对摄像头对应的旋转向量的影响,提高了摄像头在世界坐标系下的旋转向量的准确性,从而能够准确计算摄像头与惯性测量单元之间的延迟。
应该理解的是,虽然图2至3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2至3中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图7所示,提供了一种视频数据的防抖处理装置,包括:获取模块702、第一计算模块704、第一拟合模块706、第二计算模块708、第二拟合模块710和防抖模块712,其中:
获取模块702,用于获取摄像头采集的视频数据,以及获取惯性测量单元的测量数据,测量数据包括角速度测量值。
第一计算模块704,用于根据视频数据计算摄像头在世界坐标系下的旋转向量。
第一拟合模块706,用于对摄像头在世界坐标系下的旋转向量进行拟合处理,得到摄像头的角速度。
第二计算模块708,用于根据测量数据计算惯性测量单元在世界坐标系下的旋转向量。
第二拟合模块710,用于对惯性测量单元在世界坐标系下的旋转向量进行拟合处理,得到惯性测量单元对应的角速度计算值。
防抖模块712,用于根据角速度测量值、摄像头的角速度以及角速度计算值对视频数据进行防抖处理。
在一个实施例中,视频数据包括多帧图像,第一拟合模块706还用于根据摄像头在世界坐标系下的旋转向量计算每帧图像对应的目标旋转向量,得到摄像头对应的连续旋转向量;将连续旋转向量进行拟合计算,得到摄像头的角速度。
在一个实施例中,第一拟合模块706还用于获取当前帧图像,在摄像头在世界坐标系下的旋转向量中获取当前帧图像对应的原始旋转向量以及上一帧图像对应的目标旋转向量;根据当前帧图像对应的原始旋转向量以及上一帧图像对应的目标旋转向量计算当前帧图像对应的目标旋转向量;将下一帧图像更新为当前帧图像,返回在摄像头在世界坐标系下的旋转向量中获取当前帧图像对应的原始旋转向量以及上一帧图像对应的目标旋转向量的步骤,直至计算得到最后一帧图像对应的目标旋转向量,得到摄像头对应的连续旋转向量。
在一个实施例中,防抖模块712还用于根据角速度测量值以及摄像头的角速度计算第一延迟数据;根据角速度测量值以及角速度计算值计算第二延迟数据;根据第一延迟数据以及第二延迟数据计算视频数据对应的目标延迟数据;根据目标延迟数据对视频数据进行防抖处理。
在一个实施例中,防抖模块712还用于对角速度测量值进行重采样处理,得到重采样后的角速度测量值;将重采样后的角速度测量值与摄像头的角速度进行互相关运算,得到第一平移量;对第一平移量进行优化处理,得到第一延迟数据。
在一个实施例中,防抖模块712还用于对角速度测量值进行重采样处理,得到重采样后的角速度测量值;将重采样后的角速度测量值与角速度计算值进行互相关运算,得到第二平移量;对第二平移量进行优化处理,得到第二延迟数据。
在一个实施例中,防抖模块712还用于将第一延迟数据与第二延迟数据进行作差处理,计算得到视频数据对应的目标延迟数据。
在一个实施例中,上述装置还包括:视频段选取模块,用于根据测量数据在视频数据中确定非急速旋转视频段;在非急速旋转视频段中选取目标视频段;根据目标视频段计算摄像头在世界坐标系下的旋转向量。
关于视频数据的防抖处理装置的具体限定可以参见上文中对于视频数据的防抖处理方法的限定,在此不再赘述。上述视频数据的防抖处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图8所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种视频数据的防抖处理方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图8中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行计算机程序时实现上述各个实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各个实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (12)
1.一种视频数据的防抖处理方法,其特征在于,所述方法包括:
获取摄像头采集的视频数据,以及获取惯性测量单元的测量数据,所述测量数据包括角速度测量值;
根据所述视频数据计算所述摄像头在世界坐标系下的旋转向量;
对所述摄像头在世界坐标系下的旋转向量进行拟合处理,得到所述摄像头的角速度;
根据所述测量数据计算所述惯性测量单元在世界坐标系下的旋转向量;
对所述惯性测量单元在世界坐标系下的旋转向量进行拟合处理,得到所述惯性测量单元对应的角速度计算值;
根据所述角速度测量值、所述摄像头的角速度以及所述角速度计算值,计算得到所述视频数据对应的目标延迟数据,根据所述目标延迟数据对所述视频数据进行防抖处理。
2.根据权利要求1所述的方法,其特征在于,所述视频数据包括多帧图像,所述对所述摄像头在世界坐标系下的旋转向量进行拟合处理,得到所述摄像头的角速度包括:
根据所述摄像头在世界坐标系下的旋转向量计算每帧图像对应的目标旋转向量,得到所述摄像头对应的连续旋转向量;
将所述连续旋转向量进行拟合计算,得到所述摄像头的角速度。
3.根据权利要求2所述的方法,其特征在于,所述根据所述摄像头在世界坐标系下的旋转向量计算每帧图像对应的目标旋转向量,得到所述摄像头对应的连续旋转向量包括:
获取当前帧图像,在所述摄像头在世界坐标系下的旋转向量中获取所述当前帧图像对应的原始旋转向量以及上一帧图像对应的目标旋转向量;
根据所述当前帧图像对应的原始旋转向量以及所述上一帧图像对应的目标旋转向量计算所述当前帧图像对应的目标旋转向量;
将下一帧图像更新为所述当前帧图像,返回所述在所述摄像头在世界坐标系下的旋转向量中获取所述当前帧图像对应的原始旋转向量以及上一帧图像对应的目标旋转向量的步骤,直至计算得到最后一帧图像对应的目标旋转向量,得到所述摄像头对应的连续旋转向量。
4.根据权利要求1所述的方法,其特征在于,所述根据所述角速度测量值、所述摄像头的角速度以及所述角速度计算值,计算得到所述视频数据对应的目标延迟数据包括:
根据所述角速度测量值以及所述摄像头的角速度计算第一延迟数据;
根据所述角速度测量值以及所述角速度计算值计算第二延迟数据;
根据所述第一延迟数据以及所述第二延迟数据计算所述视频数据对应的目标延迟数据。
5.根据权利要求4所述的方法,其特征在于,所述根据所述角速度测量值以及所述摄像头的角速度计算第一延迟数据包括:
对所述角速度测量值进行重采样处理,得到重采样后的角速度测量值;
将所述重采样后的角速度测量值与所述摄像头的角速度进行互相关运算,得到第一平移量;
对所述第一平移量进行优化处理,得到第一延迟数据。
6.根据权利要求4所述的方法,其特征在于,所述根据所述角速度测量值以及所述角速度计算值计算第二延迟数据包括:
对所述角速度测量值进行重采样处理,得到重采样后的角速度测量值;
将所述重采样后的角速度测量值与所述角速度计算值进行互相关运算,得到第二平移量;
对所述第二平移量进行优化处理,得到第二延迟数据。
7.根据权利要求4所述的方法,其特征在于,所述根据所述第一延迟数据以及所述第二延迟数据计算所述视频数据对应的目标延迟数据包括:
将所述第一延迟数据与所述第二延迟数据进行作差处理,计算得到所述视频数据对应的目标延迟数据。
8.根据权利要求1至7任意一项所述的方法,其特征在于,所述方法还包括:
根据所述测量数据在所述视频数据中确定非急速旋转视频段;
在所述非急速旋转视频段中选取目标视频段;
根据所述目标视频段计算所述摄像头在世界坐标系下的旋转向量。
9.一种视频数据的防抖处理装置,其特征在于,所述装置包括:
获取模块,用于获取摄像头采集的视频数据,以及获取惯性测量单元的测量数据,所述测量数据包括角速度测量值;
第一计算模块,用于根据所述视频数据计算所述摄像头在世界坐标系下的旋转向量;
第一拟合模块,用于对所述摄像头在世界坐标系下的旋转向量进行拟合处理,得到所述摄像头的角速度;
第二计算模块,用于根据所述测量数据计算所述惯性测量单元在世界坐标系下的旋转向量;
第二拟合模块,用于对所述惯性测量单元在世界坐标系下的旋转向量进行拟合处理,得到所述惯性测量单元对应的角速度计算值;
防抖模块,用于根据所述角速度测量值、所述摄像头的角速度以及所述角速度计算值,计算得到所述视频数据对应的目标延迟数据,根据所述目标延迟数据对所述视频数据进行防抖处理。
10.根据权利要求9所述的装置,其特征在于,所述视频数据包括多帧图像,所述第一拟合模块还用于根据所述摄像头在世界坐标系下的旋转向量计算每帧图像对应的目标旋转向量,得到所述摄像头对应的连续旋转向量;将所述连续旋转向量进行拟合计算,得到所述摄像头的角速度。
11.一种计算机设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至8中任一项所述的方法的步骤。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至8中任一项所述的方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110215905.0A CN114979456B (zh) | 2021-02-26 | 2021-02-26 | 视频数据的防抖处理方法、装置、计算机设备和存储介质 |
PCT/CN2022/077636 WO2022179555A1 (zh) | 2021-02-26 | 2022-02-24 | 视频数据的防抖处理方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110215905.0A CN114979456B (zh) | 2021-02-26 | 2021-02-26 | 视频数据的防抖处理方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114979456A CN114979456A (zh) | 2022-08-30 |
CN114979456B true CN114979456B (zh) | 2023-06-30 |
Family
ID=82972834
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110215905.0A Active CN114979456B (zh) | 2021-02-26 | 2021-02-26 | 视频数据的防抖处理方法、装置、计算机设备和存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114979456B (zh) |
WO (1) | WO2022179555A1 (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106709222A (zh) * | 2015-07-29 | 2017-05-24 | 中国科学院沈阳自动化研究所 | 基于单目视觉的imu漂移补偿方法 |
CN107255476A (zh) * | 2017-07-06 | 2017-10-17 | 青岛海通胜行智能科技有限公司 | 一种基于惯性数据和视觉特征的室内定位方法和装置 |
CN107687850A (zh) * | 2017-07-26 | 2018-02-13 | 哈尔滨工业大学深圳研究生院 | 一种基于视觉和惯性测量单元的无人飞行器位姿估计方法 |
CN109073407A (zh) * | 2017-10-26 | 2018-12-21 | 深圳市大疆创新科技有限公司 | 惯性测量单元的漂移标定方法、设备及无人飞行器 |
CN110503684A (zh) * | 2019-08-09 | 2019-11-26 | 北京影谱科技股份有限公司 | 相机位姿估计方法和装置 |
CN110880189A (zh) * | 2018-09-06 | 2020-03-13 | 舜宇光学(浙江)研究院有限公司 | 联合标定方法及其联合标定装置和电子设备 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4926920B2 (ja) * | 2007-11-16 | 2012-05-09 | キヤノン株式会社 | 防振画像処理装置及び防振画像処理方法 |
KR100968974B1 (ko) * | 2008-08-26 | 2010-07-14 | 삼성전기주식회사 | 손떨림 보정 장치 |
CN103477277B (zh) * | 2011-04-12 | 2014-12-10 | 富士胶片株式会社 | 图像拾取装置 |
US20130107066A1 (en) * | 2011-10-27 | 2013-05-02 | Qualcomm Incorporated | Sensor aided video stabilization |
CN102865881B (zh) * | 2012-03-06 | 2014-12-31 | 武汉大学 | 一种惯性测量单元的快速标定方法 |
WO2018223381A1 (zh) * | 2017-06-09 | 2018-12-13 | 厦门美图之家科技有限公司 | 一种视频防抖方法及移动设备 |
CN107801014B (zh) * | 2017-10-25 | 2019-11-08 | 深圳岚锋创视网络科技有限公司 | 一种全景视频防抖的方法、装置及便携式终端 |
CN108629793B (zh) * | 2018-03-22 | 2020-11-10 | 中国科学院自动化研究所 | 使用在线时间标定的视觉惯性测程法与设备 |
CN109561254B (zh) * | 2018-12-18 | 2020-11-03 | 影石创新科技股份有限公司 | 一种全景视频防抖的方法、装置及便携式终端 |
CN110139031B (zh) * | 2019-05-05 | 2020-11-06 | 南京大学 | 一种基于惯性感知的视频防抖系统及其工作方法 |
CN110166695B (zh) * | 2019-06-26 | 2021-10-01 | Oppo广东移动通信有限公司 | 摄像头防抖方法、装置、电子设备和计算机可读存储介质 |
CN111314604B (zh) * | 2020-02-19 | 2021-08-31 | Oppo广东移动通信有限公司 | 视频防抖方法和装置、电子设备、计算机可读存储介质 |
-
2021
- 2021-02-26 CN CN202110215905.0A patent/CN114979456B/zh active Active
-
2022
- 2022-02-24 WO PCT/CN2022/077636 patent/WO2022179555A1/zh active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106709222A (zh) * | 2015-07-29 | 2017-05-24 | 中国科学院沈阳自动化研究所 | 基于单目视觉的imu漂移补偿方法 |
CN107255476A (zh) * | 2017-07-06 | 2017-10-17 | 青岛海通胜行智能科技有限公司 | 一种基于惯性数据和视觉特征的室内定位方法和装置 |
CN107687850A (zh) * | 2017-07-26 | 2018-02-13 | 哈尔滨工业大学深圳研究生院 | 一种基于视觉和惯性测量单元的无人飞行器位姿估计方法 |
CN109073407A (zh) * | 2017-10-26 | 2018-12-21 | 深圳市大疆创新科技有限公司 | 惯性测量单元的漂移标定方法、设备及无人飞行器 |
CN110880189A (zh) * | 2018-09-06 | 2020-03-13 | 舜宇光学(浙江)研究院有限公司 | 联合标定方法及其联合标定装置和电子设备 |
CN110503684A (zh) * | 2019-08-09 | 2019-11-26 | 北京影谱科技股份有限公司 | 相机位姿估计方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2022179555A1 (zh) | 2022-09-01 |
CN114979456A (zh) | 2022-08-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110009681B (zh) | 一种基于imu辅助的单目视觉里程计位姿处理方法 | |
CN111354042A (zh) | 机器人视觉图像的特征提取方法、装置、机器人及介质 | |
CN108592950B (zh) | 一种单目相机和惯性测量单元相对安装角标定方法 | |
CN108871311B (zh) | 位姿确定方法和装置 | |
CN111314604B (zh) | 视频防抖方法和装置、电子设备、计算机可读存储介质 | |
CN104396231B (zh) | 图像处理装置和图像处理方法 | |
CN105635588B (zh) | 一种稳像方法及装置 | |
JP2017529620A (ja) | 姿勢推定のシステムおよび方法 | |
WO2013184313A1 (en) | Motion-based image stitching | |
CN113029128B (zh) | 视觉导航方法及相关装置、移动终端、存储介质 | |
CN108827341A (zh) | 用于确定图像采集装置的惯性测量单元中的偏差的方法 | |
US20160210761A1 (en) | 3d reconstruction | |
US9838572B2 (en) | Method and device for determining movement between successive video images | |
CN110660098A (zh) | 基于单目视觉的定位方法和装置 | |
CN114494388B (zh) | 一种大视场环境下图像三维重建方法、装置、设备及介质 | |
CN109040525B (zh) | 图像处理方法、装置、计算机可读介质及电子设备 | |
CN112017215B (zh) | 图像处理方法、装置、计算机可读存储介质及计算机设备 | |
CN111882655B (zh) | 三维重建的方法、装置、系统、计算机设备和存储介质 | |
TW202314593A (zh) | 定位方法及設備、電腦可讀儲存媒體 | |
CN113438409B (zh) | 延迟校准方法、装置、计算机设备和存储介质 | |
CN112991441A (zh) | 相机定位方法、装置、电子设备及存储介质 | |
CN112629565B (zh) | 像机与惯性测量单元旋转关系校准方法、装置和设备 | |
CN112087728B (zh) | 获取Wi-Fi指纹空间分布的方法、装置和电子设备 | |
CN114979456B (zh) | 视频数据的防抖处理方法、装置、计算机设备和存储介质 | |
CN110706257A (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 |